1 建表语句
create table person
(
pid varchar(18),
name varchar(20) not null,
age number(3) not null check(age between 0 and 150),
birthday date,
sex varchar2(2) default '男',
address varchar2(200),
constraint person_pid_pk primary key(pid),
constraint person_name_uk unique(name)
);
  • 修改列
    • alter table person add(mon varchar2(20));增加
    • alter table person rename column name to ename;//修改列名
    • alter table person modify ename varchar(100);//修改列类型
    • alter table person drop column name;//删除列
2 数据类型

数据库字符编码:

  • 字符串类型
    • char
    • varchar
    • varchar2
  • 数字类型
    • number(precis,scale);//精度,小数位
    • float
  • 日期类型
    • date 7个字节
    • timestamp
3 约束
  • 唯一性约束: unique
  • 检查约束:check
  • 缺省约束:default
  • 主键约束:primary key
  • 外键约束:foreign key

3.1 列,表级别约束

列约束只定义一列,表约束不局限于一列

  • 表示方法:
    • unique
    • not null 只有列约束
    • check
  • 表级别表示:
    • constraint id primary key (tid,pid) //两个组合主键
    • constraint 约束名 foreign key references <外表名>(列名)
    • constraint 约束名 unique (列名)
    • constraint 约束名 check(条件)
      检查约束check
      列级别约束:null只有列级别约束
      表级别约束

3.2 外键约束

references department(deptno)

  • 先建立父表才能建立关联表

3.3 追加约束

  • alter table 表名 add 约束
    • alter table person add primary key(pid)
  • 修改列约束,修改列方式
    *

3.4 删除约束

  • alter table 表名 drop 约束
    • alter table person drop constraint person_pid_pk

3.5 约束的禁用和启动

  • alter table 表名 disable 约束
    • alter table person disable primary key
    • alter table person disable constraint person_pid_pk
  • alter table 表名 enable 约束

3.6 查看约束

select * from user_constraints where table_name='EMP'

参考

1
2
3
4