VB实现,ACCESS数据库A的表1,导入到ACCESS数据库B的表2,表1表2结构都相同,有一个自动编号的字段,怎么办啊?

时间:2021-04-26 07:57:42
具体问题如下:
    ACCESS数据库A是总库,他需要导入很多其他的分数据库(B,C,D,E,F.....),这些数据库中要导的那个表的结构都完全一样,都有一个自动标号的索引字段. 问题出现在时常有些库导入时,自动编号字段是相同的,所以老报错:"由于将在索引、主关键字、或关系中创建重复的值,请求对表的改变没有成功.改变该字段中的或包含重复数据的字段中的数据,删除索引或重新定义索引以允许重复的值并再试一次",怎么办啊?谢谢

5 个解决方案

#1


方法1,b,c,d,e,f库比a库多一个字段是自动编号,把a的自动编号作为一个单独的字段
如 a(13,1) 到b (1,13,1)
方法2,b,c,d,e...自动编号字段取消
方法3,倒入b,c...时候不将自动编号倒入

推荐1,比较合理

#2


不是很明白楼上的方法1,我想用方法3,但是那个自动编号的字段是不允许空的,所以不导入会报错,有什么办法,当我不导入b,c,d,e...自动编号字段时,让A中的自动编号字段自己递增吗?

#3


把自动编号取消,不导入此字段。总表的自动编号字段不需要处理,因为它会按倒数据的顺序自动编码。

#4


newStrRs = "insert into [" + okPath + ";pwd=123].[Product](Pname,Pserial,Pprice,Pdate,Pno,Pvalidate) select
Pname,Pserial,Pprice,Pdate,Pno,Pvalidate,Pcharge from Product where Product.Pserial in (select Pserial from [" + dbPath + ";pwd=123].[Product])"
    newCon.Execute newStrRs
我把自动编号字段Pid没导入,如上面代码所示,但是会报错:"字段pid不能包含Null值,在此字段中输入一个数值",怎么办啊?

#5


方法1说明 表A
create table a
(
aa 自动编号,
bb string,
cc string
)
表b
create table b
(
bid 自动编号,
aa int,
bb string,
cc string
)
a倒入b,sql
insert into b(aa,bb,cc) select * from a

#1


方法1,b,c,d,e,f库比a库多一个字段是自动编号,把a的自动编号作为一个单独的字段
如 a(13,1) 到b (1,13,1)
方法2,b,c,d,e...自动编号字段取消
方法3,倒入b,c...时候不将自动编号倒入

推荐1,比较合理

#2


不是很明白楼上的方法1,我想用方法3,但是那个自动编号的字段是不允许空的,所以不导入会报错,有什么办法,当我不导入b,c,d,e...自动编号字段时,让A中的自动编号字段自己递增吗?

#3


把自动编号取消,不导入此字段。总表的自动编号字段不需要处理,因为它会按倒数据的顺序自动编码。

#4


newStrRs = "insert into [" + okPath + ";pwd=123].[Product](Pname,Pserial,Pprice,Pdate,Pno,Pvalidate) select
Pname,Pserial,Pprice,Pdate,Pno,Pvalidate,Pcharge from Product where Product.Pserial in (select Pserial from [" + dbPath + ";pwd=123].[Product])"
    newCon.Execute newStrRs
我把自动编号字段Pid没导入,如上面代码所示,但是会报错:"字段pid不能包含Null值,在此字段中输入一个数值",怎么办啊?

#5


方法1说明 表A
create table a
(
aa 自动编号,
bb string,
cc string
)
表b
create table b
(
bid 自动编号,
aa int,
bb string,
cc string
)
a倒入b,sql
insert into b(aa,bb,cc) select * from a