Ví dụ về khóa duy nhất trong mysql là gì?

Ràng buộc ĐỘC ĐÁO đảm bảo rằng tất cả các giá trị trong một cột cụ thể là khác nhau. Khóa DUY NHẤT không cho phép các giá trị trùng lặp. Khóa DUY NHẤT cho phép giá trị NULL nhưng không cho phép giá trị NULL nhiều lần

Chúng ta có thể tạo nhiều cột ĐỘC ĐÁO trên một bảng tuy nhiên chỉ có một KHÓA CHÍNH cho bảng. Xác định khóa chính trên cột có thuộc tính ràng buộc ĐỘC ĐÁO theo mặc định. Cả hai ràng buộc UNIQUE và PRIMARY KEY đều cung cấp tính duy nhất cho một cột hoặc tập hợp các cột

Cú pháp tạo khóa duy nhất khi tạo bảng – [MySQL]

CREATE TABLE table_name [
     column1 datatype,
     column2 datatype,
     [ CONSTRAINT uq_name]
     required_column datatype UNIQUE]; 

Cú pháp tạo khóa duy nhất khi tạo bảng – [SQL Server/Oracle/MS Access]

CREATE TABLE table_name [
    column1 datatype UNIQUE,
    column2 datatype,
       …   …        
    columnN datatype];  

Cú pháp tạo khóa duy nhất trong khi tạo bảng có nhiều cột – [MySQL/SQL Server/Oracle/MS Access]

CREATE TABLE table_name [
    column1 datatype,
    column2 datatype,
    [CONSTRAINT uq_name]
    UNIQUE [required_column1, required_column2, ….., . ]];

Cú pháp tạo khóa duy nhất trên một cột của bảng hiện có – [MySQL/SQL Server/Oracle/MS Access]

ALTER TABLE table_name 
ADD UNIQUE [column_name];  

Cú pháp tạo khóa duy nhất trên nhiều cột của bảng hiện có – [MySQL/SQL Server/Oracle/MS Access]

ALTER TABLE table_name
ADD [CONSTRAINT uq_name] 
UNIQUE [column1, column2];  

Cú pháp xóa khóa duy nhất trên bảng hiện có – [MySQL]

  ALTER TABLE table_name
DROP INDEX uq_name; 

Cú pháp xóa khóa duy nhất trên bảng hiện có – [SQL Server/Oracle/MS Access]

  ALTER TABLE table_name
DROP CONSTRAINT uq_name; 

  • uq_name - Đại diện cho tên do người dùng xác định của khóa duy nhất.
  • table_name – Đại diện cho bảng mà người dùng muốn tạo khóa duy nhất
  • required_column- Đại diện cho cột nào được bao gồm trong khóa duy nhất

ví dụ

Kịch bản – Tạo khóa duy nhất trong khi tạo bảng

Yêu cầu – Tạo emp_id làm khóa duy nhất trong khi tạo bảng employee_details. Truy vấn như sau -

CREATE TABLE Employee 
	[emp_id INT NOT NULL UNIQUE,
	emp_name VARCHAR [20],
	dept_id  INT]; 

Bằng cách thực hiện truy vấn trên, cột emp_id đã được tạo dưới dạng khóa duy nhất trên bảng Employee_details


Kịch bản – Tạo khóa duy nhất trên bảng hiện có

Yêu cầu – Tạo uq_emp_name làm khóa duy nhất trên bảng employee_details hiện có không có cột khóa chính. Truy vấn như sau -

________số 8

Bằng cách thực hiện truy vấn trên, emp_name đã được tạo dưới dạng khóa duy nhất trên bảng employee_details


Ghi chú. - Trong khi tạo khóa duy nhất trên bảng hiện có, hãy đảm bảo rằng cột sẽ thêm khóa duy nhất không có ràng buộc null và không có giá trị trùng lặp


Kịch bản – Tạo khóa duy nhất có nhiều cột trong khi tạo bảng

Yêu cầu – Tạo emp_id, emp_name làm khóa duy nhất trong khi tạo bảng employee_details. Truy vấn như sau -

CREATE TABLE Employee 
	[emp_id INT NOT NULL, 
    emp_name VARCHAR [20],
    dept_id  INT,
    CONSTRAINT uq_employee 
    UNIQUE [emp_id, emp_name]]; 

Bằng cách thực hiện truy vấn trên, chúng ta có thể tạo uq_employee làm khóa duy nhất trên bảng employee_details với nhiều cột emp_id, emp_name


Kịch bản – Tạo khóa duy nhất trên bảng hiện có với nhiều cột

Yêu cầu – Tạo emp_id làm khóa duy nhất trên bảng employee_details hiện có. Truy vấn như sau -

