axd*_*dna 0 sql-server datatypes physical-design sql-server-2019
我的应用程序中有列的值始终为 4 位数字,例如“0100”或“1230”。示例之一可能是Merchant Category Code。
暂时,我已经将这个列的类型设置为char (4). 我有很多这种类型的专栏。这些类型的列之一也包含在非聚集UNIQUE索引中。我想为这种类型的专栏建立一种方法。
通过在应用程序中添加或 添加到开头来使用char (4)或可能更好吗?smallint' '0
包含这些列的表已分区,将包含大约 3 亿条记录。UPDATE可能不会在这种类型的列上执行。它们也不会出现在WHERE(有时可能出现在临时报告中)。
我应该选择哪种数据类型?
它就像一个邮政编码,它可以是数字,但你必须存储前导零
确切地。我在考虑在性能方面什么是更好的方法。还必须考虑到,如果我将其存储为smallint,应用程序代码必须将其解析为字符串并添加前导零。
该标准明确表示“四位代码”,在我看来,这意味着它应该始终包含 4 个数字字符,这反过来意味着适当的数据类型是char(4).
如果要确保代码值符合 ISO 18245,请将其char(4)与检查约束一起存储在数据库中。
| 归档时间: |
|
| 查看次数: |
222 次 |
| 最近记录: |