Oracle
 sql >> Teknologi Basis Data >  >> RDS >> Oracle

Basis Data Oracle Kunci Utama Java JDBC

Cara yang benar untuk mengambil kunci utama Anda adalah dengan menggunakan getGeneratedKeys fasilitas (yang dapat diaktifkan dengan menggunakan Statement.RETURN_GENERATED_KEYS nilai dengan salah satu Statement.execute* atau Connection.prepareStatement metode.

Di sebagian besar database ini dapat digunakan untuk mengambil kunci utama secara langsung. Namun dalam kasus Oracle ini akan memungkinkan Anda untuk mendapatkan ROWID , ROWID ini dapat digunakan untuk menanyakan tabel untuk baris yang disisipkan dan mendapatkan kunci utama.

Misalnya:

stmt.executeUpdate("INSERT INTO theTable(column1) VALUES ('a')",
      Statement.RETURN_GENERATED_KEYS);
ResultSet keys = stmt.getGeneratedKeys();
int primaryKey = -1;
if (keys.next()) {
    try (PreparedStatement keyStatement = 
           connection.prepareStatement("SELECT ID FROM theTable WHERE ROWID = ?")) {
        keyStatement.setRowId(keys.getRowId(1));
        try (ResultSet rs = keyStatement.executeQuery()) {
             primaryKey = rs.getInt(1);
        }
    }
}


  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Bagaimana Anda menginstal Perl DBD ::Oracle di OSX Snow Leopard 10.6

  2. Fungsi SQRT() di Oracle

  3. Setel ulang urutan ke nilai tertentu

  4. Kueri berguna AWR teratas untuk Peningkatan R12.2/R12.1

  5. Ambil nilai pengembalian array pl/sql di java