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

Không tìm thấy dữ liệu hoặc xảy ra quá nhiều lỗi ngoại lệ hàng khi chèn hàng loạt bản ghi

ORA-01403 (Không tìm thấy dữ liệu) xảy ra khi truy vấn của bạn không trả về kết quả nào và bạn thử chuyển nó vào biến qua INTO .

ORA-01422 (Quá nhiều hàng) xảy ra khi truy vấn của bạn trả về nhiều hơn 1 hàng mà bạn đang cố gắng vừa với INTO .

Bạn đang xử lý no_data_found từ SELECT đầu tiên truy vấn nhưng bạn không xử lý too_many_rows từ truy vấn đầu tiên. Nếu SELECT đầu tiên của bạn truy vấn ném một no_data_found ngoại lệ, nó sẽ được xử lý từ EXCEPTION , ngược lại nếu nó ném một too_many_rows ngoại lệ nó sẽ không thành công như hình ảnh thứ hai của bạn.

Vậy no_data_found ở đâu ngoại lệ xảy ra? Có thể là từ bạn SELECT thứ hai truy vấn.

Bạn nên lặp lại SELECT đầu tiên để tránh no_data_found hoặc too_many_rows và đảm bảo rằng SELECT thứ hai của bạn truy vấn luôn trả về 1 hàng.



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. lỗi nội bộ (00801) khi kết hợp hai bộ sưu tập trong oracle 10g

  2. Tham số Oracle với câu lệnh IN?

  3. Chèn nhiều bản ghi trong oracle

  4. Ngày Oracle có vẻ bằng

  5. Hàm TO_DSINTERVAL () trong Oracle