Mysql 为现有数据生成Guid
Mysql 为现有数据生成Guid
GUID 全局唯一标识符(GUID,Globally Unique Identifier)是一种由算法生成的二进制长度为128位的数字标识符。GUID主要用于在拥有多个节点、多台计算机的网络或系统中。在理想情况下,任何计算机和计算机集群都不会生成两个相同的GUID。GUID 的总数达到了2128(3.4×1038)个,所以随机生成两个相同GUID的可能性非常小,但并不为0。所以,用于生成GUID的算法通常都加入了非随机的参数(如时间),以保证这种重复的情况不会发生。
在数据库的设计中有时将字段设置成GUID类型,并作为主键,GUID 的生成可以在数据库中生成
在数据库中生成 GUID
1.SQL Server
在 SQL Server 中使用 NEWID(),来生成一个GUID,语法如下:
SELECT NEWID()
2. MySQL
在 MySQL 中使用UUID 来生成一个 GUID,语法如下:
SELECT UUID();
3. Oracle
在 Oracle中使用UUID 来生成一个 GUID,语法如下:
SELECT SYS_GUID() FROM DUAL;
4. PostgreSQL
在 PostgreSQL中使用UUID 来生成一个 GUID,PostgreSQL 支持 UUID(Guid) 类型,但是却不能直接去用,因为默认安装的 postgresql 是不带 UUID 函数的,操作如下:
第一个命令 create extension "uuid-ossp" 是安装 uuid_generate_v4() 扩展函数;
第二个命令 select uuid_generate_v4() 是检验函数,下面是生成的结果。
例子(mysql为例):其他数据库只需要更换括号在中的查询即可
UPDATE Students SET id=(SELECT UUID());
漫思