sql >> データベース >  >> RDS >> Mysql

ユーザー変数と競合するプリペアドステートメント

    SETを有効にする クエリ文字列にユーザー定義変数を使用する場合は、Allow User Variables=Trueを宣言する必要があります web.configまたはMySqlConnectionのいずれかの接続文字列 定義:

    Web.config

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

    手動定義

    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
        }
    }
    

    この説明

    関連する問題:

    .NET MySqlCommandでMySqlユーザー定義変数を使用するにはどうすればよいですか?




    1. 有効なMySQL結果リソースを確認しています

    2. mysqldumpを使用してMySQLInnoDBデータベースをダンプおよびロードする最も簡単な方法は何ですか?

    3. OSGi上のPostgreSQLコネクタ

    4. 四半期から期間までのMySQLグループ