数据库中之前用 Varchar(50) 来存放Guid,但有些时候为了方便记忆直接写数字。
如:301,302,303 ,用Varchar(50) 来存放这些当然是没有问题的。
但新版程序主键都改为UniqueIdentifier类型的字段,输入301,302,303 这种数据当然是会报错的。
有没有办法直接转换 301 ,302,303
为
00000000-0000-0000-0000-000000000301
00000000-0000-0000-0000-000000000302
00000000-0000-0000-0000-000000000303
求代码
sql语句过滤吧。
你是说输入的时候还是 301 , 插入数据库变GUID吗.?
好办啊,
DECLARE @int VARCHAR(50)
SET @int = '301'
IF(LEN(@int)<=5)
BEGIN
SET @int = LEFT( '00000000-0000-0000-0000-000000000000',36-LEN(@int))+@int
END
PRINT(@int)