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

Microsoft SQL เป็นระบบจัดการฐานข้อมูลเชิงสัมพันธ์ที่พัฒนาโดย Microsoft ฟังก์ชั่นหลักของมันรวมถึงการจัดเก็บและดึงข้อมูลเมื่อมีการร้องขอโดยแอปพลิเคชันซอฟต์แวร์อื่นที่ทำงานบนคอมพิวเตอร์เครื่องเดียวกันหรือคอมพิวเตอร์เครื่องอื่นในเครือข่าย
ปุ่มเล่นเป็นส่วนสำคัญเมื่อพูดถึงการจัดเก็บและเรียกข้อมูล ข้อมูลที่เก็บไว้ในเซิร์ฟเวอร์เป็นชุดของตารางที่มีคอลัมน์ คอลัมน์เหล่านี้จัดเก็บข้อมูลประเภทต่าง ๆ และสามารถดึงข้อมูลได้โดยใช้คำแนะนำ คีย์หลักและคีย์เฉพาะเป็นคีย์สองประเภทที่กำหนดวิธีการจัดเก็บข้อมูลในระบบ
วัตถุในฐานข้อมูล SQL Server ถูกจัดระเบียบเป็นตารางและดัชนีและจัดเก็บเป็นชุดของหน้า 8-KB กุญแจช่วยในการพิจารณาว่าข้อมูลถูกเก็บไว้ที่ใดในฐานข้อมูล กุญแจทั้งสองนั้นแตกต่างกัน อย่างไรก็ตามคีย์หลักเป็นประเภทของคีย์ที่ไม่ซ้ำกัน พวกเขายังคล้ายกันในฟังก์ชั่น แต่มีฟังก์ชั่นที่แตกต่างกัน
คีย์หลักถูกกำหนดผ่านข้อ จำกัด ของคีย์หลักและสามารถระบุได้ในระหว่างการสร้างตาราง ในมาตรฐาน SQL คีย์หลักอาจประกอบด้วยหนึ่งหรือหลายคอลัมน์ แต่ละคอลัมน์ที่เข้าร่วมในคีย์หลักจะถูกกำหนดโดยนัยเป็น NOT NULL คีย์หลักเสนอฟังก์ชั่นหลัก 3 อย่าง:

แต่ละตารางไม่สามารถมีคีย์หลักได้มากกว่าหนึ่งคีย์
ในบางระบบฐานข้อมูลคีย์หลักจะสร้างดัชนีคลัสเตอร์โดยค่าเริ่มต้น
คีย์ที่ไม่ซ้ำนั้นคล้ายกับคีย์หลักและสามารถกำหนดได้ในระหว่างการสร้างตาราง ปุ่มที่ไม่ซ้ำกันยังช่วยให้ข้อมูลหรือแถวไม่สามารถทำซ้ำในตารางอื่น ๆ คุณสมบัติหลัก 3 ประการที่ข้อเสนอพิเศษมีดังนี้:
คีย์ที่ไม่ซ้ำกันสามารถอนุญาตให้เป็นโมฆะ แต่จะมีเพียงคีย์เดียวเท่านั้น (สามารถกำหนดคีย์ที่ไม่ซ้ำกันในคอลัมน์ที่อนุญาตให้มีค่าว่างได้)
แต่ละตารางสามารถมีได้หลายปุ่ม
ในบางระบบฐานข้อมูลคีย์เฉพาะจะสร้างดัชนีแบบไม่รวมกลุ่มตามค่าเริ่มต้น
การเปรียบเทียบระหว่างคีย์หลักและคีย์เฉพาะ:
คีย์หลัก | กุญแจที่ไม่ซ้ำ | |
คำนิยาม | คีย์หลักเป็นประเภทของคีย์เฉพาะ นี่คือกุญแจที่ได้รับอนุญาตให้ย้ายไปยังเอนทิตีอื่น ๆ เพื่อกำหนดความสัมพันธ์ที่มีอยู่ระหว่างเอนทิตี | คีย์ที่ไม่ซ้ำกันคือชุดของศูนย์หนึ่งหรือมากกว่าหนึ่งคุณลักษณะ ค่าของคุณลักษณะเหล่านี้จะต้องไม่ซ้ำกันสำหรับแต่ละ tuple (แถว) ในความสัมพันธ์ ค่าหรือการรวมกันของค่าของคุณลักษณะสำคัญที่ไม่ซ้ำกันสำหรับ tuple ใด ๆ ที่ไม่ควรทำซ้ำสำหรับ tuple อื่น ๆ ในความสัมพันธ์นั้น |
ใช้แล้ว | ระบบการจัดการฐานข้อมูลเชิงสัมพันธ์เช่น MySQL, Oracle, ฯลฯ | ระบบการจัดการฐานข้อมูลเชิงสัมพันธ์เช่น MySQL, Oracle, ฯลฯ |
ค่า Null | ไม่ยอมรับค่า Null ใด ๆ | ยอมรับค่า Null เพียงหนึ่งค่าในตาราง |
ประเภทของดัชนี | เป็นดัชนีคลัสเตอร์และข้อมูลในตารางฐานข้อมูลถูกจัดระเบียบทางกายภาพในลำดับของดัชนีคลัสเตอร์ | เป็นดัชนีที่ไม่เป็นคลัสเตอร์ที่ไม่ซ้ำกัน |
จำนวนคีย์ที่อนุญาต | คีย์หลักเดียวเท่านั้นในตาราง | สามารถมีคีย์เฉพาะได้มากกว่าหนึ่งคีย์ในตาราง |
แปลงสภาพ | สามารถทำเป็นรหัสต่างประเทศลงในตารางอื่นได้ | สามารถทำเป็นรหัสต่างประเทศลงในตารางอื่นได้ |