我看到http://www.ietf.org/rfc/rfc4122.txt
RFC 4122第4版的最大长度是多少?换句话说,它是否始终与从文档中获取的示例字符串值相同的最大长度? f81d4fae-7dec-11D0-a765-00a0c91e6bf6
我认为答案在于“UUID字符串表示的正式定义由以下ABNF提供”一节“
为了数据库表列(varchar),我想要第二个意见。
谢谢!
答案 0 :(得分:7)
根据RFC 4122:
UUID长128位,可以保证 空间和时间的独特性。
但是如果我们想知道字符串表示,我们需要检查ABNF:
UUID = time-low "-" time-mid "-"
time-high-and-version "-"
clock-seq-and-reserved
clock-seq-low "-" node
time-low = 4hexOctet
time-mid = 2hexOctet
time-high-and-version = 2hexOctet
clock-seq-and-reserved = hexOctet
clock-seq-low = hexOctet
node = 6hexOctet
hexOctet = hexDigit hexDigit
hexDigit =
"0" / "1" / "2" / "3" / "4" / "5" / "6" / "7" / "8" / "9" /
"a" / "b" / "c" / "d" / "e" / "f" /
"A" / "B" / "C" / "D" / "E" / "F"
我们总共有16个hexOctet。我们通过hexOctet计算2个字符加上字符的4倍(" - ")。无论版本,我们总共有16 * 2 + 4 = 36个字符。