TRUNCATE LÀ GÌ

     
*
XÓA và TRUNCATE là các lệnh được sử dụng để loại trừ các bộ dữ liệu khỏi một côn trùng quan hệ, tuy nhiên chúng khác biệt trong nhiều bối cảnh. Vào SQL, lệnh DELETE là lệnh Ngôn ngữ thao tác dữ liệu trong khi đó, lệnh TRUNCATE là lệnh Ngôn ngữ có mang dữ liệu . Tuy nhiên, điểm mang đến phép bọn họ phân biệt giữa XÓA và TRUNCATE là XÓA rất có thể xóa các bộ dữ liệu được hướng đẫn khỏi một mối quan hệ, trong những lúc đó, lệnh TRUNCATE đã xóa toàn bộ bộ tài liệu khỏi côn trùng quan hệ.

Bạn đang xem: Truncate là gì

chúng ta không nên dừng lại ở đây, có khá nhiều sự biệt lập khác thân XÓA và TRUNCATE. Hãy để bọn chúng tôi bàn bạc với họ với sự giúp sức của biểu đồ so sánh được hiển thị bên dưới đây.

Biểu đồ so sánh

Cơ sở mang lại ComparsionXÓA BỎTRUNCATE
Căn bảnBạn có thể chỉ định bộ dữ liệu mà bạn có nhu cầu xóa.Nó xóa toàn bộ các bộ dữ liệu xuất phát điểm từ một mối quan tiền hệ.
Ngôn ngữXÓA là 1 trong lệnh Ngôn ngữ thao tác dữ liệu.TRUNCATE là một trong lệnh ngôn từ định nghĩa dữ liệu.
Ở ĐÂULệnh DELETE hoàn toàn có thể có mệnh đề WHERE.Lệnh TRUNCATE không tồn tại mệnh đề WHERE.
Cò súngLệnh DELETE kích hoạt kích hoạt được áp dụng trên bảng và khiến cho chúng bắn.Lệnh TRUNCATE không kích hoạt kích hoạt để kích hoạt.
XóaLệnh XÓA loại trừ từng cỗ một.TRUNCATE xóa cục bộ trang tài liệu có chứa những bộ dữ liệu.
KhóaLệnh XÓA khóa mặt hàng / tuple trước khi xóa nó.Trang dữ liệu khóa lệnh TRUNCATE trước lúc xóa dữ liệu bảng.

Xem thêm: Vrms Là Gì ? True Rms Là Gì Công Thức Tính Giá Trị Rms Root Mean Square

Tốc độLệnh DELETE vận động chậm rộng so cùng với TRUNCATE.TRUNCATE nhanh hơn đối với XÓA.
Giao dịchXÓA hồ nước sơ thanh toán nhật ký cho từng bộ vẫn xóa.Nhật ký giao dịch phiên bản ghi TRUNCATE cho mỗi trang tài liệu bị xóa.
Khôi phụcLệnh DELETE có thể được theo sau do CAMIT hoặc ROLLBACK.Lệnh TRUNCATE thiết yếu là ROLLBACK.

Định nghĩa của XÓA

XÓA là 1 lệnh Ngôn ngữ thao tác dữ liệu (DML). Trách nhiệm của lệnh DELETE là xóa hoặc xóa những bộ tài liệu khỏi một bảng hoặc một mọt quan hệ. Thực hiện DELETE, shop chúng tôi có thể các loại bỏ toàn bộ bộ dữ liệu, với toàn bộ các cực hiếm thuộc tính của nó từ một mối quan liêu hệ. XÓA không loại trừ giá trị của một thuộc tính nạm thể, của một tuple khỏi mối quan lại hệ.

Bạn rất có thể lọc những bộ tài liệu mà bạn muốn xóa khỏi bảng, sử dụng mệnh đề WHERE . Nếu bạn chỉ định mệnh đề WHERE vào câu lệnh XÓA, thì nó đang chỉ xóa các bộ dữ liệu thỏa mãn điều khiếu nại mệnh đề WHERE. Nhưng nếu như khách hàng không chỉ định mệnh đề WHERE trong câu lệnh XÓA thì theo mang định, nó vẫn xóa hoặc loại trừ tất cả các bộ dữ liệu khỏi một mối quan hệ. Mệnh đề WHERE vào câu lệnh DELETE có thể chứa các câu lệnh CHỌN-TỪ-WHERE lồng nhau.

Cú pháp của lệnh DELETE như sau:

XÓA TỪ tên_bảng WHERE < conditon >;

Lệnh DELETE chỉ vận động trên một mối quan liêu hệ hoặc bảng duy nhất tại một thời điểm. Vào trường hợp bạn muốn xóa tuple khỏi những mối quan hệ nam nữ khác nhau, bạn phải để lệnh XÓA không giống nhau cho mỗi mối quan hệ. Nhưng bài toán xóa bộ dữ liệu khỏi một mối quan hệ có thể vincitysdaimo.com phạm tính toàn vẹn tham chiếu của các đại lý dữ liệu, có thể được giải quyết và xử lý với sự trợ giúp của các trình kích hoạt. Giả dụ lệnh DELETE vincitysdaimo.com phạm tính toàn diện tham chiếu, thì tất cả các kích hoạt tham chiếu (nếu được chỉ định) sẽ tiến hành kích hoạt để truyền hành vincitysdaimo.com xóa trên những bộ dữ liệu có quan hệ khác nhau đề cập đến các bộ tài liệu đã xóa.

Lệnh XÓA trước hết khóa mặt hàng hoặc tuple sẽ bị xóa và sau đó xóa từng tuple. Bởi vì đó, nó yên cầu nhiều khóa cùng tài nguyên hơn tạo nên nó chậm hơn . Bạn cũng có thể thực hiện các chuyển đổi được thực hiện bằng câu lệnh XÓA vĩnh vincitysdaimo.comễn bằng cách sử dụng CAMIT hoặc bạn cũng có thể đặt lại cơ sở tài liệu bằng ROLLBACK .

Định nghĩa của TRUNCATE

TRUNCATE tương tự như như lệnh DELETE vày nó cũng xóa những bộ dữ liệu khỏi một mọt quan hệ. Sự khác hoàn toàn là nó xóa tổng thể bộ dữ liệu khỏi một côn trùng quan hệ. Khi lệnh TRUNCATE được thực thi, cục bộ dữ liệu từ bảng sẽ ảnh hưởng xóa, mỗi bộ dữ liệu cùng với tất cả các giá trị thuộc tính của nó sẽ bị loại bỏ khỏi bảng. Nhưng cấu trúc của bảng vẫn lâu dài trong các đại lý dữ liệu. Vì chưng vậy, chúng ta cũng có thể một lần tiếp nữa nhập những bộ dữ liệu trong bảng. TRUNCATE là một trong lệnh ngôn từ định nghĩa dữ liệu.

Cú pháp của lệnh TRUNCATE như sau:

TRUNCATE BẢNG tên_bảng ;

Giống như XÓA, TRUNCATE không hoạt động trên từng hàng dữ liệu bảng. Thế vào đó, nó hoạt động trên những trang dữ liệu tàng trữ dữ liệu bảng. Bây giờ, khi TRUNCATE xóa các trang dữ liệu, nó phải dành được khóa trên những trang tài liệu thay vì cỗ dữ liệu. Bởi đó, nó dẫn cho yêu cầu về khóa cùng tài nguyên ít hơn khiến TRUNCATE nhanh hơn so với XÓA.

vincitysdaimo.comệc thực thi lệnh TRUNCATE không kích hoạt ngẫu nhiên trình kích hoạt nào vì nó không vận hành từng hàng dữ liệu. TRUNCATE tất yêu được tiến hành trong trường thích hợp bảng được tham chiếu bởi bất kỳ khóa ngoại nào. Khi lệnh TRUNCATE xóa tài liệu bảng, nó không bao giờ có thể được phục hồi .

Sự khác hoàn toàn chính giữa XÓA với TRUNCATE vào SQL

Sự biệt lập chính thân XÓA cùng TRUNCATE là lúc sử dụng XÓA, chúng ta cũng có thể xóa bộ tài liệu được chỉ định và hướng dẫn khỏi một mối quan hệ. Cơ mà vincitysdaimo.comệc sử dụng TRUNCATE vẫn xóa tổng thể bộ tài liệu khỏi một mối quan hệ.XÓA là lệnh DML trong khi đó, TRUNCATE là lệnh DDL.XÓA áp dụng mệnh đề WHERE nhằm lọc phiên bản ghi / bộ dữ liệu sẽ ảnh hưởng xóa. Tuy nhiên, TRUNCATE ko yêu cầu mệnh đề WHERE vì nó xóa tất cả các bộ dữ liệu, vày đó không cần phải lọc những bộ dữ liệu.XÓA kích hoạt những kích hoạt tham chiếu được áp dụng cho các bảng. Cơ mà TRUNCATE không kích hoạt bất kỳ kích hoạt như thế nào trên bàn.Lệnh DELETE sa thải các bộ dữ liệu từng loại một ngoài bảng, theo thứ tự, chúng được xử lý. Mặc dù nhiên, TRUNCATE không hoạt động trên bộ dữ liệu từng chiếc một. Thay vào đó, TRUNCATE chuyển động trên trang dữ liệu tàng trữ dữ liệu bảng.XÓA có được khóa trên cỗ dữ liệu trước lúc xóa nó trong lúc đó, TRUNCATE dành được khóa bên trên trang dữ liệu trước khi xóa trang dữ liệu.TRUNCATE cấp tốc hơn so với lệnh DELETE.XÓA nhật cam kết giao dịch bạn dạng ghi cho mỗi bộ trong khi đó, nhật cam kết giao dịch bản ghi TRUNCATE cho mỗi trang dữ liệu.Khi các bạn xóa tài liệu bằng TRUNCATE, nó không lúc nào có thể được phục hồi trong những lúc đó, chúng ta có thể khôi phục dữ liệu của bản thân mình mà bạn đã xóa bởi lệnh DELETE.

Xem thêm: Cách Học Vi Tính Văn Phòng Nhanh Nhất, Thành Thạo Word Excel Kỹ Năng Máy Tính 4/2022

Phần kết luận:

Nếu bạn muốn tùy chỉnh xóa các bản ghi từ bảng thì bạn có thể sử dụng lệnh XÓA. Nếu bạn có nhu cầu làm trống bảng có nghĩa là bạn không muốn để lại ngẫu nhiên dữ liệu làm sao trong bảng thì hãy sử dụng lệnh TRUNCATE.