เพิ่มหรือเปลี่ยนคีย์หลักของตารางใน Access

เพิ่มหรือเปลี่ยนคีย์หลักของตารางใน Access

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

เมื่อต้องการตั้งค่าคีย์หลักของตาราง ให้เปิดตารางในมุมมองออกแบบ เลือกเขตข้อมูล (หรือหลายเขตข้อมูล) ที่คุณต้องการใช้ จากนั้นบน Ribbon ให้คลิก คีย์หลัก

หมายเหตุ:  บทความนี้ใช้กับฐานข้อมูลบนเดสก์ท็อปของ Access เท่านั้น Access จะจัดการคีย์หลักของตารางใหม่ใน Access Web App และในฐานข้อมูลบนเว็บโดยอัตโนมัติ ถึงแม้ว่าคุณจะสามารถแทนที่คีย์หลักแบบอัตโนมัติเหล่านี้ได้ แต่เราไม่แนะนำให้คุณทำเช่นนั้น

ในบทความนี้

ภาพรวมของคีย์หลักใน Access

ตั้งค่าคีย์หลักโดยใช้เขตข้อมูลที่คุณมีอยู่แล้วใน Access

เอาคีย์หลักออก

เปลี่ยนคีย์หลักใน Access

ข้อมูลเพิ่มเติม

ภาพรวมของคีย์หลักใน Access

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

คีย์หลักและคีย์นอกแสดงแผ่นข้อมูล Access สองรายการ

1. คีย์หลัก

2. Foreign Key

ถ้าคุณกำลังย้ายข้อมูลที่มีอยู่ไปยังฐานข้อมูลหนึ่ง คุณอาจมีเขตข้อมูลที่คุณสามารถใช้เป็นคีย์หลักอยู่แล้ว บ่อยครั้งที่หมายเลขประจำตัวที่ไม่ซ้ำกัน เช่น หมายเลข ID เลขลำดับ หรือโค้ด จะถูกใช้เป็นคีย์หลักในตาราง ตัวอย่างเช่น คุณอาจมีตารางลูกค้าโดยที่ลูกค้าแต่ละรายจะมีหมายเลข ID ลูกค้าที่ไม่ซ้ำกัน เขตข้อมูล ID ลูกค้าก็เป็นคีย์หลัก

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

เมื่อคุณสร้างตารางใหม่ในมุมมองแผ่นข้อมูล Access จะสร้างคีย์หลักให้คุณและกำหนดชื่อเขตข้อมูลของ "ID" และชนิดข้อมูล AutoNumber ให้โดยอัตโนมัติ

คีย์หลักที่ดีมีลักษณะอย่างไร

เขตข้อมูลที่ดีที่เหมาะจะเป็นคีย์หลักจะมีคุณลักษณะหลายประการดังนี้

  • ระบุแต่ละแถวโดยไม่ซ้ำกัน

  • ไม่เคยมีค่าว่าง หรือ Null กล่าวคือ ต้องมีค่าบรรจุอยู่เสมอ

  • ค่าในเขตข้อมูลคีย์หลักจะไม่ค่อยเปลี่ยนแปลง (ให้ดีที่สุดคือ ไม่เปลี่ยนแปลงเลย)

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

คีย์หลัก AutoNumber แสดงเป็น ID ในมุมมอง ออกแบบ ของตาราง Access

เขตข้อมูล AutoNumber สร้างคีย์หลักที่ดีได้

ตัวอย่างของคีย์หลักที่ไม่ดี

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

คีย์หลักที่ไม่ดี

เหตุผล

ชื่อส่วนบุคคล

อาจซ้ำกันได้และอาจเปลี่ยนแปลงได้

หมายเลขโทรศัพท์

มีแนวโน้มที่จะเปลี่ยนแปลง

ที่อยู่อีเมล

มีแนวโน้มที่จะเปลี่ยนแปลง

รหัสไปรษณีย์

อาจมีหลายคนใช้รหัสไปรษณีย์เดียวกัน

การรวมข้อเท็จจริงกับตัวเลข

