使用 MS Access 查询自动递增我的主键

Using a MS Access query to auto increment my primary key

我正在使用在 table 中没有主键的 MS Access 数据库(我很清楚这是一种糟糕的做法)。该数据库建立在 4 个链接的 tables(数据每天从 excel 文件导入)和创建临时 tables 的查询上。我已经使用 alter table 将主键添加到创建的 table 之一。因此,table是每天通过查询生成的,然后添加一个主键。无论如何,它会自动递增吗?目前我的 table 有 15k 条记录,但我的主键列是空的。这对于新查询以创建连接等是必不可少的。 我不知道VBA。

我试过这个(和类似的变体)

Alter Table Unified_Backlog_Shipping_Table
Add P_Key Number AUTOINCREMENT;

您必须将 AUTOINCREMENT 字段声明为 PRIMARY KEY 才能使其正常运行。仅 AUTOINCREMENT 本身是不够的。

这个来自 Access 2010 即时 window 的示例实现了我认为您想要的:添加自动编号字段并为任何现有行填充。

strSQL = "ALTER TABLE Unified_Backlog_Shipping_Table" & vbCrLf & _
    "ADD COLUMN P_Key AUTOINCREMENT PRIMARY KEY;"
CurrentDb.Execute strSQL

我自己解决了。如果有人有类似的问题,那就是单词的顺序问题。

ALTER TABLE Unified_Backlog_Shipping
ADD P_Key AUTOINCREMENT PRIMARY KEY;