如何在SQL Server 2012中的列中使用Mask

时间:2018-02-01 09:48:00

标签: sql-server sql-server-2012

  

是否可以在列(int或varhchar数据类型)中添加掩码   SQL Server 2012?

我有一个'Main_Code'列,我想保存代码,如'01'或'0001'而不是'1'。我读了有关动态数据掩码,但发现它只在SQL Server 2016中可用

那么,我应该在SQL Server 2012中为这种格式做些什么呢? 是否有必要使用'varchar'作为掩码,或者也可以使用'int'?

1 个答案:

答案 0 :(得分:3)

'0001'不是整数,要存储此类数据,您需要将VARCHAR作为数据类型。

案例1:如果您无法将表的数据类型从int更改为varchar,则在这种情况下,您只需要在应用程序中进行格式化。让数字以整数存储,并在前端执行所需的格式。

注意:如果只是格式化,则不应更改数据类型。让它只是int,你在前端或select语句中进行格式化。

案例2:如果您可以将数据类型更改为VARCHAR,那么您可以在insert语句中使用以下语句。

.single()

如果您希望这是自定义自动生成的序列,请按照给定here

的示例进行操作