ส่วนข้อเท็จจริงนั้นอาจเปลี่ยนไป ทำให้เกิดภาระการซ่อมบำรุงได้ สามารถนำไปสู่ความสับสนได้ ถ้าส่วนข้อเท็จจริงนั้นถูกทำซ้ำเป็นเขตข้อมูลที่แยกจากกัน ตัวอย่างเช่น การรวมเมืองและเพิ่มค่าตัวเลขเข้าไว้ด้วยกัน (เช่น NEWYORK0579) จะเป็นตัวเลือกที่ไม่เหมาะสมได้ ถ้าเมืองถูกเก็บไว้เป็นเขตข้อมูลด้วย

หมายเลขประกันสังคม

  • เป็นข้อมูลส่วนบุคคลและไม่อนุญาตให้ใช้ในหน่วยงานของรัฐและองค์กรบางแห่ง

  • บางคนก็ไม่มีหมายเลขประกันสังคม

  • ตลอดช่วงชีวิตบุคคลหนึ่งอาจมีหมายเลขประกันสังคมได้มากกว่าหนึ่งหมายเลข

คีย์ผสม กล่าวคือใช้หลายเขตข้อมูลรวมกันเป็นคีย์หลัก

ในบางกรณี คุณอาจต้องการใช้มากกว่าหนึ่งเขตข้อมูลเป็นคีย์หลัก ตัวอย่างเช่น ตารางรายละเอียดการสั่งซื้อที่มีสินค้าในรายการสำหรับการสั่งซื้ออาจใช้สองเขตข้อมูลเป็นคีย์หลัก ได้แก่ ID การสั่งซื้อ และ ID ผลิตภัณฑ์ คีย์ที่มีมากกว่าหนึ่งเขตข้อมูลจะเรียกว่าคีย์รวม

ตั้งค่าคีย์หลักโดยใช้เขตข้อมูลที่คุณมีอยู่แล้วใน Access

เพื่อให้คีย์หลักทำงานได้ดี เขตข้อมูลนี้จะต้องระบุแต่ละแถวได้โดยไม่ซ้ำกัน จะต้องไม่เป็นค่าว่างหรือค่า Null และค่านั้นจะต้องแทบจะไม่เปลี่ยนแปลง (ไม่เปลี่ยนแปลงเลยจะดีที่สุด) วิธีตั้งค่าคีย์หลัก ดังนี้

  1. เปิดฐานข้อมูลที่คุณต้องการปรับเปลี่ยน

  2. ในบานหน้าต่างนำทาง ให้คลิกขวาที่ตารางที่คุณต้องการตั้งค่าคีย์หลัก แล้วคลิก มุมมองออกแบบ บนเมนูทางลัด

    เคล็ดลับ: ถ้าคุณไม่เห็นบานหน้าต่างนำทาง ให้กด F11 เพื่อแสดง

  3. เลือกหนึ่งเขตข้อมูลหรือหลายเขตข้อมูลที่คุณต้องการใช้เป็นคีย์หลัก

    เมื่อต้องการเลือกเขตข้อมูลเดียว ให้คลิกตัวเลือกแถวสำหรับเขตข้อมูลที่คุณต้องการ

    เมื่อต้องการเลือกหลายเขตข้อมูลเพื่อสร้างคีย์รวม ให้กด CTRL ค้างไว้แล้วคลิกตัวเลือกแถวของแต่ละเขตข้อมูล

  4. บนแท็บ ออกแบบ ในกลุ่ม เครื่องมือ ให้คลิกที่ คีย์หลัก

    กลุ่มเครื่องมือบนแท็บออกแบบ

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

เอาคีย์หลักใน Access ออก

เมื่อคุณเอาคีย์หลักออก เขตข้อมูลหนึ่งหรือหลายเขตข้อมูลที่ใช้เป็นคีย์หลักก่อนหน้าจะไม่ได้เป็นตัวหลักในการระบุระเบียนอีกต่อไป

