Tôi đã kế thừa một cơ sở dữ liệu lớn (SQLServer) với hàng trăm cột biểu thị số lượng của thứ này hay thứ khác. Đơn vị cho các giá trị này (ví dụ: "gallon", "inch", v.v.) được lưu trữ trong trường MS_Des mô tả thuộc tính mở rộng. Tôi tự hỏi nếu có một cách tốt hơn để lưu trữ thông tin này. Tôi cho rằng nó ổn cho mục đích tài liệu, nhưng sẽ khó thực hiện các tính toán chuyển đổi đơn vị mạnh mẽ dựa trên dữ liệu này. Tại thời điểm này tôi chưa sẵn sàng để thực hiện một thay đổi xâm lấn, nhưng nếu tôi có cơ hội để làm như vậy, thực tiễn tốt nhất được đề xuất trong vấn đề này là gì? Các tùy chọn, ngoài đỉnh đầu của tôi, có thể bao gồm:
- Thay đổi tên cột thành các đơn vị được bao gồm (ví dụ: "TotalVolumeInGallons". Điều này sẽ làm cho thông tin có sẵn hơn một chút, nhưng nó vẫn có vẻ yếu đối với tôi.)
- Thêm một cột "Đơn vị" riêng biệt để tương ứng với mỗi cột "Số tiền" (cột này có thể là nvarchar HOẶC nó có thể là khóa ngoại cho bảng Đơn vị riêng biệt giúp tính toán chuyển đổi đơn vị dễ dàng hơn. Mặt khác, thêm vào nhiều cột có thể tăng gấp đôi kích thước cơ sở dữ liệu của tôi - với dữ liệu dư thừa khủng khiếp.)
- Tạo một trường mới trong Thuộc tính mở rộng dành riêng cho các đơn vị. (Thật không may, tôi không nghĩ rằng đây có thể là khóa ngoại đối với bảng Đơn vị.)
- Có một ý tưởng khác mà tôi đang xem?
CẬP NHẬT: Sau khi đọc câu trả lời của @Todd Everett, một giải pháp khả thi đã xảy ra với tôi, vì vậy tôi sẽ tiếp tục và trả lời câu hỏi của riêng tôi. (Xem bên dưới)