Metodo PreparedStatement

3 respostas
P
Oi galera tudo bom. Queria uma informação sobre o metodo PreparedStatement, se esta mesmo correto e se tem um outro jeito de se faz esse metodo, valeu.
public class TesteInserir {

    public static void main(String[] args) {
        try {
            Conexao con = new Conexao(Configuracoes.USER, Configuracoes.PASSWORD, Configuracoes.DRIVER, Configuracoes.URL);

            con.conectar();

            PreparedStatement ps = con.getPreparedStatement("INSERT INTO clientes (Nome,Endereco,DataDeNascimento) VALUES(?, ?, ?));

            ps.setString(1, "leonardo");
            ps.setString(2, "avenida  silvio avidos,2000");
            ps.setString(3,"1900-04-01");
            ps.execute();

            ps.close();
            con.desconnectar();

            String mensagemDeAlerta = "Registro inserido com sucesso.";
            Ferramentas.dialogoDeAviso(mensagemDeAlerta, Configuracoes.SUCESSO);
        } catch (SQLException ex) {
            String mensagemDeAlerta = "Erro ao inserir o registro.\n";
            Ferramentas.dialogoDeAviso(mensagemDeAlerta + ex.toString(), Configuracoes.ERRO);
        } catch (NullPointerException ex) {
            String mensagemDeAlerta = "Erro ao inserir o registro.Não foi encontrada uma conexão ativa com o banco de dados. O aplicativo será encerrado.\n";    
                      
                   
             
             
           
            Ferramentas.dialogoDeAviso(mensagemDeAlerta + ex.toString(), Configuracoes.ERRO);
            System.exit(Configuracoes.ERRO);
        }



    }
}

3 Respostas

M

acho que a unica resalva é vc utilizar o método executeUpdate(), para inserts, updates e deletes.

e PreparedStatement é um objeto(tá, é uma classe, mas vcs entenderam né? :wink: ), não método. método é o getPreparedStatement()

J

Eu acho que seu execute();

Esta errado…

R.: executeQuery();

M

o executeQuery() retorna um ResultSet, e deve ser utilizado para o caso de se querer trabalhar com os resultados (não é o caso, já que o comando é um insert). No caso pode-se utilizar o execute (que retorna um boolean), e utilizar o método getUpdateCount() pra verificar quantos registros foram atualizados.

[]'s

Criado 27 de outubro de 2008
Ultima resposta 27 de out. de 2008
Respostas 3
Participantes 3