我从表PatientInfo
使用此代码获取最大ID
:撷取MAX ID引起的异常
private void LoadID()
{
string query = "SELECT MAX(ID) FROM PatientInfo";
using (SqlConnection cn = new SqlConnection(constr))
using (SqlCommand cmd = new SqlCommand(query, cn))
{
cn.Open();
SqlDataReader reader = cmd.ExecuteReader();
if (reader.HasRows)
{
while (reader.Read())
{
txtid.Text = reader["ID"].ToString();
}
}
else
{
// other code
}
reader.Close();
cn.Close();
}
}
因为我得先检查任何记录是否存在或不是,我使用的是reader.HasRows
。之后,代码应该获得ID并将其放入文本框。但事实并非如此。这是投掷IndexOutOfRangeException
。我无法弄清楚为什么。
在我的数据库中,我插入了一条记录。但它仍然给出相同的结果在两个条件(1.当我没有数据在表和2.当我有数据在表)
其次,我想手动输入数据在表中,但它是什么都不做,并说以后的事
,因此,没有数据被添加
请添加在这个问题中使用的编程语言,我认为它是C# –
使用ExectueScalar可以简化你的代码很多。 – Carra
oops。是的,它的c# – SidraM