Oracle约束的使用
Posted 拿着菜刀
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Oracle约束的使用相关的知识,希望对你有一定的参考价值。
--5个约束,主键约束、外键约束、唯一约束、检查约束、非空约束。
--添加主键约束 Alter table table_name Add constraints constraint_name Primary key (column_name);
--语法说明 constraint_name:约束名称。 column_name:主键约束指定数据表中的列名。
--移除主键约束 Alter table table_name Drop constraint constraint_name;
--外键约束
--直接在表里添加外键约束,需要在创建表时在最后边添加如下语句
constraint constraint_name foreign key (column_name) reference table_name(column_name) on delete cascade;
--语法说明 constraint_name:外键约束的名称。
foreign key(column_name):指定外键约束的列名。
reference:需要引用的表名(列名)。
on delete cascade:设置级联删除,当主键子弹被删除是外键对应的字段也同时被删除。
--创建表后直接添加外键约束
Alter table table_name add constraint constraint_name foreign key(column_name) reference table_name(column_name) on delete cascade;
--删除外键约束
Alter table table_name drop constraint constraint_name;
--Check约束
--在创建表是添加检查约束,直接在字段后边添加约束
constraint constraint_name Check(condition);
condition:是检查约束的条件。
--Alter Table 添加Check约束
Alter table table_name Add constraint constraint_name check(condition);
--删除Check约束 Alter
table table_name Drop constraint constraint_name;
--Unique约束,唯一约束,
Create表时添加唯一约束 constraint constraint_name unique(column_name);
--修改表时添加唯一约束
Alter table table_name Add constraint constraint_name unique(column_name);
--移除表的唯一约束
Alter table table_name Drop constraint constraint_name;
--创建非空约束,创建表时直接添加非空约束
... not null,
--修改表时添加非空约束
Alter table table_name Modify column_name Not null;
--truncate完全删除表,删除后不可以恢复。
truncate table table_name;
--merge语句,批量修改和批量增加语句
Merge [into] table_name1 using table_name2 on (condition) when matched then merge_update_clause when not matched then merge_insert_clause; --语法说明 table_name1:要修改或添加的表。
table_name2:参照的更新表。 condition:table_name1和table_name之间的关系,或其他的一些条件。 merge_update_clause:如果和参照表table_name2中的条件匹配,就执行更新操作。(update set column_name1=column_name2) merge_insert_clause:如果条件不匹配,就执行新增操作。(insert into (column_name2,column_name2,...))
以上是关于Oracle约束的使用的主要内容,如果未能解决你的问题,请参考以下文章