Bài này cafedev chia sẻ cho ace về cách tạo bảng(table), xoá, after nó trong SQL.
Nội dung chính
1. Tạo bảng
Câu lệnh CREATE TABLE được sử dụng để tạo một bảng mới trong cơ sở dữ liệu.
Cú pháp
/*
Cafedev.vn - Kênh thông tin IT hàng đầu Việt Nam
@author cafedevn
Contact: cafedevn@gmail.com
Fanpage: https://www.facebook.com/cafedevn
Group: https://www.facebook.com/groups/cafedev.vn/
Instagram: https://instagram.com/cafedevn
Twitter: https://twitter.com/CafedeVn
Linkedin: https://www.linkedin.com/in/cafe-dev-407054199/
Pinterest: https://www.pinterest.com/cafedevvn/
YouTube: https://www.youtube.com/channel/UCE7zpY_SlHGEgo67pHxqIoA/
*/
CREATE TABLE table_name (
column1 datatype,
column2 datatype,
column3 datatype,
....
);
Các tham số cột(column) chỉ định tên của các cột trong bảng.
Tham số kiểu dữ liệu(datatype) chỉ định loại dữ liệu mà cột có thể giữ (ví dụ: varchar, số nguyên, ngày, v.v.).
Mẹo: Để biết tổng quan về các kiểu dữ liệu có sẵn, hãy truy cập Tài liệu tham khảo về kiểu dữ liệu đầy đủ của chúng tôi.
Ví dụ
Ví dụ sau tạo một bảng có tên “Persons” có năm cột: PersonID, LastName, FirstName, Address và City:
/*
Cafedev.vn - Kênh thông tin IT hàng đầu Việt Nam
@author cafedevn
Contact: cafedevn@gmail.com
Fanpage: https://www.facebook.com/cafedevn
Group: https://www.facebook.com/groups/cafedev.vn/
Instagram: https://instagram.com/cafedevn
Twitter: https://twitter.com/CafedeVn
Linkedin: https://www.linkedin.com/in/cafe-dev-407054199/
Pinterest: https://www.pinterest.com/cafedevvn/
YouTube: https://www.youtube.com/channel/UCE7zpY_SlHGEgo67pHxqIoA/
*/
CREATE TABLE Persons (
PersonID int,
LastName varchar(255),
FirstName varchar(255),
Address varchar(255),
City varchar(255)
);
Cột PersonID có kiểu int và sẽ chứa một số nguyên.
Các cột LastName, FirstName, Address và City thuộc loại varchar và sẽ chứa các ký tự và độ dài tối đa cho các trường này là 255 ký tự.
Bảng “Persons” trống bây giờ sẽ trông như thế này:
PersonID | LastName | FirstName | Address | City |
---|---|---|---|---|
Mẹo: Bảng “Người” trống hiện có thể được lấp đầy bằng dữ liệu bằng câu lệnh SQL INSERT INTO
Tạo bảng bằng bảng khác
Bản sao của bảng hiện có cũng có thể được tạo bằng cách sử dụng CREATE TABLE.
Bảng mới có các định nghĩa cột giống nhau. Tất cả các cột hoặc các cột cụ thể có thể được chọn.
Nếu bạn tạo bảng mới bằng bảng hiện có, bảng mới sẽ được lấp đầy bằng các giá trị hiện có từ bảng cũ
Cú pháp
CREATE TABLE new_table_name AS
SELECT column1, column2,...
FROM existing_table_name
WHERE ....;
Ví dụ: SQL sau tạo một bảng mới có tên “TestTables” (là bản sao của bảng “Customers”):
CREATE TABLE TestTable AS
SELECT customername, contactname
FROM customers;
2. Xoá bảng
Câu lệnh DROP TABLE được sử dụng để thả một bảng hiện có trong cơ sở dữ liệu.
Cú pháp
DROP TABLE table_name;
Lưu ý: Hãy cẩn thận trước khi đánh rơi bàn. Xóa bảng sẽ làm mất thông tin đầy đủ được lưu trữ trong bảng!
Ví dụ:
Câu lệnh SQL sau loại bỏ bảng hiện có “Shippers”:
DROP TABLE Shippers;
SQL TRUNCATE TABLE
Câu lệnh TRUNCATE TABLE được sử dụng để xóa dữ liệu bên trong bảng, nhưng không xóa chính bảng đó.
TRUNCATE TABLE table_name;
3. ALTER TABLE trong SQL
Câu lệnh ALTER TABLE được sử dụng để thêm, xóa hoặc sửa đổi các cột trong bảng hiện có.
Câu lệnh ALTER TABLE cũng được sử dụng để thêm và bỏ các ràng buộc khác nhau trên một bảng hiện có.
- ALTER TABLE – ADD Column
Để thêm một cột trong bảng, hãy sử dụng cú pháp sau:
ALTER TABLE table_name
ADD column_name datatype;
SQL sau thêm cột “Email” vào bảng “Customers”:
ALTER TABLE Customers
ADD Email varchar(255);
- ALTER TABLE – DROP COLUMN
Để xóa một cột trong bảng, hãy sử dụng cú pháp sau (lưu ý rằng một số hệ thống cơ sở dữ liệu không cho phép xóa một cột):
ALTER TABLE table_name
DROP COLUMN column_name;
SQL sau sẽ xóa cột “Email” khỏi bảng “Customers”:
Ví dụ:
ALTER TABLE Customers
DROP COLUMN Email;
- ALTER TABLE – ALTER/MODIFY COLUMN
Để thay đổi kiểu dữ liệu của một cột trong bảng, hãy sử dụng cú pháp sau:
SQL Server / MS Access:
ALTER TABLE table_name
ALTER COLUMN column_name datatype;
My SQL / Oracle (prior version 10G):
ALTER TABLE table_name
MODIFY COLUMN column_name datatype;
Oracle 10G and later:
ALTER TABLE table_name
MODIFY column_name datatype;
Ví dụ: SQL ALTER TABLE
Bảng Persions:
ID | LastName | FirstName | Address | City |
---|---|---|---|---|
1 | Linh | Nguyên | 30 Nguyễn hữu thọ | HCM |
2 | Hồ | Long | 25 Đinh Bộ Lĩnh | HN |
3 | Hoá | Tý | 17 Văn Hoá | DN |
Bây giờ chúng ta muốn thêm một cột có tên “DateOfBirth” trong bảng “Persions”.
Chúng tôi sử dụng câu lệnh SQL sau:
ALTER TABLE Persons
ADD DateOfBirth date;
Lưu ý rằng cột mới, “DateOfBirth”, thuộc loại ngày tháng và sẽ chứa một ngày tháng. Kiểu dữ liệu chỉ định loại dữ liệu mà cột có thể chứa. Để có tài liệu tham khảo đầy đủ về tất cả các kiểu dữ liệu có sẵn trong MS Access, MySQL và SQL Server, hãy truy cập tài liệu tham khảo Kiểu dữ liệu đầy đủ của chúng tôi.
Bảng “Persions” bây giờ sẽ trông như thế này:
ALTER TABLE Persons
ADD DateOfBirth date;
Lưu ý rằng cột mới, “DateOfBirth”, thuộc loại ngày tháng và sẽ chứa một ngày tháng. Kiểu dữ liệu chỉ định loại dữ liệu mà cột có thể chứa. Để có tài liệu tham khảo đầy đủ về tất cả các kiểu dữ liệu có sẵn trong MS Access, MySQL và SQL Server, hãy truy cập tài liệu tham khảo Kiểu dữ liệu đầy đủ của chúng tôi.
Bảng “Persions” bây giờ sẽ trông như thế này:
ID | LastName | FirstName | Address | City | DateOfBirth |
---|
Ví dụ: Thay đổi Data Type
Bây giờ chúng ta muốn thay đổi kiểu dữ liệu của cột có tên “DateOfBirth” trong bảng “Persons”.
Chúng tôi sử dụng câu lệnh SQL sau:
ALTER TABLE Persons
ALTER COLUMN DateOfBirth year;
lưu ý rằng cột “DateOfBirth” hiện thuộc loại năm và sẽ giữ một năm ở định dạng hai hoặc bốn chữ số.
Ví dụ: Xoá COLUMN
Tiếp theo, chúng tôi muốn xóa cột có tên “DateOfBirth” trong bảng “Persions”.
Chúng tôi sử dụng câu lệnh SQL sau:
ALTER TABLE Persons
DROP COLUMN DateOfBirth;
Full series tự học SQL từ cơ bản tới nâng cao tại đây nha.
Nếu bạn thấy hay và hữu ích, bạn có thể tham gia các kênh sau của cafedev để nhận được nhiều hơn nữa:
Chào thân ái và quyết thắng!