Java uuid生成_C#/mysql/sql guid生成算法和方法
程序员文章站
2022-02-07 12:24:44
...
UUID是一个由4个连字号(-)将32个字节长的字符串分隔后生成的字符串、总共36个字节长、比如:550e8400-e29b-41d4-a716-446655440000、其中值是 0-9 或 a-f 范围内的一个十六进制的数字
GUID 是微软对UUID这个标准的实现、一般用16进制表示、算法的核心思想是结合机器的网卡、当地时间、一个随机数来生成GUID
从理论上讲、如果一台机器每秒产生10000000个GUID、则可以保证(概率意义上)3240年不重复、UUID是由开放软件基金会(OSF)定义的、UUID还有其它各种实现、不止GUID一种、比如我们这里在Java中用到的
1、Java UUID生成
在网上查资料才知道在Java中、变成了UUID、创建方式也出奇简单、同样适用于Android、代码如下
System.out.println(java.util.UUID.randomUUID().toString());
2、C# GUID生成
C#的guid是微软自己封装的、获取也很简单、代码如下
Guid guid = Guid.NewGuid(); Console.Writeln(guid.ToString());
3、T-SQL GUID生成
T-SQL生成GUID直接使用NewId()方法、代码如下
insert into table1(id,name,...) values(NewID(),'张三',...);
4、SQL Server GUID生成
以前开发SQL Server数据库将表定义中将列类型指定为uniqueidentifier、则列的值就为 GUID 类型
5、MySql GUID生成
在mysql中一般我们用CHAR(36)或者BINARY(36)类型来存储uuid、函数如下
SELECT UUID();