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

MS Access-PostgreSQL自动编号

如何解决MS Access-PostgreSQL自动编号

我在ms访问中有一个前端,在Postgresql中有一个后端。在迁移到Postgresql之前,该数据库曾经在sql Server上。大多数表都有一个称为ID的列,该列是Access中的一个自动编号,因此它会自动获取一个ID。过去,它可以在简单的Access(数据库从accdb文件启动)上正常运行,然后再将其移至sql Server。

移动到Postgresql后,尽管该列在Access中现在被标记为“ Number”,并且在添加新记录时不提供新ID,这会导致“主键不能为空”错误。列ID以IDENTITY设置为INTEGER:始终且增量为1。显然,我无法更改Access中的表并将数字更改为自动编号,因为它作为链接表是只读的。

如何使Access女士将Postgresql的IDENTIFY列识别为自动编号?

编辑更多信息: 我有一个名为Orders的表和一个名为Jobs的表。每个订单都有多个作业,并且它们与OrderID列关联。添加没有任何作业的订单效果很好(即使该列是“ Number”而不是“ AutoNumber”,Postgres也会正确创建新的唯一值)当我向该订单添加作业时,出现“主键不能为空”的问题错误

添加了“作业ID”字段,使其在表单上可见,并且在编辑“作业”表单的其他列时没有任何值。我曾经在Job添加表单上使用Me.Dirty = False创建一个新ID,这就是报告错误的确切点。因此Me.Dirty = False不会在Postgres上创建新的ID,但会在Access或sql Server上很好地创建一个ID。

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