我正在使用PHP生成UUID,根据函数find here
现在我想将其存储在MySQL数据库中.存储UUID v4的最佳/最有效的MySQL字段格式是什么?
我现在有varchar(256),但我很确定这比需要的要大得多.我已经找到了很多几乎可以回答的答案,但它们对于所指的UUID的形式通常是模棱两可的,所以我想知props 体的格式.
我正在使用PHP生成UUID,根据函数find here
现在我想将其存储在MySQL数据库中.存储UUID v4的最佳/最有效的MySQL字段格式是什么?
我现在有varchar(256),但我很确定这比需要的要大得多.我已经找到了很多几乎可以回答的答案,但它们对于所指的UUID的形式通常是模棱两可的,所以我想知props 体的格式.
如果你想要完全合身的话,可以将其储存为VARCHAR(36)
,或者以同样的存储成本储存为VARCHAR(255)
.这里没有理由对字节大惊小怪.
记住,VARCHAR
个字段等于variable length,所以存储成本与字段中实际包含的数据量成正比,而不是与字段中可能包含的数据量成正比.
将其存储为BINARY
非常烦人,这些值无法打印,在运行查询时可能会显示为垃圾.很少有理由使用字面二进制表示法.人类可读的值可以复制粘贴,并且易于处理.
其他一些平台,比如Postgres,有一个合适的UUID列,它在内部以更紧凑的格式存储,但显示为人类可读的,因此您可以充分利用这两种方法.