資料庫學習(1) - constraint
1、constraint用法
a、主鍵約束:非空不重複
語法:alter table 表格名稱 add constraint 約束名稱 增加的約束型別(列名)
示例: alter table dept add constraint dept_constraint_id primary key(id)
b、check約束:對列的資料進行限制
語法:alter table 表格名稱 add constraint 約束名稱 增加的約束型別(列名)
以A-Z開頭的,後面可以用數字
ALTER TABLE tableName ADD CONSTRAINT constraintName CHECK(REGEXP_LIKE(columnName,'^[A-Z]')) NOVALIDATE;
以0或9數字開頭的
ALTER TABLE tableName ADD CONSTRAINT constraintName CHECK(REGEXP_LIKE(columnName,'^[0-9]')) NOVALIDATE;
任何字母
ALTER TABLE tableName ADD CONSTRAINT constraintName CHECK(REGEXP_LIKE(columnName,'[[:alpha:]]')) NOVALIDATE;
任何數字
ALTER TABLE tableName ADD CONSTRAINT constraintName CHECK(REGEXP_LIKE(columnName,'[[:digit:]]')) NOVALIDATE;
c、unique約束:不重複
語法:alter table 表格名稱 add constraint 約束名稱 增加的約束型別(列名)
示例: alter table dept add constraint dept_name unique(name)
d、預設約束:使列的值為預設的值
語法:alter table 表格名稱 add constraint 約束名稱 約束型別 預設值 for 列名
示例: alter table dept add constraint dept_age default 25 for age
e、外來鍵約束
語法:alter table 表格名稱 add constraint 約束名稱 約束型別(列名) references 被引用的表名(列名)
示例: alter table user add constraint user_dept foreign key(deptId) references dept(id)
刪除constraint
alter table tableName drop CONSTRAINT constraintName ;
a、主鍵約束:非空不重複
語法:alter table 表格名稱 add constraint 約束名稱 增加的約束型別(列名)
示例: alter table dept add constraint dept_constraint_id primary key(id)
b、check約束:對列的資料進行限制
語法:alter table 表格名稱 add constraint 約束名稱 增加的約束型別(列名)
以A-Z開頭的,後面可以用數字
ALTER TABLE tableName ADD CONSTRAINT constraintName CHECK(REGEXP_LIKE(columnName,'^[A-Z]')) NOVALIDATE;
以0或9數字開頭的
ALTER TABLE tableName ADD CONSTRAINT constraintName CHECK(REGEXP_LIKE(columnName,'^[0-9]')) NOVALIDATE;
任何字母
ALTER TABLE tableName ADD CONSTRAINT constraintName CHECK(REGEXP_LIKE(columnName,'[[:alpha:]]')) NOVALIDATE;
任何數字
ALTER TABLE tableName ADD CONSTRAINT constraintName CHECK(REGEXP_LIKE(columnName,'[[:digit:]]')) NOVALIDATE;
c、unique約束:不重複
語法:alter table 表格名稱 add constraint 約束名稱 增加的約束型別(列名)
示例: alter table dept add constraint dept_name unique(name)
d、預設約束:使列的值為預設的值
語法:alter table 表格名稱 add constraint 約束名稱 約束型別 預設值 for 列名
示例: alter table dept add constraint dept_age default 25 for age
e、外來鍵約束
語法:alter table 表格名稱 add constraint 約束名稱 約束型別(列名) references 被引用的表名(列名)
示例: alter table user add constraint user_dept foreign key(deptId) references dept(id)
刪除constraint
alter table tableName drop CONSTRAINT constraintName ;
來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/10712951/viewspace-1207137/,如需轉載,請註明出處,否則將追究法律責任。
相關文章
- SQLSERVER學習1——資料庫概念SQLServer資料庫
- Laravel 學習--資料庫使用初識 1Laravel資料庫
- 資料庫學習筆記1(資料管理歷史)資料庫筆記
- 資料庫學習與複習筆記--資料庫概念和不同類資料庫CRUD操作(1)資料庫筆記
- 資料庫學習資料庫
- 學習MongoDB資料庫MongoDB資料庫
- Sql Server 資料庫學習-常用資料庫 物件SQLServer資料庫物件
- PostgreSQL 資料庫學習 - 1.資料庫體系結構之儲存結構SQL資料庫
- 資料庫中odbc和jdbc的區別-------java資料庫學習筆記之1資料庫JDBCJava筆記
- Flask學習之旅--資料庫Flask資料庫
- 資料庫學習筆記資料庫筆記
- 達夢資料庫學習資料庫
- 重新學習Mysql資料庫1:無廢話MySQL入門MySql資料庫
- PostgreSQL 資料庫學習 - 0. 資料庫安裝SQL資料庫
- 【資料庫學習】資料庫平臺:mysql,sql server資料庫MySqlServer
- 資料庫學習(二)資料操作語言:資料庫
- 萬里GreatDB資料庫的學習之路--GreatDB分散式資料庫的安裝部署(1)資料庫分散式
- 學習資料庫索引機制資料庫索引
- 資料庫學習線路圖資料庫
- MySQL資料庫學習筆記MySql資料庫筆記
- 達夢資料庫學習心得資料庫
- 程式猿資料庫學習指南資料庫
- SQL 資料庫學習 Part 2SQL資料庫
- 資料庫學習:在資料庫中存取檔案(轉)資料庫
- 1 小時學會 MySQL 資料庫MySql資料庫
- JavaScript學習之資料型別(1)JavaScript資料型別
- 資料結構學習筆記1資料結構筆記
- sql學習(mysql)(1)資料型別MySql資料型別
- unixware 7.1.1 全面學習資料(1)(轉)
- 重新學習MySQL資料庫開篇:資料庫的前世今生MySql資料庫
- Egg學習_Setp1_初始化專案新增資料庫資料庫
- Redis學習筆記(七) 資料庫Redis筆記資料庫
- Laravel 學習之資料庫遷移Laravel資料庫
- 資料庫學習(五)子查詢資料庫
- InnoDB學習(六)之資料庫鎖資料庫
- 資料庫學習(三)基本查詢資料庫
- 資料庫學習:許可權管理資料庫
- 達夢資料庫學習筆記資料庫筆記