当前位置:   article > 正文

Oracle中实现SQL中的newid() 生成GUID_oracle数据库如何使用newid

oracle数据库如何使用newid

大家知道sql中可以使用newid()生成guid

ORACLE也有相同的函数,sys_guid() ,但是生成的格式跟SQL中的有区别。

而且生成的是16位RAW格式的,用某些工具比如Navicat直接select乱码,pl/sql则不会乱码。

还是自己写个函数丢ORACLE数据库中吧

  1. CREATE OR REPLACE FUNCTION newid RETURN VARCHAR2
  2. IS
  3. guid VARCHAR2 (50);
  4. BEGIN
  5. guid := (RAWTOHEX(sys_guid()));
  6. RETURN substr(guid,1,8)||'-'||substr(guid,9,4)||'-'||substr(guid,13,4)||'-'||substr(guid,17,4)||'-'||substr(guid,21,12);
  7. END newid;

生成的跟SQL中的完全一模一样。函数名也一样,省得修改程序。

声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/weixin_40725706/article/detail/479905
推荐阅读
相关标签
  

闽ICP备14008679号