如何从数据库中检索数据
本文关键字:检索 数据 数据库 | 更新日期: 2023-09-27 18:05:22
在我的数据库表中我有两列:pagename
和pageinfo
。当我通过pagename
时,我想检索数据。我使用的代码是我今天从Stackoverflow得到的,但是代码中的一些问题抛出了一个错误:
类型为'System '的异常。在System.Data.dll中发生了InvalidOperationException,但未在用户代码中处理。附加信息:当没有数据时,尝试读取无效。)
这是代码:
public string GetPageInfo(string filenames)
{
SqlConnection con = new SqlConnection("Data Source=.;Initial Catalog=.;Integrated Security=True");
con.Open();
SqlCommand command = new SqlCommand("Select pageinfo from T_Pages where pagename=@filenames", con);
command.Parameters.AddWithValue("@filenames", filenames);
// int result = command.ExecuteNonQuery();
using (SqlDataReader reader = command.ExecuteReader())
{
return reader["pageinfo"].ToString(); ;
}
// return string GetPageInfo;
}
这是因为:
return reader["pageinfo"].ToString();
如果reader["pageinfo"]为null,则ToString()将抛出异常。
将上面一行替换为:
if(reader["pageinfo"] != null)
{
return reader["pageinfo"].ToString();
}
else
{
return "";
}
或使用空条件运算符:
return reader["pageinfo"]?.ToString();
编辑
您还需要在返回
之前添加Read()reader.Read();
return reader["pageinfo"]?.ToString();