选择amountofpersons,其中日期和分隔时间与sql日期/分隔时间C#进行比较

时间:2011-11-18 12:16:54

标签: c# sql date time datetimepicker

connect.Open();
dtpTime.CustomFormat = "H:mm";
dtpDate.CustomFormat = "M/d/yyy";

int plaatsen=50;
int personennu=0;

dbreader = null;
dbcommand = new OleDbCommand("SELECT aantalpersonen FROM bestelling WHERE datum="+dtpDate.Text+" ", connect);

dbreader = dbcommand.ExecuteReader();
while (dbreader.Read())
{
    personennu = personennu + Convert.ToInt32(dbreader.GetValue(0));
}
if (personennu < plaatsen)
{
    lblPersonen.Text = (plaatsen - personennu).ToString();
}
else 
{
    lblPersonen.Text = "unavailable"; 
}
connect.Close();

我正在尝试比较一个日期时间选择器和一个sql(oledb),这样我就可以从我的桌子上取回一定数量的人(荷兰语中的aantalpersonen)。它必须比较一天和一小时,所以如果一个人在2010年11月18日9点钟开始,我将它与10点之一比较它应该给我的地方(plaatsen in dutch)回来,但是如果没有剩下的地方(超过50个地方)那么它应该说不可用,但我似乎无法得到c#的时间日期与sql的时间和日期正确它现在给我所有时间50。< / p>

1 个答案:

答案 0 :(得分:1)

让它运作

dbcommand = new OleDbCommand("SELECT aantalpersonen FROM bestelling WHERE datum=@mydate ",connect); 
OleDbParameter myParam = new OleDbParameter();
myParam.ParameterName = "@mydate"; 
myParam.OleDbType = OleDbType.DBDate; 
myParam.Value = dtpDate.Value; 
MessageBox.Show(myParam.Value.ToString()); 
dbcommand.Parameters.Add(myParam);