Como Mostrar um dado de um BD em um JTextField?

9 respostas
J

Galera, tenho meu código que só consigo inserir elementos no banco de dados ( mysql ). Agora, estou querendo exibir os dados recuperados da tabela em um JTextField. Podem me dizer quais métodos uso para fazer isso???

Tipo:
1- Recuperar um nome de uma tabela de um BD em MySql e colocá-lo em uma String.
2- Pegar essa String e exibir em um JTextField.

Me Ajudem!
Desde já, agradeço!

9 Respostas

S

Procura algum tutorial de JDBC.
ResultSet,PreparedStament etc …
Você não fez o insert ? então agora vc tem que fazer um select na sua tabela .
Pra setar um TextField use o método setText .

P

Tenta fazer desta forma

//res variavel tipo ResultSet
//stm variavel tipo Statement

res = stm.executeQuery("SELECT * FROM nome_tabela");

while(res.next()) {
jTextField.setText(res.getString("nome_da_coluna"));/*caso a coluna na tabela ser com dados numericos vc utiliza res.getInt("nome da coluna")*/
}

É desta forma que eu faço, qualquer duvida posta ae novamente, flw!!!

J

Como eu coloco no método uma string?

por exemplo:

Tenho uma String que recebe de um JFrame um valor para ser inserido no banco de dados.

Tenho também esse exemplo de INSERT:
stmt.executeUpdate( “INSERT INTO Teste(test_id, test_val) VALUES(1,‘One’)” );

como faço para em vez de especificar ‘One’, colocar o nome da String?? para o valor da String ir para o BD…

P

o seu método recebe a String chamada suaString nesse caso

stmt.executeUpdate( "INSERT INTO Teste(test_id, test_val) VALUES(1,suaString)" );
J

brother, assim não funciona não…

fiz assim:

String x = “One”;

stmt.executeUpdate( “INSERT INTO Teste(test_id, test_val) VALUES(1,x)” );

e deu esse erro:

java.sql.SQLException: Column not found,  message from server: "Unknown column ‘x’ in ‘field list’"

at com.mysql.jdbc.MysqlIO.checkErrorPacket(MysqlIO.java:1977)

at com.mysql.jdbc.MysqlIO.sendCommand(MysqlIO.java:1163)

at com.mysql.jdbc.MysqlIO.sqlQueryDirect(MysqlIO.java:1272)

at com.mysql.jdbc.MysqlIO.sqlQuery(MysqlIO.java:1218)

at com.mysql.jdbc.Connection.execSQL(Connection.java:2233)

at com.mysql.jdbc.Connection.execSQL(Connection.java:2181)

at com.mysql.jdbc.Statement.executeUpdate(Statement.java:1254)

at com.mysql.jdbc.Statement.executeUpdate(Statement.java:1200)

:s

P

falha minha…

stmt.executeUpdate( "INSERT INTO Teste(test_id, test_val) VALUES(1,"+suaString+")");

acho q agora vai

P

Tenta fazer desta assim, utilizando as aspas simples como no ex. abaixo.

P

Tenta fazer desta assim, utilizando as aspas simples como no ex. abaixo.

testa ae…

J

Vlw galera!!!
obrigado pedrobusko!
obrigado phill!
Agora funcionou!!! :D:D:D
que complicação… :slight_smile:
Abração galera!

Criado 13 de fevereiro de 2007
Ultima resposta 13 de fev. de 2007
Respostas 9
Participantes 4