欄位的預設值和有效性規則主要是用於維護資料的有效性與和諧。前者的作用為當向資料表插入資料時,如果未指定插入欄位的資料值則自動向該欄位插入預設的預設值。後者用於限定允許寫入欄位的資料值範圍。至於有效性文字則是規定當寫入欄位的資料值違反有效性規則時,系統彈出的提示文字。下面舉例進一步說明這三種屬性的作用。
假設有一張資料表
員工(ID,姓名,狀態)
其中“狀態”欄位設定了預設值、有效性規則和有效性文字屬性
預設值="在職";
有效性規則="在職" or "離職";
有效性文字="狀態欄位只能輸入“在職”或“離職”兩種狀態"
1)資料表的欄位預設值是指為欄位設定一個數據值,當向資料表插入一條新記錄時,如果沒有為該已設定了預設值的欄位指定一個具體的資料值(也就是留空時),那麼系統就會自動將預設的預設值寫入該欄位。
執行SQL語句 insert into 員工(ID,姓名) values("001","張三")
員工表增加一條記錄 >> 001 張三 在職 (沒有指定狀態,系統插入預設值“在職”)
2)資料表的有效性規則是指,輸入該欄位的資料值不得違反有效性規則的規定,否則系統將拒絕那些違反規定的資料寫入資料表。它可以限定能寫入該欄位裡的資料值
執行SQL語句 insert into 員工(ID,姓名,狀態) values("002","李四","離職")
因為沒有違反有效性規則,
員工表成功增加一條記錄 >> 002 李四 在職
執行SQL語句 insert into 員工(ID,姓名,狀態) values("003","王五","離開")
因為“離開”違反了有效性規則,
系統報錯,彈出資訊框“狀態欄位只能輸入“在職”或“離職”兩種狀態”,記錄插入失敗
3)資料表的有效性文字是指,輸入該欄位的資料值違反了有效性規則報錯時,系統給出的相關自定義錯誤提示。
執行SQL語句 update 員工 set 狀態="在崗" where 姓名="張三"
語句試圖將張三的狀態改為“離開”違反了有效性規則,
系統報錯,彈出資訊框“狀態欄位只能輸入“在職”或“離職”兩種狀態”,記錄修改失敗
欄位的預設值和有效性規則主要是用於維護資料的有效性與和諧。前者的作用為當向資料表插入資料時,如果未指定插入欄位的資料值則自動向該欄位插入預設的預設值。後者用於限定允許寫入欄位的資料值範圍。至於有效性文字則是規定當寫入欄位的資料值違反有效性規則時,系統彈出的提示文字。下面舉例進一步說明這三種屬性的作用。
假設有一張資料表
員工(ID,姓名,狀態)
其中“狀態”欄位設定了預設值、有效性規則和有效性文字屬性
預設值="在職";
有效性規則="在職" or "離職";
有效性文字="狀態欄位只能輸入“在職”或“離職”兩種狀態"
1)資料表的欄位預設值是指為欄位設定一個數據值,當向資料表插入一條新記錄時,如果沒有為該已設定了預設值的欄位指定一個具體的資料值(也就是留空時),那麼系統就會自動將預設的預設值寫入該欄位。
執行SQL語句 insert into 員工(ID,姓名) values("001","張三")
員工表增加一條記錄 >> 001 張三 在職 (沒有指定狀態,系統插入預設值“在職”)
2)資料表的有效性規則是指,輸入該欄位的資料值不得違反有效性規則的規定,否則系統將拒絕那些違反規定的資料寫入資料表。它可以限定能寫入該欄位裡的資料值
執行SQL語句 insert into 員工(ID,姓名,狀態) values("002","李四","離職")
因為沒有違反有效性規則,
員工表成功增加一條記錄 >> 002 李四 在職
執行SQL語句 insert into 員工(ID,姓名,狀態) values("003","王五","離開")
因為“離開”違反了有效性規則,
系統報錯,彈出資訊框“狀態欄位只能輸入“在職”或“離職”兩種狀態”,記錄插入失敗
3)資料表的有效性文字是指,輸入該欄位的資料值違反了有效性規則報錯時,系統給出的相關自定義錯誤提示。
執行SQL語句 update 員工 set 狀態="在崗" where 姓名="張三"
語句試圖將張三的狀態改為“離開”違反了有效性規則,
系統報錯,彈出資訊框“狀態欄位只能輸入“在職”或“離職”兩種狀態”,記錄修改失敗