在哪里可以找到Jet 4.0引擎使用的特定SQL类型的文档?

Jua*_*uan 5 sql ms-access jet

我认为这与MS Access使用的相同,我认为它与MySQL和其他人使用的不一样.我需要SQL语言的这种特殊"种类"或"子集"的文档.

one*_*hen 4

这里是最新版本的 Access SQL 参考 (Access 2010)。

然而,@Remou 的回答中的指南是 Microsoft 提供的最有用的资源,指出它们已有十多年的历史,并且没有考虑到 Access 2007 ACE 时代所做的更改(即多值数据类型 - 颤抖!)


忠告一句:Access SQL Reference 包含的包含和遗漏错误太多,无法在此处详细说明,因此这里有一个简短的示例:

CREATE TABLE语句(Microsoft Access SQL)

CREATE TEMPORARY TABLEAccess 从来不支持这种语法,而且 Access 甚至没有临时表功能。看起来编写帮助的人从 SQL-92 规范中删除了这一点,认为 Access 兼容 SQL-92!

WITH COMPRESSION仅 Access 的 ANSI-92 查询模式支持语法**。如果指出这一点将会很有帮助。

NOT NULL引用:“您可以在命名子句中使用.. CONSTRAINT,该子句适用于...名为的多字段CONSTRAINT ”——同样,这不是 Access 的功能,尝试使用该语法会生成错误。

DEFAULT: 能够指定一个非常有用DEFAULT为列指定值非常有用,Access 确实支持此语法,但此帮助页面中缺少此语法。

IDENTITY:Access SQL 参考中缺少此关键字,此页面是找到它的合理位置。

CHECK约束:可能是 Access SQL 最强大的功能之一,但几乎完全没有出现在所有Microsoft 文档中,仅在几篇文章中简短提及。

正如我所说,这只是一页!是的,我已经向 Microsoft 和 Access 团队提供了有关这些错误的反馈(事实上,每次他们发布新版本时),但错误仍然存​​在:(


这是指 Access 专有的 ANSI-92 查询模式,不要与 SQL-92 标准混淆。Access 不兼容,而且永远不会兼容 SQL-92,甚至不兼容入门级 SQL-92。Access 团队似乎已从帮助中删除了他们的 ANSI-92 查询模式页面,可能是因为该页面也包含包含错误,例如LIMIT TO nn ROWSAccessORDER BY或其 SQL 语法都不支持。