Microsoft Jet 數(shù)據(jù)庫引擎 SQL通常屬于 ANSI-89 Level 1。然而,ANSI SQL 的某些功能在 Microsoft Jet SQL 中沒有實現(xiàn)。隨著 Microsoft Jet 4.X 版的發(fā)行,可以看出 Microsoft OLE DB Provider for Jet 使用了更多的 ANSI-92 SQL 語法。相反地,在 ANSI SQL 中也不支持 Microsoft Jet SQL 所包含的某些保留字和性能。
? | Microsoft Jet SQL 和 ANSI SQL 都有不同的保留字和數(shù)據(jù)類型。欲知更多信息請看 Microsoft Jet 數(shù)據(jù)庫引擎 SQL 保留字s和等效的 ANSI SQL數(shù)據(jù)類型。將 Microsoft OLE DB Provider for Jet 與 Jet 4.X 協(xié)同使用,會有額外的保留字。 |
? | Between...And 的構(gòu)造應(yīng)用了不同的規(guī)則,語法如下: |
expr1 [NOT] Between value1 And value2
在 Microsoft Jet SQL 中,value1 可以大于 value2; 而在 ANSI SQL 中,value1 則必須等于或小于 value2。
? | Microsoft Jet SQL支持 ANSI SQL 通配符 和 Microsoft Jet-specific 通配符與 Like 運(yùn)算符一起使用。 ANSI或 Microsoft Jet 通配符 是互相排斥的。你只能用其中一組,不能同時使用。僅當(dāng)使用 Jet 4.X 和 Microsoft OLE DB Provider for Jet 時,ANSI SQL 通配符才可用。若嘗試通過 Microsoft Access 或 DAO 使用 ANSI SQL 通配符,則會將其解釋為原義字符。當(dāng)使用 Microsoft OLE DB Provider for Jet 和 Jet 4.X 時,情形恰好相反。 |
符合字符 |
Microsoft Jet SQL |
ANSI SQL |
任何單一字符 |
? |
_(下劃線) |
零個或多個字符 |
* |
% |
? | Microsoft Jet SQL 通常限制的比較少。例如,它允許在表達(dá)式中進(jìn)行分組和排序。 |
? | Microsoft Jet SQL 提供了更強(qiáng)有力的表達(dá)式。 |
Microsoft Jet SQL 提供了下列加強(qiáng)功能:
? | 附加合計函數(shù)s, 如 StDev 和 VarP |
PARAMETERS說明語句定義參數(shù)查詢
Microsoft Jet SQL 不支持下列 ANSI SQL 的功能:
? | DISTINCT 合計函數(shù)引用。例如,Microsoft Jet SQL 不允許 SUM(DISTINCT 字段名)。 |
? | 用來限制查詢返回行數(shù)的 LIMIT TO nn ROWS 子句。你可以只用 WHERE 子句限定查詢的范圍。 |