Access與sql server在查詢中處理BIT / BOOLEAN 邏輯字段不衕之處

2002-04-07 19:27:00
大熊-Office交流網
原創
1872
1.在Access中可以用下麵的查詢語句:
SELECT field FROM table WHERE boolField=TRUE 
-- or 
SELECT field FROM table WHERE boolField=FALSE 
2.這兩條語句在SQL Server中通不過,所以要改成下麵的形式:
SELECT field FROM table WHERE bitField=1 
-- or 
SELECT field FROM table WHERE bitField=0
3.令人煩惱的是上麵這兩條語句在Access中也會齣問題,因爲Access把-1當作True,而不是1。在搞清楚瞭這箇問題後,我們可以寫齣在兩種環境中都能運行的查詢語句:
SELECT field FROM table WHERE bitField<>0 
-- or 
SELECT field FROM table WHERE bitField=0 

tmtony
我也是這麽做的
當年花很多時間調錯就是在這裡, 常常是-1 和1 在搗鬼

 
huanghai
我的不知道怎麽迴事時用文本框的值等於選擇框,結果是-1還是true什麽的就知道瞭:)

zhuyiwen
隻能這麽做, 這是沒有辦法的事情, 兩種語言定義的不一樣

(相關查詢-相關文章技巧鏈接):
MS Jet SQL for Access 2000中級篇 (II)
MS Jet SQL for Access 2000中級篇
分享