Olá a todos, sou iniciante em Java e preciso de ajuda no preenchimento de uma Jlist com uma coluna da tabela do meu Banco de Dados (no meu caso MSAccess). Quando executo o código abaixo dá erro e a saída na Jlist está incorreta.
try{
boolean consulta=true;
final DefaultListModel lista = new DefaultListModel();
jList1 = new javax.swing.JList(lista);
jScrollPane2.setViewportView(jList1);
String sqlconsulta = ("SELECT vetor INTO idPayoff ");
con_payoff.executeSQL(sqlconsulta);
while(con_payoff.resultSet.next()){
lista.addElement(sqlconsulta);
consulta=false;
}
}
catch(SQLException e){
JOptionPane.showMessageDialog(this,"Erro Cmdo SQL "+e.getMessage());
}
}
A classe da conexão é a seguinte:
public class GerenciadorDeConexao {
/**
* Obt?m uma conex?o com o banco de dados
* @return a conex?o do banco de dados
*/
final String url = "jdbc:odbc:spe";
final private String driver ="sun.jdbc.odbc.JdbcOdbcDriver";
final private String user ="";
final private String pwd = "";//Senha do Banco de dados
static private Connection conexao;
public Statement statement;
static public ResultSet resultSet;
//
public boolean conecta(){
boolean result = true;
try{
Class.forName(driver);
conexao = DriverManager.getConnection(url,user,pwd);
JOptionPane.showMessageDialog(null, "Conectou!!!");
}
catch(ClassNotFoundException Driver){
JOptionPane.showMessageDialog(null, "Driver nao localizado: " + Driver);
result = false;
}
catch(SQLException Fonte){
JOptionPane.showMessageDialog(null, "Erro na conexao com a fonte de dados:" + Fonte);
result = false;
}
return result;
}
public void desconecta(){
boolean result = true;
try{
conexao.close();
JOptionPane.showMessageDialog(null, "Banco de Dados Fechado!!!");
}
catch(SQLException fecha){
JOptionPane.showMessageDialog(null, "Nao foi possivel fechar o Bando de Dados:" + fecha);
result = false;
}
}
public void executeSQL(String sql){
try{
statement = conexao.createStatement();
statement.execute(sql);
resultSet = statement.getResultSet();
}
catch(Exception e)
{
e.printStackTrace();
}
}
}
No entanto está dando o seguinte erro:
java.sql.SQLException: [Microsoft][Driver ODBC Microsoft Access] A tabela ‘idPayoff’ já existe.
at sun.jdbc.odbc.JdbcOdbc.createSQLException(JdbcOdbc.java:6957)
at sun.jdbc.odbc.JdbcOdbc.standardError(JdbcOdbc.java:7114)
at sun.jdbc.odbc.JdbcOdbc.SQLExecDirect(JdbcOdbc.java:3110)
at sun.jdbc.odbc.JdbcOdbcStatement.execute(JdbcOdbcStatement.java:338)
E a saída na Jlist é o próprio código SQL -> SELECT vetor INTO idPayoff
Inúmeras vezes!!
Por favor se alguém puder me ajudar fico agradecido!