Ràng buộc UNIQUE trong SQL ngăn cản việc hai bản ghi có các giá trị đồng nhất trong một cột cụ thể. Ví dụ, trong bảng SINHVIEN, bạn có thể muốn ngăn cản việc hai hoặc nhiều người có cùng tuổi.

Ví dụ

Ví dụ sau tạo bảng mới với tên SINHVIEN và thêm 5 cột. Ở đây, cột TUOI được thiết lập là UNIQUE, để bạn không muốn hai bản ghi có cùng tuổi.


CREATE TABLE SINHVIEN(
       ID   INT              NOT NULL,
       TEN VARCHAR (20)     NOT NULL,
       TUOI  INT              NOT NULL UNIQUE,
       KHOAHOC  CHAR (25) ,
       HOCPHI   DECIMAL (18, 2),       
       PRIMARY KEY (ID)
);

```Nếu bảng đã được tạo, thì để thêm một ràng buộc UNIQUE cho cột TUOI, bạn sẽ viết lệnh như sau:

ALTER TABLE SINHVIEN MODIFY TUOI INT NOT NULL UNIQUE;

```Bạn cũng có thể sử dụng cú pháp sau, mà hỗ trợ việc đặt tên ràng buộc trong nhiều cột.


ALTER TABLE SINHVIEN
   ADD CONSTRAINT myUniqueConstraint UNIQUE(TUOI, HOCPHI);

```Xóa một ràng buộc UNIQUE trong SQL
----------------------------------

Để xóa một ràng buộc UNIQUE trong SQL, bạn sử dụng:

ALTER TABLE SINHVIEN DROP CONSTRAINT myUniqueConstraint;

```Nếu bạn đang sử dụng MySQL, thì bạn sử dụng cú pháp sau:



ALTER TABLE SINHVIEN
   DROP INDEX myUniqueConstraint;

```- - - - - -

<div class="pre-btn">[Trang trước](../sql/rang_buoc_default_trong_sql.jsp)</div><div class="pdf-btn">[PDF](../sql/pdf/rang_buoc_unique_trong_sql.pdf "Ràng buộc UNIQUE trong SQL")</div><div class="nxt-btn">[Trang sau](../sql/rang_buoc_primary_key_trong_sql.jsp)</div><div class="parent-file">rang\_buoc\_trong\_sql.jsp</div>- - - - - -

<div class="fb-comments" data-href="http://vietjack.com/sql/rang_buoc_unique_trong_sql.jsp" data-numposts="5" data-order-by="reverse_time"></div>- - - - - -

<div class="bottomgooglead"><div class="bottomadtag">Quảng cáo</div><div class="bottomgooglead"><div class="bottomadtag">Bài viết liên quan</div><div>**Các loạt bài khác:**

- 

</div></div></div>

Viết câu trả lời

Drop Images

0 Bình luận