获取特定月份和年份的数据

时间:2013-10-16 15:28:45

标签: c# ms-access

我尝试了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;
        }

2 个答案:

答案 0 :(得分:2)

这段SQL语句通知数据库引擎Doctor_Master是数据源:

From Doctor_Master d

但是,WHERE子句引用了Doctor_Master中不存在的2个字段:

  1. Patient_registration.RegDate
  2. Patient_registration.DoctorID
  3. 我不确定你真正需要什么。我的预感是你应INNER JOIN这些表。但我认为您应该在Access中设计和测试查询,将c#留在图片之外,直到您按照自己的意愿运行Access查询。

答案 1 :(得分:0)

我不确定您是如何传递参数的,但是您需要为列出的所有三个参数指定值

public int GetDrID_MonthWise(string DrName,string monthYY,int refDrID)