Unique sql là gì

Ở những bài trước họ vẫn mày mò buộc ràng primary key cùng foreign key rồi, vậy thì vào bài bác này mình đã ra mắt thêm 1 ràng buộc đặc biệt quan trọng vào Squốc lộ dùng làm xử lý sự việc bảo toàn buộc ràng trọn vẹn tài liệu đó là UNIQUE.Quý khách hàng vẫn xem: Unique vào sql là gì

1. UNIQUE trong SQL Server

Ở bài học kinh nghiệm sản xuất bảng Create Tablemình có giới thiệu sơ qua về một vài ba buộc ràng này rồi, tuy vậy bài này bọn họ vẫn học kỹ rộng nhé.

Bạn đang xem: Unique sql là gì

UNIQUE là buộc ràng bên trên quý giá tốt nhất trên column, Có nghĩa là các dòng dữ liệu không được có giá trị trùng nhau làm việc column đó. Ràng buộc này giống như khóa bao gồm vậy, do bản chất nó cũng là 1 khóa.

lấy ví dụ như trong bảng SINHVIEN sẽ sở hữu MASINHVIEN là khóa bao gồm, cùng cột CMND vẫn là UNIQUE. Thực ra chúng ta cũng có thể mang CMND là khoa bao gồm nhưng lại như thế sẽ không hay lắm.

Chúng ta gồm nhị giải pháp sản xuất UNIQUE nlỗi sau:

Thiết lập ngay lập tức column

Cách này bạn sẽ đặt từ bỏ khóa UNIQUE sống cuối column ước ao 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, gmail VARCHAR(255) UNIQUE);

Column email là UNIQUE.

Thiết lập nghỉ ngơi cuối những column

Trường đúng theo này bạn đặt UNIQUE (column_list) sinh hoạt cuối lệnh Create Table, ví như có khá nhiều column thì bí quyết nhau vì vết phẩy.

CREATE TABLE hr.persons( person_id INT IDENTITY PRIMARY KEY, first_name VARCHAR(255) NOT NULL, last_name VARCHAR(255) NOT NULL, gmail VARCHAR(255), UNIQUE(email));

SQL Server sẽ auto tạo ra một INDEX UNIQUE với chạy nó từng khi chúng ta triển khai làm việc INSERT hoặc UPDATE, nếu khách hàng cập nhật dữ liệu bị trùng thì nó đang thông tin lỗi.

Hãy test chạy nhị câu lệnh INSERT dưới đây giúp thấy gồm đú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.doebike.stores");

Lệnh 2 có khả năng sẽ bị báo lỗi bởi vì cột tin nhắn bị trùng.

Xem thêm: " Tml Là Gì ? Viết Tắt Của Từ Gì? Tml Trên Facebook Là Gì

Đặt thương hiệu đến UNIQUE

Cái tênUQ__persons__AB6E616417240E4Elà do SQL Server trường đoản cú hiện ra vày các bạn ko khắc tên mang đến UNIQUE, trường hợp bạn muốn khắc tên thì nên sử dụng từ khóaCONSTRAINT.

CREATE TABLE hr.persons ( person_id INT IDENTITY PRIMARY KEY, first_name VARCHAR(255) NOT NULL, last_name VARCHAR(255) NOT NULL, gmail VARCHAR(255), CONSTRAINT unique_gmail UNIQUE(email));

Tại sao họ cần đặt tên? Như chúng ta thấy lúc cảm nhận thông báo lỗi thì ta vẫn tiện lợi hiểu rằng bởi đâu, lắp thêm nhị nữa chúng ta dễ ợt thay đổi Khi thực hiện kết phù hợp với lệnh ALTER TABLE.

2. Phân biệt Primary Key cùng với UNIQUE

quý khách đề xuất khác nhau rõ nhị buộc ràng này nhé.

Primary Key là khóa chủ yếu của bảng, đó là index đặc trưng bắt buộc các bạn không chấp nhận cực hiếm NULLUNIQUE cũng là 1 khóa nhưng lại do là một column bình thường đề xuất có thể dấn cực hiếm NULL.

NULL cũng là 1 trong giá trị thông thường nên khi gồm 2 record phần nhiều NULL thì vẫn bị lỗiduplicate value nhé.

3. Tạo UNIQUE cho những column

Để chế tạo UNIQUE mang đến các column thì bạn đề nghị sử dụng giải pháp thiết bị nhị kia làcấu hình thiết lập nghỉ ngơi cuối những column, cú pháp nhỏng sau:

CREATE TABLE table_name ( key_column data_type PRIMARY KEY, column1 data_type, column2 data_type, column3 data_type, ..., UNIQUE (column1,column2));

Ví dụ dưới đây tạo UNIQUE đến 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

lúc các bạn đã chế tạo ra kết thúc table rồi nhưng mà tiếp nối ý muốn bổ sung UNIQUE cho 1 field như thế nào đó thì nên thực hiện lệnh ALTER TABLE, cú pháp nhỏng sau:

ALTER TABLE table_nameShowroom CONSTRAINT constraint_name UNIQUE(column1, column2,...);

Ví dụ: Giả sử ta bao 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, tin nhắn VARCHAR(255), phone VARCHAR(20),);

Bây giờ mình đang bổ sung cập nhật UNIQUE đến nhì column email và phone.

ALTER TABLE hr.personsĐịa Chỉ CONSTRAINT unique_gmail UNIQUE(email);ALTER TABLE hr.personsĐịa Chỉ CONSTRAINT unique_phone UNIQUE(phone);

5. Xóa UNIQUE

UNIQUE cũng là một trong constraint đề nghị các bạn trọn vẹn hoàn toàn có thể thực hiện lệnhDROPhường. CONSTRAINT nhằm xóa.

Xem thêm: Nghĩa Của Từ ' Thought Provoking Là Gì, Nghĩa Của Từ 'Thought

ALTER TABLE table_nameDROP. CONSTRAINT constraint_name;

ALTER TABLE hr.personsDROP CONSTRAINT unique_phone; Bài sau Bài tiếp Tải Thêm Comment

DANH SÁCH BÀI HỌC

Getting started Data Definition Data Queries Condition và Operators Explored Danh sách chủ đề
MÃ GIẢM GIÁ
Unica 50% Lấy Mã
TinoHost 30% Lấy Mã
INET 30% Lấy Mã

Liên hệ

Mã giảm giá

Khóa học

Giới thiệu

Admin Cường, quản lý chủ yếu của trang web.

20đôi mươi - gocnhintangphat.com. All Right Reserved Theme GoodNews, nền tảng gốc rễ Codeigniter, VPS cài trên Tinohost
*

BÀI VIẾT

Nếu chúng ta phạt hiện nay lỗi không nên liên kết, nội dung không nên, hay 1 lỗi bất kỳ như thế nào kia trên trang này thì nên cho bạn biết nhé. Cám ơn bạn!


Chuyên mục: Định Nghĩa