由於情況不完全在我的控制之下,因此我必須開發ACCESS查詢,這些查詢將存儲在Access 2000 MDB中,但可以在任何一種:訪問2000年,2002年,2003年,2007年,2010年。這些查詢將訪問(通過鏈接表)MS SQL Server數據庫或Access 2000.MDB文件。確保Access 2000 mdb上的SQL-92到Access 2010下的SQL Server
在過去,我們遇到了一些問題,我們追蹤到的查詢不是ANSI-92兼容的。我們通過在「工具」|「選項」對話框的表格/查詢選項卡中標記複選框來解決這個問題(在舊版本的Access 2007以下)。
我們在各種系統之間移動這些Access應用程序.MDB,現在我們通常不會有任何問題。
但是,我剛剛開發了一個適用於所有內部連接的查詢,但是當我將其中一個連接更改爲外部連接時,查詢失敗,Access 2010下出現「無效操作」錯誤。以爲我會檢查ANSI-92複選框是否仍然設置。我找不到它。
現在,我知道Access 2003和更高版本自動使用ANSI 92語法,但我想知道是否有任何方法來檢查這是這種情況(在特定情況下)這些查詢。我觀察到,當我們改變複選框時,我所有的「Like」查詢變成了「ALike」查詢...
所以問題歸結爲ANSI 92語法在這種情況下完全透明,而我的查詢失敗的原因是別的東西......
TIA, 保羅
A2003及更高版本不自動使用ANSI 92語法。你認爲他們做什麼? – 2011-06-17 18:43:52
微軟文檔(我認爲在知識庫文章)。 – PaoloFCantoni 2011-06-22 04:19:20
是Access文檔還是ADO文檔?如果前者,我確定它沒有這麼說 - 我猜它是後者,因爲ADO確實總是使用ANSI 92語法。 – 2011-06-23 01:43:43