程序師世界是廣大編程愛好者互助、分享、學習的平台,程序師世界有你更精彩!
首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫知識
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
 程式師世界 >> 數據庫知識 >> 其他數據庫知識 >> 更多數據庫知識 >> 為DB2數據庫添加驗證約束

為DB2數據庫添加驗證約束

編輯:更多數據庫知識

  在DB2數據庫中約束用來確保表中不會使用無效的數據。不滿足已定義的約束的行會被拒絕。在這個練習中,將驗證約束,看看在輸入無效數據時會發生什麼情況。

  表 PARTICIPANT 中有一個外鍵,這意味著對於 PARTICIPANT 的 PAR_ID 列中的每個值,在 MODULE 表中必須有具有相同 MODULE_ID 列值的行。因為 MODULE 表當前是空的,所以如果在 PARTICIPANT 表中輸入數據,那麼這個條件無法得到滿足。按照以下步驟驗證約束:

  1、在 Control Center 中,點擊 PARTICIPANT 表,然後點擊 Open。在 Open Table 面板中,點擊 Add Row。將下面所示的行輸入 PARTICIPANT 表並點擊 Commit。

  圖1. Control Center —— 插入行

  Control Center —— 插入行

  2、返回消息 SQL0530N,這說明未滿足外鍵約束所規定的引用完整性要求。

  3、點擊 Close 關閉消息,再次點擊關閉 Open Table 窗口。

  4、驗證已經在 MODULE 表上定義的檢查約束。因為在創建 MODULE 表時建立了檢查約束(“CONSTRAINT MID_CHECK CHECK (MODULE_ID >= 0)”),所以 MODULE_ID 不能包含負數。

  5、在 Control Center 中,點擊 MODULE 表,然後點擊 Open。在 Open Table 面板中,將一個 MODULE_ID 列值為負數的行插入 MODULE 表中,並為 MODULE_NAME 提供一個名稱。嘗試插入,看看會發生什麼情況。下面的錯誤消息指出不應該這麼做:

  圖2. 驗證檢查約束

  驗證檢查約束

  6、點擊 Close 關閉消息,再次點擊 Close 關閉 Open Table 窗口。

  1. 上一頁:
  2. 下一頁:
Copyright © 程式師世界 All Rights Reserved