我有一個VB應用程序和MS Access數據庫作爲後端。我想將我的db上的所有記錄顯示到具有當前系統日期的Datagrid。 我在我的sql語句中遇到問題我不知道該怎麼做。Sql表達式篩選具有當前系統日期的記錄
它顯示錯誤「Dataype不匹配的條件表達式」
sqlqry = "Select * FROM tblAttendance WHERE WorkingDate >= '#" &
DateTime.Now.ToShortDateString() & "#'"
da = New OleDbDataAdapter(sqlqry, cnn)
Dim dt As New DataTable("tblAttendance")
da.Fill(dt)
Me.dgvAttendance.DataSource = dt
DataGridProperty(dgvAttendance)
DataGridAttendance(dgvAttendance)
刪除單引號 –
[在MS Access 2013中使用SQL比較日期和當前日期](http://stackoverflow.com/questions/22895095/compare-date-with-current-date-using-sql -in-ms-access-2013) –
刪除整個日期表達式並使用內置的Date()函數,例如'WHERE WorkingDate()> = Date()'。你應該避免不惜一切代價使用字符串連接,因爲這會暴露你們對SQL注入攻擊,性能差和*格式不匹配的問題 - 「ToShortDateString」使用當前系統的語言環境,可能*不匹配日期文字格式。 –