CONSTRAINT的用法舉例
當我們在建表時,我們會考慮的表的一些約束,下面簡述幾種約束的用法:
SQL> select * from v$version where rownum<2;
BANNER
--------------------------------------------------------------------------------
Oracle Database 11g Enterprise Edition Release 11.2.0.1.0 - Production
primary key:
SQL> create table diy_os(id number,name varchar2(10));
表已建立。
SQL> alter table diy_os add constraint pk0 primary key(id);
表已更改。
alter table diy_os add constraint unq_1 unique (id);
check :
alter table t add constraint chk_1 check (id in(1,2,3)); ==》id後面跟的是表示式
not null:(這個約束是列級約束,和上面的不同,上面的是表級)
alter table diy_os add constraint not_null check(id is not null);
read only:(view)基於檢視的約束
create or replace view v as select * from test.id with read only;
check option:(view)基於檢視的約束
create or replace view v as select * from diy_os where id<100 with check option constraint check_1;
SQL> select * from v$version where rownum<2;
BANNER
--------------------------------------------------------------------------------
Oracle Database 11g Enterprise Edition Release 11.2.0.1.0 - Production
primary key:
SQL> create table diy_os(id number,name varchar2(10));
表已建立。
SQL> alter table diy_os add constraint pk0 primary key(id);
表已更改。
SQL> show user;
USER 為 "HR"
SQL> select owner,constraint_name,table_name from user_constraints where constraint_name='PK0';
OWNER
----------------------------------------------------------------------------------------------------
CONSTRAINT_NAME TABLE_NAME
------------------------------ ------------------------------
HR
PK0 DIY_OS
foreign key:
我在另一個使用者wang上建立表wang(f_id number,f_name varchar2(10)).
在hr使用者下:
SQL>grant reference on wang to hr;
在wang使用者下:
SQL> alter table wang add constraint fk7 foreign key(id) references hr.diy_os(id);
unique:USER 為 "HR"
SQL> select owner,constraint_name,table_name from user_constraints where constraint_name='PK0';
OWNER
----------------------------------------------------------------------------------------------------
CONSTRAINT_NAME TABLE_NAME
------------------------------ ------------------------------
HR
PK0 DIY_OS
foreign key:
我在另一個使用者wang上建立表wang(f_id number,f_name varchar2(10)).
在hr使用者下:
SQL>grant reference on wang to hr;
在wang使用者下:
SQL> alter table wang add constraint fk7 foreign key(id) references hr.diy_os(id);
alter table diy_os add constraint unq_1 unique (id);
check :
alter table t add constraint chk_1 check (id in(1,2,3)); ==》id後面跟的是表示式
not null:(這個約束是列級約束,和上面的不同,上面的是表級)
alter table diy_os add constraint not_null check(id is not null);
read only:(view)基於檢視的約束
create or replace view v as select * from test.id with read only;
check option:(view)基於檢視的約束
create or replace view v as select * from diy_os where id<100 with check option constraint check_1;
來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/29876893/viewspace-1483798/,如需轉載,請註明出處,否則將追究法律責任。
相關文章
- cpp的json的用法舉例JSON
- jquery九大選擇器的用法舉例jQuery
- Python qutip用法(舉例介紹)Python
- 【mysql】SUBSTRING_INDEX 用法舉例MySqlIndex
- 舉例說明在組合語言中,"[]"的用法組合語言
- 番茄鐘的團隊用法——以會議舉例
- mysql_config_editor用法舉例MySql
- 舉例說明Oracle資料庫審計的用法Oracle資料庫
- linux LVM 磁碟管理 基本用法舉例LinuxLVM
- 使用Java JUnit框架裡的@Rule註解的用法舉例Java框架
- 關於對MySQL的SQL_NO_CACHE的理解和用法舉例MySql
- Swift列舉的全用法Swift
- Java 列舉 switch的用法Java
- HTTP 請求響應頭部欄位裡 ETAG 的用法舉例HTTP
- MySQL的information_schema資料庫表說明及用法舉例MySqlORM資料庫
- Selenium用法詳解 -- Selenium3 自動化測試 frame多種用法舉例
- PostgreSQL9.x,10,11hash分割槽表用法舉例SQL
- Java enum列舉類詳解 列舉的常見用法Java
- JAVA反射舉例Java反射
- 盒模型舉例模型
- 死鎖-舉例
- java中的單例模式,舉例說明。Java單例模式
- Java列舉的七種常見用法Java
- shell指令碼舉例指令碼
- java 正則舉例Java
- C#中類的使用舉例C#
- Java 列舉7常見種用法Java
- SQLLOAD應用舉例SQL
- oracle resource manager (ORM)舉例OracleORM
- Object-c KVC的使用和舉例Object
- oracle rollup,cube子句的應用舉例;Oracle
- Travis CI 配置檔案 .travis.yml 的語法介紹和一些用法舉例
- JS標籤的各種事件的舉例JS事件
- 【轉】Java 列舉7常見種用法Java
- Java 列舉(enum) 詳解7種常見的用法Java
- JS中排序的用法和例項JS排序
- [轉] Input的高階用法11例
- (舉例)Laravel 怎麼分表Laravel