• 欢迎访问搞代码网站,推荐使用最新版火狐浏览器和Chrome浏览器访问本网站!
  • 如果您觉得本站非常有看点,那么赶紧使用Ctrl+D 收藏搞代码吧

Oracle Check约束相关知识详解

mysql 搞代码 4年前 (2022-01-09) 16次浏览 已收录 0个评论

在Oracle Check约束的表达式中必须引用到表中的一个或多个字段,并且表达式的计算结果必须是一个布尔值可以在表级或字段级定义对

◆在Oracle Check约束的表达式中必须引用到表中的一个或多个字段,并且表达式的计算结果

必须是一个布尔值

◆可以在表级或字段级定义

◆对同一个字段可以定义多个Oracle Check约束,同时也可以定义NOT NULL约束

1. create table employees

2. (sal number(7,2)

3. constraint emp_sal_ck1 check (sal > 0)

4. )

5. alter table employees

6. add constraint emp_sal_ck2 check (sal < 20000)

删除约束

◆alter table dept drop unique (dname,loc) –指定约束的定义内容

◆alter table dept drop constraint dept_dname_loc_uk –指定约束名

删除约束时,,默认将同时删除约束所对应的索引,如果要本文来源gaodai#ma#com搞@@代~&码网保留索引,用KEEP INDEX关键字如果

要删除的约束正在被其它约束引用,通过ALTER TABLE..DROP语句中指定CASCADE关键字能够同

时删除引用它的约束利用下面的语句在删除DEPT表中的PRIMARY KEY约束时,同时将删除其它表

中引用这个约束的FOREIGN KEY约束:

alter table dept drop primary key cascade

禁用/激活约束(禁用/激活约束会引起删除和重建索引的操作)

◆alter table employees disable/enable unique email

◆alter table employees disable/enable constraint emp_ename_pk

◆alter tabel employees modify constraint emp_pk disable/enable

◆alter tabel employees modify constraint emp_ename_phone_uk disable/enable

如果有FOREIGN KEY约束正在引用UNIQUE或PRIMARY KEY约束,则无法禁用这些UNIQUE或PRIMARY

KEY约束,这时可以先禁用FOREIGN KEY约束,然后再禁用UNIQUE或PRIMARY KEY约束;或者可以

在ALTER TABLE…DISABLE语句中指定CASCADE关键字,这样将在禁用UNIQUE或PRIMARY KEY约束

的同时禁用那些引用它们的FOREIGN KEY约束,如:

alter table employees disable primary key cascade

约束数据字典

◆all_constraints/dba_constraints/user_constraints 约束的基本信息,包括约束的名称,

类型,状态(约束类型:C(Oracle Check约束),P(主码约束),R(外部码约束),U(唯一码约束))

◆all_cons_columns/dba/user 约束对应的字段信息


搞代码网(gaodaima.com)提供的所有资源部分来自互联网,如果有侵犯您的版权或其他权益,请说明详细缘由并提供版权或权益证明然后发送到邮箱[email protected],我们会在看到邮件的第一时间内为您处理,或直接联系QQ:872152909。本网站采用BY-NC-SA协议进行授权
转载请注明原文链接:Oracle Check约束相关知识详解
喜欢 (0)
[搞代码]
分享 (0)
发表我的评论
取消评论

表情 贴图 加粗 删除线 居中 斜体 签到

Hi,您需要填写昵称和邮箱!

  • 昵称 (必填)
  • 邮箱 (必填)
  • 网址