文档详情

数据库Oracle笔记05.doc

发布:2017-05-12约1.38千字共2页下载文档
文本预览下载声明
约束条件 Constraint create talbe student( id number(4) primary key, 主键约束:非空唯一约束 name char(20)); 复制表,但约束条件复制不过去。 但可以这么做,先确定主键不重复,不为空, delete student where name = ‘tom’; 删除ID重复记录 alter table student add constraint student_id_pk primary key(id); student_id_pk是自定义的 ALTER TABLE stuInfo ADD CONSTRAINT PK_stuNo PRIMARY KEY (stuNo) 主键约束 ALTER TABLE stuInfo ADD CONSTRAINT UQ_stuID UNIQUE (stuID) 唯一约束 因为每人的身份证号全国唯一 ALTER TABLE stuInfo ADD CONSTRAINT DF_stuAddress DEFAULT (地址不详) FOR stuAddress 默认约束 如果地址不填,默认为“地址不详 ALTER TABLE stuInfo ADD CONSTRAINT CK_stuAge CHECK(stuAge BETWEEN 15 AND 40) 检查约束 要求年龄在15-40岁之间 ALTER TABLE stuMarks ADD CONSTRAINT FK_stuNo FOREIGN KEY(stuNo) REFERENCES stuInfo(stuNo) 外键约束 主表stuInfo和从表stuMarks建立关系,关联字段为stuNo 删除约束:alter table student drop constraint 约束名; 得先查约束名字 select constraint_name,constraint_type from user_constraints where table_name=’STUDENT’; 所以建议给约束都自己起名 数据库中所有的表都是大写,得搜大写 create table student( id number(4) primary key, name char(20) not null, email char(20) unique, sex char (1) check(sex in(‘F’,’M’)) ); create table student( id number(4), name char(20)constraint stu_name_nn not null, email char(20),sex char (1), constraint stu_id_pk primary key(id),constraint stu_email_uq unique(email), constraint stu_sex_ck check (sex in(‘F’,’M’)) );
显示全部
相似文档