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

Wartość z ostatniego wstawionego wiersza w DB

To, co próbujesz zrobić, to skorzystać z RETURNING klauzula. Ustawmy przykładową tabelę i sekwencję:

CREATE TABLE "TEST" 
( "ID" NUMBER NOT NULL ENABLE, 
 "NAME" VARCHAR2(100 CHAR) NOT NULL ENABLE, 
  CONSTRAINT "PK_TEST" PRIMARY KEY ("ID")
  );

CREATE SEQUENCE SEQ_TEST;

Teraz twój kod Java powinien wyglądać tak:

String insertSql = "BEGIN INSERT INTO TEST (ID, NAME) VALUES (SEQ_TEST.NEXTVAL(), ?) RETURNING ID INTO ?; END;";
java.sql.CallableStatement stmt = conn.prepareCall(insertSql);
stmt.setString(1, "John Smith");
stmt.registerOutParameter(2, java.sql.Types.VARCHAR);
stmt.execute();
int id = stmt.getInt(2);


  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 zmienić format daty w sesji Oracle

  2. Dodawanie nazwy schematu do encji w danych Spring?

  3. jak zmienić rozmiar kolumny

  4. Pobierz typ danych pola w instrukcji select w ORACLE

  5. Porównaj ciągi ignorujące akcenty w SQL (ORACLE)