Oracle
 sql >> Cơ Sở Dữ Liệu >  >> RDS >> Oracle

java.sql.SQLException:ORA-01002:tìm nạp ngoài trình tự

SELCT ... FOR UPDATE chỉ có ý nghĩa trong ngữ cảnh của một giao dịch được quản lý, vì nó yêu cầu các khóa được lấy ra trên các hàng đã chọn.

Theo mặc định, JDBC không sử dụng một giao dịch được quản lý, nó sử dụng một giao dịch được tạo ngầm định cam kết ngay sau khi truy vấn được thực thi. Điều này sẽ phá vỡ ngữ nghĩa của SELECT ... FOR UPDATE và trình điều khiển JDBC phàn nàn.

Để sử dụng giao dịch được quản lý, hãy thêm

connection.setAutoCommit(false); 

trước khi bạn thực hiện truy vấn. Sau đó, thực thi 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. Chia tỷ lệ của giá trị thập phân dẫn đến việc cắt ngắn dữ liệu qua ODBC

  2. Kích hoạt lỗi câu lệnh if-else không được đưa ra

  3. cách lấy dữ liệu từ cơ sở dữ liệu oracle bằng PHP

  4. Tại sao Oracle trả về chuỗi cụ thể nếu các giá trị 'orderby' giống nhau?

  5. Truy vấn hoạt động trên Oracle 11g nhưng không thành công trên Oracle 8i