Tôi đã duyệt các bản SQL của một số CMS nổi tiếng, bao gồm Drupal 7, Wordpress (một số phiên bản khá cũ) và một số ứng dụng tùy chỉnh dựa trên Python.
Tất cả các bãi chứa dữ liệu có cờ chuỗi thay vì số nguyên. Ví dụ, tình trạng của một bài được biểu diễn dưới dạng published
, closed
hay inherit
hơn 1
, 2
hoặc 3
.
Tôi có kinh nghiệm khá hạn chế trong việc thiết kế cơ sở dữ liệu và tôi chưa bao giờ vượt qua các SQL đơn giản, nhưng tôi luôn được dạy rằng tôi nên sử dụng cờ số / số nguyên cho dữ liệu như thế này. Rõ ràng là tinyint
tiêu thụ ít không gian trong cơ sở dữ liệu hơn, ví dụ , varchar(9)
.
Vậy tôi còn thiếu gì? Đây không phải là một sự lãng phí lưu trữ dữ liệu và dự phòng dữ liệu? Sẽ không duyệt, tìm kiếm và lập chỉ mục nhanh hơn một chút nếu các cột này sử dụng số nguyên thay vì chuỗi?
char
s? Làm thế nào không hiệu quả!" đã lỗi thời so với năm 2015.