Cách Tạo, Thêm Và Xóa Các Ràng Buộc Duy Nhất Trong SQL Server

  • Techblog
  • Development
Cách tạo, thêm và xóa các ràng buộc duy nhất trong SQL ServerĐặng Tùng Lâm56412-04-2018
Cách tạo, thêm và xóa các ràng buộc duy nhất trong SQL Server

Hãy cùng Bizfly Cloudtìm hiểu các thủ thuật tạo và thêm và xóa các ràng buộc trong SQL Server.

1. Ràng buộc duy nhất trong SQL Server là gì?

Ràng buộc duy nhất là một trường hoặc kết hợp các trường dữ liệu, xác định một cách duy nhất một bản ghi. Một số trường có thể chứa giá trị NULL, miễn là sự kết hợp các giá trị là duy nhất.

2. Khác biệt giữa ràng buộc duy nhất và khóa chính

Ràng buộc duy nhất (Unique Constraint)

Một số trường của ràng buộc duy nhất có thể chứa giá trị NULL, miễn là sự kết hợp các giá trị là duy nhất.

Khóa chính (Primary Key)

Không trường nào trong khóa chính được phép chứa giá trị NULL.

3. Tạo ràng buộc duy nhất bằng lệnh CREATE TABLE

CREATE TABLE ten_bang

(

cot1 kieudulieu [ NULL | NOT NULL ];

cot2 kieudulieu [ NULL | NOT NULL ];

CONSTRAINT ten_rangbuoc UNIQUE (cot1_rb, cot2_rb, … cot_n_rb)

);

ten_bang

Tên của bảng muốn tạo

cot1, cot2

Cột muốn tạo trong bảng

ten_rangbuoc

Tên của ràng buộc duy nhất

cot1_rb, cot2_rb, … cot_n_rb

Các cột tạo nên ràng buộc duy nhất.

Các kiểu dữ liệu trong SQL Server

Ví dụ

CREATE TABLE nhanvien

( id_nhanvien INT PRIMARY KEY,

so_nhanvien INT NOT NULL,

ho VARCHAR(50) NOT NULL,

ten VARCHAR(50),

luong MONEY,

CONSTRAINT nhanvien_duynhat UNIQUE (so_nhanvien)

);

Ở ví dụ này, ta đã tạo ràng buộc duy nhất có tên là nhanvien_duynhat trên bảng nhanvien vừa tạo bằng lệnh CREATE TABLE, gồm 1 trường duy nhất là so_nhanvien.

Có thể tạo ràng buộc duy nhất với nhiều hơn 1 trường như trong ví dụ dưới đây.

CREATE TABLE nhanvien

( id_nhanvien INT PRIMARY KEY,

so_nhanvien INT NOT NULL,

ho VARCHAR(50) NOT NULL,

ten VARCHAR(50),

luong MONEY,

CONSTRAINT nhanvien_duynhat UNIQUE (ho, ten)

);

4. Tạo ràng buộc duy nhất bằng lệnh ALTER TABLE

ALTER TABLE ten_bang

ADD CONSTRAINT ten_rangbuoc UNIQUE (cot1, cot2, … cot_n);

ten_bang

Tên của bảng muốn chính sửa. Đây là bảng bạn muốn thêm ràng buộc duy nhất.

ten_rangbuoc

Tên của ràng buộc duy nhất muốn tạo.

cot1, cot2… cot_n

Các cột tạo nên ràng buộc duy nhất.

Ví dụ

ALTER TABLE nhanvienADD CONSTRAINT nhanvien_duynhat UNIQUE (so_nhanvien);

Ví dụ trên dùng lệnh ALTER TABLE tạo ràng buộc duy nhất trên bảng đã có sẵn nhanvien, gọi là nhanvien_duy nhat, gồm trường so_nhanvien. Để tạo ràng buộc có nhiều hơn 1 trường, xem ví dụ bên dưới.

ALTER TABLE nhanvien

ADD CONSTRAINT ten_nhanvien_duynhat UNIQUE (ho, ten);

5.Xóa ràng buộc duy nhất

Cú pháp

ALTER TABLE ten_bang

DROP CONSTRAINT ten_rangbuoc;

ten_bang

Tên của bảng muốn chính sửa. Đây là bảng bạn muốn xóa ràng buộc duy nhất.

ten_rangbuoc

Tên của ràng buộc duy nhất muốn xóa.

Ví dụ

ALTER TABLE nhanvien

DROP CONSTRAINT nhanvien_duynhat;

Ví dụ trên xóa ràng buộc duy nhất có tên là nhanvien_duynhat trên bảng nhanvien.

Nguồn: quantrimang.com

>> Có thể bạn quan tâm: SQL là gì? Những thông tin về ngôn ngữ SQL bạn nên biết

Bizfly Cloud là nhà cung cấp dịch vụ điện toán đám mây với chi phí thấp, được vận hành bởi VCCorp.

