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

java.sql.SQLException:ORA-01002:извличане извън последователност

SELCT ... FOR UPDATE има смисъл само в контекста на управлявана транзакция, тъй като изисква премахване на заключвания на избраните редове.

По подразбиране JDBC не използва управлявана транзакция, а използва имплицитно създадена такава, която се ангажира веднага щом заявката бъде изпълнена. Това ще наруши семантиката на SELECT ... FOR UPDATE и JDBC драйверът се оплаква.

За да използвате управлявана транзакция, добавете

connection.setAutoCommit(false); 

преди да изпълните заявката. След това изпълнете connection.commit() .



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. ГРЕШКА на ред 191:ORA-01489:резултатът от конкатенацията на низ е твърде дълъг

  2. Как да променя NLS параметрите по подразбиране за формат на дата чрез Toad?

  3. Lighty накратко

  4. Как да използвате команди като DROP TABLE и т.н. в съхранена процедура

  5. Създайте тестово копие на базата данни на Production само с примерен набор от данни