CREATE TABLE table_name [
    column1 datatype UNIQUE,
    column2 datatype,
       …   …        
    columnN datatype];  
0

Bằng cách thực hiện truy vấn trên, chúng ta có thể tạo uq_employee làm khóa duy nhất trên bảng employee_details hiện có với nhiều cột emp_id, emp_name


Kịch bản – Xóa khóa duy nhất hiện có

Yêu cầu – Xóa khóa duy nhất uq_emp_name hiện có trên bảng employee_details. Truy vấn như sau -

CREATE TABLE table_name [
    column1 datatype UNIQUE,
    column2 datatype,
       …   …        
    columnN datatype];  
1 và
CREATE TABLE table_name [
    column1 datatype UNIQUE,
    column2 datatype,
       …   …        
    columnN datatype];  
2 là từ đồng nghĩa trong MySQL. Họ có nghĩa là điều tương tự. Trong cơ sở dữ liệu, bạn sẽ sử dụng các chỉ mục để cải thiện tốc độ truy xuất dữ liệu. Một chỉ mục thường được tạo trên các cột được sử dụng trong các mệnh đề
CREATE TABLE table_name [
    column1 datatype UNIQUE,
    column2 datatype,
       …   …        
    columnN datatype];  
3,
CREATE TABLE table_name [
    column1 datatype UNIQUE,
    column2 datatype,
       …   …        
    columnN datatype];  
4 và
CREATE TABLE table_name [
    column1 datatype UNIQUE,
    column2 datatype,
       …   …        
    columnN datatype];  
5

Hãy tưởng tượng bạn có một bảng tên là

CREATE TABLE table_name [
    column1 datatype UNIQUE,
    column2 datatype,
       …   …        
    columnN datatype];  
6 và bạn muốn tìm kiếm tất cả những người dùng có họ là 'Smith'. Không có chỉ mục, cơ sở dữ liệu sẽ phải duyệt qua tất cả các bản ghi của bảng. điều này là chậm, bởi vì bạn càng có nhiều bản ghi trong cơ sở dữ liệu của mình thì càng phải làm nhiều việc hơn để tìm ra kết quả. Mặt khác, một chỉ mục sẽ giúp cơ sở dữ liệu chuyển nhanh đến các trang có liên quan nơi lưu giữ các bản ghi 'Smith'. Điều này rất giống với cách chúng ta, con người, lướt qua danh bạ danh bạ điện thoại để tìm ai đó theo họ. Chúng tôi không bắt đầu tìm kiếm trong thư mục từ trang này đến trang khác, miễn là chúng tôi đã chèn thông tin theo một số thứ tự mà chúng tôi có thể sử dụng để chuyển nhanh đến các trang 'S'

Khóa chính và khóa duy nhất tương tự nhau. Khóa chính là một cột hoặc tổ hợp các cột có thể xác định duy nhất một hàng. Đây là trường hợp đặc biệt của khóa duy nhất. Một bảng có thể có nhiều nhất một khóa chính, nhưng nhiều hơn một khóa duy nhất. Khi bạn chỉ định một khóa duy nhất trên một cột, không có hai hàng riêng biệt nào trong một bảng có thể có cùng giá trị

khóa duy nhất giải thích với ví dụ là gì?

Trong các hệ thống quản lý cơ sở dữ liệu quan hệ, khóa duy nhất là khóa dự tuyển không phải là khóa chính của quan hệ . Tất cả các khóa ứng cử viên của một quan hệ có thể xác định duy nhất các bản ghi của quan hệ, nhưng chỉ một trong số chúng được sử dụng làm khóa chính của quan hệ.

Làm cách nào để đặt khóa duy nhất trong MySQL?

Đôi khi chúng tôi muốn thêm một khóa duy nhất vào cột của một bảng hiện có; . Sau đây là cú pháp của câu lệnh ALTER TABLE để thêm một khóa duy nhất. ALTER TABLE table_name THÊM CONSTRAINT constraint_name UNIQUE[column_list];

Làm cách nào để tìm các khóa duy nhất trong MySQL?

Bạn có thể hiển thị các ràng buộc duy nhất của một bảng trong MySQL bằng cách sử dụng information_schema. table_constraint .

khóa duy nhất trong các từ đơn giản là gì?

Khóa duy nhất là ràng buộc được sử dụng để xác định duy nhất một bộ trong bảng . Nhiều khóa duy nhất có thể xuất hiện trong một bảng. Giá trị NULL được cho phép trong trường hợp khóa duy nhất. Chúng cũng có thể được sử dụng làm khóa ngoại cho một bảng khác.

Chủ Đề