데이터베이스에서 데이터를 표시하려고합니다. 그러나 데이터가 데이터베이스에 존재하더라도 레코드는 리턴되지 않습니다. 내가 반환받을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() 바로 위에 세 번째 메시지 상자를 추가하면 "데이터가 없으면 읽을 수 없습니다."라는 메시지가 표시됩니다. 내가 누락 된 것이 있습니까?
데이터가 읽히기 전에 데이터 아 래어에서 데이터를 요청할 수 없다는 메시지가 표시됩니다. MessageBox는 코드를 디버그하는 끔찍한 방법입니다. – Plutonix
이것은 Windows 폼 앱입니다. 변수에 연도 값을 입력하고 거기에 중단 점을 지정하면 그 변수는 무엇을 표시합니까? –
while 루프를 입력하지 않는 것 같지 않습니다. – difurious