การกําหนดคีย์หลักมีวิธีการอย่างไร

ประเภทของคีย์ใน ระบบฐานข้อมูล

การกำหนดคีย์ในระบบฐานข้อมูลนั้น ไม่ว่า ฐานข้อมูลใดๆเช่น PostgreSQL, MySQL, Oracle, SQL Server ก็มี Key ไว้สำหรับเป็นการช่วยเพิ่มประสิทธิภาพในการทำงานของฐานข้อมูล เพราะเป็นการกำหนดการอ้างอิงของข้อมูล การค้นหา จึงทำให้การประมวลของระบบมีความรวดเร็วยิ่ง ซึ่งคีย์ในระบบฐานข้อมูลสามารถแบ่งออกได้ 5 ชนิดดังนี้

1.Primary Key (คีย์หลัก) คือะไร
คีย์หลัก คือข้อมูลคอลัมน์หนึ่งในตารางที่ไม่มีค่าซ้ำกับข้อมูลคอลัมน์อื่น เเละต้องไม่เป็นค่าว่าง(Null)

รูปที่ 1.1 Primary Key (คีย์หลัก)Primary Key.jpg (69.86 KiB) Viewed 42925 times

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

2.Secondary Key (คีย์รอง)
ในบางครั้งเรียกคีย์ชนิดนี้ว่า อินเด็กซ์ (Index) คีย์ชนิดนี้เปรียบเสมือนเป็นคีย์รองจากคีย์หลัก กล่าวคือเมื่อเรากำหนดคีย์หลักเเล้ว DBMS ก็จะสามารถค้นหาข้อมูล เเต่เมื่อรัยที่มีข้อมูลเป็นจำนวนมาก DBMS ก็จะต้องทำการค้นหาตั้งเเต่ต้นจนกว่าจะเจอ ซึ่งทำให้เกิดการล่าช้า
เเต่หากมีคีย์รองเป็นชื่อและนามสกุลก็จะสามารถช่วยให้ DBMS ทำการค้นหาได้สะดวกรวดเเล้วยิ่งขึ้น

รูปที่ 1.2 Secondary Key (คีย์รอง)Secondary Key.jpg (82.27 KiB) Viewed 42925 times

#คีย์รองยอมให้ข้อมูลซ้ำกันได้ เเต่หากข้อมูลซ้ำกันมากก็ไม่เป็นผลดี

3.Compound Key (คีย์รวม)
ในบางครั้งเรียกคีย์ชนิดนี้ว่า Composite Key เป็นคีย์ที่ใช้คอลัมน์หลายคอลัมน์มาร่วมกันเป็นคีย์หลัก ดังรูปที่ 1.3

รูปที่ 1.3 Compound Key (คีย์รวม)Compound Key.jpg (60.84 KiB) Viewed 42925 times

#เนื่องจากในบางครั้งการกำหนด Primary Key เพียงคอลัมน์เดียวอาจเกิดการซ้ำของข้อมูลได้

4.Candidate Key (คีย์คู่เเข่ง)
เมื่อมีคอลัมน์ที่มีคุณสมบัติครบถ้วนในการเป็น Primary Key คือ ไม่มีค่าซ้ำ ไม่เป็นค่าว่าง

รูปที่ 1.4 Candidate Key (คีย์คู่เเข่ง)Candidate Key.jpg (75.91 KiB) Viewed 42925 times

จากรูปที่ 1.4 จะเห็นว่ามี Candidate Key อยู่ 2 ตัวคือ รหัสประจำตัวนักศึกษาและชื่อ(ถ้ามั่นใจเเล้วว่าชื่อนักศึกษาจะไม่มีค่าซ้ำกันเลย)
#ในกรณีนี้หากผู้ออกแบบฐานข้อมูลกำหนดให้คอลัมน์รหัสประจำตัวนักศึกษาเป็น Primary Key ดังนั้นคอลัมน์ชื่อก็จะกลายเป็น Secondary Key อัตโนมัติ

เพื่อให้เข้าใจยิ่งขึ้นให้ดูอีกตัวอย่างหนึ่งดังรูปที่ 1.5

รูปที่ 1.5 Candidate Key (คีย์คู่เเข่ง)Candidate Key_1.jpg (91.71 KiB) Viewed 42925 times

จากรูปที่ 1.5 จะเห็นได้อย่างชัดเจนว่า รหัสประจำตัวนักศึกษาเเละรหัสบัตรประชาชน จะไม่เป็นค่าซ้ำและค่าว่างอย่างเเน่นอน ดังนั้นรหัสประจำตัวนักศึกษาเเละรหัสบัตรประชาชน คือ Candidate Key

5.Foreign Key (คีย์นอก)
เป็นคีย์ที่ใช้เชื่อมความสัมพันธ์กับตารางอื่นๆ

รูปที่ 1.6 Foreign Key (คีย์นอก)Foreign Key.jpg (145.6 KiB) Viewed 42925 times

