ホームページ >データベース >mysql チュートリアル >.NET MySqlCommand は MySQL ユーザー定義変数を使用できますか?
.NET MySqlCommand は MySQL ユーザー定義変数を活用できますか?
MySqlAdapter を使用して .NET で MySQL クエリを実行すると、クエリでユーザー定義変数。
特定のクエリの試行:
次の SQL ステートメントは、行番号を個別の行に割り当てようとします:
SELECT @rownum := @rownum +1 rownum, t . * FROM ( SELECT @rownum :=0 ) r, ( SELECT DISTINCT TYPE FROM `node` WHERE TYPE NOT IN ('ad', 'chatroom') )t
例外検出されました:
このクエリが実行されたとき.NET では、@rownum 変数がパラメーターとして解釈されるため例外が発生します。これには明示的な定義が必要です。
解決策:
この問題を解決するには、次のことが必要です。接続文字列でユーザー変数を許可することを指定します。これは、次のパラメータを追加することで実現できます:
;Allow User Variables=True
更新された接続文字列:
sqlConnection.ConnectionString = "Data Source=localhost;Initial Catalog=myDb;Username=myUser;Password=myPwd;Allow User Variables=True";
追加情報:
このソリューションは、.NET Connector for MySQL の新しいバージョンと互換性があります。詳細については、このブログを参照してください: [How to Use User Defined Variables in .NET with MySQL](リンクされたブログ)。
以上が.NET MySqlCommand は MySQL ユーザー定義変数を使用できますか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。