คำสั่ง SQL มีความสำคัญและเป็นที่นิยมอย่างมากเพื่อการใช้งานที่หลากหลาย และเพื่อความเร็วในการค้นหาข้อมูลจากฐานข้อมูล ชนิดต่างๆ เช่น MySQL, Oracle, SQL SERVER, PGSQL และ SQL มาตรฐานอื่นๆ บทความนี้จะว่าด้วยเรื่อง Constraint
Constraint ซึ่งเป็นการจำกัดข้อมูลภายใน table หรือ column หนึ่งในนั้นคือ UNIQUE Constraint โดยปกติการใช้คำสั่งในการ INSERT ข้อมูลลงฐานข้อมูล เราจะใช้ในการเพิ่มข้อมูลลงใน table ซึ่งบาง column อาจจะมีข้อมูลซ้ำกันกับบางบรรทัดก่อนหน้านี้ แต่การใช้ UNIQUE Constraint จะกำหนดให้ column นั้นห้ามมีข้อมูลซ้ำเป็นข้อมูลชุดที่ 2 เพื่อให้สามารถระบุข้อมูลได้ถูกต้องเวลาดึงข้อมูลเพื่อระบุตัวตนออกมา
ตัวอย่าง กรณี UNIQUE Constraint
การสร้าง table ชื่อ CUSTOMERS โดยคำสั่ง SQL
CREATE TABLE CUSTOMERS(
ID INT NOT NULL,
NAME VARCHAR (255) NOT NULL,
AGE INT NOT NULL UNIQUE,
ADDRESS CHAR (25) ,
SALARY DECIMAL (18, 2),
PRIMARY KEY (ID)
);
ในส่วนของ AGE column ได้กำหนดไว้ว่า ห้ามมีค่า NULL และ ห้ามมีค่าซ้ำกัน (UNIQUE)
การเปลี่ยนค่า UNIQUE CONSTRAINT
ถ้าได้สร้างตางรางไปแล้ว แต่ลืมกำหรดหรือต้องการเพิ่ม หรือ เปลี่ยน UNIQUE Constraint บน column ที่กำหนด สามารถทำได้ดังนี้
ALTER TABLE CUSTOMERS MODIFY AGE INT NOT NULL UNIQUE;
หรือสามารถเพิ่ม UNIQUE Constraint โดยกำหนดจากข้อมูลหลาย column ได้
ALTER TABLE CUSTOMERS ADD CONSTRAINT myUniqueConstraint UNIQUE(AGE, SALARY);
การลบค่า UNIQUE CONSTRAINT
ในส่วนของการ การลบค่า UNIQUE CONSTRAINT สามารถทำได้โดยใช้คำ sql ดังนี้
ALTER TABLE CUSTOMERS DROP INDEX myUniqueConstraint;
ทั้งหมดเป็น ส่วนหนึ่งของเรื่อง UNIQUE CONSTRAINT ซึ่งจะมีเรื่องการ Select ด้วย แล้วจะมาเขียนน่ะครับ