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

Không gian được sử dụng bởi null trong cơ sở dữ liệu

Lưu trữ NULL trong một cột không gây tốn kém hoặc tiết kiệm dung lượng. Đối với dữ liệu có độ dài cố định, toàn bộ không gian vẫn được dự trữ.

Mặt khác, dữ liệu có độ dài thay đổi chỉ yêu cầu độ dài của dữ liệu cộng với chi phí để lưu trữ độ dài thực. Ví dụ:một VARCHAR (n) sẽ sử dụng 2 byte dữ liệu để chỉ ra độ dài thực tế đó, vì vậy không gian lưu trữ được yêu cầu luôn là n + 2.

Ngoài ra, cần lưu ý rằng nếu SET ANSI_PADDING ON, một char (n) với giá trị NULL sẽ hoạt động như một VARCHAR (n).

Không có vấn đề gì, bạn sẽ không nhận ra "tiết kiệm" không gian từ việc lưu trữ NULL khi sử dụng SQL Server 2000 hoặc SQL Server 2005. SQL Server 2008 giới thiệu khái niệm cột thưa thớt, có thể tiết kiệm cho các cột chủ yếu là NULL.



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. SQL Server 2008:Vô hiệu hóa chỉ mục trên một phân vùng bảng cụ thể

  2. Kích hoạt SQL Server:Kích hoạt DML

  3. Lưu trữ các dấu ngoặc kép trong biến varchar SQL Server 2008

  4. Đồng bộ hóa một chiều theo thời gian thực từ sql-server đến một kho lưu trữ dữ liệu khác

  5. Làm cách nào để định cấu hình pyodbc để chấp nhận chính xác các chuỗi từ SQL Server bằng freeTDS và unixODBC?