Trang chủ » Blog » [Thực hành] Tạo khoá chính- Codegym.vn

[Thực hành] Tạo khoá chính- Codegym.vn

bởi CodeGym | 26/12/2023 16:30 | Bài thực hành | Blog

Mục tiêu

Luyện tập tạo khoá chính.

Mô tả

Hướng dẫn nộp bài:

  • Up code lên github
  • Paste link github vào phần nộp bài

Khoá chính là gì?

  • Khóa chính (Primary Key, hay ràng buộc khóa chính) được sử dụng để định danh duy nhất mỗi bản ghi (dòng) trong bảng của cơ sở dữ liệu.
  • Ngoài ra, nó còn dùng để thiết lập quan hệ 1-n (hay ràng buộc tham chiếu) giữa hai bảng trong cơ sở dữ liệu.
  • Dữ liệu (value) của field khóa chính phải có tính duy nhất, và không chứa các giá trị Null.
  • Mỗi bảng chỉ có một khóa chính
  • Khóa chính có thể tạo ra dựa trên một cột hoặc nhiều cột (được gọi là khoá chính tổ hợp) của table.

Cú pháp để định nghĩa khoá chính

Chúng ta có thể sử dụng từ khoá PRIMARY KEY để định nghĩa khoá chính khi tạo bảng.

Ví dụ:

CREATE TABLE users(
   user_id INT AUTO_INCREMENT PRIMARY KEY,
   username VARCHAR(40),
   password VARCHAR(255),
   email VARCHAR(255)
);

Trong ví dụ trên, từ khoá PRIMARY KEY được sử dụng để xác định khoá chính dựa trên cột user_id.

Hoặc, chúng ta cũng có thể sử dụng từ khoá PRIMARY ở cuối câu lệnh tạo bảng như sau:

CREATE TABLE roles(
   role_id INT AUTO_INCREMENT,
   role_name VARCHAR(50),
   PRIMARY KEY(role_id)
);

Trong trường hợp này, chúng ta tách việc quy định khoá chính thành một dòng riêng biệt khỏi dòng định nghĩa cột role_id.

Cú pháp định nghĩa khoá chính tổ hợp

Khoá chính tổ hợp là khoá chính được tạo ra dựa trên nhiều cột của bảng. Chúng ta cũng có thể sử dụng từ khoá PRIMARY KEY để lập khoá chính tổ hợp.

Ví dụ:

CREATE TABLE userroles(
   user_id INT NOT NULL,
   role_id INT NOT NULL,
   PRIMARY KEY(user_id,role_id),
   FOREIGN KEY(user_id) REFERENCES users(user_id),
   FOREIGN KEY(role_id) REFERENCES roles(role_id)
);

Trong ví dụ này, khoá chính của bảng userroles được tạo thành dựa trên 2 cột là user_id và role_id.

Lưu ý: FOREIGN KEY là từ khoá được sử dụng để tạo khoá ngoại với các bảng khác, chúng ta sẽ tìm hiểu từ khoá này ở trong bài sau.

Tạo khoá chính khi thay đổi bảng

Có một số trường hợp, chúng ta muốn bổ sung khoá chính cho một bảng sau khi bảng đó đã được tạo. Chúng ta có thể sử dụng câu lệnh ADD PRIMARY KEY ở trong câu lệnh ALTER TABLE để đạt được mục đích này.

Cú pháp:

ALTER TABLE table_name
    ADD PRIMARY KEY(primary_key_column);

Trong đó, table_name là tên của bảng đã tồn tại, primary_key_column là tên của cột muốn tạo khoá.

Trên đây CodeGym đã cùng với bạn luyện tập tạo khoá chính. Hãy chụp ảnh màn hình và nộp bài thực hành của bạn trên CodeGymX để cùng nhau luyện tập nhé!

Tags:

0 Lời bình

Gửi Lời bình

Email của bạn sẽ không được hiển thị công khai. Các trường bắt buộc được đánh dấu *

BÀI VIẾT LIÊN QUAN

BẠN MUỐN HỌC LẬP TRÌNH?

GỌI NGAY

098 953 44 58

Đăng ký tư vấn lộ trình học lập trình

Đăng ký tư vấn, định hướng lộ trình học và giải đáp các thắc mắc về ngành nghề – Miễn phí – Online.

6 + 1 =

TƯ VẤN VỀ LỘ TRÌNH HỌC NGHỀ LẬP TRÌNH TẠI CODEGYM
TƯ VẤN VỀ LỘ TRÌNH HỌC NGHỀ LẬP TRÌNH TẠI CODEGYM