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

cách thực hiện nhiều truy vấn oracle c #

Mặc dù bạn đang sử dụng tên cho các thông số của mình, trình điều khiển của bạn đang xử lý chúng theo vị trí. Bạn có thể biết vì nó (gần như) khớp với :1 với tên p_cr1 - '1' không phải là tên hợp lệ. Nó không phàn nàn vì nó khớp theo vị trí - nhưng điều đó có nghĩa là nó đang cố gắng sử dụng P_para cho :1 và vì loại sai, điều đó giải thích lỗi bạn thấy.

Có thể có một cách để thay đổi hành vi của trình điều khiển, nhưng hiện tại bạn chỉ có thể hoán đổi thứ tự mà bạn ràng buộc chúng - vì vậy các liên kết xảy ra theo cùng một thứ tự (vị trí) mà các biến xuất hiện trong truy vấn. Vì vậy:

cmd.Parameters.Add("p_cr1", OracleDbType.RefCursor, DBNull.Value, ParameterDirection.Output);
cmd.Parameters.Add(new OracleParameter(":P_para", OracleDbType.Int64)).Value = Convert.ToInt64(Textbox.Text);
cmd.Parameters.Add("p_cr2", OracleDbType.RefCursor, DBNull.Value, ParameterDirection.Output);



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. EF6 Oracle TimeStamp &Date

  2. Trả lại tất cả Người dùng, ngay cả những người không phù hợp với tiêu chí của tôi

  3. Hibernate Dialect cho Oracle 19

  4. Tôi có thể sử dụng IF trong PL / SQL không?

  5. Loại trừ chuỗi con từ chuỗi đã cho