我可以在Access中编辑自动编号列吗?

Pec*_*ece 5 database ms-access database-design autonumber

我已经在Access基础中丢失了数据,并且我已经设法将它们带回来但是当我使用自动编号列复制表中的值时,它会增加数字.有没有办法将其更改为int然后将其恢复为AutoNumber?

Kip*_*Kip 8

以下是我在Access 2010中设法执行此操作的方法:

  1. 备份数据库.(为了安全起见.)
  2. 右键单击表列表中的表,然后选择Export-> Excel.接受所有默认值.
  3. 在Excel中打开表格并对自动编号字段进行所需的更改.
  4. 打开表并删除所有行
  5. 右键单击表列表中的表,然后选择Import-> Excel
    • 在选项中,选择"附加到表"并选择表.接受所有其他选项的默认值

对于大型表,这可能不是一个可行的解决方案.我不认为Excel可以处理超过65K行.


Dav*_*ton 6

不要使用用户界面复制数据,而是使用查询附加数据.由于自动编号字段只是一个具有特殊默认值的长整数,因此您可以将已存在的值附加到该字段.这在UI中不起作用,但仅在SQL中起作用.

自动编号字段具有一些与普通长整数字段不同的其他属性,但就附加数据而言,这些属性不相关.其中一个属性是,一旦填充它就不可编辑,另一个属性是每个表中只能有一个.

  • SQL 代码如下: ```insert into <tablename> (<column 1>, <column2> ...) values (<value 1>, <value 2>, ...) ``` 这非常乏味,但是有效 (2认同)

Pec*_*ece 1

我已设法通过 c# 代码插入自动编号字段。我获取了所需的所有数据并将其插入到空表中。