ZTESOracle创建维护表和约束第七讲.pptVIP

  • 6
  • 0
  • 约8.93千字
  • 约 49页
  • 2017-05-28 发布于上海
  • 举报
ZTESOracle创建维护表和约束第七讲ppt课件

约束 给约束命名,否则系统会自动为约束命名,格式为SYS_Cn 可以用两种方式建立约束: 在建表时 在表建立以后 可以在表级或列级定义约束 可以在数据字典中查看约束的相关信息 定义约束 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, ...), NOT NULL(非空)约束 确保不向表中插入空值(在列级定义): 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, ... 用户 命名 UNIQUE(唯一)约束 保证列上不能有重复值,可以在表级定义,也 可以在列级定义: CREATE TABLE employees( employee_id NUMBER(6), last_name VARCHAR2(25) NOT NULL, email VARCHAR2(25), salary NUMBER(8,2), commission_pct NUMBER(2,2), hire_date DATE NOT NULL, ... CONSTRAINT emp_email_uk UNIQUE(email)); PRIMARY KEY(主键)约束 DEPARTMENTS PRIMARY KEY 插入 不允许(空值) 不允许(重复值) … CREATE TABLE departments( department_id NUMBER(4), department_name VARCHAR2(30) CONSTRAINT dept_name_nn NOT NULL, manager_id NUMBER(6), location_id NUMBER(4), CONSTRAINT dept_id_pk PRIMARY KEY(department_id)); PRIMARY KEY(主键)约束 可以在表级定义,也可以在列级定义: FOREIGN KEY(外键)约束 DEPARTMENTS EMPLOYEES 外键 INSERT INTO 不允许: 9不存在 允许插入 主键 … … FOREIGN KEY(外键)约束 可以在表级定义,也可以在列级定义: CREATE TABLE employees( employee_id NUMBER(6), last_name VARCHAR2(25) NOT NULL, email VARCHAR2(25), salary NUMBER(8,2), commission_pct NUMBER(2,2), hire_date DATE NOT NULL, ... department_id

文档评论(0)

1亿VIP精品文档

相关文档