ホームページ > データベース > mysql チュートリアル > MySQL クエリが phpMyAdmin では機能するのに、.NET では失敗するのはなぜですか? それを修正するにはどうすればよいですか?

MySQL クエリが phpMyAdmin では機能するのに、.NET では失敗するのはなぜですか? それを修正するにはどうすればよいですか?

Patricia Arquette
リリース: 2024-11-29 01:26:10
オリジナル
179 人が閲覧しました

Why Does My MySQL Query Work in phpMyAdmin but Fail in .NET, and How Can I Fix It?

.NET で MySQL ユーザー定義変数を使用する方法 MySqlCommand

問題

ユーザーは、正常に実行される MySqlAdapter を使用して .NET でクエリを実行する際に問題が発生しますphpMyAdmin には @rownum が含まれているため。このシステム変数はパラメータと誤認され、定義されていないため例外が発生します。

解決策

この問題を解決するには、次の手順に従います。

  1. 接続文字列の更新: 接続に「;Allow User Variables=True」を追加しますstring.
  2. 結果の不一致を処理します: .NET での結果カウントは phpMyAdmin とは異なる場合があることに注意してください。 .NET では、カウントは 0 から始まりますが、phpMyAdmin は 1 から始まります。

using (var sqlConnection = new MySqlConnection(SOURCE_CONNECTION + ";Allow User Variables=True"))
{
    sqlConnection.Open();

    MySqlDataAdapter sqlAdapter = new MySqlDataAdapter(SqlStatement, sqlConnection);

    DataTable table = new DataTable();
    sqlAdapter.Fill(table);
    sqlConnection.Close();

    return table;
}
ログイン後にコピー

追加のヒント

行番号を取得する別の方法についてでは、次のオプションを検討してください:

  • 行 ID を追加する列: データベース テーブルに列を追加して、連続 ID を保存します。
  • 一時テーブルを使用します: 行番号列を含む一時テーブルを作成し、元のテーブルに結合します。 table.
  • ヘルパー メソッドを利用する: 行に基づいて行番号を生成するカスタム ヘルパー メソッドを作成します。データ。

以上がMySQL クエリが phpMyAdmin では機能するのに、.NET では失敗するのはなぜですか? それを修正するにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

ソース:php.cn
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
著者別の最新記事
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート