【发布时间】:2011-01-25 03:05:47
【问题描述】:
鉴于我有一个包含车辆信息的表格,其中一条信息是 VehicleType(通常为 6-20 个字符),那么设计这样的表格的技术原因是什么:
车辆
车辆ID
VehicleTypeID (INT)(与 VehicleTypes 表中的一个 INT 相关)
与此相反:
车辆
车辆ID
车辆类型 (NVARCHAR(50))
我能想到几个……
1) 如果车辆类型的描述发生变化,只需要在一个记录中更改。
2) 存储 INT 比 NVARCHAR 占用更少的空间(当然,取决于字符串长度,特别是如果我更改为 TINYINT。)
几个问题...
1)任何索引注意事项?我假设如果我要在 VehicleType 上建立索引,如果我使用 INT 而不是 NVARCHAR,它会更快并且占用更少的空间。
2) 任何查询优化问题?我知道前一种方法需要 JOIN,但我不认为这会对 SQL 2008 造成负担。
我将捍卫自己的立场,并希望获得尽可能多的信息。
感谢您抽出宝贵时间回复。
谢谢,
达维斯
【问题讨论】:
标签: sql sql-server database-design sql-server-2008 data-modeling