Semantic Integrity Control

posted on 21 Sep 2009 18:50 by techinnoreview  in MITT

Maintain Database

ด้วยการสร้างชุดข้อบังคับหรือข้อกำหนดบนฐานข้อมูล

Structural Constraints

มีข้อกำหนดพื้นฐานที่เป็นโครงสร้างหลักๆของฐานข้อมูลเช่น กฏ unique key ใน Relational Model

Behavior Constraint

ข้อกำหนดต่างๆในฐานข้อมูลทั่วๆไปเช่น กฏของ Dependencies ใน Relational Model

Two Components

1. สร้างกฏขึ้นมา

2. บังคับใช้กฏ

 

Procedural

การสื่อความหมายเพื่อควบคุมภายในแต่ละโปรแกรม

เน้นควบคุมวิธีการตั้งแต่เริ่มแรกจึงมักถูกเรียกว่ากฎแบบฝังตัว

Declarative

การใช้กฏที่สามารถอธิบายความหมายได้เช่น

การอ้างค่าทาคณิตศาสตร์ต่างๆ <50, =110

การกำหนดกฏง่ายๆ เช่น ต้องการ Table1 ที่ Attribute 1 = "อรรถพงศ์"

 

Constraint Specification Language

 Predefined Constraint กฎที่คาดการณ์ไวล่วงหน้า

กฏทั่วไปเช่นพวก

att NOT NULL IN table

(att1,att2) UNIQUE IN table

att IN table1 REFERENCES att IN table2 ---- Foreign key

att1 IN table DETERMINES att2

 

Precompiled Constraint

กฏที่จะใช้ต่อเมื่อมีการกระทำการ เปลี่ยนแปลงข้อมูลเช่นพวก INSERT, DELETE, MODIFY

จะใช้คำสั่ง CHECK เพื่อตรวจสอบค่าก่อน

CHECK ON db WHEN DELETE (ID = 0)

 


General Constraints

เป็นข้อกำหนดที่จะต้องเป็นจริงเสมอ

 

เช่นการเช็คค่า ID 2 ตัวว่าจะต้องเท่ากัน

CHECK ON id1:db, id2:db (id1:name =id2:name IF id1:dbo = id2:dbo)

 

INTEGRITY ENFORCEMENT

บังคับใช้กฏมี 2 อย่างคือ

Detection การตรวจจับ และ Preventive การป้องกัน

Detection

จะเริ่มกระบวนการเมื่อกระบวนการเมออกนอกกฎโดย เมื่อพบว่ามีการกระทำนอกกฎก็จะทำการ undo

Preventive

จะเริ่มกระบวนการตรวจสอบก่อนเมื่อมีการใช้คำสั่งนั้นๆว่าอยู่นอกเหนือกฏหรือไม่ ถ้าไม่ก็อนุญาติให้ทำ

 

 

 

Comment



smilebig smileopen-mounthed smileconfused smilesad smileangry smiletonguequestionembarrassedsurprised smilewinkdouble winkcry

Tweet