• About
  • Advertise
  • Privacy & Policy
  • Contact
NQ NEWS
  • Kiến thức tổng hợp
    • Development
    • Deep Learning
    • Cloud Computing
    • Kiến thức bảo mật
    • Tin học văn phòng
  • Thủ thuật
    • Phần Mềm
    • Sửa lỗi máy tính
    • Bảo mật máy tính
    • Tăng tốc máy tính
    • Thủ thuật Wifi
  • Quản trị hệ thống
    • Giải pháp bảo mật
    • Mail Server
    • Mạng LAN – WAN
    • Máy chủ
    • Windows Server 2012
  • Tin tức
No Result
View All Result
  • Kiến thức tổng hợp
    • Development
    • Deep Learning
    • Cloud Computing
    • Kiến thức bảo mật
    • Tin học văn phòng
  • Thủ thuật
    • Phần Mềm
    • Sửa lỗi máy tính
    • Bảo mật máy tính
    • Tăng tốc máy tính
    • Thủ thuật Wifi
  • Quản trị hệ thống
    • Giải pháp bảo mật
    • Mail Server
    • Mạng LAN – WAN
    • Máy chủ
    • Windows Server 2012
  • Tin tức
No Result
View All Result
NQ NEWS
No Result
View All Result
Home Kiến thức tổng hợp Lập trình

Lệnh TRUNCATE TABLE trong SQL Server

@admiz by @admiz
26/12/2021
in Lập trình
0
Truncate Table Sql Server 1

Lệnh TRUNCATE TABLE được dùng để xóa tất cả bản ghi từ 1 bảng trong SQL Server. Lệnh này hoạt động tương tự như lệnh DELETE nhưng không có mệnh đề WHERE.

Cú pháp lệnh TRUNCATE TABLE trong SQL Server

TRUNCATE TABLE [ten_CSDL.] [ten_schema.] ten_bang
[ WITH (PARTITIONS (so_phanvung
| so _phanvung TO so _phanvung ) ] ;

Tên biến hoặc giá trị biến

ten_CSDL

Tùy chocnj. Nếu được chỉ định thì đây là tên của cơ sở dữ liệu.

ten_scheme

Tùy chọn. Đây là tên của schema (tạm dịch là lược đồ hay không gian tên) mà bảng đó thuộc về.

ten_bang

Bảng mà bạn muốn xóa bản ghi.

WITH (PARTITIONS (so_phanvung | so _phanvung TO so _phanvung )

Tùy chọn và chỉ có thể dùng với bảng phân vùng (partition). Nếu được chỉ định, so_phanvung là số của vùng mà bạn muốn xóa trong bảng này. Để xóa nhiều vùng, dùng dấu phẩy phân tách các giá trị hoặc khoảng giá trị số phân vùng. Nếu dùng mệnh đề này với bảng không phân vùng thì SQL Server sẽ báo lỗi. Tính năng này không có trong tất cả các phiên bản của SQL Server.

Lưu ý

  • Nếu xóa toàn bộ bản ghi trong bảng, bộ đếm ở mọi cột tự tăng giá trị (indentity column) sẽ bị lặp lại từ đầu.
  • Không thể xóa toàn bộ bản ghi trong bảng được tham chiếu bằng Foreign Key.
  • Trước khi xóa toàn bộ bản ghi trong bản, phải có quyền ưu tiên như ALTER TABLE.

Ví dụ

Trong SQL Server, việc xóa toàn bộ bản ghi là cách nhanh nhất nếu không lo phải lấy lại dữ liệu. Nếu bảng bị TRUNCATE, việc xóa các hàng sẽ không được ghi lại nên không thể quay về thao tác trước. TRUNCATE cũng dễ hơn xóa bảng bằng lệnh DROP hay tạo mới bằng CREATE. Cùng xem ví dụ dưới đây.

TRUNCATE TABLE nhanvien;

Ví dụ này sẽ xóa toàn bộ bản ghi trong bảng nhanvien.

Lệnh trên tương đương với lệnh DELETE dưới đây.

DELETE FROM nhanvien;

Cả 2 lệnh trên đều xóa tất cả dữ liệu trong bảng nhanvien. Khác nhau ở chỗ là với lệnh DELETE bạn có thể quay về thao tác trước khi xóa nếu muốn còn với TRUNCATE thì không.

Cùng xem ví dụ khác có tên của cơ sở dữ liệu.

TRUNCATE TABLE totn.danhba;

Ví dụ này xóa tất cả bản ghi của bảng danhba trong cơ sở dữ liệu có tên totn.

Ví dụ với phân vùng

Nếu muốn xóa bản ghi của 1 hoặc 1 số vùng, hãy dùng lệnh TRUNCATE TABLE kèm mệnh đề WITH PARTITIONS.

TRUNCATE TABLE nhanvien
WITH (PARTITIONS (1 TO 5, 7) );

Ở ví dụ này, bảng nhanvien là một bảng phân vùng và lệnh TRUNCATE TABLE sẽ xóa các bản ghi theo vùng từ 1 tới 5 và vùng 7 trên bảng này.

Câu hỏi thường gặp

Hỏi: Có thể lùi cơ sở dữ liệu về trạng thái cũ (rollback) sau khi thực hiện lệnh TRUNCATE TABLE trong SQL Server không?

Trả lời: Lệnh TRUNCATE TABLE có thể rollback được bằng cách dùng chuyển tiếp (transaction). Ví dụ như dưới đây.

CREATE TABLE bang_test (cot1 int);


INSERT INTO bang_test VALUES (1);
INSERT INTO bang_test VALUES (2);

INSERT INTO bang_test VALUES (3);


-- Tạo chuyển tiếp
BEGIN TRAN;


-- Xóa bản ghi trong bảng
TRUNCATE TABLE dbo.bảng_test;


-- Rollback bảng đã xóa bản ghi
ROLLBACK;


SELECT * FROM bang_test;

Lệnh SELECT nói trên sẽ trả về kết quả là các bản ghi dưới đây.

cot1 
----------
1
2
3

Như vậy, đã lấy lại trạng thái cơ sở dữ liệu về trạng thái cũ và 3 bản ghi vẫn nằm trên bang_test.

Bài trước: Lệnh DELETE trong SQL Server

Bài sau: Điều kiện EXISTS trong SQL Server

Post Views: 297
Tags: lệnh TRUNCATE TABLEMS SQL Servermssqlrollback cơ sở dữ liệurollback trong SQL ServerSQL ServerTRUNCATE TABLExóa bản ghixóa bản ghi bằng lệnh TRUNCATExóa tất cả bản ghi
Previous Post

Cần làm gì khi máy tính không nhận bàn phím và chuột?

Next Post

7 điều Ubuntu làm tốt hơn Windows

Related Posts

Dien Tich Tam Giac 640 1
Lập trình

Công thức tính diện tích tam giác: vuông, thường, cân, đều

26/12/2021
Huong Dan Cai Dat Node Js 640 1
Lập trình

Hướng dẫn cài đặt Node.js

26/12/2021
Cau Truc Du Lieu Hang Doi Queue 640 1
Lập trình

Cấu trúc dữ liệu hàng đợi (Queue)

26/12/2021
Hoc Css 640 8
Lập trình

Thanh điều hướng – Navigation Bar trong CSS

26/12/2021
Ms Sql Server Management Studio 640 3
Lập trình

Quản lý MS SQL Server bằng Management Studio

26/12/2021
Java Development Kit 1
Lập trình

Tải Java Development Kit 8-update-281

26/12/2021
Next Post
Nhung Dieu Ubuntu Lam Tot Hon Windows 1

7 điều Ubuntu làm tốt hơn Windows

Bài mới nhất

Tao Logo Online Logo640 1

20 website tạo logo online, thiết kế logo online miễn phí

13/08/2025
Zalo Pc Dang Nhap Khong Pass 640 2

Tải Zalo PC, cách đăng nhập Zalo trên máy tính

12/08/2025
Ghep Nhieu File Pdf Thanh Mot File 640 2

Cách ghép file PDF, gộp và nối nhiều file PDF thành một file duy nhất

12/08/2025
Url La Gi 640 1

URL là gì? Cấu trúc của URL

11/08/2025
Zalo Dung Ban Nen Web 640 2

Zalo Web (chat.zalo.me): Đăng nhập, cách dùng Zalo Web từ A-Z trên máy tính

11/08/2025

Danh mục

  • Android
  • Bảo mật máy tính
  • Bảo mật, Antivirus
  • Chuyện công nghệ
  • Deep Learning
  • Development
  • Dịch vụ công trực tuyến
  • Dịch vụ nhà mạng
  • Giải pháp bảo mật
  • Hệ thống
  • Hệ thống
  • iPhone
  • Kiến thức bảo mật
  • Kiến thức cơ bản phổ thông
  • Kiến thức Marketing căn bản
  • Kiến thức tổng hợp
  • Lập trình
  • Linux
  • Linux OS
  • macOS
  • Mail Server
  • Mạng LAN – WAN
  • Máy ảo
  • Máy chủ
  • ms excel
  • ms-powerpoint
  • Nền tảng điện toán đám mây
  • Phần cứng
  • Phần Mềm
  • Quản trị hệ thống
  • Raspberry Pi
  • Sửa lỗi máy tính
  • Tăng tốc máy tính
  • Thủ thuật
  • Thủ thuật SEO
  • Thủ thuật Wifi
  • Tiện ích hệ thống
  • Tin học văn phòng
  • Tin tức
  • Uncategorized
  • Ứng dụng
  • Website
  • Windows Server 2012

Thẻ

#app #chatbot #chatbot tự động #CRM #Kiến thức cơ bản #Techblog #Thiết kế website Android apple CPU Email Marketing Google Google Drive hacker HTML hàm python hàm python có sẵn hình nền hình nền máy tính học css học python học SQL ios iphone iphone 12 iPhone X macos Microsoft mssql MS SQL Server ngôn ngữ lập trình python Raspberry Pi Samsung smartphone SQL SQL Server tham số trong C thủ thuật windows 10 tài liệu python windows windows 10 YouTube điện thoại thông minh ứng dụng
  • About
  • Advertise
  • Privacy & Policy
  • Contact

© 2022 Pha Le Solution

No Result
View All Result
  • Home

© 2022 Pha Le Solution