C#でMySQLと接続しデータを数値として取得したいです。
すごく初歩的な質問かもしれません。
SELECT文でデータを取得する(DataReader)
(↑http://okwakatta.net/code/ado04.html)
上記のURLの内容にしたがって実行したプログラムは正常に動作しました。
SQLからテーブル行数を数値(int型)として取得したいのですが、
キャストの部分でコンパイルエラーになります。
string型でもエラーになります。
(そのプログラム一部抜粋)
(関数や参照などをMySQLで使用できるものに直しています。)
C#
1 //変数 2 string linecount = string.Empty; 3 // SELECT文を設定します。 4 command.CommandText = "SELECT count(*) FROM test"; 5 // SQLを実行します。 6 reader = command.ExecuteReader(); 7 // 結果を表示します。 8 while (reader.Read()) 9 { 10 11 linecount = (string)reader.GetValue(0); //ここでエラーが出ます。 12 Console.WriteLine(linecount); 13 14 }
エラー文は
型 'System.InvalidCastException' のハンドルされていない例外が ConsoleApplication2.exe で発生しました
追加情報:型 'System.Int64' のオブジェクトを型 'System.String' にキャストできません。
冒頭のURL中のプログラムでは
stringでキャストして問題なく実行できました。
intでキャストも試しましたが同じエラーがでました。
何が問題でどうすれば解決できるか教えてください。お願いします。
回答1件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
2015/08/18 05:10