Unique Trong Sql Là Gì
Ở các bài trước họ đã mày mò ràng buộc primary key với foreign key rồi, vậy thì trong bài xích này mình sẽ reviews thêm một ràng buộc đặc biệt trong SQL dùng để xử lý vấn đề bảo toàn ràng buộc toàn diện dữ liệu chính là UNIQUE.
Bạn đang xem: Unique trong sql là gì


1. Quality trong SQL Server
Ở bài học tạo bảng Create Tablemình có trình làng sơ qua về một vài ràng buộc này rồi, mặc dù bài này họ sẽ học tập kỹ hơn nhé.
UNIQUE là ràng buộc trên cực hiếm duy tốt nhất trên column, tức là các dòng dữ liệu không được có mức giá trị trùng nhau sinh hoạt column đó. Buộc ràng này y hệt như khóa chủ yếu vậy, vì thực chất nó cũng là một trong khóa.
Ví dụ vào bảng SINHVIEN sẽ có MASINHVIEN là khóa chính, và cột CMND sẽ là UNIQUE. Thực ra bạn cũng có thể lấy CMND là khoa thiết yếu nhưng như vậy sẽ không còn hay lắm.
Bài viết này được đăng trên
Chúng ta tất cả hai giải pháp tạo chất lượng như sau:
Thiết lập tức thì column
Cách này bạn sẽ đặt tự khóa unique ở cuối column mong mỏi nó có giá trị không trùng lặp.
CREATE TABLE hr.persons( person_id INT IDENTITY PRIMARY KEY, first_name VARCHAR(255) NOT NULL, last_name VARCHAR(255) NOT NULL, e-mail VARCHAR(255) UNIQUE);
Column e-mail là UNIQUE.
Thiết lập ngơi nghỉ cuối các column
Trường thích hợp này chúng ta đặt unique (column_list) ở cuối lệnh Create Table, nếu có tương đối nhiều column thì cách nhau vì dấu phẩy.
CREATE TABLE hr.persons( person_id INT IDENTITY PRIMARY KEY, first_name VARCHAR(255) NOT NULL, last_name VARCHAR(255) NOT NULL, e-mail VARCHAR(255), UNIQUE(email));
SQL hệ thống sẽ tự động hóa tạo ra một INDEX UNIQUE với chạy nó mỗi khi bạn thực hiện thao tác INSERT hoặc UPDATE, trường hợp bạn cập nhật dữ liệu bị trùng thì nó sẽ thông tin lỗi.
Hãy thử chạy nhì câu lệnh INSERT sau đây để xem có đúng không nhé.
Lệnh 1
INSERT INTO hr.persons(first_name, last_name)VALUES("John","Smith");
Lệnh 1 này chuyển động bình thường.
Lệnh 2
INSERT INTO hr.persons(first_name, last_name, email)VALUES("Jane","Doe","j.doe
bike.stores");
Lệnh 2 sẽ bị báo lỗi vì cột e-mail bị trùng.
Xem thêm: Lịch Chiếu Tại Galaxy Nguyễn Du: Đặt Vé Xem Phim, Giá Vé, Lịch Chiếu Trên Momo
Violation of unique KEY constraint "UQ__persons__AB6E616417240E4E". Cannot insert duplicate key in object "hr.persons". The duplicate key value is(j.doe
bike.stores).
Đặt tên mang lại UNIQUE
Cái tênUQ__persons__AB6E616417240E4Elà vì SQL hệ thống tự hiện ra vì bạn không để tên cho UNIQUE, nếu bạn muốn đặt tên thì nên sử dụng trường đoản cú khóaCONSTRAINT.
CREATE TABLE hr.persons ( person_id INT IDENTITY PRIMARY KEY, first_name VARCHAR(255) NOT NULL, last_name VARCHAR(255) NOT NULL, email VARCHAR(255), CONSTRAINT unique_email UNIQUE(email));
Tại sao họ cần để tên? Như bạn thấy khi dìm được thông tin lỗi thì ta sẽ thuận tiện biết được bởi vì đâu, đồ vật hai nữa bạn dễ dàng thay đổi khi sử dụng kết hợp với lệnh ALTER TABLE.
2. Tách biệt Primary Key cùng với UNIQUE
Bạn đề nghị phân biệt rõ hai ràng buộc này nhé.
Primary Key là khóa chính của bảng, đây là index quan trọng đặc biệt nên bạn không gật đầu giá trị NULLUNIQUE cũng là 1 trong khóa tuy thế vì là 1 trong những column thông thường nên có thể nhận quý giá NULL.NULL cũng là 1 trong giá trị thông thường nên khi gồm 2 record rất nhiều NULL thì vẫn bị lỗiduplicate value nhé.
3. Tạo unique cho nhiều column
Để tạo unique cho những column thì bạn phải thực hiện cách trang bị hai đó làthiết lập ở cuối các column, cú pháp như sau:
CREATE TABLE table_name ( key_column data_type PRIMARY KEY, column1 data_type, column2 data_type, column3 data_type, ..., quality (column1,column2));
Ví dụ tiếp sau đây tạo quality cho nhì columnperson_id vàskill_id.
CREATE TABLE hr.person_skills ( id INT IDENTITY PRIMARY KEY, person_id int, skill_id int, updated_at DATETIME, unique (person_id, skill_id));
4. Thêm UNIQUE bởi lệnh ALTER TABLE
Khi bạn đã tạo xong xuôi table rồi nhưng tiếp đến muốn bổ sung cập nhật UNIQUE cho một field làm sao đó thì nên sử dụng lệnh ALTER TABLE, cú pháp như sau:
ALTER TABLE table_nameADD CONSTRAINT constraint_name UNIQUE(column1, column2,...);
Ví dụ: trả sử ta gồm table như sau.
CREATE TABLE hr.persons ( person_id INT IDENTITY PRIMARY KEY, first_name VARCHAR(255) NOT NULL, last_name VARCHAR(255) NOT NULL, e-mail VARCHAR(255), phone VARCHAR(20),);
Bây giờ mình sẽ bổ sung UNIQUE đến hai column email và phone.
ALTER TABLE hr.personsADD CONSTRAINT unique_email UNIQUE(email);ALTER TABLE hr.personsADD CONSTRAINT unique_phone UNIQUE(phone);
5. Xóa UNIQUE
UNIQUE cũng là một constraint nên các bạn hoàn toàn hoàn toàn có thể sử dụng lệnhDROP CONSTRAINT để xóa.
Xem thêm: Giải Lịch Sử 7 Bài 27 Phần 1 : Chế Độ Phong Kiến Nhà Nguyễn, Bài 27 Phần 1: Chế Độ Phong Kiến Nhà Nguyễn
ALTER TABLE table_nameDROP CONSTRAINT constraint_name;
Ví dụ: Xóa unique mang tên làunique_phone thoát khỏi bảnghr.persons.
ALTER TABLE hr.personsDROP CONSTRAINT unique_phone;
bài xích trước bài xích tiếp
Hàm CHAR trong SQL server
Cách áp dụng hàm CHAR trong SQL hệ thống
Hàm CHARINDEX trong SQL vps
Cách sử dụng hàm CHARINDEX vào SQL hệ thống
Hàm CONCAT vào SQL hệ thống
Cách thực hiện hàm CONCAT trong SQL server
Hàm + vào SQL server
Cách thực hiện hàm + vào SQL vps
Hàm DATALENGTH trong SQL hệ thống
Cách thực hiện hàm DATALENGTH trong SQL server
Hàm LEFT vào SQL hệ thống
Cách thực hiện hàm LEFT trong SQL server
Hàm LEN trong SQL hệ thống
Cách sử dụng hàm LEN vào SQL vps
Hàm LOWER vào SQL hệ thống
Cách áp dụng hàm LOWER vào SQL server
Hàm LTRIM vào SQL hệ thống
Cách thực hiện hàm LTRIM trong SQL vps
Hàm NCHAR vào SQL hệ thống
Cách áp dụng hàm NCHAR vào SQL vps
Hàm PATINDEX trong SQL vps
Cách sử dụng hàm PATINDEX vào SQL hệ thống
Hàm REPLACE trong SQL server
Cách thực hiện hàm REPLACE vào SQL server
Hàm RIGHT trong SQL vps
Cách áp dụng hàm RIGHT vào SQL hệ thống
Hàm RTRIM trong SQL server
Cách sử dụng hàm RTRIM vào SQL server
Hàm SPACE vào SQL vps
Cách sử dụng hàm SPACE trong SQL server
Hàm STR vào SQL vps
Cách thực hiện hàm STR vào SQL vps
Hàm UPPER vào SQL server
Cách sử dụng hàm UPPER vào SQL server
Hàm SUBSTRING trong SQL server
Cách thực hiện hàm SUBSTRING vào SQL vps
Hàm STUFF vào SQL server
Cách sử dụng hàm STUFF trong SQL hệ thống
Hàm ABS trong SQL hệ thống
Cách áp dụng hàm ABS vào SQL server
WORDPRESS
HTML Templates
Theme WordPress
Plugin WordPress
lập trình sẵn WordPress
thủ thuật WordPress
WEB HOSTING
quản ngại trị Linux
mẹo nhỏ Hosting
kỹ năng Domain
WEB FRONTEND
Javascript
AngularJS
jQuery
jQuery thiết bị di động
HTML & CSS
Bootstrap
TypeScript
SASS CSS
VueJS
NestJS
học ReactJS
WEB BACKEND
PHP
Codeigniter
Laravel
Phalcon
OpenCart
NodeJS
Blogspot
DATABASE
học MySQL
học MongoDB
cơ sở dữ liệu căn bản
học Oracle
học SQL hệ thống
học tập SQLite
PROGRAMMING
Python
Java
Pascal
học tập C#
học tập Ruby
học tập Swift
C / C++
Kotlin
Golang
giải thuật
Visual Basic
MOBILE DEV
React Native
Học ios
app android
CÔNG CỤ
học tập Git
Testing
Control Panel
Dev Tool
FFmpeg
TIN HỌC
Excel
Word
PowerPoint
Access
Photoshop
MÔN HỌC
giờ Anh
Toán
giờ Nhật
Văn học
VIDEO
CSS Lab
PHP Lab
ra mắt
giới thiệu Liên hệ cơ chế Điều khoản
links
Thủ thuật tải về Game Ứng dụng Tin học Môn học tập
liên kết hay
tải tiện ích 567 live show
Trang chủ chủ yếu thứcThabet
ĐK THABET nhấn ngay 628k
kubet W88links
KUBET88 f8bet Kubet88fun Ku casino KUBET Casino ku bet ae888 Ku casino kucasino.dev cfun68 kubet W88
