《数据库》课件_第10章 表及约束3.0.pptxVIP

  • 1
  • 0
  • 约6.22千字
  • 约 36页
  • 2025-10-16 发布于广东
  • 举报

创建简单的表createtablet(aint,bchar(15));createtablet(aint,bchar(15))

tablespacetbs普通用户创建表,并未分配空间添加记录时,才对表分配空间

2015-813-1Oracle数据库系统原理-第13章位图索引

约束主键(primarykey)列值不能为空也不能重复。唯一(unique)外键(foreignkey)列值要匹配于其指向的主表的相应列值。检查(check)列值的限制条件。非空(notnull)默认(default)添加记录时,若未指定列值,则取默认约束中的值。2015-810-2Oracle数据库系统原理-第10章表及约束

附加约束的位置列级约束表级约束2015-810-3Oracle数据库系统原理-第10章表及约束

附加约束的各种语法形式列级约束,未指定名称SQLcreatetablet12(3aintprimarykey,4bint5)6/列级约束,指定名称SQLcreatetablet22(3aintconstraintpk_testprimarykey,4bint5)6/2015-810-4Oracle数据库系统原理-第10章表及约束

附加约束的各种语法形式表级约束,未指定名称SQLcreatetablet32(3aint,4bint,5primarykey(a)6)7/表级约束,指定名称SQLcreatetablet42(3aint,4bint,5constraintpk_testprimarykey(a)6)7/2015-810-5Oracle数据库系统原理-第10章表及约束

几点主意多列复合主键或多列唯一约束只能使用表级约束。列级检查约束不能出现其他列名,表级检查约束可以引用表中任何列。非空约束只能附加在列级而不能附加在表级。2015-810-6Oracle数据库系统原理-第10章表及约束

Check约束示例SQLcreatetablet62(3aintprimarykey,4bint,5constraintck_testcheck(b10)6)7/2015-810-7Oracle数据库系统原理-第10章表及约束

外键约束示例创建主表p,a列为主键SQLcreatetablep(aintprimarykey,bint);对c表的y列附加表级外键约束SQLcreatetablec32(3xint,4yint,5constraintfk_cforeignkey(y)referencesp(a)6)7/2015-810-8Oracle数据库系统原理-第10章表及约束

外键的约束作用c表中的y列的值要匹配于p表中a列的值。p表中被引用到的记录不能删除,被引用的a列的值也不能修改。2015-810-9Oracle数据库系统原理-第10章表及约束

附加外键时的ondelete子句ondeletecascade子表中的对应记录会被级联删除。ondeletesetnull把外键值设置为null。Oracle不支持onupdate子句2015-810-10Oracle数据库系统原理-第10章表及约束

附加ondelete子句SQLcreatetablec52(3xintprimarykey,4yint,5foreignkey(y)referencesp(b)6ondeletecascade--或setnull7)8/2015-810-11Oracle数据库系统原理-第10章表及约束

对表增加约束表级形式altertabletable_nameaddconstraintconstraint_namecostraintt_clause列级形式altertabletable_namemodifycolumn_nameconstraintconstraint_nameconstraint_clause2015-810-12Oracle数据库系统原理-第10章表及约束

对表增加约束示例emp表的sal列增加

文档评论(0)

1亿VIP精品文档

相关文档