Trong thời đại mà chúng ta tạo ra 2,5 nghìn tỷ byte dữ liệu mỗi ngày, điều rất quan trọng là phải xử lý dữ liệu theo cách thích hợp và xác định các bản ghi duy nhất. Vì vậy, trong bài viết này về Khóa chính trong SQL, tôi sẽ thảo luận về cách mỗi bản ghi trong bảng có thể được xác định duy nhất khi có cơ sở dữ liệu quan hệ.
Các chủ đề sau sẽ được đề cập trong bài viết này:
- Khóa chính là gì?
- Quy tắc cho Khóa chính
- Các Thao tác Chính:
- Khóa chính khi tạo bảng
- Khóa chính trên Bảng thay thế
- Bỏ khóa chính
Khóa chính trong SQL là gì?
Ràng buộc khóa chính là một loại khóa mà qua đó bạn có thể xác định duy nhất mọi bộ hoặc bản ghi trong bảng. Mỗi bảng chỉ có thể có một khóa chính nhưng có thể có nhiều khóa ứng viên. Ngoài ra, mỗi khóa chính phải là duy nhất và không được chứa bất kỳ giá trị NULL nào.
Khóa chính được sử dụng cùng với khóa ngoại để tham chiếu đến các bảng khác nhau và tạo thành tích phân tham chiếu. Đối với Bảng A, khóa chính có thể bao gồm một hoặc nhiều cột.
Bây giờ bạn đã biết khóa chính là gì, tiếp theo trong bài viết này về Khóa chính trong SQL, chúng ta hãy hiểu các quy tắc của khóa chính.
Quy tắc cho Khóa chính
Các quy tắc của Khóa chính như sau:
- Tất cả các giá trị trong cột được chọn làm khóa chính phải là duy nhất.
- Mỗi và mọi bảng chỉ được có một khóa chính
- Không giá trị nào trong cột khóa chính có thể là NULL
- Bạn không thể chèn một hàng mới có khóa chính đã có từ trước
Bây giờ bạn đã biết các quy tắc của khóa chính là gì, tiếp theo trong bài viết này về Khóa chính trong SQL, chúng ta hãy xem các hoạt động của khóa chính.
Thao tác chính của khóa chính:
Để hiểu các thao tác khác nhau trên khóa chính, hãy xem xét bảng sau:
Bảng Khách hàng:
ID khách hàng | Tên khách hàng | PhoneNumber |
1 | Nhảm nhí | 9876543210 |
2 | Sonal | 9765434567 |
3 | Ajay | 9765234562 |
4 | Aishwarya | 9876567899 |
5 | Akash | 9876541236 |
Khóa chính trên Tạo bảng
Bạn có thể sử dụng cú pháp sau để tạo khóa chính trên cột "customerID" trong khi tạo bảng này:
#For SQL Server/ MS Access/ Oracle CREATE TABLE Customers ( CustomerID int NOT NULL PRIMARY KEY, CustomerName varchar(255) NOT NULL, PhoneNumber int ); #MySQL CREATE TABLE Customers ( CustomerID int NOT NULL, CustomerName varchar(255) NOT NULL, PhoneNumber int PRIMARY KEY (customerID) );
Áp dụng Khóa chính trên nhiều cột
Để áp dụng khóa chính trên nhiều cột trong khi tạo bảng, hãy tham khảo ví dụ sau:
CREATE TABLE Customers ( customerID int NOT NULL, CustomerName varchar(255) NOT NULL, PhoneNumber int, CONSTRAINT PK_Customer PRIMARY KEY (CustomerID,CustomerName) );
Tham khảo hình ảnh bên dưới.
Tiếp theo, trong bài viết này về Khóa chính trong SQL, chúng ta hãy xem cách sử dụng khóa chính trên Bảng thay thế.
Khóa chính trên Bảng thay thế
Bạn có thể sử dụng cú pháp sau để tạo khóa chính trên cột "customerID" khi bảng “khách hàng” đã được tạo và bạn chỉ muốn thay đổi bảng:
ALTER TABLE Customers ADD PRIMARY KEY (CustomerID);
Nếu bạn muốn thêm tên vào ràng buộc Khóa chính và xác định tên đó trên nhiều cột, hãy sử dụng cú pháp SQL sau:
ALTER TABLE Customers ADD CONSTRAINT PK_Customer PRIMARY KEY (CustomerID,CustomerName);
Tiếp theo, trong bài viết này về Khóa chính trong SQL, hãy cho chúng tôi hiểu cách bỏ khóa chính
Xóa / Bỏ khóa chính
Để bỏ khóa chính, bạn có thể tham khảo ví dụ sau:
#For SQL Server/ MS Access/ Oracle ALTER TABLE Customers DROP CONSTRAINT PK_Customer; #For MySQL ALTER TABLE Customers DROP PRIMARY KEY;
Với điều này, chúng ta kết thúc bài viết này. Tôi hy vọng bạn đã hiểu cách sử dụng Khóa chính trong SQL. Nếu bạn muốn tìm hiểu thêm về MySQL và tìm hiểu cơ sở dữ liệu quan hệ nguồn mở này, sau đó xem Đào tạo chứng chỉ MySQL DBA đi kèm với đào tạo trực tiếp do người hướng dẫn và trải nghiệm dự án thực tế. Khóa đào tạo này sẽ giúp bạn hiểu sâu về MySQL và giúp bạn đạt được thành thạo về chủ đề này.
Bạn có câu hỏi cho chúng tôi? Vui lòng đề cập đến nó trong phần nhận xét của bài viết này về “Khóa chính trong SQL” và tôi sẽ liên hệ lại với bạn.