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

Tuyên bố chuẩn bị xung đột với các biến người dùng

Đối với kích hoạt SET với các biến do người dùng xác định trong một chuỗi truy vấn, bạn cần khai báo Allow User Variables=True trong chuỗi kết nối, trong web.config hoặc trong MySqlConnection định nghĩa:

Web.config

<connectionStrings>
    <add name="DefaultConnection" connectionString="server=ServerName;database=DatabaseName;uid=UserName;pwd=Password;
     Allow User Variables=True" />
</connectionStrings>

Định nghĩa thủ công

string connectionString = @"server=ServerName;database=DatabaseName;uid=UserName;pwd=Password;
                           Allow User Variables=True";
using (MySqlConnection connection = new MySqlConnection(connectionString))
{
    string sqlCommand = "SET @userVar1 := 18; select * from db where [email protected] AND age > @userVar1"
    connection.Open();
    using (MySqlCommand command = new MySqlCommand(sqlCommand, connection))
    {
        // add required parameters here
        // and call ExecuteReader() afterwards
    }
}

Cài đặt biến do người dùng xác định có sẵn bắt đầu từ phiên bản 5.2.2 của Trình kết nối .NET như được cung cấp trong giải thích này .

Vấn đề liên quan:

Làm cách nào để sử dụng Biến do Người dùng Xác định do Người dùng MySql trong .NET MySqlCommand?




  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. truy vấn mysql để chuyển đổi động dữ liệu hàng thành cột

  2. Làm thế nào để theo dõi các thay đổi trong nhiều cột trong bảng cơ sở dữ liệu cho mục đích kiểm toán?

  3. org.json.JSONException:Giá trị <br của loại java.lang. Chuỗi không thể được chuyển đổi thành JSONObject

  4. Cần phương pháp hiệu quả về thời gian để nhập tệp CSV lớn qua PHP vào nhiều bảng MySQL

  5. MySQL trả về bản ghi đầu tiên và cuối cùng cho các kết quả giống hệt nhau liên tiếp