微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

MS Access 和 ODBC 的 AUTOINCREMENT 列的语法

如何解决MS Access 和 ODBC 的 AUTOINCREMENT 列的语法

在 C# 中将 ODBC JET 4.0 驱动程序与较旧的(Access 2003 或更早版本)MS Access 数据库一起使用。以下工作:

CREATE TABLE [FunkyTable] (FunkyCol INTEGER);
CREATE TABLE [FunkyTable] (FunkyCol INTEGER PRIMARY KEY);

但以下所有操作都失败并出现错误

ERROR [42000] [Microsoft][ODBC Microsoft Access Driver] CREATE TABLE 语句中的语法错误

CREATE TABLE [FunkyTable] (FunkyCol INTEGER AUTOINCREMENT);
CREATE TABLE [FunkyTable] (FunkyCol INTEGER AUTOINCREMENT(1,1) PRIMARY KEY);
CREATE TABLE [FunkyTable] (FunkyCol INTEGER AUTO_INCREMENT);
CREATE TABLE [FunkyTable] (FunkyCol INTEGER AUTO_INCREMENT(1,1) PRIMARY KEY);
CREATE TABLE [FunkyTable] (FunkyCol INTEGER IDENTITY);
CREATE TABLE [FunkyTable] (FunkyCol INTEGER IDENTITY(1,1) PRIMARY KEY);

正确的语法是什么?

解决方法

我认为这就是您要找的:

CREATE TABLE [FunkyTable] (FunkyCol COUNTER);

在此 MS 文档的底部示例中找到详细信息:https://docs.microsoft.com/en-us/office/client-developer/access/desktop-database-reference/create-table-statement-microsoft-access-sql

,

AUTOINCREMENT 是基于 Long Integer 的字段类型,因此 INTEGER AUTOINCREMENT 相当于要求 2 个字段类型。但是,Access 只允许您为每个字段指定一种类型。

包括 PRIMARY KEY 以便该字段将作为正确的 Access 自动编号运行。 (如果没有 PRIMARY KEY,表将接受重复的 FunkyCol 值。)

CREATE TABLE [FunkyTable] (FunkyCol AUTOINCREMENT PRIMARY KEY);

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。