ACCESS資料庫比較日期和時間

2022-04-09 03:51:59 字數 1464 閱讀 6114

**系統使用access資料庫時,查詢時怎麼比較日期和時間呢?為什麼常常比較出來卻是錯誤的呢?比如早的日期比遲的日期大?

在asp中先做乙個小測試,就是比較兩個日期,**如下:

"2007-10-01"%>

結果顯示為:true

奇怪了,為什麼大日期還小呢?把日期的雙引號去掉,還是返回:true

那是怎麼回事呢?原來是單純時間或用雙引號括起來,在asp中不代表時間,時間需要用兩個井號(#)括起來,如下:

#2007-10-01#%>

這回就返回false了,證明時間比較已經正確。

所以在asp中需要用井號括起來。asp還有其他日期函式用來做比較的,那就是:datediff,語法如下:

datediff( 間隔字元, 日期1, 日期2 [,firstdayofweek[, firstweekofyear]])

一般使用 datediff( 間隔字元, 日期1, 日期2) 就足夠了。

解釋一下:此函式返回間隔的日期或時間,返回的是年、月、日就要設定間隔字元了,比如間隔字元為:"yyyy" 就表示比較年份, "d" 比較日期,"m" 比較月份,如果日期1晚於日期1,那麼會返回負數。

舉個例子:

結果是:-8

access查詢中怎麼寫日期比較的sql語句?

1、首先在設計access資料表時,日期字段必須為:日期/時間,如果字段型別為字元等,日期比較時會不正確。

2、sql語句例子(查詢比指定日期後的記錄):

**一select * from 表名 where datediff( "d", 日期字段列名, #指定日期#) <= 0

**二select * from 表名 where 日期欄位列#指定日期#

注意指定日期兩邊要用井號括起來的。

我要實現乙個表單輸入像"1963-7-13 17:00:00"怎麼判斷,最重要的問題是

我要怎麼才能驗證表單裡面的時間不能小於現在的時間。也就是不能小於now(),謝謝大家了。解決以後你可以向我提追加分的要求。

字串轉化為時間型別,在asp裡用強制型別轉換cdate

請看例子:

aaa="2963-7-13 17:00:00"

bbb=now()

if cdate(aaa)>bbb then

response.write("表單的時間大")

else

response.write("表單的時間小")

end if

我有一段**可以實現:

當網頁中某會員生日與系統時間相等時,可以彈出乙個對話方塊

但是當網頁中沒有會員生日與系統時間相等時,怎麼顯示是空白啊,就是什麼都沒有?

不知道**出問題,或者大家還有更好的方法(有**最好了)

我是新手分數不多,大家幫幫忙啊!!!

sql="select * from user "

rs.open sql,conn,1,1

%>

判斷最近乙個星期資料顯示》

資料庫對日期進行比較

資料庫對日期進行比較 原則是先把兩個日期的格式統一一下,然後把日期字串轉化為日期,最後進行比較 轉化為日期的兩個時間可以做加減運算得出的結果為天數.結果 24則得出的是小時數 結果 24 60得出的是分鐘數 結果 24 60 60得出的是秒數 ceil to date to char sysdate...

連線ACCESS資料庫

1 匯入命名空間空間 system.data.oledb 2 建立指向資料庫的連線 建立連線要用到system.data.oledb命名空間中的類 oledbconnection。通過以下語句可以完成對本地資料庫的連線工作 string strconnect provider microsoft.j...

access資料庫連線

string strconnection provider microsoft.jet.oledb.4.0 strconnection data source e accesstest data.mdb 裡用的是?路徑 oledbconnection objconnection new oledbc...