Danh sách Tutorial

[PostgreSQL] Truncate bảng CSDL (Truncate Table)


Để xóa hết dữ liệu trong 1 bảng CSDL, thông thường chúng ta sử dụng câu lệnh SQL Query là DELETE * FROM table_name, tuy nhiên để với 1 bảng CSDL lớn, để xóa nhanh hơn thì có thể sử dụng câu lệnh SQL: TRUNCATE TABLE

Cú pháp lệnh TRUNCATE TABLE

TRUNCATE [ TABLE ] [ ONLY ] <table_name> [ * ] [, ... ]
[ RESTART IDENTITY | CONTINUE IDENTITY ] [ CASCADE | RESTRICT ]

Với

  • <table_name>: là tên của bảng cần xóa hết dữ liệu
  • RESTART IDENTITY: Restart lại sequence của colum
  • CONTINUE IDENTITY: Không thay đổi giá trị của sequence (Mặc định)
  • CASCADE:  Tự động truncate tất cả các bảng có liên kết thông qua foreign key
  • RESTRICT: Không truncate nếu bảng cần truncate có các bảng khác liên kết thông qua foreign key

Một số ví dụ về lệnh TRUNCATE TABLE

Xóa hết dữ liệu của bảng groups

TRUNCATE TABLE groups;

Sau khi truncate bảng groups, 3 bản ghi trong bảng groups đã được xóa.

Xóa hết dữ liệu và restart lại sequence của colum group_id

TRUNCATE TABLE groups RESTART IDENTITY;

Xóa hết dữ liệu của nhiều bảng 1 lúc

TRUNCATE TABLE groups, users;

Xóa bảng groups và tất cả các bản liên kết với nó thông qua foreign key (khóa ngoại)

  
TRUNCATE TABLE groups CASCADE;

 

SHARE

mode_edit Bình luận của bạn

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 *

account_circle
web