บทที่4 การสร้างและใช้งานตารางการสร้างความสัมพันธ์ระหว่างตาราง

    บทความแสดงการสร้างความสัมพันธ์ระหว่างตารางข้อมูลใน Microsoft Access 2007 เพื่อช่วยให้การจัดการกับข้อมูลทำได้รวดเร็ว ลดความซ้ำซ้อนในการจัดเก็บข้อมูลการสร้างความสัมพันธ์ระหว่างตารางข้อมูลจะช่วยลดความซ้ำซ้อนของตารางข้อมูลและช่วยให้การจัดการกับข้อมูลทำได้อย่างรวดเร็วเพราะตารางข้อมูลมีขนาดเล็กไม่ซับซ้อน

การสร้างความสัมพันธ์ระหว่างตาราง

จากที่กล่าวมาแล้วจนถึงตอนนี้ เราสามารถตารางที่กำหนดคุณสมบัติต่างๆ ให้กับฟิลด์ได้อย่างครบถ้วนตามที่เราต้องการแล้ว ขึ้นตอนต่อไปจะเป็นการกำหนดความสัมพันธ์ระหว่างตาราง เพื่อจุดประสงค์ในการเชื่อมข้อมูลระหว่างตารางทั้งสองเข้าด้วยกัน เมื่อเราต้องการดึงข้อมูลออกมาใช้ เราสามารถดึงข้อมูลที่สัมพันธ์กันจากในหลายตารางได้เสมือนกับว่าเป็นตารางใหญ่ตารางหนึ่ง

สิ่งที่ต้องทราบในการสร้างความสัมพันธ์ระหว่างตาราง
ในหัวข้อนี้ จะแสดงการสร้างความสัมพันธ์ระหว่างตารางที่เราได้สร้างขึ้นมาจากในหัวข้อก่อน นอกจากนี้ในการกำหนดความสัมพันธ์ดังกล่าวเราต้องเข้าใจในเรื่อง Enforce Referential Integrity ซึ่งมีอยู่ 2 แบบที่เราสามารถกำหนดใน Access ได้ คือ
·       Cascade Update Related Fields จะเป็นการกำหนดว่า เมื่อค่าของฟิลด์ที่เชื่อมกันในตารางหลักมีการเปลี่ยนแปลงจะให้เปลี่ยนแปลงที่ตารางอีกผั่งด้วยหรือไม่
·       Cascade Delete Related Fields จะเป็นการกำหนดว่า เมื่อเรคอร์ดที่เชื่อมกัน ในคารางหลักมีถูกลบจะให้ลบที่ตารางอีกผั่งด้วยหรือไม่

วิธีสร้างความสัมพันธ์ใน Access2007 
ออกแบบตารางข้อมูลให้มีฟิลด์ที่สัมพันธ์กัน เพื่อใช้เชื่อมโยงกันก่อน เช่น ฟิลด์ cuscode ที่มี อยู่ทั้งในตาราง ข้อมูลลูกค้าและตารางข้อมูลการสั่งซื้อ
1. คลิก Database Tools 
2. คลิก Relationships
3. คลิกชื่อตารางข้อมูลที่ต้องการ แล้วคลิกปุ่ม Add
4. ครบแล้ว คลิกปุ่ม Close
5. จากตัวอย่างเพิ่มเข้าไป 3 ตารางข้อมูล


รูปแบบของตารางข้อมูลที่จะนำมาสร้างความสัมพันธ์
1. ตารางข้อมูลลูกค้า (customer) เก็บข้อมูลลูกค้า มีฟิลด์ชื่อ cuscode เป็นฟิลด์ที่จะใช้สร้าง ความสัมพันธ์
2. ตารางข้อมูลสินค้า (sheetstock) เก็บข้อมูลสินค้า มีฟิลด์ชื่อ sheetcode เป็นฟิลด์ที่ใช้สร้าง ความความสัมพันธ์
3. ตารางข้อมูล (order) เก็บข้อมูลการสั่งซื้อ มีฟิลด์ no เป็นฟิลด์หลัก ในตารางข้อมูลนี้จะมีฟิลด์ชื่อ cuscode ไว้สร้างความสัมพันธ์กับฟิลด์ cuscode ในตารางข้อมูลลูกค้าและฟิลด์ sheetcode ไว้สร้างความ สัมพันธ์กับฟิลด์ sheetcode ในตารางข้อมูลลูกค้า
4. ตารางข้อมูลการสั่งซื้อ (Order) ทำหน้าที่เป็นเหมือนตัวกลางสามารถดึงข้อมูลจากตารางข้อมูล ลูกค้าและสินค้ามาใช้งานได้ ช่วยให้การออกแบบตารางข้อมูลไม่ซับซ้อน




