oracle5种约束条件使用方法模板.docVIP

  • 3
  • 0
  • 约8.28千字
  • 约 19页
  • 2021-08-23 发布于山东
  • 举报
oracle5种约束条件使用方法模板 oracle5种约束条件使用方法模板 PAGE / NUMPAGES oracle5种约束条件使用方法模板 拘束 拘束是操作表数据的强迫规定有以下五种拘束 : NOT NULL ; 非空拘束 UNIQUE :独一值拘束 PRIMARY KEY :主键拘束 FOREIGN KEY :外键拘束 CHECK :检查拘束 拘束:建表的时候能够加拘束,建表后也可加拘束注意事项 、假如不指定拘束名 Oracle server 自动依据 S 、 YS_Cn 的格式指定拘束名 、在什么时候创立拘束 : 建表的同时 建表以后 、能够在表级或列级定义拘束 、能够经过数据词典视图查察拘束 create table newdept as select * from departments create table newemp as select * from employees 定义拘束 CREATE TABLE [schema.] table ( column datatype [ DEFAULT expr] [column_constraint], ... [table_constraint][,...]); CREATE TABLE employees( employee_id NUMBER( 6), first_name VARCHAR2( 20 ), ... job_id VARCHAR2( 10 ) NOT NULL, CONSTRAINT emp_emp_id_pk PRIMARY KEY (EMPLOYEE_ID)); 列级 column [ CONSTRAINT constraint_name] constraint_type, 表级 column ,... [ CONSTRAINT constraint_name] constraint_type ( column , ...), 3 NOT NULL 拘束 只好定义在列级 : 保证列值不可认为空 : 改正 first_name 非空 alter table newemp modify (first_name NOT NULL) 撤消非空拘束 alter table newemp modify (first_name NULL) 增添拘束 定义每一行一定知足的条件 以下的表达式是不同意的 : ? 出现 CURRVAL, NEXTVAL, LEVEL, 和ROWNUM伪 列 ? 使用 SYSDATE, UID, USER, 和 USERENV 函数 在查问中波及到其余列的值 ..., salary NUMBER( 2) CONSTRAINT emp_salary_min CHECK(salary 0),... 限制薪资不可以少于 2000 alter table newemp ADD constraints newemp_salary_ck CHECK(salary= 2000 ) 增添拘束的语法 使用 ALTER TABLE 语句 : 增添或删除拘束 , 可是不可以改正拘束 有效化或无效化拘束 增添  NOT NULL  拘束要使用  MODIFY  语句 ALTER TABLE table ADD [ CONSTRAINT constraint  ]  type  ( column  ); 增添拘束 ALTER TABLE employees ADD CONSTRAINT emp_manager_fk FOREIGN KEY(manager_id) REFERENCESemployees(employee_id); alter table 表名 modify (自定义列名 拘束设置) CREATE TABLE employees( employee_id NUMBER( 6 ), last_name VARCHAR2( 25 ) NOT NULL, salary NUMBER( 8, 2), commission_pct NUMBER( 2, 2), hire_date DATE CONSTRAINT emp_hire_date_nn NOT NULL, 主键拘束 限制列值不同意空值,且不可认为空,一个表只有一个主键 只需主键都会 Alter ,一般主键是 ID 独一的 alter table newemp ADD constraints newemp_empid_pk primary key (employee_id) 删除主键拘束 alter table newemp drop constraints newemp_empid_pk; 复合主键 (多个列设置为主键) ALter table newe

文档评论(0)

1亿VIP精品文档

相关文档