Ketika saya menggunakan database postgres, saya kesulitan dalam melakukan query insert menggunakan java. Ternyata masalahnya ada pada database postgres. Postgres tidak bisa menggunakan penamaan dengan kombinasi huruf besar dan kecil pada tabelnya. contoh: namaPengguna. Untuk itu dalam melakukan penamaan haruslah menggunakan underscore nama_pengguna, begitupun dengan nama kolomnya. Untuk auto number pada row, kita bisa menggunakan tipe data serial. sedangkan varchar (pada sql server) kita gunakan character varying. untuk koneksi database java, kita dapat menggunakan contoh script dibawah ini, void simpan(){ try{ koneksi objkoneksi = new koneksi(); Connection con = objkoneksi.bukaKoneksi(); Statement stat = con.createStatement(); String sql = "insert into nama_pengguna (nama_pertama, nama_kedua) values " + "('"+nama1+"','"+nama2+"')"; int rows = stat.executeUpdate(sql); con.close(); JOptionPane.showMessageDialog(null, "Data sudah tersimpan"); txtNama1.setText(""); txtNama2.setText(""); }catch(SQLException e){ JOptionPane.showMessageDialog(null, " Data gagal disimpan " +e); } }
untuk kelas koneksi: package com.utilities; import java.sql.*; import java.sql.DriverManager; import java.sql.Connection; import java.sql.SQLException;
public class koneksi {
/** Creates a new instance of Koneksi */ public koneksi() {
} public Connection bukaKoneksi()throws SQLException {
Connection con = null;
String loginUser = "postgres"; String loginPasswd = "admin"; String loginUrl = "jdbc:postgresql://localhost:5432/horoskop";
try { Class.forName("org.postgresql.Driver"); con = DriverManager.getConnection(loginUrl, loginUser, loginPasswd); return con; } catch (SQLException se) { System.err.println("No Connection Open"); return null; } catch (Exception ex) { System.err.println("Could Not open connection"); return null; } }
Connection bukakoneksi() { throw new UnsupportedOperationException("Not yet implemented"); } }
|