Oracle 未命名约束如何删除?

创建表categoryinfo,未命名主键CategoryId 约束名称。

 create table categoryinfo(
   CategoryId varchar2(10),
   CategoryName varchar2(30),
   primary key(CategoryId)
   )

创建表时无命名主键约束,如何删除?随便起个名字?删除直接报错,如下图


删除没有命名的主键约束,删除报错

创建主键时未命名,但是oracle会自动分配一个约束名称,从哪里查询?
查询语句:

SELECT * FROM USER_CONS_COLUMNS WHERE TABLE_NAME='CATEGORYINFO'

CATEGORYINFO是你要查询的,未命名主键的表名称。表名称需要大写。

oracle 查询约束名称表USER_CONS_COLUMNS

查询后,可以看到约束名称为SYS_C0010813

然后删除约束名称

alter table categoryinfo drop constraint SYS_C0010813

再使用查询语句,查询结果为空

删除主键约束成功
最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容