什麼是數據完整性?數據庫
數據完整性 = 數據準確性 + 數據可靠性ide
數據完整性如何分類?編碼
1,實體完整性 (行)spa
2,域完整性 (列)code
3,引用完整性 (表與表之間鍵的關係)ci
4,自定義完整性unicode
如何保證數據的完整性?字符串
必須在建表時分別對數據庫實施完整性約束:it
實體完整性約束table (行) |
主鍵約束(primary key) 惟一約束(unique) |
域完整性約束 (列) |
數據類型 非空約束(not null) |
引用完整性約束 (兩表) |
外鍵約束(foregin key) |
自定義完整性約束 |
規則、存儲過程、觸發器 |
要建表保存數據時,就必須肯定保存的數據類型,那麼T-SQL中有哪些數據類型?
數字 |
整數 int 小數 float real numric decimal |
字符串 |
固定長度字符串 char 可變長度字符串 varchar unicode編碼固定長度字符串 nchar unicode編碼可變長度字符串 nvarchar 大文本 text unicode編碼大文本 ntext |
日期 |
datetime |
真假 |
bit |
其餘 |
貨幣 money |
數據類型注意事項:
時間日期類型和字符串類型是放在一對兒單引號中的.例如:'2010-1-22'
主要約束的實現
1.主鍵
主鍵列要求:不重複而且不能有空值
主鍵選取方法:
u表中存在能夠用來惟一標識表中行的列,則直接選取該列做爲主鍵列.如學號列
u表中沒有能夠用來惟一標識表中行的列,則能夠經過建立組合主鍵來進行標識,具體操做,選取多列,將選中列一併設置爲主鍵.
2.標識列
標識列要求:該列的數據類型只能是int類型,而且不能有空值
如何設置標識列:
選取int類型的列,在該列的屬性窗口中,將標識範圍展開,設置是標識,同時設置標識增量(遞增步長)和標識種子(起始標識值),默認均爲1
標識列的特色:標識列會根據標識增量和標識種子每次自動增長
若是主鍵列的類型是int類型,則一般同時將該主鍵列設置爲標識列.
3.主外鍵關係:兩表之間的關係
被包含,被引用的表是主鍵表
外鍵表必定有一個列(外鍵列),引用主鍵表的主鍵列
能夠使用數據庫關係圖直接拖放建立外鍵約束