db2 uuid

先编写java类:

 

import java.util.UUID;   //jdk1.5以上

import COM.ibm.db2.app.UDF;

 

public class UDFUUID extends UDF{

         public static String uuid(){

        UUID uuid = UUID.randomUUID();

        String uid = uuid.toString().replaceAll("-", "");

        return uid;

    }

}

 

然后用db2自带的jdk(比如D:\IBM\SQLLIB\java\jdk\bin编译成class

 

下面有两种方法:

第一种:

直接把UDFUUID.class拷贝到D:\IBM\SQLLIB\FUNCTION下。

然后执行:

drop function uuid;

create function uuid()

  returns char(32)

  fenced

  variant

  no sql

  language java

  parameter style java

  external name 'UDFUUID!uuid';

第二种:

把此类打成jar(最好用db2jdk打包),比如叫UUIDUDF.jar 并放在d盘,然后在命令行调用

Db2   call sqlj.install_jar('file:d:\customfunction.jar', 'UUIDUDFJAR')

然后执行

drop function uuid;

create function uuid()

  RETURNS char(32)

  LANGUAGE JAVA

  PARAMETER STYLE JAVA

  NOT DETERMINISTIC NO EXTERNAL ACTION NO SQL

  EXTERNAL NAME 'UUIDUDFJAR:UDFUUID.uuid';

 

 

最后像使用一般函数一样使用,比如select uuid() from 表名

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值