Bizfly Cloud là một trong 4 doanh nghiệp nòng cốt trong "Chiến dịch thúc đẩy chuyển đổi số bằng công nghệ điện toán đám mây Việt Nam" của Bộ TT&TT; đáp ứng đầy đủ toàn bộ tiêu chí, chỉ tiêu kỹ thuật của nền tảng điện toán đám mây phục vụ Chính phủ điện tử/chính quyền điện tử.

Độc giả quan tâm đến các giải pháp của Bizfly Cloud có thể truy cập tại đây.

DÙNG THỬ MIỄN PHÍ và NHẬN ƯU ĐÃI 3 THÁNG tại: Manage.bizflycloud

TAGS: sql serversqlSHAREFacebookTwitter
Bizfly Cloud

Bài viết liên quan

DOM là gì? Tìm hiểu thông tin  và thao tác DOM trong Javascript
DOM là gì? Tìm hiểu thông tin và thao tác DOM trong Javascript
Chạy các mô hình AI mạnh mẽ ngay trên máy cục bộ (không cần cloud, không dùng API, không rò rỉ dữ liệu)
Chạy các mô hình AI mạnh mẽ ngay trên máy cục bộ (không cần...
Token là gì? Tìm hiểu Token trong chữ ký số, ngân hàng và tiền mã hóa
Token là gì? Tìm hiểu Token trong chữ ký số, ngân hàng và tiền...
Zend Framework là gì? Ưu nhược điểm của Zend Framework  mang lại
Zend Framework là gì? Ưu nhược điểm của Zend Framework mang lại
Ngôn ngữ lập trình PLC là gì? Các ngôn ngữ phổ biến hiện nay
Ngôn ngữ lập trình PLC là gì? Các ngôn ngữ phổ biến hiện nay
ABAP là gì? Những tính năng hưu ích của ABAP
ABAP là gì? Những tính năng hưu ích của ABAP
Visual Basic là gì? Những thông tin bạn nên biết về Visual Basic
Visual Basic là gì? Những thông tin bạn nên biết về Visual Basic
Tuple là gì? Sự khác biệt giữa Tuple và List trong Python
Tuple là gì? Sự khác biệt giữa Tuple và List trong Python
GCC là gì? Vai trò và tầm quan trọng của GCC
GCC là gì? Vai trò và tầm quan trọng của GCC
Lệnh df trong Linux và những ví dụ thực tế sử dụng lệnh df
Lệnh df trong Linux và những ví dụ thực tế sử dụng lệnh df
Apache Tomcat là gì? Hướng dẫn cài đặt Apache Tomcat chi tiết
Apache Tomcat là gì? Hướng dẫn cài đặt Apache Tomcat chi tiết
Codeigniter là gì? Ưu – Nhược điểm của Codeigniter Framework
Codeigniter là gì? Ưu – Nhược điểm của Codeigniter Framework
JavaScript là gì? Kiến thức cơ bản về ngôn ngữ lập trình JS
JavaScript là gì? Kiến thức cơ bản về ngôn ngữ lập trình JS
Vim là gì? Hướng dẫn cài đặt và sử dụng chi tiết
Vim là gì? Hướng dẫn cài đặt và sử dụng chi tiết
CSS3 là gì? Có gì mới và khác biệt so với CSS truyền thống
CSS3 là gì? Có gì mới và khác biệt so với CSS truyền thống
Overflow là gì? Cách phát hiện và ngăn chặn lỗi tràn dữ liệu trong hệ thống
Overflow là gì? Cách phát hiện và ngăn chặn lỗi tràn dữ liệu trong...
PHP-FPM là gì? Hướng dẫn toàn diện để giúp tối ưu website
PHP-FPM là gì? Hướng dẫn toàn diện để giúp tối ưu website
Minification là gì? Tại sao việc nén mã lại cực kỳ quan trọng?
Minification là gì? Tại sao việc nén mã lại cực kỳ quan trọng?
Docker Compose là gì? Tổng hợp kiến thức về Docker compose
Docker Compose là gì? Tổng hợp kiến thức về Docker compose
An unexpected error has occurred​ là lỗi gì? Cách khắc phục ra sao?
An unexpected error has occurred​ là lỗi gì? Cách khắc phục ra sao? Danh mục
  • Kiến thức cơ bản
  • Tin công nghệ
  • Dịch vụ Cloud Computing
    • Cloud Server
    • CDN
    • Load Balancer
    • Auto Scaling
    • Container Registry
    • Kubernetes
    • Cloud Database
    • Call Center
    • Business Email
    • Simple Storage
    • VOD
    • VPN
    • Traffic Manager
    • Cloud VPS
    • Videos
  • Tin Tức
  • Security
  • Development
  • Q&A cùng Bizfly Cloud
    • Q&A về Bizfly Cloud Server
      • Thao tác kết nối tới server
      • Videos
    • Q&A về Bizfly Business Email
    • Videos
  • Case Study
  • Sys-Ops
  • Infographic
  • Thủ thuật
  • Tool support
  • Giải pháp doanh nghiệp
  • Chuyển đổi số
  • Software Engineering
  • Tính năng và sản phẩm mới 0
  • Videos
Hotline(024) 7302 8888-(028) 7302 8888Hỗ trợ kỹ thuậ[email protected] doanh, [email protected]