导入Microsoft Access数据库时保留自动编号列的值

Uwe*_*eim 2 sql ms-access identity autonumber

我尝试的是以编程方式从Microsoft SQL Server导入几个表到Microsoft Access.

每个SQL Server表都有一个标识列,以及相应的Access表,一个自动编号列.

现在,我想生成SQL脚本以将数据从SQL Server复制到Access,并使autonumber colum与SQL Server中的值相同.

这可能吗?

当从Access到SQL Server的另一种方式执行时,使用SET IDENTITY_INSERT [MyTable] ON和更高版本相当容易SET IDENTITY_INSERT [MyTable] OFF.

我发现Microsoft Access没有这样的声明.

此外,我尝试创建要导入的Access表,首先将identity字段作为类型导入LONG,然后使用该ALTER TABLE ... ALTER COLUMN语句切换到autonumber.我没有这样做.

所以我的问题:有没有办法实现我的目标?

Raj*_*ore 5

如果您Insert Into在MS Access中使用并指定所有列名称,它应该可以工作.

我刚刚创建了一个具有以下结构的表

Id (autonumber)
Firstname (text)
Secondname (text)
Lastname (text)
Run Code Online (Sandbox Code Playgroud)

我跑了这个声明

docmd.RunSQL "insert into table2 (id, firstname, secondname, lastname) values (27, 'a', 'b', 'c')"

它工作并插入自动编号列27