Sqlserver
 sql >> Cơ Sở Dữ Liệu >  >> RDS >> Sqlserver

Cách bật tính năng nén trên bảng hiện có trong SQL Server (T-SQL)

Bạn có thể sử dụng ALTER TABLE để bật tính năng nén trên bảng hiện có trong SQL Server.

Để làm điều này, bạn cần sử dụng REBUILD WITH trong khi chỉ định loại nén mong muốn của bạn.

Ví dụ

Đây là một ví dụ để chứng minh.

ALTER TABLE Cats
REBUILD WITH (DATA_COMPRESSION = ROW);

Trong trường hợp này, tôi đã tạo lại bảng bằng cách sử dụng nén hàng.

Phần sau sẽ xây dựng lại nó bằng tính năng nén trang.

ALTER TABLE Cats
REBUILD WITH (DATA_COMPRESSION = PAGE);

Áp dụng tính năng nén cho một phân vùng duy nhất

Nếu bảng của bạn được phân vùng, bạn có thể chỉ định phân vùng đó để xây dựng lại bằng tính năng nén.

ALTER TABLE Cats
REBUILD PARTITION = 1 WITH (DATA_COMPRESSION = ROW);

Cách loại bỏ nén

Bạn có thể loại bỏ phần nén bằng cách sử dụng NONE dưới dạng kiểu nén.

ALTER TABLE Cats
REBUILD WITH (DATA_COMPRESSION = NONE);

Bảng Columnstore

Nếu bạn đang sử dụng bảng columnstore (các bảng được lưu trữ bằng chỉ mục columnstore được phân cụm), thì các kiểu nén ở trên không áp dụng. Trong trường hợp này, các tùy chọn nén của bạn là COLUMNSTORECOLUMNSTORE_ARCHIVE .

Hạn chế / Hạn chế

Không thể bật bảng hệ thống để nén.

Nếu bảng là một heap (bảng không có chỉ mục được phân cụm), thì thao tác xây dựng lại cho ONLINE chế độ sẽ là một luồng. Đối với hoạt động xây dựng lại heap đa luồng, hãy sử dụng OFFLINE chế độ.

Ngoài ra, khi sử dụng các bảng được phân vùng, các hạn chế sau sẽ được áp dụng:

  • Bạn không thể thay đổi cài đặt nén của một phân vùng nếu bảng không có chỉ mục không được đánh dấu.
  • ALTER TABLE <table> REBUILD PARTITION ... cú pháp xây dựng lại phân vùng được chỉ định.
  • ALTER TABLE <table> REBUILD WITH ... cú pháp xây dựng lại tất cả các phân vùng.

  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Lỗi trong SQL Server khi nhập tệp CSV mặc dù varchar (MAX) được sử dụng cho mỗi cột

  2. Thiết lập cơ sở dữ liệu SQL Server cục bộ

  3. Cách lưu trữ hình ảnh trong cột bảng cơ sở dữ liệu SQL Server

  4. SQL Ràng buộc duy nhất trên nhiều bảng

  5. Chuyển đổi không thành công khi chuyển đổi ngày và / hoặc giờ từ chuỗi ký tự trong khi chèn ngày giờ