这是一个简单的问题..我在sql server中有两个语句:
Case 1) select cast('d8b673a9-816c-4f45-b446-158b3e65fb45' as uniqueidentifier)
**Result in this case:**
D8B673A9-816C-4F45-B446-158B3E65FB45
Case 2) select cast('g448d9e5-1499-25dc-er45-254717c234g8' as uniqueidentifier)
**Result in this case:**
Conversion failed when converting from a character string to uniqueidentifier.
正如你所看到的那样,两个guid之间显然没有区别..
答案 0 :(得分:2)
GUID不应包含'r'
或'g'
,只能包含十六进制数字,这就是您的第二个字符串不会被投射的原因。
请参阅此处的信息:
https://en.wikipedia.org/wiki/Hexadecimal
在数学和计算中,十六进制(也是基数16或十六进制)是一个位数数字系统,其基数或基数为16.它使用十六个不同的符号,最常用符号0-9表示零到零的值九,A,B,C,D,E,F(或者a,b,c,d,e,f)表示十到十五的值。