我尝试了Query(在下面的代码中给出)但是它显示了这个错误
No value given for one or more required parameters.
但在调试时我将日期作为此
传递string monthYY = dateTimePickerMonth.Value.ToString("M-yy");
那么检查它的正确格式是什么,我该怎么做?
查询代码
public int GetDrID_MonthWise(string DrName,string monthYY,int refDrID)
{
int data = 0;
try
{
string sql = "Select d.DoctorID From Doctor_Master d where d.LastName + ' ' + d.FirstName = '" + DrName + "' AND Patient_registration.RegDate='" + monthYY + "' AND Patient_registration.DoctorID=" + refDrID;
cmd = new OleDbCommand(sql, acccon);
rs = cmd.ExecuteReader();
while (rs.Read())
{
data = Convert.ToInt32(rs[0]);
}
}
catch (Exception err)
{
MessageBox.Show(err.Message.ToString());
}
return data;
}
答案 0 :(得分:2)
这段SQL语句通知数据库引擎Doctor_Master
是数据源:
From Doctor_Master d
但是,WHERE
子句引用了Doctor_Master
中不存在的2个字段:
Patient_registration.RegDate
Patient_registration.DoctorID
我不确定你真正需要什么。我的预感是你应INNER JOIN
这些表。但我认为您应该在Access中设计和测试查询,将c#留在图片之外,直到您按照自己的意愿运行Access查询。
答案 1 :(得分:0)
我不确定您是如何传递参数的,但是您需要为列出的所有三个参数指定值
public int GetDrID_MonthWise(string DrName,string monthYY,int refDrID)