比較 Microsoft Access SQL 和 ANSI SQL

Microsoft Access 資料庫引擎 SQL 通常符合 ANSI -89 Level 1 規範。 不過,某些 ANSI SQL 功能並未在 Microsoft Access SQL 中執行。 此外,Microsoft Access SQL 包含 ANSI SQL 不支援的保留字和功能。

主要差異

  • Microsoft Access SQL 和 ANSI SQL 各自有不同的保留字和資料類型。 使用 Microsoft OLE DB 提供者,有額外的保留字。

  • 不同的規則適用于 Between...以及 具有下列語法的建構:

    expr1 [NOT] Between value1 And value2

    在 Microsoft Access SQL 中 ,value1 可以大於 value2;在 ANSI SQL 中 ,value1 必須等於或小於 value2。

  • Microsoft Access SQL 同時支援 ANSI SQL 萬用字元和 Microsoft Access 專用 萬用字元 Like運算子使用。 ANSI 和 Microsoft Access 萬用字元的使用互斥。 您必須使用一組或另一組,而且無法混合使用。 ANSI SQL 萬用字元只有在使用 Microsoft Access 資料庫引擎和 Microsoft Access OLE DB 提供者時才能使用。 如果您嘗試透過或 DAO 使用 ANSI SQL 萬用字元 Access ,這些萬用字元會解譯為文字。

    比對字元

    Microsoft Access SQL

    ANSI SQL

    任何單一字元

    ?

    _ (上)

    零個或多個字元

    *

    %

  • Microsoft Access SQL 通常較不嚴格。 例如,它可以在運算式上分組和排序。

  • Microsoft Access SQL 支援更強大的運算式。

Microsoft Access SQL 的增強功能

Microsoft Access SQL 提供下列增強功能:

TRANSFORM 語句,提供交叉資料表查詢的支援。

  • 其他 SQL 匯總函數,例如StDev 和VarP。

用於定義參數查詢的 PARAMETERS 宣告。

Microsoft Access SQL 不支援 ANSI SQL 功能

Microsoft Access SQL 不支援下列 ANSI SQL 功能:

  • DISTINCT 匯總函數參照。 例如,Microsoft Access SQL 不允許 SUM (DISTINCT欄名) 。

  • 用來限制查詢所返回之列數的 LIMIT TO nn ROWS 子句。 您僅能使用 WHERE 子句 來限制查詢的範圍。

需要更多協助?

增進您的 Office 技巧
探索訓練
優先取得新功能
加入 Office 測試人員

這項資訊有幫助嗎?

×