ACCESS中使用SQL語句應注意的地方及幾點技巧

- 中國WEB開發者網絡 (http://www.webasp.net)
-- 技術教程 (http://www.webasp.net/article/)
--- ACCESS中使用SQL語句應注意的地方及幾點技巧 (http://www.webasp.net/article/22/21125.htm)
-- 作者:未知
-- 發佈日期: 2005-04-29
  Create Unique Index iName ON Tab1 (Name);    完成後ACCESS中字段Name索引屬性顯示為 - 有(無重複).    下面的語句刪除剛才建立的兩個索引    Drop Index iDate ON Tab1;    Drop Index iName ON Tab1;      ACCESS與SQLSERVER中的UPDATE語句對比:    SQLSERVER中更新多表的UPDATE語句:    UPDATE Tab1    SET a.Name = b.Name    FROM Tab1 a,Tab2 b    WHERE a.ID = b.ID;    同樣功能的SQL語句在ACCESS中應該是    UPDATE Tab1 a,Tab2 b    SET a.Name = b.Name    WHERE a.ID = b.ID;   即:ACCESS中的UPDATE語句沒有FROM子句,所有引用的表都列在UPDATE關鍵字後.   上例中如果Tab2可以不是一個表,而是一個查詢,例:    UPDATE Tab1 a,(Select ID,Name From Tab2) b    SET a.Name = b.Name    WHERE a.ID = b.ID;      訪問多個不同的ACCESS數據庫-在SQL中使用In子句:    Select a.*,b.* From Tab1 a,Tab2 b In 'db2.mdb' Where a.ID=b.ID;    上面的SQL語句查詢出當前數據庫中Tab1和db2.mdb(當前文件夾中)中Tab2以ID為關聯的所有記錄.   缺點-外部數據庫不能帶密碼.      在ACCESS中訪問其它ODBC數據源   下例在ACCESS中查詢SQLSERVER中的數據    SELECT * FROM Tab1 IN [ODBC]    [ODBC;Driver=SQL Server;UID=sa;PWD=;Server=127.0.0.1;DataBase=Demo;]   外部數據源連接屬性的完整參數是:    [ODBC;DRIVER=driver;SERVER=server;DATABASE=database;UID=user;PWD=password;]   其中的DRIVER=driver可以在註冊表中的    HKEY_LOCAL_MACHINE OFTWARE\ODBC\ODBCINST.INI\   中找到     ACCESS支持子查詢     ACCESS支持外連接,但不包括完整外部聯接,如支持    LEFT JOIN 或 RIGHT JOIN   但不支持   FULL OUTER JOIN 或 FULL JOIN     ACCESS中的日期查詢   注意:ACCESS中的日期時間分隔符是#而不是引號    Select * From Tab1 Where [Date]>#2002-1-1#;   在DELPHI中我這樣用    SQL.Add(Format(    'Select * From Tab1 Where [Date]>#%s#;',    [DateToStr(Date)]));     ACCESS中的字符串可以用雙引號分隔,但SQLSERVER不認,所以為了遷移方便和兼容,   建議用單引號作為字符串分隔符.

webasp.net