我有一个超出所有修复损坏的Access数据库(不要问我如何,它是一个客户端数据库).但是,我们可以使用.NET ODBC之类的代码访问数据.由于我们拥有数据库的干净副本,因此我们计划将所有数据从损坏的数据转移到新数据.
我们只有一个问题,那就是数据库包含自动注册和大量链接.当我们传输数据时,我们希望确保所有autonum id与之前完全相同.不过,我们最终会遇到更多问题.
有没有办法做到这一点 ?
谢谢
许多人误解了Jet/ACE Autonumber字段.它实际上只是一个长整数字段,具有默认属性和一些特殊属性(例如非编辑性,每个表限制为一个).
没有什么可以阻止您简单地将现有值插入新的空表中.将保留自动编号值,因为在创建记录时,您提供了显式值,而不是依赖于默认值来填充字段.
唯一的问题是如果定义了引用完整性,在这种情况下,您必须按顺序执行附加,以便在子记录之前插入父记录,或者为插入删除RI,然后将其放回.
我可能会做后者,因为我的代码可以将关系从一个数据库复制到另一个数据库,所以我只是保留作为备份模板.
最后,您需要确定导致损坏的原因并解决该问题.否则,有一天你将不得不再次这样做.
| 归档时间: |
|
| 查看次数: |
1299 次 |
| 最近记录: |