DB2定义UUID

很多数据库都提供了UUID/GUID函数,可DB2却没有,不知道IBM怎么想的,好在DB2提供的了自定义函数接口,而且支持JAVA,既然没有,提供JAVA自定义函数,也好啊,用JAVA写个UUID太容易了,几行代码,下面自己弄个UUID吧

1. JAVA类

 1 import java.util.UUID;
 2 import COM.ibm.db2.app.UDF;
 3
 4 public class UDFUUID extends UDF{
 5     public static String uuid(){
 6         UUID uuid = UUID.randomUUID();
 7         //去掉中间的分隔
 8         String uid = uuid.toString().replaceAll("-", "");
 9         return uid;
10     }
11 }

2.把JAVA类放到DB2函数库目录下去,放到IBM\SQLLIB\FUNCTION下
3.用DB2带的jdk编译一下,
   IBM\SQLLIB\java\jkd\bin\javac UDFUUID.java
4.注册函数

1 drop function uuid;
2 create function uuid()
3   returns char(32)
4   fenced
5   variant
6   no sql
7   language java
8   parameter style java
9   external name ‘UDFUUID!uuid‘;

5.使用看看

values(uuid());

以后想怎么用就怎么用吧

时间: 2024-10-10 19:52:25

DB2定义UUID的相关文章

DB2 定义表字段

>[错误] 脚本行:1-1 --------------------------------------- "STATUS" is not valid in the context where it is used.. SQLCODE=-206, SQLSTATE=42703, DRIVER=3.53.71 更多例外 ... An error occurred during implicit system action type "2". Informatio

什么是UUID?

1.定义 UUID含义是通用唯一识别码 (Universally Unique Identifier),这 是一个软件建构的标准,也是被开源软件基金会 (Open Software Foundation, OSF) 的组织应用在分布式计算环境 (Distributed Computing Environment, DCE) 领域的一部分. 2.作用 UID 的目的,是让分布式系统中 的所有元素,都能有唯一的辨识资讯,而不需要透过中央控制端来做辨识资讯的指定.如此一来,每个人都可以建立不与其它人冲

Postgresql UUID的使用。

PostgreSQL内置uuid类型,性能不错,但是PostgreSQL默认没有安装uuid相关操作函数,需要手动导入. 导入uuid相关函数. psql -d dbname -U dbuser -f D:/develop/database/PostgreSQL/9.3/share/contrib/uuid-ossp.sql 定义uuid作为主键,并自动生成主键 REATE TABLE data_2014.test (   uid uuid NOT NULL DEFAULT uuid_gener

DB2之隔离级别

文章来源:http://blog.csdn.net/msoso_______1988/article/details/9248535 在DB2中,共有四种隔离级:RS,RR,CS,UR.以下对四种隔离级进行一些描述,同时附上个人做试验的结果.隔离级是影响加锁策略的重要环节,它直接影响加锁的范围及锁的持续时间.两个应用程序即使执行的相同的操作,也可能由于选择的隔离级的不同而造成加锁的结果不同. 在DB2中,共有四种隔离级:RS,RR,CS,UR.以下对四种隔离级进行一些描述. 读可靠性(RS-Re

数据库触发器DB2和SQL Server的异同

大部分数据库语句的基本语法是相同的,但具体要具体的每一种数据库,又有些不一样,例如触发器,DB2和SQL Server两种很大的不同. 例如DB2的一个触发器: CREATE TRIGGER EAS.trName NO CASCADE BEFORE insert //插入触发器 ON eas.T_user REFERENCING NEW AS N_ROW //把新插入的数据命名为N_ROW FOR EACH ROW MODE DB2SQL //每一行插入数据都出发此操作 BEGIN ATOMIC

DB2操作

第一章DB2开发基础 在进行DB2应用开发之前,了解DB2应用程序的结构,掌握相关概念,设置开发环境是很必要的.本章主要介绍这几个方面的内容. 1.1 DB2应用程序开发概述 1.1.1 程序结构 DB2应用程序包括以下几个部分: 1.声明和初始化变量 2.连接到数据库 3.执行一个或者多个事务 4.与数据库断开连接 5.结束程序 一个事务是一组数据库操作,在提交给数据库之前,必须确认完全成功执行.在嵌入式SQL应用程序中,当应用程序成功地连接到一个数据库时,一个事务就自动开始了,结束于执行一条

Arduino101学习笔记(十一)—— 蓝牙BLE

一.BLE技术简介 1.特性: BLE设备无法向下兼容(无法与蓝牙2.0\2.1\3.0通信),仅能与BLE设备通信.从Curie datasheet获知,curie的蓝牙芯片型号为NRF5182 2.BLE角色 在BLE协议中,有两个角色:中心设备(Central)和外围设备(Periphery). A.中心设备可以扫描附近的外围设备,而外围设备可以发出广播让中心设备扫描:       B.BLE连接中必须同时存在这两种角色的设备,同角色设备间不能相连:       C.中心设备可以同时连接多

Android的PVPlayer介绍

1 Player的组成 OpenCore的Player的编译文件是pvplayer/Android.mk,将生成动态库文件 libopencoreplayer.so.这个库包括了双方面的内容:一方是Player的engine(引擎),一方面是为 Android构件的Player,这实际上是一个适配器(adapter).engine的路径是engine/player;adapter的路径是 android. 2 Player Engine部分 OpenCore 的 Player Engine 具有

32_分库分表概述 配置mycat

版本:5.7.28 1.搭建mycat 分片服务器 数据库主机 192.168.4.54 使用db1库存储数据数据库主机 192.168.4.55 使用db2库存储数据主机 192.168.4.56 运行mycat服务,逻辑库名称为test,连接用户名为admin,密码123456主机 192.168.4.53 访问测试配置 1.1 在54(主机c1)和55(主机c2)上面分别创建db1和db2库mysql> create database db1;   //c1上面创建db1库mysql>