如何计算自定义ID以增长到无穷大 [英] How to compute custom id to grow to infinity
本文介绍了如何计算自定义ID以增长到无穷大的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!
问题描述
嗨
我有一个用户定义函数,如下所示,使用PK Id作为指南来计算自定义ID
CREATE功能[dbo]。[CustomeId](
@Prefix NVARCHAR(10),
@Id INT,
@Length INT,
@PaddingChar CHAR(1)='0'
)
RETURNS NVARCHAR(MAX)
AS
BEGIN
RETURN(
SELECT @Prefix + RIGHT(REPLICATE(@ PaddingChar,@)长度)+ CAST(@Id as nvarchar(10)),@ Length)
)
END
在我的sql表的计算列规范中,我有:
([dbo]。[CustomeZoneId]('GH-', CONVERT([nvarchar](10),[Id],(0)),(10),'0'))
并且输出是GH-0000000001,GH-999999999
但我希望它能够在PK Id旁边增长到无穷大。像GH-1到无限的东西
我尝试了什么:
([dbo]。[CustomeZoneId]('GH - ',CONVERT([nvarchar](10),[Id],(0)),(10),'0'))
解决方案
使用guid?TP://stackoverflow.com/questions/1435908/c-sharp-guid-and-sql-uniqueidentifier
Hi
I have a user define function as below, to compute a custom Id using PK Id as guide
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
In my sql table's Computed Column specification I have:
([dbo].[CustomeZoneId]('GH-',CONVERT([nvarchar](10),[Id],(0)),(10),'0'))
and out put is GH-0000000001 , GH-999999999
but I want it to be able to grow to infinity along side the PK Id. something like GH-1 to infinity
What I have tried:
([dbo].[CustomeZoneId]('GH-',CONVERT([nvarchar](10),[Id],(0)),(10),'0'))
解决方案
Use a guid?tp://stackoverflow.com/questions/1435908/c-sharp-guid-and-sql-uniqueidentifier
这篇关于如何计算自定义ID以增长到无穷大的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!
查看全文