Sql server 2008 sql server不能将int 00X输入为3位数字,而只能输入1位数字

Sql server 2008 sql server不能将int 00X输入为3位数字,而只能输入1位数字,sql-server-2008,Sql Server 2008,我正在使用SQLServer2008。我想将我的PK保留在001002等表格中。SQL女士不允许我这样做。如何阻止它将001转换为1 使用varchar数据类型而不是Int数据类型 或 将Pk保持为int,在查询中使用时,将其转换为varchar,然后在其上使用左填充00X Declare @id int Set @id = 1 Select RIGHT(REPLICATE('0',2) + CAST(@id AS VARCHAR(3)),3) 使用varchar而不是int,并管理您自己增

我正在使用SQLServer2008。我想将我的PK保留在001002等表格中。SQL女士不允许我这样做。如何阻止它将001转换为1

使用varchar数据类型而不是Int数据类型

将Pk保持为int,在查询中使用时,将其转换为varchar,然后在其上使用左填充00X

Declare @id int
Set @id = 1

Select RIGHT(REPLICATE('0',2) + CAST(@id AS VARCHAR(3)),3)

使用varchar而不是int,并管理您自己增加值varchar以外的任何方法?为什么要将PKs存储为XXX?请尝试并根据需要进行更改。