C#を使用してMySQL DBからデータを取得しようとしましたが、Int32.Parse()
メソッドを使用するとInvalidCastException
が返されます。 これは私のコードです:あなたは2つだけの値が必要な場合はいけないデータベースの応答でInvalidCastExceptionが発生しました。C#
MySqlConnection conn = new MySqlConnection("SERVER=localhost;database=my_db;uid=root;password=");
MySqlCommand cmd = new MySqlCommand();
try
{
conn.Open();
String query = "SELECT * FROM sale;";
MySqlCommand qrycmd = new MySqlCommand(query, conn);
MySqlDataReader reader = qrycmd.ExecuteReader();
while (reader.Read())
{
String nome = (String) reader["nome"];
int id = Int32.Parse((String) reader["id"]);
}
}
catch (MySqlException e)
{
}
finally
{
if (conn!=null)
conn.Close();
}
しかし、私はString
に(Object
です)reader["id"]
を唱えた場合、それが動作しない理由を私は見ることができない...
'リーダー[「ID」]'の値は何ですかを使用することでも良いですか? –
@Pietroいいえ、それは 'int' *型です。その* value *は何ですか? – Scott
私はデータベースに2行あり、最初は 'id'フィールドに3を含み、もう1つは4です。 – Pietro