問題タブ [mysqldatareader]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
c# - C# は DB の内容をリストに格納します
C# コード:
目的:
私のコードで達成したいことは次のとおりです。
-DBのコンテンツをリストに格納し、リストを出力します。
ただし、これは私が得る出力です:
OUTPUT = "詳細は MySQL.Data.MySqlClient.MySqlDataReader"
mysql - リーダーで Close() を呼び出した後、MySqlDataReader が閉じない
バグが発生しているのか、それともどのように機能するのかわかりません。そのため、最近、この例外を解決しようとしておりMySql.Data.MySqlClient.MySqlException: 'There is already an open DataReader associated with this Connection which must be closed first.'
、何が起こっているのかを確認するためにデバッグ セッションを開始しました。私が見たものは、私の頭の中で完全に計算されていません (添付のスクリーンショットを参照)。
を呼び出した後reader.Close()
、プロパティIsClosed
は false のままになり、(即時ウィンドウで) を繰り返し呼び出して.Close()
もそれは変わりません。
これは予期された動作であり、私の問題は別の場所にありますか? それとも、これはバグであり、例外の原因ですか?
これは、MySql.Data
現時点で .NET Standard をサポートしている唯一の v6.10.3-rc (nuget.org から) を使用している場合に発生します。また、コードは .NET Core 2.0 アプリにコンパイルされます。
UPD :周りにはタスクがありますが、リーダーはメインスレッドからのみ操作されます。また、reader
は として宣言されDbDataReader
、そこからMySqlDataReader
が継承されます。
UPD2 : どうやら、 を呼び出す((MySql.Data.MySqlClient.MySqlDataReader)reader).Close()
と、リーダーが適切に閉じます。コネクタのバグと、それらが仮想メソッドを使用する方法のように見えます。右?
ado.net - Mysqldatareader がレコードをまったく返さない
私のクラスには、クエリ文字列を取得して 2 次元オブジェクト配列を返す関数があります。
最初に156000レコードを返すクエリを提供すると。(MySQL のヒキガエル)、オブジェクト配列には 71875 レコードのみが含まれます。DataReader の制限によるものですか、それともオペレーティング メモリのリークによるものですか? 例外はスローされません。
何か案は?
c# - ADO DataReader を GridView にバインドする
ADO クエリから回復したデータをバインドしようとすると、別のアプローチ (dataTable、DataView などを使用) を試した後、同じエラーが発生します。私が最後に使用したのは次のものです。
私が使用した別のアプローチは次のとおりです。
すべての場合に返されるエラーは次のとおりです。
System.InvalidOperationException: 'データ ソースからテーブルを特定できません。MetaTable.MapTable メソッドを使用して、データ ソースと MetaTable インスタンス間の関連付けを確立します。