ความแตกต่างระหว่างรหัสหลักและรหัสผู้สมัคร

สารบัญ:

ความแตกต่างระหว่างรหัสหลักและรหัสผู้สมัคร
ความแตกต่างระหว่างรหัสหลักและรหัสผู้สมัคร

วีดีโอ: ความแตกต่างระหว่างรหัสหลักและรหัสผู้สมัคร

วีดีโอ: ความแตกต่างระหว่างรหัสหลักและรหัสผู้สมัคร
วีดีโอ: อาหารที่เลยวัน ‘ควรบริโภคก่อน’ (Best-Before Date) ยังกินได้ไหม? | เจ็ดโมงครึ่ง 2024, กรกฎาคม
Anonim

กุญแจหลัก vs รหัสผู้สมัคร

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

รหัสผู้สมัครคืออะไร

Candidate key คือคอลัมน์เดียวหรือชุดของคอลัมน์ในตารางของฐานข้อมูลที่สามารถใช้เพื่อระบุเร็กคอร์ดฐานข้อมูลใดๆ โดยไม่ซ้ำกันโดยไม่ต้องอ้างอิงถึงข้อมูลอื่นใด แต่ละตารางของฐานข้อมูลสามารถมีคีย์ตัวเลือกได้มากกว่าหนึ่งคีย์ สามารถสร้างชุดของคีย์ตัวเลือกได้โดยใช้การพึ่งพาฟังก์ชัน มีคุณลักษณะที่สำคัญบางอย่างในรหัสผู้สมัคร พวกเขาคือ;

• รหัสตัวเลือกควรไม่ซ้ำกันภายในโดเมน และไม่ควรมีค่า NULL

• คีย์ตัวเลือกไม่ควรเปลี่ยน และต้องมีค่าเดียวกันสำหรับการเกิดขึ้นของเอนทิตีที่เฉพาะเจาะจง

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

รหัสหลักคืออะไร

คีย์หลักคือคีย์ตัวเลือกที่ดีที่สุดของตารางที่ใช้เพื่อระบุระเบียนที่ไม่ซ้ำที่จัดเก็บไว้ในตาราง เมื่อสร้างตารางใหม่ในฐานข้อมูล เราจะถูกขอให้เลือกคีย์หลัก ดังนั้น การเลือกคีย์หลักสำหรับตารางจึงเป็นการตัดสินใจที่สำคัญที่สุดที่ผู้ออกแบบฐานข้อมูลควรดำเนินการ ข้อจำกัดที่สำคัญที่สุด ซึ่งควรพิจารณาเมื่อตัดสินใจคีย์หลัก คือ คอลัมน์ที่เลือกของตารางควรมีเฉพาะค่าที่ไม่ซ้ำ และไม่ควรมีค่า NULL ใดๆ คีย์หลักบางตัวที่ใช้กันทั่วไปในการออกแบบตาราง ได้แก่ หมายเลขประกันสังคม (SSN), ID และหมายเลขบัตรประจำตัวประชาชน (NIC)

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

ความแตกต่างระหว่างคีย์หลักและคีย์ผู้สมัคร
ความแตกต่างระหว่างคีย์หลักและคีย์ผู้สมัคร

คีย์หลักคือคีย์ตัวเลือกที่ดีที่สุด

รหัสหลักและรหัสผู้สมัครต่างกันอย่างไร

• รหัสตัวเลือกคือคอลัมน์ที่มีคุณสมบัติไม่ซ้ำกัน ในขณะที่คีย์หลักคือคอลัมน์ที่ระบุระเบียนโดยไม่ซ้ำกัน

• ตารางที่ไม่มีคีย์ตัวเลือกไม่ได้แสดงถึงความสัมพันธ์ใดๆ

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

• แม้ว่าคีย์หลักจะเป็นหนึ่งในคีย์ตัวเลือก แต่บางครั้งก็เป็นคีย์ตัวเลือกเดียว

• เมื่อเลือกคีย์หลักแล้ว คีย์ตัวเลือกอื่นๆ จะกลายเป็นคีย์เฉพาะ

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

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

สรุป:

กุญแจหลักกับรหัสผู้สมัคร

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