Chủ Nhật, 30 tháng 7, 2023

Primary Key trong SQL

Bài này bạn sẽ được giới thiệu cách tạo khóa chính (Primary Key) thể hiện qua các hệ hệ quản trị CSDL như SQL Serer, MySQL, Oracle, Access.

Primary key là một hoặc nhiều column co tính chất đặc biệt đó là dùng để phân biệt sự khác nhau giữa các dòng dữ liệu, vì vậy giá trị của nó phải là duy nhất. Mỗi table chỉ có một primary key duy nhất, mỗi primary key có thể có một hoặc nhiều column.

Mục lục

  • 1. Tạo Primary Key bằng Create Table
  • 2. Tạo Primary Key bằng Alter Table
  • 3. Xóa Primary Key 

1. Tạo Primary Key bằng Create Table

Các ví dụ dưới đây là cách tạo Primary Key.

MySQL
1
2
3
4
5
6
7
CREATE TABLE Persons (
    ID int NOT NULL,
    LastName varchar(255) NOT NULL,
    FirstName varchar(255),
    Age int,
    PRIMARY KEY (ID)
);

SQL Server / Oracle / MS Access
1
2
3
4
5
6
CREATE TABLE Persons (
    ID int NOT NULL PRIMARY KEY,
    LastName varchar(255) NOT NULL,
    FirstName varchar(255),
    Age int
);

Nếu bạn muốn đặt tên cho Primary Key để tiện cho việc quản lý sau này thì hãy sử dụng cú pháp sau:

Bài viết này được đăng tại tranvanbinh.vn

MySQL / SQL Server / Oracle / MS Access
1
2
3
4
5
6
7
CREATE TABLE Persons (
    ID int NOT NULL,
    LastName varchar(255) NOT NULL,
    FirstName varchar(255),
    Age int,
    CONSTRAINT PK_Person PRIMARY KEY (ID,LastName)
);

Việc đặt tên này rất có lợi bởi sau này bạn có thể dễ dàng xóa khóa chính bằng câu lệnh SQL.

2. Tạo Primary Key bằng Alter Table

Giả sử ta cần tạo khóa chính cho column ID nằm trong bảng Person thì cách làm như sau:

MySQL / SQL Server / Oracle / MS Access
1
2
ALTER TABLE Persons
ADD PRIMARY KEY (ID);

Trường hợp khóa chính có nhiều column thì bạn sẽ viết các column cách nhau bởi dấu phẩy.

MySQL / SQL Server / Oracle / MS Access
1
2
ALTER TABLE Persons
ADD CONSTRAINT PK_Person PRIMARY KEY (ID,LastName);

Lưu ý: Khi bạn sử dụng lệnh Alter Table để tạo khóa chính thì các column đó phải đặt là NOT NULL, nếu không sẽ bị báo lỗi vì khóa chính không chấp nhận giá trị NULL.

3. Xóa Primary Key 

Để xóa khóa chính Primary Key thì ta sử dụng lệnh Alter Table.

MySQL
1
2
ALTER TABLE Persons
DROP PRIMARY KEY;

SQL Server / Oracle / MS Access
1
2
ALTER TABLE Persons
DROP CONSTRAINT PK_Person;

Như vậy với MySQL thì ta không cần tên của khóa chính.

=============================
Nếu bạn muốn tiết kiệm 3-5 NĂM trên con đường trở thành DBA chuyên nghiệp thì hãy đăng ký ngay KHOÁ HỌC ORACLE DATABASE A-Z ENTERPRISE, được Coaching trực tiếp từ tôi với toàn bộ kinh nghiệm, thủ tục, quy trình, bí kíp thực chiến mà bạn sẽ KHÔNG THỂ tìm kiếm trên Internet/Google giúp bạn dễ dàng quản trị mọi hệ thống Core tại Việt Nam và trên thế giới, đỗ OCP.
- CÁCH ĐĂNG KÝ: Gõ (.) hoặc để lại số điện thoại hoặc inbox https://m.me/tranvanbinh.vn hoặc Hotline/Zalo 090.29.12.888
- Chi tiết tham khảo:
https://bit.ly/oaz_w
=============================
2 khóa học online qua video giúp bạn nhanh chóng có những kiến thức nền tảng về Linux, Oracle, học mọi nơi, chỉ cần có Internet/4G:
- Oracle cơ bản: https://bit.ly/admin1_1200
- Linux: https://bit.ly/linux_1200
=============================
KẾT NỐI VỚI CHUYÊN GIA TRẦN VĂN BÌNH:
📧 Mail: binhoracle@gmail.com
☎️ Mobile/Zalo: 0902912888
👨 Facebook: https://www.facebook.com/BinhOracleMaster
👨 Inbox Messenger: https://m.me/101036604657441 (profile)
👨 Fanpage: https://www.facebook.com/tranvanbinh.vn
👨 Inbox Fanpage: https://m.me/tranvanbinh.vn
👨👩 Group FB: https://www.facebook.com/groups/DBAVietNam
👨 Website: https://www.tranvanbinh.vn
👨 Blogger: https://tranvanbinhmaster.blogspot.com
🎬 Youtube: https://www.youtube.com/@binhguru
👨 Tiktok: https://www.tiktok.com/@binhguru
👨 Linkin: https://www.linkedin.com/in/binhoracle
👨 Twitter: https://twitter.com/binhguru
👨 Podcast: https://www.podbean.com/pu/pbblog-eskre-5f82d6
👨 Địa chỉ: Tòa nhà Sun Square - 21 Lê Đức Thọ - Phường Mỹ Đình 1 - Quận Nam Từ Liêm - TP.Hà Nội

=============================
oracle tutorial, học oracle database, Tự học Oracle, Tài liệu Oracle 12c tiếng Việt, Hướng dẫn sử dụng Oracle Database, Oracle SQL cơ bản, Oracle SQL là gì, Khóa học Oracle Hà Nội, Học chứng chỉ Oracle ở đầu, Khóa học Oracle online,sql tutorial, khóa học pl/sql tutorial, học dba, học dba ở việt nam, khóa học dba, khóa học dba sql, tài liệu học dba oracle, Khóa học Oracle online, học oracle sql, học oracle ở đâu tphcm, học oracle bắt đầu từ đâu, học oracle ở hà nội, oracle database tutorial, oracle database 12c, oracle database là gì, oracle database 11g, oracle download, oracle database 19c, oracle dba tutorial, oracle tunning, sql tunning , oracle 12c, oracle multitenant, Container Databases (CDB), Pluggable Databases (PDB), oracle cloud, oracle security, oracle fga, audit_trail,oracle RAC, ASM, oracle dataguard, oracle goldengate, mview, oracle exadata, oracle oca, oracle ocp, oracle ocm , oracle weblogic, postgresql tutorial, mysql tutorial, mariadb tutorial, ms sql server tutorial, nosql, mongodb tutorial, oci, cloud, middleware tutorial, hoc solaris tutorial, hoc linux tutorial, hoc aix tutorial, unix tutorial, securecrt, xshell, mobaxterm, putty

ĐỌC NHIỀU

Trần Văn Bình - Oracle Database Master