จากรูปที่ 1.6 ตารางนักศึกษามีคอลัมน์รหัสประจำตัวนักศึกษาเป็น Primary Key และในตารางการลงทะเบียนมีคอลัมน์รัหัสวิชาเป็น Primary Key เเต่เมื่อ 2 ตารางมีความสัมพันธ์กัน คอลัมน์รหัสประจำตัวนักศึกษาจะเป็น Foreign Key ของตารางการลงทะเบียน ซึ่งความสัมพันธ์แบบ One-to-Many (ศึกษาความสัมพันธ์ของระบบฐานข้อมูลเพิ่มเติม viewtopic.php?p=38352#p38352)

ขั้นตอน วิธีการสร้างคอลัมน์ Column ให้กับตาราง Table ใน PostgreSQL

2.เลือก Object Schemas แล้วเลือก Object Public จะเห็น Object ตาราง Tableของฐานข้อมูลนั้น จะพบตารางทั้งหมดที่ได้สร้างไว้ ให้คลิ๊กขวาที่ตารางนั้นเลือก New Object แล้วเลือก New Column

3.จะปรากฎหน้าต่าง New Column.... ให้ใส่ข้อมูลของคอลัมน์ ลงไป

Name : ชื่อคอลัมน์

Data Type : ชนิดของข้อมูล

Length : จำนวนตัวอักษรสูงสุด

เมื่อใส่ข้อมูลของคอลัมน์เสร็จแล้วคลิ๊ก ok

4.ในการสร้าง Primary Key หรือคีย์หลักให้กับตาราง Table สามารถทำได้เช่นเดียวกับการเพิ่มคอลัมน์ ให้คลิ๊กขวาที่ Table แล้วเลือก New Object แล้วเลือก New Primary Key...

5.จะปรากฎหน้าต่าง New Primary Key... ในช่อง Name ให้ใส่ชื่อของ Primary Key คีย์หลักลงไป

6.ในหน้า New Primary Key แท็บ Columns ให้เลือกคอลัมน์ของเข้ามาด้วย  โดยในช่อง Columns จะมีรายการ Columns ของตารางทั้งหมด  ให้เลือกคอลัมน์ที่ต้องการเเล้วคลิ๊ก Add  เมื่อเลือกคอลัมน์แล้วให้คลิ๊ก ok 

ข้อใดเป็นกฎของการกำหนดคีย์หลัก (Primary Key)

1. Primary Key หมายถึง คีย์หลักที่กำหนดจากฟิลด์ที่ไม่มีข้อมูลซ้ำซ้อน (unique) ใน Table เดียวกันโดยเด็ดขาด และจะต้องมีค่าเสมอ จะเป็นค่าว่าง (Null) ไม่ได้ สามารถนำมาจัดเรียงลำดับและแยกแยะข้อมูลแต่ละรายการออกจากกันได้เป็นอย่างดี

คีย์หลักมีคุณสมบัติอย่างไร

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

คีย์หลักและคีย์นอกแตกต่างกันอย่างไร

2. Primary Key คือ คีย์ต้น ที่ใช้ระบุให้กับข้อมูลที่มีความเป็นเอกลักษณ์ หรือไม่ซ้ำกับข้อมูลในแถวอื่น ๆ เช่น รหัสบัตรประจำตัวนักเรียน 3. Foreign Key คือ คีย์เชื่อม หรือ คีย์นอกมีไว้สำหรับเชื่อมโยงความสัมพันธ์ของตารางข้อมูลอย่างน้อย 2 ตาราง

ข้อใดเป็นข้อกำหนดของ คีย์หลัก

สรุป : คีย์หลัก มีคุณลักษณะดังนี้ 1) มีค่ำไม่ซ้ำกันในแต่ละแถว 2) ไม่มีค่ำที่เป็นค่ำว่ำง 3) จะถูกเปลี่ยนแปลงค่ำไม่ได้ 4) แต่ละตำรำงจะมีหนึ่งคีย์หลักเท่ำนั้น 5) สร้ำงจำกฟิลด์เดียวหรือจำกหลำยๆฟิลด์ก็ได้

Toplist

โพสต์ล่าสุด

แท็ก

ไทยแปลอังกฤษ แปลภาษาไทย โปรแกรม-แปล-ภาษา-อังกฤษ พร้อม-คำ-อ่าน lmyour แปลภาษา แปลภาษาอังกฤษเป็นไทย pantip ไทยแปลอังกฤษ ประโยค แอพแปลภาษาอาหรับเป็นไทย ห่อหมกฮวกไปฝากป้าmv ระเบียบกระทรวงการคลังว่าด้วยการจัดซื้อจัดจ้างและการบริหารพัสดุภาครัฐ พ.ศ. 2560 แปลภาษาอาหรับ-ไทย Terjemahan พจนานุกรมศัพท์ทหาร หยน แปลภาษา มาเลเซีย ไทย Bahasa Thailand ข้อสอบภาษาอังกฤษ พร้อมเฉลย pdf บบบย tor คือ จัดซื้อจัดจ้าง การ์ดแคปเตอร์ซากุระ ภาค 4 ชขภใ ยศทหารบก เรียงลําดับ ห่อหมกฮวกไปฝากป้า หนังเต็มเรื่อง เขียน อาหรับ แปลไทย แปลภาษาอิสลามเป็นไทย Google map กรมพัฒนาฝีมือแรงงาน อบรมออนไลน์ กระบวนการบริหารทรัพยากรมนุษย์ 8 ขั้นตอน ข้อสอบคณิตศาสตร์ พร้อมเฉลย ค้นหา ประวัติ นามสกุล อาจารย์ ตจต แจ้ง ประกาศ น้ำประปาไม่ไหล แปลบาลีเป็นไทย แปลภาษา ถ่ายรูป แปลภาษาจีน แปลภาษามลายู ยาวี โรงพยาบาลภมูพลอดุยเดช ที่อยู่ Google Drive Info TOR คือ กรมพัฒนาฝีมือแรงงาน ช่างไฟฟ้า กรมพัฒนาฝีมือแรงงาน อบรมฟรี 2566 กลยุทธ์ทางการตลาด มีอะไรบ้าง การบริหารทรัพยากรมนุษย์ มีอะไรบ้าง การประปาส่วนภูมิภาค การ์ดแคปเตอร์ซากุระ ภาค 3 ขขขขบบบยข ่ส ข่าว น้ำประปา วันนี้ ข้อสอบโอเน็ต ม.6 มีกี่ตอน ตารางธาตุ ประปาไม่ไหล วันนี้