一、简单的方法

此种方法在快速大量生成时,会有重复

SELECT concat (hex (RAND ()), hex (RAND ())) as uuid FROM SYSIBM.SYSDUMMY1; --32位大写

select lower(hex(RAND())||hex(RAND())) as uuid from sysibm.sysdummy1;--32位小写

二、自定函数,调用java生成uuid

import java.util.UUID;

import COM.ibm.db2.app.UDF;

public class UDFUUID extends UDF {

    public static String uuid() {
return UUID.randomUUID().toString().replaceAll("-", "");
} }

然后用db2自带的jdk(比如$HOME/sqllib/java/jdk/bin)编译成class

查看DB2自带的jdk_path

$ db2 get dbm cfg | grep -i jdk_path

Java Development Kit installation path       (JDK_PATH) = /home/db2inst4/sqllib/java/jdk64

/home/db2inst4/sqllib/java/jdk64/bin

(/opt/IBM/db2/V9.7/java/jdk64/bin)

/home/db2inst4/sqllib/java/jdk64/bin/java -c /home/myUserName/UDFUUID.java

2.创建自定义函数

第一种:

直接把UDFUUID.class拷贝到$HOME/sqllib/function下。

实例用户cp /home/myUserName/UDFUUID.class /home/db2inst4/sqllib/function/UDFUUID.class

不用重启数据库

然后执行:

drop function uuid;
create function uuid()
returns char(32)
fenced
variant
no sql
language java
parameter style java
external name 'UDFUUID!uuid';

验证:

values uuid();

OK了!

引用地址:https://www.iteye.com/blog/happyqing-2391526

DB2通过java代码生成自定义uuid()函数的更多相关文章

  1. db2使用Java存储过程实现MD5函数

    1.数据库版本 2.Java脚本 import java.security.MessageDigest; import COM.ibm.db2.app.UDF; public class MD5UDF ...

  2. Java进阶SQL函数、网页定时刷新与自定义JSTL函数

    一.SQL函数 能够在SQL语句中调用的函数(方法) ,用来实现一些小功能 聚合函数 能够把多行数据聚合成一个值(统计) count()    计数,计算数据条数 max()      计算最大值 m ...

  3. 自定义el函数

    1.1.1 自定义EL函数(EL调用Java的函数) 第一步:创建一个Java类.方法必须是静态方法. public static String sayHello(String name){ retu ...

  4. ORACLE 自定义聚合函数

    用户可以自定义聚合函数  ODCIAggregate,定义了四个聚集函数:初始化.迭代.合并和终止. Initialization is accomplished by the ODCIAggrega ...

  5. 权限管理之基于ACL的实现:自定义JSTL函数实现即时认证

    实现即时认证(即只有拥有相应的权限,才能做相应的操作) 经常用在,在JSP页面上,调用JSTL自定义函数做判断,显示相应的菜单或者功能按钮,比如只有管理员登陆时才显示“删除”按钮,从而完成权限的即时认 ...

  6. 自定义JSTL函数标签(一)

    jstl标签库的配置 * 将jstl.jar和standard.jar拷贝到WEB-INF/lib下(如果使用el表达式,不用拷贝这两个jar) 注意:jstl必须在能够支持j2ee1.4/servl ...

  7. EL函数和自定义EL函数

    简介 EL原本是JSTL1.0中的技术(所以EL和JSTL感情如此好就是自然的了),但是从JSP2.0开始,EL就分离出来纳入了JSP的标准了.但是EL函数还是和JSTL技术绑定在一起.下面将介绍如何 ...

  8. [转载]MySQL UUID() 函数

    目录 目录 一 引子 二 MySQL UUID() 函数 三 复制中的 UUID()四 UUID_SHORT() 函数 3.1 实验环境介绍 3.2 搭建复制环境 3.3 基于 STATEMENT 模 ...

  9. 关于java实现自定义曲线拟合的研究

    项目需要拟合曲线,使用java实现.采用了apache-commons-math3实现自定义的曲线. 作为apache开源的搞数学计算的超强的库,一直不受市场重视.为啥呢?经过研究,使用java这个强 ...

  10. Atiitt 使用java语言编写sql函数或存储过程

    Atiitt 使用java语言编写sql函数或存储过程 1.1. java编写sql函数或存储过程的机制1 1.2. Java编写sp的优点1 1.3. 支持java源码,class文件,blog f ...

随机推荐

  1. GIT 上传文件出错:fatal: Could not read from remote repository. 解决方案

    问题 git push -u origin master 执行后报错 fatal: Could not read from remote repository.  解决方案 1. git执行 git ...

  2. shell中;与&&的区别

    &&  后一个命令执行需要依赖前一个命令执行成功 :各个命令都会依次执行,无论成功与否

  3. 第七章 mysql的备份与恢复

    mysql的备份与恢复 一  mysql 备份的类型 冷备份:关闭数据.停止业务温备份:加锁备份热备份:在先备份,不会影响到也正常运行 二 备份方式 1. 逻辑备份:基于SQL语句的备份 (1)mys ...

  4. vite 路径别名 @ 配置

    vite.config.ts resolve.alias 配置 const path = require('path'); import { defineConfig } from 'vite'; i ...

  5. spider_使用request库进行get传参

    """使用requests库 在这里爬取百度搜索的端午节页面(使用request库进行get传参)"""import requestsimp ...

  6. php中self和$this还有parent的区别

    1.self代表类,$this代表对象 2.能用$this的地方一定使用self,能用self的地方不一定能用$this 3.parent只能调用静态属性,并且可以调用父类中公有和受保护的方法 静态的 ...

  7. flutter TextField 高度问题(包括使用maxlines自适应高度以及改变textfield组件自定义高度)

    先上代码. Container( color: Colors.blue, constraints: BoxConstraints( minHeight: 10, maxHeight: 20 ), ch ...

  8. noi 1.1 4 保留三位的浮点数

    描述 输入一个单精度浮点数,保留3位小数输出这个浮点数. 输入 只有一行,一个单精度浮点数. 输出 也只有一行,输入的单精度浮点数. 样例输入 12.34521 样例输出 12.345 题意 就是输入 ...

  9. Linux 使用ssh服务管理远程主机

    配置网络服务 配置网卡的4种方法: 创建网络会话 RHEL和CentOS系统默认使用NetworkManager来提供网络服务,这是一种动态管理网络配置的守护进程,能够让网络设备保持连接状态.可以使用 ...

  10. sourceTree工具使用方法

    https://www.cnblogs.com/tian-xie/p/6264104.html