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'
