如何将约束名称添加到已经存在的约束

2021-12-30 00:00:00 sql oracle11g oracle

有没有办法为已经存在的约束命名?
例如:

Is there a way to give names to already existing constraints?
for example :

create table employee (emp_id number(10),emp_name varchar2(20),
dept_id number(10),foreign key(dept_id) references department(dept_id));

在上面的查询中,我没有命名外键约束,所以在创建表后我可以给它命名吗?也可以删除外键约束而不删除列??

In the above query I haven't named the foreign key constraint so after the creation of the table can I give a name to it also can the foreign key constraint be dropped without dropping the column??

推荐答案

是的,您可以像这样重命名约束:alter table t 重命名约束 old_name 为 new_name

Yes you can rename a constraint like this: alter table t rename constraint old_name to new_name

我忘记了第二个问题.是的,您可以在不删除列的情况下删除约束.如果您不知道约束的名称,您可以在 user_constraints 表中找到它,如下所示:

I've forgotten about the second question. Yes you can drop a constraint without dropping the column. If you do not know the name of the constraint you can find it in user_constraints table like this:

选择约束名称来自 user_constraints其中 table_name = 'your_table'和constraint_type ='R'

相关文章