O meu problema é o seguinte… eu pego uma pesquisa de um banco de dados SQL… com os seguintes campos… CODIGO, TITULO, TITULO(INGLES), EMPRESTADO,USUARIO,DONO… até agora tudo bem… então eu coloco dentro de um :evil: JTABLE :evil: … entao é o seguinte… eu consigo deletar, alterar … tudo… mais na hora em que eu clico numa linha da tabela… dá pau… e ela mostra a pesquisa antiga da linha… é como se eu naum conseguise limpar a tabela… ela sempre tem uma pesquisa atras… mesmo eu antes de cada pesquisa definindo tab = null … e aí como eu faço pra tirar essa pesquisa que fica atras da minha tabela…??? :roll: :?
Eu uso na minha aplicação e dá certo. Precisa de alguns ajustes para funcionar com o seu banco de dados.
[]'s
own_prison
Resolvi colocar o código... pra exemplificar o meu problema.... 8)
importjava.util.*;importjavax.swing.*;importjava.sql.*;importjava.awt.event.*;importjava.awt.*;publicclassBancoDeDadosimplementsActionListener{Connectionconexao;JTabletab;Stringsql="SELECT*FROMfilmesORDERBY([Titulo(ingles)])asc";JInternalFrameF=newJInternalFrame("",false,true,false,false);ImageIconrefresh=newImageIcon("imagensatualizar.jpg");JButtonatuali=newJButton("Refresh",refresh);publicvoidactionPerformed(ActionEventev){if(atuali==ev.getSource()){tab=null;buscaTabela(sql);}}voidtable(){atuali.addActionListener(this);F.setTitle("BancodeDados");F.setSize(1021,555);F.getContentPane().setLayout(null);atuali.setBounds(0,493,1021,30);F.getContentPane().add(atuali);try{Class.forName("sun.jdbc.odbc.JdbcOdbcDriver");Stringurl="jdbc:odbc:Filmes";conexao=DriverManager.getConnection(url,"sa","");}catch(Exceptionerr){err.printStackTrace();}buscaTabela(sql);}voidbuscaTabela(Stringsql){Statementst;ResultSetres=null;try{Vectorcabecalho=newVector();Vectorlinhas=newVector();st=conexao.createStatement();res=st.executeQuery(sql);res.next();//busca os cabeçalhosResultSetMetaDatarsmd=res.getMetaData();for(inti=1;i<=rsmd.getColumnCount();++i)cabecalho.addElement(rsmd.getColumnName(i));//busca dados das linhasdo{linhas.addElement(proximaLinha(res,rsmd));}while(res.next());//Mostra a tabela com cabeçalhos e registrostab=newJTable(linhas,cabecalho);tab.getTableHeader().setReorderingAllowed(false);tab.getTableHeader().setResizingAllowed(false);JScrollPanescroller=newJScrollPane(tab);scroller.setBounds(0,0,1014,493);F.getContentPane().add(scroller,BorderLayout.CENTER);F.setOpaque(true);st.close();tab.getColumn("Codigo").setPreferredWidth(0);tab.getColumn("Titulo(ingles)").setPreferredWidth(230);tab.getColumn("Titulo(portugues)").setPreferredWidth(250);tab.getColumn("Emprestado").setPreferredWidth(3);tab.getColumn("Usuario").setPreferredWidth(75);tab.getColumn("Dono").setPreferredWidth(85);F.show();//colocar centralizado...*/}catch(SQLExceptionsqlex){}}privateVectorproximaLinha(ResultSetrs,ResultSetMetaDatarsmd){VectorLinhaAtual=newVector();try{for(inti=1;i<=rsmd.getColumnCount();i++){LinhaAtual.addElement(rs.getString(i));}}catch(SQLExceptione){}returnLinhaAtual;}}
mlopes
Ola,
Após olhar o código, continuo com a mesma opinião. Use o exemplo.
[]'s
own_prison
Acho q descobri o erro… naum to fechando a conexao com o banco de dados… vou arrumar e ver se funciona… :roll: