oracle-建表語句


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


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM