1.9.5 การระบุคีย์หลัก
ในแต่ละตารางควรจะมีคอลัมน์หรือชุดของคอลัมน์ที่ระบุแต่ละแถวที่เก็บอยู่ใน
ตารางโดยไม่ซ้ำกัน ซึ่งมักจะเป็นหมายเลขการระบุที่ไม่ซ้ำกัน เช่น หมายเลข ID พนักงาน หรือ
หมายเลขผลิตภัณฑ์ ในเชิงศัพท์เกี่ยวกับฐานข้อมูลนั้น ข้อมูลนี้จะมีชื่อเรียกว่า คีย์หลัก ของตาราง
ซึ่ง Access 2007 จะใช้เขตข้อมูลคีย์หลักในการเชื่อมโยงข้อมูลจากตารางหลายตารางอย่างรวดเร็ว
แล้วนำข้อมูลเหล่านี้มารวมกันให้
ถ้ามีตัวระบุที่ไม่ซ้ำกันสำหรับตารางนั้นแล้ว เช่น หมายเลขผลิตภัณฑ์ซึ่งระบุ
ผลิตภัณฑ์ในแค็ตตาล็อกโดยไม่ซ้ำกัน เราสามารถใช้ตัวระบุนั้นเป็นคีย์หลักของตารางได้ แต่มีเงื่อนไขว่าค่าในคอลัมน์นี้ต้องไม่เหมือนกันในทุกระเบียนเสมอ เราไม่สามารถมีค่าซ้ำกันในคีย์หลั
ได้ ตัวอย่างเช่น ไม่ใช้ชื่อคนเป็นคีย์หลักเนื่องจากชื่ออาจซ้ำกันได้ เป็นเรื่องง่ายที่จะมีคนสองคนซึ่ง
ชื่อเหมือนกันในตารางเดียวกัน
คีย์หลักต้องมีค่าเสมอ ถ้าค่าของคอลัมน์นั้นไม่มีหรือไม่ทราบค่า (ค่าที่หายไป) จะไม่
สามารถใช้เป็นส่วนหนึ่งของคีย์หลักได้
ควรเลือกคีย์หลักที่ค่าจะไม่เปลี่ยน ในฐานข้อมูลที่ใช้มากกว่าหนึ่งตาราง คีย์หลักของ
ตารางสามารถใช้เป็นการอ้างอิงในตารางอื่นได้ ถ้าคีย์หลักเปลี่ยนแปลง การเปลี่ยนแปลงนั้นจะมีผล
กับทุกแห่งที่อ้างอิงคีย์นั้น การใช้คีย์หลักที่ไม่เปลี่ยนแปลงจะลดโอกาสที่คีย์หลักอาจไม่เปลี่ยนให้
ตรงกันกับตารางอื่นที่อ้างถึงคีย์หลักนั้น
บ่อยครั้งที่จะมีการใช้หมายเลขที่ไม่ซ้ำกันเป็นคีย์หลัก ตัวอย่างเช่น อาจกำหนด
หมายเลขใบสั่งซื้อที่ไม่ซ้ำกันให้กับการสั่งซื้อแต่ละครั้ง วัตถุประสงค์เดียวของหมายเลขใบสั่งซื้อนี้
คือ เพื่อระบุใบสั่งซื้อแต่ละใบ เมื่อมีการกำหนดแล้ว หมายเลขนี้จะไม่มีการเปลี่ยนแปลง
ถ้าไม่มีคอลัมน์หรือชุดคอลัมน์ในใจที่อาจเป็นคีย์หลักที่ดีแล้วล่ะก็ ให้ลองพิจารณา
ใช้คอลัมน์ที่มีชนิดข้อมูลเป็น AutoNumber เมื่อคุณใช้ชนิดข้อมูล AutoNumber โปรแกรม Access
2007 จะกำหนดค่าให้คุณโดยอัตโนมัติ ตัวระบุเช่นนี้ไม่มีความหมาย ไม่ได้มีข้อมูลข้อเท็จจริงที่ใช้
อธิบายแถวที่ระบุ ตัวระบุที่ไม่มีความหมายนี้เหมาะจะใช้เป็นคีย์หลักเพราะไม่มีการเปลี่ยนแปลงค่า
คีย์หลักที่มีข้อเท็จจริงเกี่ยวกับแถว ตัวอย่างเช่น หมายเลขโทรศัพท์ หรือชื่อลูกค้า มีโอกาสที่จะ
เปลี่ยน เพราะตัวข้อเท็จจริงเองนั้นอาจเปลี่ยนแปลงได้
รูปที่ 1-14 การกำหนดคีย์หลัก
จากรูป มีอยู่บ่อยครั้งที่คอลัมน์ที่ตั้งค่าเป็นชนิดข้อมูล AutoNumber มักจะสามารถใช้
เป็นคีย์หลักที่ดีได้ เนื่องจากไม่มีหมายเลขผลิตภัณฑ์ที่ตรงกันสองรายการ
ในบางกรณี อาจต้องการใช้เขตข้อมูลอย่างน้อยสองเขตข้อมูลร่วมกันเป็นคีย์หลัก
ของตาราง ตัวอย่างเช่น ตารางรายละเอียดใบสั่งซื้อที่เก็บรายการใบสั่งซื้อควรใช้สองคอลัมน์เป็นคีย์
หลัก ได้แก่ ID ใบสั่งซื้อและหมายเลขผลิตภัณฑ์ เมื่อมีการใช้คีย์หลักมากกว่าหนึ่งคอลัมน์ จะ
เรียกว่า คีย์ผสม
สำหรับฐานข้อมูลยอดขายผลิตภัณฑ์ สามารถสร้างคอลัมน์ AutoNumber สำหรับแต่
ละตารางเพื่อใช้เป็นคีย์หลักได้ ได้แก่ หมายเลขผลิตภัณฑ์สำหรับตารางผลิตภัณฑ์ ID ใบสั่งซื้อ
สำหรับตารางใบสั่งซื้อ ID ประจำตัวลูกค้าสำหรับตารางลูกค้า และ ID ผู้จำหน่ายสำหรับตารางผู้
จำหน่าย
รูปที่ 1-15 สร้างคอลัมน์ AutoNumber สำหรับแต่ละตารางเพื่อใช้เป็นคีย์หลักได้
0 ความคิดเห็น:
แสดงความคิดเห็น