发布网友 发布时间:2022-04-08 04:05
共5个回答
懂视网 时间:2022-04-08 08:26
OR REPLACE FUNCTION NEWID RETURN VARCHAR2 IS GUID VARCHAR2(32); BEGIN GUID:=SYS_GUID(); RETURN ‘{‘ ||SUBSTR(GUID,1,8) ||‘-‘||SUBSTR(GUID,9,4) ||‘-‘||SUBSTR(GUID,13,4) ||‘-‘||SUBSTR(GUID,17,4) ||‘-‘||SUBSTR(GUID,21,12) ||‘}‘; END NEWID;然后就可以像在SqlServer中一样用了:
SELECT NEWID() AS ID FROM DUAL --返回结果是类似这样的值:{1B869DEE-BF1A-0D8C-E050-BD0A9E806700}
在Oracle数据库中实现SqlServer数据库中的NewID()函数功能
标签:
热心网友 时间:2022-04-08 05:34
要用到NEWID()生成的36位数据作为主键?这是为何,36位不能转化成32位吧,直接转换空间不足的,要么用SUBSTRING或则LEFT,RIGHT截取。SELECT热心网友 时间:2022-04-08 06:52
select left(newid(),32)热心网友 时间:2022-04-08 08:27
select replace(newid(),'-','')热心网友 时间:2022-04-08 10:18
你们俩太有意思了,离那么近还用qq问答,我。。。。。。