データベースからデータを表示しようとしています。ただし、データベースにデータが存在しても、レコードは返されません。私が返されますC#データベースから返されたデータがありません - "データが存在しないときに読み込みが無効です"
select Id, Movie_Name from [MovieTable] where Movie_Name like '10,000 BC'
::次のクエリを実行した場合
は、C#の何で同様のクエリを実行している場合しかし、
を返されているように見えます。私のコードは次の通りです:
try
{
string query = "select * from [MovieTable] where Movie_Name like @MovieName";
string movieName = "10,000 BC"
using (SqlConnection sconnection = new SqlConnection(@"Data Source=(LocalDB)\MSSQLLocalDB;AttachDbFilename=E:\Application\ApplicationDatabase.mdf;Integrated Security=True");)
using (SqlCommand command = new SqlCommand(query, sconnection))
{
sconnection.Open();
command.Parameters.AddWithValue("@MovieName", movieName);
using (SqlDataReader oReader = command.ExecuteReader())
{
if (oReader != null)
{
while (oReader.Read())
{
MessageBox.Show(oReader["Movie_Name"].ToString());
}
}
}
}
}
catch (Exception e)
{
MessageBox.Show(e.ToString());
}
メッセージボックスは表示されません。 oReader.Read()のすぐ上に3番目のメッセージボックスを追加すると、 "データが存在しないときに読み込みが無効です"というメッセージが表示されます。私は行方不明のものがありますか?
このメッセージは、データを読み込む前にデータウェアハウスからデータを要求することができません。 MessageBoxはコードをデバッグする恐ろしい方法です – Plutonix
これはWindowsフォームアプリケーションです。年の値を変数に代入してそこにブレークポイントを指定すると、何が表示されますか? –
whileループに入っていないようなものは何もありません – difurious