vb.net 및 ms 액세스 2003을 백엔드로 사용하고 있습니다. 나는 아래와 같이 SQL 쿼리를 사용할 때 내 결과에 어떤 레코드도 얻지 못하고있다. 현재 날짜보다 낮은 날짜 (또는 이전 날짜)의 레코드를 찾으려고합니다. 예를 들어DATETIME SQL 문을 사용하는 경우 VB.Net에서 MS Access 데이터베이스의 형식 문제가 발생합니다.
Dim Sql, CurrentDate as String
Dim TrDate as Date
Dim DataVal As Integer
TrDate=DateTime.Now
CurrentDate=Format(TrDate, "dd/MM/yyyy hh:mm:ss tt")
Sql="Select count(*) from Table1 where InvDate<=#" & CurrentDate & "#"
IF DBConOpen()=True
cmdOledb.CommandText = sql
cmdOledb.CommandType = CommandType.Text
cmdOledb.Connection = ConOledb
DataVal = cmdOledb.ExecuteScalar
msgbox(DataVal)
End IF
내 현재 날짜가 .. 2012년 12월 9일 01/09/2012 또는 2012년 2월 9일 또는 경우 및 데이터베이스의 날짜는 01/09/2012 또는 2012년 2월 9일입니다 또는 .. 12/09/2012. 각각의 레코드 수를 얻어야합니다. 하지만이 경우에는 0 레코드를 얻습니다.
그러나 현재 날짜가 2012 년 1 월 9 일 또는 02/09/2012 또는 2012 년 12 월 9 일이고 데이터베이스의 날짜가 20/08/2012 또는 15/06/2012 또는 30 일인 경우 2012 년 5 월 5 일 올바른 레코드 수를 얻고 있습니다.
MS 액세스 테이블에 정의 된 날짜 형식은 '일반 날짜'입니다. 누구라도 잘못된 점을 발견 할 수 있습니까?