Trong khi thiết kế bảng, đôi khi chúng ta cần quan tâm đến kích thước mà bảng sẽ được cài đặt thực tế trên máy tính, để nhằm tránh lãng phí không gian lưu trữ. Ví dụ, lưu trữ một số nguyên 9999 dạng ký tự (CHARACTER) cần 4 byte, trong khi đó nếu nó được lưu trữ bằng số nguyên (INTEGER) thì chỉ cần 2 byte là đủ diễn tả các giá trị từ 0 đến 65536. Việc lựa chọn kiểu dữ liệu nào cho phù hợp được mô tả trong mục 4.3.
Ngoài ra, chúng ta có thể tiết kiệm đáng kể không gian lưu trữ đồng thời tăng tính toàn vẹn dữ liệu bằng bảng tìm kiếm (lookup table). Ví dụ, bảng quan hệ NHÂNVIÊN (Mã_NV, Tên_NV, Đường, T.Phố, Bang, Vùng) trong hình 4.1 có trường địa chỉ độ dài cần thiết để lưu số liệu là 40 ký tự. Như vậy những nhân viên ở trên cùng một tuyến đường (ví dụ, Plainfield Ave) sẽ có chung một tên đường trong bảng. Điều này làm tốn cả không gian lưu trữ cho các tên đường trùng nhau lẫn công sức để bảo đãm rằng tên của một con đường đều phải giống nhau (đặc biệt là khi có một vài con đường được chính quyền đặt tên mới).
Ví dụ minh họa cách sử dụng bảng tìm kiếm vẽ trong hình 4.9. Kỹ thuật này sử dụng 1 trường mã hóa loại số nguyên INTEGER (St_code như trong ví dụ) thay cho trường dữ liệu loại CHARACTER trong bảng (Street). Độ dài của St_code phụ thuộc vào số đường tối đa có thể có trong danh sách (hoặc trong nước), giả sử là 2000 đuờng thì độ dài cần thiết của St_code là 2 byte (0-65535).
Tuy có nhiều lợi ích đáng kể (ví dụ nếu tên đường bị thay đổi thì chỉ cần sửa một mẫu tin trong bảng tìm kiếm), bảng tìm kiếm có một vài khuyết điểm là người cập nhật dữ liệu phải dùng chuơng trình trợ giúp phiên dịch các mã (Mã_đường) thành dạng quen thuộc (TênĐường), và bảng tìm kiếm phải được nhập dữ liệu trước khi nhập dữ liệu cho bảng chính.
Mã_NV Tên_NV MãĐường MãĐường TênĐường
2 bytes 2 bytes 40 bytes
20 bytes 3 bytes 100 150 190 Magaret Simpson Susan Martin Lorenzo Davis 251 145 251 251
145 Plainfield Ave Englewood Cliffs
NHÂNVIÊN TÊNĐƯỜNG
4.2 THIỀT KẾ CƠ SỞ DỮ LIỆU 4.2.1Cơ sở dữ liệu