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>
答案 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);