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

Command.Parameters [@name] .Value Cú pháp đúng

Ok vì vậy tôi đã làm việc này. Vấn đề chính là điều này cần phải so sánh null với null , tuy nhiên một int không được null vì nó là một loại giá trị.

Vì vậy, tôi đã phải thực hiện một số điều chỉnh với mã của mình và tôi đã làm được điều này với giải pháp thay thế

int? AreaCode = null;

Điều này cho phép tôi thay đổi mã của mình:

mySqlCommand.Parameters["@AreaCode"].Value = (PModel.AreaCode.HasValue ? PModel.AreaCode.Value : object)DBNull.Value );

Đối với tất cả những người không biết những gì đang xảy ra ở đây:

Toán tử ? cung cấp cho Loại giá trị khả năng không có giá trị , vì vậy nó có thể =null .

tức là.

int n = 0;
int? n = null;

bool b = false;
bool? b = null;



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Bắt hàng trước và sau một truy vấn

  2. Nối bên trong với mệnh đề thích

  3. SQL:CẬP NHẬT với INNER JOIN với LIMIT

  4. MYSQL:COUNT với mệnh đề GROUP BY, LEFT JOIN và WHERE không trả về giá trị 0

  5. lỗi node-mysql:kết nối ECONNREFUSED