运行此代码时,我收到错误,显示“=”附近的语法不正确,突出显示“SqlDataReader drs = cmd.ExecuteReader();” 真的很令人惊讶,现在仍然坚持这个......需要帮助。!!!
public void nextCourseDisplay(string crscode)
{
SqlCommand cmd = new SqlCommand();
string count = string.Empty;
cmd.Connection = CPublic.Comm_con;
cmd.CommandType = CommandType.Text;
cmd.Parameters.AddWithValue("@CID",crscode);
cmd.CommandText = "select RECNO from COURSEMASTER" + CPublic.g_firmcode + "where CID = @CID";
SqlDataReader drs = cmd.ExecuteReader();
if (drs.HasRows)
{
if (drs.Read())
{
count = drs.GetString(0);
}
drs.Close();
}
}
答案 0 :(得分:5)
在where
之前为SQL语句添加额外空格:
"select RECNO from COURSEMASTER" + CPublic.g_firmcode + " where CID = @CID"
^
如果您执行此操作,CPublic.g_firmcode
的值将与where
分开。否则where
是您的表名的一部分。
答案 1 :(得分:0)
crscode有什么价值?如果它是一个空字符串或null我想sql解释器将无法正常工作,并为您提供错误。
答案 2 :(得分:0)
检查你的sql语句,并在执行之前尝试打印cmd.CommandText!