Insert into no postgres

bem galera to tentando fazer um insert so que a sintaxe eu acho que não esta certa, sera que pode me ajudar???

o insert geralmente é igual pros bancos de dados…

voce pode colocar o seu codigo aqui?

voce pesquisou no google a sintaxe correta pro insert?

A sintaxe é assim:

insert into tabela (campo1, campo2, campon) values (valor1, valor2, valorn)

T+

o codigo é esse so que ele so que no try da erro vai pro catch.

botaoCadastrar.addActionListener(new ActionListener(){
public void actionPerformed(ActionEvent e){
String marca = campoMarca.getText();
String tipo = campoTipo.getText();
String safra = campoSafra.getText();
String prateleira = campoPrateleira.getText();

      Inicial bd = new Inicial();
      bd.conection();
      
         try{          
          bd.stmt.executeUpdate("INSERT INTO vinhos(marca,tipo,safra,prateleira) VALUES ('marca','tipo','safra','prateleira')");
          JOptionPane.showMessageDialog(null,"Registro Inserido Com Sucesso","Mensagem do Programa",JOptionPane.INFORMATION_MESSAGE);
          stmt.close();
          con.close();

}
catch(SQLException ex){
JOptionPane.showMessageDialog(null,“Conexão não estabelecida Comandos Digitados Inválidos”,“Mensagem do Programa”,JOptionPane.ERROR_MESSAGE);
}

Se usando o ex. de sintaxe do colega ainda não der certo, poste seu insert e tb a msg de erro.

Blz?
Em se tratando de postgresql, verificar os nomes dos campos de acordo com o banco de dados, pois para o postgreSQL é case sensitive.
T+

dei uma olhado no banco e ta tudo certo os campos estão com os nomes corretos ta tudo certo

DICA: Qdo colocar código fonte, coloque entre , fica melhor pra enxergar.

Muda dentro do seu catch como eu fiz abaixo, essa linha vai imprimir o erro. Ai vc pega o erro e posta aqui no forum pro pessoal ajudar:

catch(SQLException ex){ e.printStackTrace(); // essa linha aqui que eu acrescentei JOptionPane.showMessageDialog(null,"Conexão não estabelecida Comandos Digitados Inválidos","Mensagem do Programa",JOptionPane.ERROR_MESSAGE); }

Veja o tamanho dos teus campos VARCHAR.

Obs: Nesse teu código você não vai armazenar o conteúdo das variáveis. Você vai armazenar os nomes, isto é, marca,tipo,safra,prateleira. Se o campo prateleira for VARCHAR(2), por exemplo, vai dar pau.

Procure usar PreparedStatement.

Caso queira continuar assim, você vai precisar concatenar as Strings, desse jeito:

bd.stmt.executeUpdate("INSERT INTO vinhos(marca,tipo,safra,prateleira) VALUES (" + marca + "," + tipo + "," + safra +"," + prateleira + ")");

E haja paciência para dar manutenção nessa concatenação.

Acho altamente recomendável a utilização do PreparedStatement.

Abraços!

:evil: continua dando erro seguintes

at java.awt.EventDispatchThread.pumpEventsForFilter(Unknown Source) at java.awt.EventDispatchThread.pumpEventsForHierarchy(Unknown Source) at java.awt.EventDispatchThread.pumpEvents(Unknown Source) at java.awt.EventDispatchThread.pumpEvents(Unknown Source) at java.awt.EventDispatchThread.run(Unknown Source)

Olá Galera.

Eu também estava com problema no insert, eu tive uma ajuda do pessoal aqui do trampo e consegui resolver.

Veja se ele te ajuda, o codigo precisa ficar como abaixo.

Connection conn = Conexao.getConnection();
PreparedStatement ps = conn.prepareStatement("insert into \"EMPRESA\"(\"CODIGO\", \"NOME\") values (?,?)");
ps.setInt(1, emp.getCodigo());
ps.setString(2, emp.getNome());
ps.execute();

Abraço a todos