我们postgresql数据库在插入数据时,需要生成uuid当作主键,这里分享下做法:
1,也可以直接自己拼接一下,但这不建议在高并发下使用,以下三个语句都可以生成
语句1:
SELECT uuid_in(md5(random()::text || now()::text)::cstring);
语句2:
SELECT uuid_in(md5(random()::text || clock_timestamp()::text)::cstring);
语句3:
SELECT md5(random()::text || clock_timestamp()::text)::uuid;
2、以上的uuid都是在格式化字符串成uuid,只是加了横线-,
如果要生成32位的,只需要把uuid_in或::uuid去掉就可以了,语句如下:
SELECT REPLACE( md5(random()::text || clock_timestamp()::text),'-','');