在用plsql导入表的时候(选择create方式),报错:“名称已被一现有约束条件占用”。
2016-12-12 16:57
176 查看
1做如下操作
test1/test1@localhost:1521/orcl,该oracle用户登录进去,有Auth_User表。
test2/test2@localhost:1521/orcl,该oracle用户登录进去,也有Auth_User表。
我想让这两个表存在于同一个数据库中,即将test2/test2@localhost:1521/orcl的Auth_user表导出为pde,然后导入到test1/test1@localhost:1521/orcl中。
我先将test1/test1@localhost:1521/orcl的Auth_User表重命名为Auth_User_Old,然后将test2/test2@localhost:1521/orcl的Auth_user的pde,导入到
test1/test1@localhost:1521/orcl中。
2报错
在用plsql导入表的时候(选择create方式),报错:“名称已被一现有约束条件占用”。
会有问题吗?会影响导入的表吗?
3原因
原因是oracle数据库中,每一个表都有一个唯一主键,而主键是不允许重复的。已经存在PK_Auth_User主键了,而新导入的表,主键还是PK_Auth_User,因此会报错。
5会带来什么影响?
没有了主键的约束,即插入的时候ID可能会重复,但是如果使用oracle的UUID,产生32位ID,是不可能重复的,这个影响也就不存在了。
如果非得要设置主键的话,直接右击表,edit,keys,重新写入一个不重复的name即可。
6解决办法
在我将test1/test1@localhost:1521/orcl的Auth_User表重命名为Auth_User_Old时,将主键名称也一并重命名,不就行了。
然后将test2/test2@localhost:1521/orcl的Auth_user的pde,导入到test1/test1@localhost:1521/orcl中。
test1/test1@localhost:1521/orcl,该oracle用户登录进去,有Auth_User表。
test2/test2@localhost:1521/orcl,该oracle用户登录进去,也有Auth_User表。
我想让这两个表存在于同一个数据库中,即将test2/test2@localhost:1521/orcl的Auth_user表导出为pde,然后导入到test1/test1@localhost:1521/orcl中。
我先将test1/test1@localhost:1521/orcl的Auth_User表重命名为Auth_User_Old,然后将test2/test2@localhost:1521/orcl的Auth_user的pde,导入到
test1/test1@localhost:1521/orcl中。
2报错
在用plsql导入表的时候(选择create方式),报错:“名称已被一现有约束条件占用”。
会有问题吗?会影响导入的表吗?
3原因
原因是oracle数据库中,每一个表都有一个唯一主键,而主键是不允许重复的。已经存在PK_Auth_User主键了,而新导入的表,主键还是PK_Auth_User,因此会报错。
5会带来什么影响?
没有了主键的约束,即插入的时候ID可能会重复,但是如果使用oracle的UUID,产生32位ID,是不可能重复的,这个影响也就不存在了。
如果非得要设置主键的话,直接右击表,edit,keys,重新写入一个不重复的name即可。
6解决办法
在我将test1/test1@localhost:1521/orcl的Auth_User表重命名为Auth_User_Old时,将主键名称也一并重命名,不就行了。
然后将test2/test2@localhost:1521/orcl的Auth_user的pde,导入到test1/test1@localhost:1521/orcl中。
相关文章推荐
- Oracle中出现“名称已被一现有约束条件占用”问题 怎么查找约束?怎么删除约束???
- Oracle中出现“名称已被一现有约束条件占用”问题 怎么查找约束?怎么删除约束???
- plsql方式导入带有外键约束的表
- 2 - SQL Server 2008 之 使用SQL语句为现有表添加约束条件
- 导入excel的时候如何选择其他sheet页
- mysql导入数据的方式选择-LOAD DATA INFILE句法
- Vmware下安装CentOS6的特别注意,一定要在虚拟机上电时候按DEL,选择操作系统启动方式
- 在大容量导入中按最小方式记录日志的前提条件
- 选择某种Map集合保存学号从1到15的学员的学号(键)和姓名(值),学号用字符串表示,输入的时候要以学号乱序的方式存入Map集合,然后按照学号从大到小的顺序将Map集合中的元素输出打印。需要自定义Ma
- 职业生涯中的选择时机非常重要,各种条件还没成熟时的时候,因为诱惑而贸然行事,只会得到适得其反的结果
- Android设备选择内置光盘 连接PC时 名称的修改方式
- 选择某种Map集合保存学号从1到15的学员的学号(键)和姓名(值),学号用字符串表示,输入的时候要以学号乱序的方式存入Map集合,然后按照学号从大到小的顺序将Map集合中的元素输出打印。需要自定义Ma
- 当你在准备或选择一种理财方式的时候
- oracle create table xx as select ....CREATE TABLE XXX AS SELECT .... 拷贝表的时候 not null 约束 和check
- Day59-Oracle03 - 创建表空间、创建表(子查询创建表)、表的约束、事务、数据库对象(视图、序列、索引、同义词)、PLSQL编程、(if,循环)、数据的导入导出备份
- 导入项目的时候,提示说@override The method of type must override a superclass method解决方式的错误
- 表<表名称> 中的列与现有的主键或UNIQUE约束不匹配
- 导入数据的时候不确定,是否有外键约束,可以通过设置使系统在commit是在做检查。
- mysql数据库导出导入时候版本不同的处理在导出的时候选择版本不能添加注释和insert.JPG
- Win 7 在打开软件的时候选择了错误的打开方式之解决办法