5、oracle下数据完整性约束
ORACLE下數據完整性約束
為了保證數據的完整性和結構的正確性,oracle也有很多約束條件。
1.數據完整性
為了保證數據的完整性,一般對數據列(字段)進行如下約束,主鍵約束(PRIMARY KEY)、唯一鍵約束(UNIQUE)、非空約束(NOT NULL)、默認值(DEFAULT)、檢查約束(CHECK)、外鍵約束(FOREIGN KEY)。
1.1 實體完整性約束
要求每一個表中的主鍵字段都不能為空或者重復,一般實現的方法是添加唯一約束和主鍵約束。這里選擇主鍵一般的原則是盡量選擇單鍵、主鍵必須保證唯一性、非空性、一般選擇沒有意義,用戶不關心的字段。
表創建后,添加約束的語句如下:
| -- 使用constraint創建指定名稱的約束 |
1.2域完整性約束
要求列的值域的完整性,如數據類型、格式和范圍、是否允許為空等。一般實現的方法是限制數據類型,添加外鍵約束、默認值約束、非空約束。
| -- 限制sex的取值 |
1.3引用完整性約束
當處理數據時,通過參照另一個相關聯的表中的數據,來檢查對表的數據的操作是否正確。一般實現方法是添加外鍵約束。
| alter table test |
2.表之間的關系
oracle中表與表之間的關系有一對一、一對多、多對一。
3.數據表的設計范式
數據表的設計范式是沒有數據庫之分的,每個數據庫都是一樣的,最基本的三個范式是:確保每列保持原子性;確保表中的每條數據都和主鍵相關;確保每列都和主鍵列直接相關,而不是間接相關。
4.修改約束的SQL語法
| -- 建表時添加約束 -- 停用約束 ALTER TABLE 表名ADD CONSTRAINT 約束名 UNQUE(status) DISABLE --啟用約束 ALTER TABLE 表名ENABLE CONSTRAINT 約束名; -- 查看約束 select * from user_constraints where ...; |
總結
以上是生活随笔為你收集整理的5、oracle下数据完整性约束的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 四核 N5095:威联通 TS-464C
- 下一篇: 7、oracle下的序列