Oracle
 sql >> база данни >  >> RDS >> Oracle

База данни на Oracle с първичен ключ Java JDBC

Правилният начин да извлечете своя първичен ключ е да използвате getGeneratedKeys средство (което може да се активира с помощта на Statement.RETURN_GENERATED_KEYS стойност с един от Statement.execute* или Connection.prepareStatement методи.

В повечето бази данни това може да се използва за директно извличане на първичния ключ. В случая на Oracle обаче това ще ви позволи да получите ROWID , този ROWID може да се използва за запитване към таблицата за вмъкнатия ред и получаване на първичния ключ.

Например:

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. Oracle SQL:изберете от таблица с вложена таблица

  2. Как мога да се свържа с база данни на oracle като sysdba с помощта на bltoolkit?

  3. как да извлечете формат на дата от низов оракул

  4. Oracle непоследователно поведение на производителността на заявката

  5. Как да направите динамичен пивот в oracle PL SQL