Thứ Hai, 24 tháng 7, 2023

Lệnh sửa bảng trong Oracle - Alter Table

Lệnh sửa bảng trong Oracle - Alter Table

Trong bài này mình sẽ giới thiệu với các bạn một lệnh dùng để chỉnh sửa cấu trúc của table như thêm column, xóa column, đổi kiểu dữ liệu, đổi tên table, ... bằng cách sử dụng lệnh ALTER TABLE.

Mục lục

  • 1. Thêm một column vào table - Oracle
  • 2. Thêm nhiều column vào table- Oracle
  • 3. Thay đổi cấu trúc của một column - Oracle
  • 4. Thay đổi cấu trúc nhiều column - Oracle
  • 5. Xóa một column ra khỏi table - Oracle
  • 6. Thay đổi tên column của table - Oracle
  • 7. Đổi tên của table - Oracle
  • Lời kết

1. Thêm một column vào table - Oracle

Vào một ngày đẹp trời bạn muốn bổ sung một column vào bảng nhưng không biết bắt đầu từ đâu, vậy thì hãy sử dụng lệnh ALTER TABLE với cú pháp như sau:

1
ALTER TABLE table_name ADD column_name column-definition;

Trong đó:

  • table_name là tên bảng muốn thay đổi
  • column_name là tên column muốn thêm vào
  • column-definition là các thông số dành cho column đó

Ví dụ: Trong lúc tạo bảng customers mình đã quên thêm column customer_age, nên mình sẽ bổ sung nó bằng câu lệnh SQL theo cú pháp ở trên.

Tuy nhiên trước tiên mình sẽ xác định các thông số cho column đó là: Kiểu varchar2 và chiều dài tối đa là 50 ký tự. Và đây là câu lệnh:

1
2
ALTER TABLE customers 
  ADD customer_age varchar2(50);

2. Thêm nhiều column vào table- Oracle

Nếu bạn muốn thêm nhiều column thì chỉ cần sử dụng cặp dấu ngoặc () và mỗi column cách nhau bởi dấu phẩy.

1
2
3
4
5
ALTER TABLE table_name 
  ADD (column_1 column-definition, 
       column_2 column-definition, 
       ... 
       column_n column_definition);

Ví dụ
1
2
3
ALTER TABLE customers 
  ADD (customer_type varchar2(50), 
       customer_address varchar2(50));

Chạy câu lệnh này xong là bạn đã thêm 2 column thành công.

3. Thay đổi cấu trúc của một column - Oracle

Bạn sẽ sử dụng từ khóa MODIFY để thay đổi cấu trúc cho column.

Cú pháp
1
2
ALTER TABLE table_name 
  MODIFY column_name column_type;

Ví dụ
1
2
ALTER TABLE customers 
  MODIFY customer_name varchar2(100) not null;

Chạy câu lệnh này xong là bạn đã thay đổi thành công cấu trúc của column customer_name.

4. Thay đổi cấu trúc nhiều column - Oracle

Tương tự, bạn sẽ sử dụng cặp dấu () và dấu phẩy để ngăn giữa các column.

Cú pháp
1
2
3
4
5
ALTER TABLE table_name 
  MODIFY (column_1 column_type, 
          column_2 column_type, 
          ... 
          column_n column_type);

Ví dụ
1
2
3
ALTER TABLE customers 
  MODIFY (customer_name varchar2(100) not null
          city varchar2(100));

Lệnh này sẽ thay đổi cấu trúc cho cả 2 column đó là customer_name và city trong bảng customers.

5. Xóa một column ra khỏi table - Oracle

Để xóa một column ra khỏi một table thì bạn sẽ sử dụng từ khóa DROP COLUMN.

Cú pháp
1
2
ALTER TABLE table_name 
  DROP COLUMN column_name;

Ví dụ
1
2
ALTER TABLE customers 
  DROP COLUMN customer_name;

6. Thay đổi tên column của table - Oracle

Ta sẻ sử dụng từ khóa RENAME COLUMN.

Cú pháp
1
2
ALTER TABLE table_name 
  RENAME COLUMN old_name to new_name;

Ví dụ
1
2
ALTER TABLE customers 
 RENAME COLUMN customer_name to cname;

7. Đổi tên của table - Oracle

Tên của table rất ít khi thay đổi, nhưng nếu bạn muốn thay đổi thì vẫn làm được, bằng cách sử dụng từ khóa RENAME TO.

Cú pháp
1
2
ALTER TABLE table_name 
  RENAME TO new_table_name;

Ví dụ
1
2
ALTER TABLE customers 
RENAME TO retailers;

Như vậy là bạn đã đổi tên cho table thành công.

Lời kết

Qua bài này mình đã giới thiệu một số chức năng thường dùng của lệnh ALTER TABLE, đây là lệnh thường dùng cho người quản trị database, còn nếu bạn là coder thì rất ít khi dùng.

Bài này mình dừng tại đây, bài tiếp theo ta sẽ tìm hiểu cách xóa một table ra khỏi database trong Oracle,

=============================
* KHOÁ HỌC ORACLE DATABASE A-Z ENTERPRISE trực tiếp từ tôi giúp bạn bước đầu trở thành những chuyên gia DBA, đủ kinh nghiệm đi thi chứng chỉ OA/OCP, đặc biệt là rất nhiều kinh nghiệm, bí kíp thực chiến trên các hệ thống Core tại VN chỉ sau 1 khoá học.
* 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
=============================
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