การเอาคีย์หลักออกไม่ได้หมายความว่าจะลบเขตข้อมูลนั้นออกจากตารางของคุณ แต่จะเอาดัชนีที่สร้างขึ้นสำหรับคีย์หลักออกนั่นเอง

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

    เมื่อต้องการลบความสัมพันธ์ของตาราง ให้ทำตามขั้นตอนต่อไปนี้ให้เสร็จสิ้น:   

    1. ถ้าตารางที่มีส่วนร่วมในความสัมพันธ์ของตารางนั้นเปิดอยู่ ให้ปิดตารางก่อน คุณไม่สามารถลบความสัมพันธ์ของตารางที่เปิดอยู่ได้

    2. บนแท็บ เครื่องมือฐานข้อมูล ในกลุ่ม ความสัมพันธ์ ให้คลิก ความสัมพันธ์

      รูป Ribbon ของ Access

    3. ถ้าไม่เห็นตารางที่มีส่วนร่วมในความสัมพันธ์ของตาราง บนแท็บ ออกแบบ ในกลุ่ม ความสัมพันธ์ ให้คลิก แสดงตาราง

    4. เลือกตารางเพื่อเพิ่มลงในกล่องโต้ตอบ แสดงตาราง จากนั้นคลิก เพิ่ม แล้วคลิก ปิด

      กลุ่มความสัมพันธ์ของแท็บออกแบบ Ribbon

    5. คลิกเส้นความสัมพันธ์ของตารางสำหรับความสัมพันธ์ของตารางที่คุณต้องการลบ (เส้นนี้จะกลายเป็นเส้นที่หนาเมื่อถูกเลือก) จากนั้นให้กดแป้น DELETE

    6. บนแท็บ ออกแบบ ในกลุ่ม ความสัมพันธ์ ให้คลิก ปิด

  2. หลังจากที่คุณลบความสัมพันธ์แล้ว ในบานหน้าต่างนำทาง ให้คลิกขวาตารางที่คุณต้องการเอาคีย์หลักออก แล้วคลิก มุมมองออกแบบ

    เคล็ดลับ: ถ้าคุณไม่เห็นบานหน้าต่างนำทาง ให้กด F11 เพื่อแสดง

  3. คลิกที่ตัวเลือกแถวของคีย์หลักปัจจุบัน

    โดยถ้าคีย์หลักประกอบด้วยเขตข้อมูลเดียว ให้คลิกตัวเลือกแถวของเขตข้อมูลนั้นเลย

    ถ้าคีย์หลักประกอบขึ้นจากหลายเขตข้อมูล ให้คลิกตัวเลือกแถวของเขตข้อมูลใดๆ ก็ได้ในคีย์หลักนั้น

  4. บนแท็บ ออกแบบ ในกลุ่ม เครื่องมือ ให้คลิกที่ คีย์หลัก

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

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

เปลี่ยนคีย์หลักใน Access

ถ้าคุณตัดสินใจที่จะเปลี่ยนคีย์หลักของตาราง คุณสามารถทำได้โดยทำตามขั้นตอนต่อไปนี้:

  1. เอาคีย์หลักที่มีอยู่แล้วออกโดยทำตามคำแนะนำในส่วน เอาคีย์หลักออก

  2. ตั้งค่าคีย์หลักโดยทำตามคำแนะนำในส่วน ตั้งค่าคีย์หลัก

ข้อมูลเพิ่มเติม

สำหรับข้อมูลเพิ่มเติมเกี่ยวกับการออกแบบฐานข้อมูลและการเลือกคีย์หลักที่เหมาะสม ให้ดูบทความ:

ด้านบนของหน้า

ขยายทักษะ Office ของคุณ
สำรวจการฝึกอบรม
รับฟีเจอร์ใหม่ก่อนใคร
เข้าร่วม Office Insider

ข้อมูลนี้เป็นประโยชน์หรือไม่

ขอบคุณสำหรับคำติชมของคุณ!

ขอขอบคุณสำหรับคำติชมของคุณ! เราคิดว่าอาจเป็นประโยชน์ที่จะให้คุณได้ติดต่อกับหนึ่งในตัวแทนฝ่ายสนับสนุน Office ของเรา

×