作者在Access數據庫程序項目開發過程中,遇到了幾個問題,讓我糾結了許久,特拿出來備忘,希望對大家有用。這些問題都是因為access數據庫的自身特性造成的。
1、Access 不支持top 0,如果用top 0,要麼返回空表(無表結構、無字段),要麼出錯。所以分頁查詢時需要判斷先。
2、access數據庫不支持不等於(“!=”)語法,需要改為“<>”。汗,這個和sql server等還是不一樣的,害得我查了好久。。
3、如果排序列有重復值,用select top取前幾條會錯亂,有時候會把所有數據查出來了。解決方法:
a) select top 10 ID,Title,CreateTime,Click from News ORDER BY Click DESC 這句寫法咋一看 很多人都覺得會沒問題 很可惜出現了我剛描述的排序問題
解決方法 select top 10 ID,Title,CreateTime,Click from (select ID,Title,CreateTime,Click from News ORDER BY Click DESC) AS TABLERSULT
也就是用兩個select嵌套查詢就可以了。雖然性能方面有損失,但是目前看來也只能這樣了。
關鍵詞: