我有一个用户定义函数,如下所示,使用PK Id作为指南计算自定义ID
CREATE FUNCTION [dbo].[CustomeId] (
@Prefix NVARCHAR(10),
@Id INT,
@Length INT,
@PaddingChar CHAR(1) = '0'
)
RETURNS NVARCHAR(MAX)
AS
BEGIN
RETURN (
SELECT @Prefix + RIGHT(REPLICATE(@PaddingChar, @Length) + CAST(@Id as nvarchar(10)), @Length)
)
END
在我的sql表的计算列规范中,我有:
([dbo].[CustomeZoneId]('GH-',CONVERT([nvarchar](10),[Id],(0)),(10),'0'))
和out put如下:
GH-0000000001 , GH-999999999, etc
但我希望它能够在PK Id旁边增长到无限远。类似的东西:
GH-9, GH-99, GH-999 to infinity
答案 0 :(得分:0)
这与C#无关,而与SQL Server无关。
要回答你的问题,没有这样的数据类型可以增长到无限,但是如果你想要最大限度你可以用户
nvarchar[max]
希望这会有所帮助..