加载表单后,执行以下代码:
Try
MyConn2.Open()
da2 = New OleDbDataAdapter("Select * from tbl_bookings WHERE DateOfBooking = " & DateTime.Today, MyConn2)
ds2 = New DataSet
da2.Fill(ds2)
DataGridView3.DataSource = ds2.Tables(0)
MyConn2.Close()
Catch ex As Exception
If MyConn2.State <> ConnectionState.Closed Then MyConn2.Close()
End Try
这应该检索所有结果,其中预订栏的日期与今天(当前日期)的日期相同。
尽管如此,datagridview不会抛出任何错误,但只将字段名称加载到datagridview中,而不是满足规范的条目(具有当前日期的条目)。
任何帮助都将不胜感激,谢谢。
答案 0 :(得分:0)
我不了解vb.net,但是从SQL方面来说,这可能是因为您试图将日期值(例如,2015年4月20日)与日期时间值(例如,4/20)进行比较/ 2015年上午11:57)。这种比较将查看第一个日期的时间部分为午夜(2015年4月20日上午12:00),因此不返回任何匹配项。
如果表中的任何值有时间,或者您的vb函数返回的时间不是午夜,请尝试使用以下内容替换SQL:
"Select *
from tbl_bookings
WHERE CAST(DateOfBooking AS DATE) = CAST('" & DateTime.Today & "' AS DATE)", MyConn2
答案 1 :(得分:0)
我认为你需要在日期附近单引号
da2 = New OleDbDataAdapter("Select * from tbl_bookings WHERE DateOfBooking = "' & DateTime.Today & "'", MyConn2)