คีย์หลัก (Primary Key)หมายถึงอะไร

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



ประเภทบทความ

  • Android
  • C# Web Application
  • C# Windows Application
  • CodeIgniter Framework
  • CSS & HTML
  • CSS3 & HTML5
  • Django Python
  • Java
  • JavaScript
  • jQuery
  • jQuery Mobile
  • JSP
  • Linux CentOS
  • Linux Command Line
  • Linux Ubuntu
  • Networking
  • Objective-C
  • Oracle Express
  • PHP
  • PHP & MySQLi
  • phpMyAdmin
  • Python
  • SQL
  • Stored Procedure
  • T-SQL
  • Windows Server 2008 R2
  • รับทำเว็บ, รับเขียนเว็บ
  • เรียนเขียนโปรแกรม

บทความด้านคอมพิวเตอร์

    คีย์ฐานข้อมูล คืออะไร มีอะไรบ้าง และมีหน้าที่อย่างไร

    บทความวันที่ 8 ตุลาคม 2555

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

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

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

    3. Foreign Key คือ คีย์เชื่อม หรือ คีย์นอกมีไว้สำหรับเชื่อมโยงความสัมพันธ์ของตารางข้อมูลอย่างน้อย 2 ตาราง

    4. Candidate Key คือ คีย์คู่แข่ง เวลาที่เราทำการเลือกให้ข้อมูลใดเป็น Primary Key นั้นอาจจะเป็นไปได้มากกว่า 1 ข้อมูลซึ่งข้อมูลเหล่านั้นเรียกว่า คีย์คู่แข้ง หรือ Candidate Key

    5. Alternate Key คือ คีย์สำรอง เป็นผลสืบเนื่องมาจาก Candidate Key เมื่อเราทำการเลือกให้ข้อมูลใดเป็น Primary Key เรียบร้อยแล้ว ข้อมูลทั้งหมดที่ไม่ได้ถูกเลือกจะเป็น คีย์สำรอง หรือ Alternate Key

    ขอยกตัวอย่างการประยุกต์เพื่อทำให้จดจำได้ง่าย เช่น เวลาเราสมัครงาน แน่นอนย่อมมีคนอื่น ๆ สมัครพร้อมกับเรา เราสามารถเรียกคนกลุ่มนั้นได้ว่า Candidate Key และเมื่อถ้าเราได้รับเลือกจากฝ่าย HR ให้เข้ามาทำงาน เราก็จะเป็น Primary Key ส่วนคนที่ไม่ถูกเลือกนั้นก็จะเป็น Alternate Key เพื่อเอาไว้สำหรับเรียกในรอบต่อ ๆ ไป ครับ

    คำค้นหา คีย์ฐานข้อมูล, key ฐานข้อมูล, Primary Key, Foreign Key

ก่อนอื่นเรามาทำความรู้จักกับ “Key” กันก่อน

Key เป็นแอตทริบิวต์ที่ช่วยให้เราสามารถระบุแถว และช่วยเราค้นหาความสัมพันธ์ระหว่าง 2 ตารางได้ และยังช่วยให้เราสามารถค้นหาข้อมูลได้อย่างง่ายอีกด้วย

มาดูกันดีกว่าว่า Key แต่ละอย่างนั้นมันคืออะไร และใช้งานยังไงกันนะ ?? 

Primary Key เป็น Key ที่ใช้กำหนดว่าข้อมูลในคอมลัมน์นั้น ๆ ห้ามซ้ำกัน เช่น เบอร์โทร, E-mail, รหัสบัตร เป็นต้น และในตารางห้ามมีข้อมูลที่เป็น NULL

CREATE TABLE <Table-Name>
(
Column1 datatype,
Column2 datatype, PRIMARY KEY (Column-Name)
);

มาดูตัวอย่างการใช้งานกันเลยย  

ทำการสร้างตาราง CustomerInfo โดยมีคอลัมน์ดังนี้ ID,  FIRST_NAME, LAST_NAME, ID_CARD_NUM, และ EMAIL โดยที่จะกำหนดให้ ID เป็น Primary Key

CREATE TABLE CustomerInfo
(
ID INT NOT NULL,
FIRST_NAME VARCHAR(255), 
LAST_NAME VARCHAR(255),
ID_CARD_NUM VARCHAR(255),
EMAIL VARCHAR(255),
PRIMARY KEY (ID)
)

ผลลัพธ์

CustomerInfo

ID FIRST_NAME LAST_NAME ID_CARD_NUM EMAIL
1 หนู ตัวเล็ก 1999999999999
2 ไก่ ขัน 1888888888888
3 หมู กินเยอะ 1777777777777

*โดยที่คอลลัมน์ ID ให้เป็น Primary Key เพราะมันจะสามารถทำให้เราสามารถระบุข้อมูลในแถวอื่น ๆ โดยไม่ซ้ำกัน

Foreign Key เป็นการกำหนดคอลัมน์เพื่อสร้างความสัมพันธ์กับตารางอื่น ๆ ซึ่งมันจะให้เราสามารถเชื่อมข้อมูลกับตารางอื่น ๆ ได้ และทำให้ข้อมูลในฐานข้อมูลสอดคล้องกันนั่นเองจ้า

CREATE TABLE <Table Name>( 
column1 datatype,
column2 datatype, 
constraint (name of constraint) 
FOREIGN KEY [column1, column2...] 
REFERENCES [primary key table name] (List of primary key table column) ...);

และตัวอย่างตารางที่มี Foreign Key ดังนี้
มีตาราง SubjectName ซึ่งใช้เก็บข้อมูลของวิชาเรียน, TeacherName ใช้เก็บชื่อและนามสกุลของครู, และตาราง TecherInfo เก็บข้อมูลครูที่สอนแต่ละวิชา ซึ่งทั้ง 3 ตารางนี้จะคอลัมน์ Code, และ TeacherID เป็น Foreign Key ดูง่าย ๆ ในรูปได้เลยจ้า

คีย์หลัก (Primary Key)หมายถึงอะไร

สรุป : จำแบบง่ายๆ เลยคือ Primary Key คือ คีย์ที่ห้ามซ้ำ!! ส่วน Foreign Key คีย์ที่ใช้เชื่อมความสัมพันธ์ระหว่างตาราง ทีนี้ก็พอจะรู้ความแตกต่างของเจ้า Key 2 ตัวนี้แล้วเนอะ อย่าไปใช้ผิดกันล่ะ555 หวังว่าบทความนี้จะเป็นประโยชน์กับเพื่อนๆ ไม่มากก็น้อยนะคะ ❤️

คีย์หลัก (Primary Key) คืออะไร

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

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

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

คีย์หลักมีความสำคัญอย่างไร

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

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

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