ชุดของตารางที่มีแถวและคอลัมน์ที่จัดเก็บข้อมูลที่ดึงมาหรือใช้เป็นและเมื่อจำเป็นจะเรียกว่าเป็นข้อมูล ข้อมูลที่จัดเก็บในแถวและคอลัมน์ถูกกำหนดโดยคีย์ที่ใช้ในตาราง ตารางมีคีย์หลัก คีย์เฉพาะ คีย์ต่างประเทศ ฯลฯ
คีย์หลักเทียบกับคีย์ที่ไม่ซ้ำ
ความแตกต่างระหว่างคีย์หลักและคีย์ที่ไม่ซ้ำคือคีย์หลักใช้เพื่อระบุแถวของตารางโดยไม่ซ้ำกัน กระบวนการระบุเฉพาะแถวจะเรียกว่าเป็นความสมบูรณ์ของเอนทิตี ตารางคีย์ที่ไม่ซ้ำกันเพียงคีย์เดียวในขณะที่คีย์ที่ไม่ซ้ำจะกำหนดเงื่อนไขเพิ่มเติม ในการทำให้แถวไม่ซ้ำกันนอกเหนือจากคีย์หลัก ตารางสามารถมีคีย์ที่ไม่ซ้ำได้มากกว่าหนึ่งคีย์
ข้อจำกัดของคีย์หลักในตารางใช้เพื่อระบุแถวของตารางโดยไม่ซ้ำกัน ในตารางข้อมูลใดๆ มีคีย์หลักเพียงคีย์เดียว ไม่ใช้ค่า Null และไม่อนุญาตให้ใช้คีย์ที่ซ้ำกัน
คีย์เฉพาะของตารางช่วยยืนยันว่าข้อมูลในแต่ละแถวและคอลัมน์ไม่ซ้ำกันและไม่ซ้ำกัน ในตาราง มีคีย์ที่ไม่ซ้ำกันมากกว่าหนึ่งคีย์ คีย์เฉพาะอาจใช้ค่า Null และคีย์ที่ซ้ำกัน คีย์หลักมักจะไม่ซ้ำกัน แต่ในทางกลับกันก็ไม่จริงเสมอไป
ตารางเปรียบเทียบระหว่างคีย์หลักและคีย์ที่ไม่ซ้ำ
พารามิเตอร์ของการเปรียบเทียบ | คีย์หลัก | คีย์เฉพาะ |
---|---|---|
ฟังก์ชันพื้นฐาน | ฟังก์ชันพื้นฐานของคีย์หลักคือการระบุแถวในตารางโดยไม่ซ้ำกัน | ฟังก์ชันพื้นฐานของคีย์เฉพาะคือการใช้เงื่อนไขเพิ่มเติมกับแถวเพื่อให้ไม่ซ้ำกัน |
จำนวนคีย์ในตาราง | ตารางมีคีย์หลักเพียงรายการเดียว | ตารางสามารถมีได้มากกว่าหนึ่งคีย์ที่ไม่ซ้ำกัน |
การยอมรับค่าว่าง | คีย์หลักไม่ยอมรับค่า Null | คีย์เฉพาะสามารถรับค่า Null ได้ |
การจัดทำดัชนี | คีย์หลักมีดัชนีเริ่มต้นแบบคลัสเตอร์ | ดัชนีเริ่มต้นในคีย์เฉพาะจะไม่ทำคลัสเตอร์ |
คีย์ซ้ำ | ไม่อนุญาตให้ใช้คีย์ซ้ำในคีย์หลักของตาราง | อนุญาตให้ใช้คีย์ที่ซ้ำกันในคีย์เฉพาะของตารางหากส่วนคีย์อย่างน้อยหนึ่งส่วนเป็นค่าว่าง |
คีย์หลักคืออะไร?
คีย์ที่สำคัญที่สุดอย่างหนึ่งของตารางข้อมูลคือคีย์หลัก คีย์หลักคือคีย์ที่ยืนยันความเป็นเอกลักษณ์ของตารางข้อมูล โดยจะกำหนดแถวของตารางโดยไม่ซ้ำกัน ดังนั้นจึงใช้กระบวนการความสมบูรณ์ของเอนทิตี ในตาราง มีคีย์หลักเพียงรายการเดียว อย่างไรก็ตาม ค่าของคีย์หลักมีสองส่วน คีย์หลักยังสามารถกำหนดเป็นข้อจำกัด SQL ที่ระบุแถวของเร็กคอร์ดโดยไม่ซ้ำกัน
คีย์หลักไม่ยอมรับค่า Null คีย์หลักไม่ยอมรับค่าที่ซ้ำกัน ดัชนีเริ่มต้นของคีย์หลักเป็นแบบคลัสเตอร์ ค่าในแถวของคีย์หลักของตารางไม่สามารถเปลี่ยนแปลงหรือลบได้ คีย์เฉพาะสามารถเชื่อมโยงกับตารางอื่นเป็นคีย์ภายนอกได้
ไวยากรณ์สำหรับการสร้างคีย์หลักในตารางคือ-
สร้างบุคคลตาราง (ID int ไม่ใช่ NULL, นามสกุล varchar (255) ไม่ใช่ NULL, ชื่อ varchar (255), อายุ int, คีย์หลัก (ID));
คีย์เฉพาะคืออะไร?
คีย์อื่นของตารางข้อมูลคือคีย์เฉพาะ คีย์เฉพาะในตารางข้อมูลจะระบุแถวที่ไม่ซ้ำกับคีย์หลัก หน้าที่ของคีย์เฉพาะคือการใช้เงื่อนไขกับแถวที่ทำให้ไม่ซ้ำกัน จุดประสงค์คือเพื่อให้แน่ใจว่าข้อมูลในแต่ละแถวหรือคอลัมน์ไม่ซ้ำกันและไม่ซ้ำกัน ในตาราง มีคีย์ที่ไม่ซ้ำกันมากกว่าหนึ่งคีย์ กำหนดข้อมูลในระเบียนโดยไม่ซ้ำกัน
คีย์เฉพาะสามารถรับค่า Null ได้ นอกจากนี้ยังใช้ค่าที่ซ้ำกันในตารางหากส่วนสำคัญอย่างน้อยหนึ่งส่วนเป็นค่าว่าง พบดัชนีเริ่มต้นของคีย์เฉพาะ ค่าในแถวและคอลัมน์สามารถเปลี่ยนแปลงหรือเปลี่ยนแปลงได้ คีย์เฉพาะไม่สามารถเชื่อมโยงกับตารางอื่นเป็นคีย์ภายนอกได้
ไวยากรณ์ของการสร้างคีย์เฉพาะในตารางคือ-
สร้างบุคคลตาราง (ID int UNIQUE ชื่อ varchar (255) ไม่ใช่ NULL นามสกุล varchar (255), อายุ int, UNIQUE KEY (ID));
ความแตกต่างที่สำคัญระหว่าง คีย์หลักและคีย์เฉพาะ
บทสรุป
ในฐานข้อมูลเชิงสัมพันธ์ ทั้งคีย์หลักและคีย์เฉพาะจะรับรองความเป็นเอกลักษณ์ของคอลัมน์และตาราง คีย์หลักระบุเร็กคอร์ดที่ไม่ซ้ำกัน ในทางกลับกัน คีย์ที่ไม่ซ้ำจะป้องกันรายการที่ซ้ำกันในตาราง