Oracle
 sql >> Baza danych >  >> RDS >> Oracle

Baza danych Oracle JDBC klucza podstawowego Java

Prawidłowym sposobem na odzyskanie klucza podstawowego jest użycie getGeneratedKeys funkcja (którą można aktywować za pomocą Statement.RETURN_GENERATED_KEYS wartość z jednym z Statement.execute* lub Connection.prepareStatement metody.

W większości baz danych można to wykorzystać do bezpośredniego pobrania klucza podstawowego. W przypadku Oracle pozwoli to jednak uzyskać ROWID , ten ROWID może być użyty do zapytania tabeli o wstawiony wiersz i uzyskania klucza głównego.

Na przykład:

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. Jak wybrać wszystkie kolumny i liczbę(*) w tym samym zapytaniu?

  2. WSTAW DO WYBORU Z DOSTĘPU DO ORACLE

  3. Nie masz niejawnej Aplikacji w zakresie:PlayFramework z Oracle

  4. Nie można połączyć się z Oracle za pomocą uwierzytelniania systemu Windows za pomocą ODP.NET

  5. ORA-12170:TNS:Przekroczono limit czasu połączenia