岩崎さん
始めまして、志澤と申します。
C# のMySQLDataReaderでは、
取得行の有無はHasRowsプロパティで確認出来ますが、
行数までは取得出来ません。
取得対象行数等にもよりますが、
.NETの場合、DataTableへ一度格納するなどであれば、
DataTable.Rows.Countで取得可能です。
従い、
手法の見直しをご検討される事をお勧めします。
以上、
ご参考になれば幸いです。
尚、
FieldsCountはカラム方向での件数となるとの記憶です。
(2013/05/20 15:08), 當山正一 wrote:
岩崎さん、
當山と申します。 初めまして。
データ件数ですが、FieldCountとというMySQLDataReaderのプロパティは使えないでしょうか?上記のコードですと、myReader.FieldCountでデータ件数が取得できるはずです。
2013年5月20日 14:35 岩崎 誠司 <iwasaki_ryuqseed_6130@yahoo.co.jp>:
岩崎です。
皆様、ご無沙汰しております。
今まではC APIでSQL処理をしていましたが、
今度、C# + MySQL Connector/NETを使う必要に迫られ
四苦八苦しております。
どうしても情報を見つけることができませんでしたので
皆様のお力添えをお願いします。
下記のようにしてデータを取得することはできましたが、
データ件数の取得方法がわかりません。
C APIならmysql_num_rows()でデータ件数を取得できますが、
MySQL Connector/NETで件数を取得する方法はありますでしょうか?
ご教授のほどよろしくお願いします。
尚、データや件数を含めてクラス化したいと考えていますので
"SELECT COUNT(*) ..."以外でお願いできたらと思います。
string mySelectQuery = "SELECT OrderID, CustomerID FROM Orders";
MySqlConnection myConnection = new MySqlConnection(myConnString);
MySqlCommand myCommand = new MySqlCommand(mySelectQuery,myConnection);
myConnection.Open();
MySqlDataReader myReader;
myReader = myCommand.ExecuteReader();
// Always call Read before accessing data.
while (myReader.Read()) {
Console.WriteLine(myReader.GetInt32(0) + ", " + myReader.GetString(1));
}
// always call Close when done reading.
myReader.Close();
// Close the connection when done with it.
myConnection.Close();
開発環境
Windows7 641bit
MySQL Connector/NET 6.6.5
Visual C#2012
--