为什么我会收到这个错误?
输入的字符串格式不正确。
我正在尝试根据 ID 从选定的列中获取数据。
代码是:
protected void Page_Load(object sender, EventArgs e)
{
SqlConnection conn = new SqlConnection(ConfigurationManager.ConnectionStrings["Connection"].ConnectionString);
SqlCommand cmd = new SqlCommand("SELECT Date,Day,Time,Total FROM RSVP WHERE Id = @dummy", conn);
conn.Open();
cmd.Parameters.Add("@dummy", SqlDbType.Int).Value = Label2.Text;
var dr = cmd.ExecuteReader();
if (dr.HasRows == false)
{
throw new Exception();
}
if (dr.Read())
{
Label8.Text = dr[0].ToString();
Label9.Text = dr[1].ToString();
Label10.Text = dr[2].ToString();
Label11.Text = dr[3].ToString();
}
行错误
var dr = cmd.ExecuteReader();
我的id是INT数据类型,是PK。谢谢。
最佳答案
转义查询中的关键字:
"SELECT [Date],[Day],[Time],Total FROM RSVP WHERE Id = @dummy"
将您的数据转换为 和 int。
cmd.Parameters.Add("@dummy", SqlDbType.Int).Value = Convert.ToInt32(Label2.Text);
关于c# - 显示来自 SQL 的数据时出错,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12421467/