วิธีสร้างความสัมพันธ์ใน Access 2007 

ออกแบบตารางข้อมูลให้มีฟิลด์ที่สัมพันธ์กัน เพื่อใช้เชื่อมโยงกันก่อน เช่น ฟิลด์ cuscode ที่มี อยู่ทั้งในตาราง ข้อมูลลูกค้าและตารางข้อมูลการสั่งซื้อ
1. คลิก Database Tools 
2. คลิก Relationships
3. คลิกชื่อตารางข้อมูลที่ต้องการ แล้วคลิกปุ่ม Add
4. ครบแล้ว คลิกปุ่ม Close




5. จากตัวอย่างเพิ่มเข้าไป 3 ตารางข้อมูล
6. ชี้ที่ฟิลด์ cuscode ในตารางข้อมูล customer แล้วลากไปวางซ้อนกับฟิลด์ cuscode ในตารางข้อมูล order
7. คลิกปุ่ม Create



8. ฟิลด์ชื่อ sheetcode ในตารางข้อมูล sheetstock ไปวางซ้อนกับฟิลด์ sheetcode ในตารางข้อมูล order
9. คลิกปุ่ม Create
10. ผลที่ได้ จะปรากฏเส้นเชื่อมโยงระหว่างฟิลด์
11. บันทึกงานเก็บไว้โดยคลิกปุ่ม Save



ตัวอย่างการนำความสัมพันธ์ไปใช้งานในคิวรีใน Access 2007 

1. คลิก Create
2. คลิก Queries Design
3. คลิกเลือกตารางข้อมูลที่ต้องการ เช่น customer
4. คลิกปุ่ม Add
5. เพิ่มตารางข้อมูลเข้าไป 3 ตารางดังตัวอย่าง เสร็จแล้วคลิกปุ่ม Close



6. จะพบว่าในตารางจะมีการสร้างความสัมพันธ์ไว้
7. ลากฟิลด์ที่ต้องการสร้างการค้นหามาวางในช่อง Field จากตัวอย่างต้องการดูว่า ลูกค้าแต่ละคน ซื้อสินค้าเมื่อวันใดบ้าง รหัสสินค้า ชื่อสินค้าและจำนวนที่ซื้อ
8. ช่อง Field เป็นชื่อฟิลด์
9. ช่อง Table เป็นตารางข้อมูล
10. การซ่อนหรือแสดงข้อมูลที่ค้นหา ก็คลิกเอาถูกออกในส่วน Show
11. เสร็จแล้วคลิกปุ่ม View เพื่อดูผลงาน
12. ผลงานที่ได้
13. คลิกปุ่ม View เพื่อกลับไปแก้ไข
14. เสร็จแล้วก็บันทึกงานเก็บไว้ โดยคลิกปุ่ม Save



สร้างฟิลด์คำนวณในคิวรี

จากตัวอย่างเราต้องการคำนวณจำนวนเงินที่ลูกค้าซื้อสินค้าโดยนำราคา (sprice) คูณกับจำนวนที่ซื้อ (quantity)
1. ช่อง Field ที่อยู่ถัดจาก quantity คลิกและพิมพ์ sprice* quantity แล้วกดปุ่ม Enter
2. ผลที่ได้ จะปรากฏข้อความ Expr1:[sprice]*[quantity]
3. คลิกที่ Expr1 แล้วแก้ไขเป็น Total (รวมเงิน)
4. จากนั้นคลิกปุ่ม View ดูผลงาน
5. ผลที่ได้ (ดูในช่อง Total) จะรวมเงินให้ตามต้องการ








ไม่มีความคิดเห็น:

แสดงความคิดเห็น