详细解决方案
江湖救急db2 function 脚本执行的有关问题
热度:9316 发布时间:2013-02-26 00:00:00
两个创建function的脚本,db2cmd下面都执行都成功了,
db2 -td@ -vf o2.sql
db2 -tvf create_udf.sql
但是控制中心里面没有啊!
脚本一02.sql:
----部署存储过程和用户自定义函数
@
CONNECT TO GWFX
@
SET CURRENT SCHEMA 'db2admin'
@
SET CURRENT PATH SYSIBM,SYSFUN,SYSPROC,SYSIBMADM,DB2ADMIN
@
------------
--部署用户函数(2个)
------------
@
DROP FUNCTION FUN_DIV (DECIMAL(10, 2), DECIMAL(10, 2))
@
DROP FUNCTION FUN_INLIST (VARCHAR(1000), VARCHAR(20000))
@
CREATE FUNCTION FUN_DIV ( N1 DECIMAL(10,2), N2 DECIMAL(10,2))
RETURNS DECIMAL(10,4)
LANGUAGE SQL
--此函数用在存储过程中,处理分母为0的情况
--N1为分子,N2为分母
BEGIN ATOMIC
DECLARE N DECIMAL(10,2) DEFAULT 1.0000;
DECLARE TEMP DECIMAL(10,4) DEFAULT 0.0000;
IF N2 <>0 THEN
SET N=N2;
SET TEMP=round (N1/N,4);
ELSE
SET TEMP=0.0000;
END IF;
RETURN TEMP;
END
@
CREATE FUNCTION FUN_INLIST ( S1 VARCHAR(1000), S2 VARCHAR(20000))
RETURNS INTEGER
LANGUAGE SQL
NO EXTERNAL ACTION
--此函数处理s2中ids(list)是否 包含s1中各id的情况
--s1="id1,id2",s2="id1,id2...."
--返回大于0包含,0 不包含
BEGIN ATOMIC
DECLARE V_TEMP VARCHAR(2000);--
DECLARE V_POS INT;--
DECLARE V_LENGTH INT;--
DECLARE V_CURRENT VARCHAR(2000);--
DECLARE V_STR VARCHAR(32);--
DECLARE V_COUNT INT;--
DECLARE V_RESULT INTEGER DEFAULT 0;
SET V_TEMP = ','||S1||',' ; --
SET V_LENGTH = LENGTH(V_TEMP); --
WHILE V_LENGTH>0 DO
SET V_POS = POSSTR(V_TEMP,','); --
SET V_CURRENT = SUBSTR( V_TEMP, 1, V_POS-1 ); --
SET V_TEMP = SUBSTR( V_TEMP, V_POS+1 ); --
SET V_LENGTH = LENGTH(V_TEMP); --
--最后一个字段,不再截取
IF(LENGTH(V_CURRENT)>0) THEN
SET V_STR = ','||V_CURRENT||',';--
SET V_RESULT= LOCATE (V_STR ,','||S2||',');
IF (V_RESULT >0) THEN
SET V_LENGTH =0;
END IF;
END IF;
END WHILE;
RETURN V_RESULT;
END
@
脚本2(create_udf.sql):
drop function app_inlist(BIGINT,VARCHAR(20000));
drop function app_inlist(VARCHAR(1000),VARCHAR(20000));
drop function app_div;
call sqlj.remove_jar('APPUDF');
--call sqlj.install_jar('C:/a/appudf.jar', 'APPUDF');
call sqlj.install_jar('file:C:/a/appudf.jar', 'APPUDF');
call sqlj.refresh_classes;
CREATE FUNCTION app_inlist(BIGINT, VARCHAR(20000))
RETURNS INTEGER
EXTERNAL NAME 'APPUDF:cn.gov.pbc.njv.platform.dao.AppUDF!inlist_l'
LANGUAGE JAVA
PARAMETER STYLE JAVA
NOT DETERMINISTIC
NO SQL
EXTERNAL ACTION;
CREATE FUNCTION app_inlist(VARCHAR(1000), VARCHAR(20000))
相关解决方案
- jquery中$(document).ready(function()是jquery开始要写的一句话,javaWeb项目中,这句话什么时候开始实施呢
- 求解$.post(url,{},function(){});回调函数中怎么使用判断语句
- (function(){//coding.})() 请教这是什么意思
- fatal error; call to a member function query() on a non-object异常求回答啊 php+sqlite
- function 施行 *action
- C++ CLI global function 有关问题 分不多了 多谢
- Function(a,b)能在特定情况下直接用Function不带括号和参数表示么?该如何解决
- 江湖救急 js如何获取FileUpload的本地真实路径
- 江湖救急“Asp.Net”页面访问不到“数据库服务器下”数据库
- 有updatepanel时,$(function() { 中bind旋钮事件,回发时重复绑定
- 报错 “Cannt assign to a function result”解决方法
- 江湖救急 asp.net mvc3.0 + jquery + Ztree插件,该怎么解决
- 每个人都会的小疑点,就小弟我不会,求真解,求好汉,江湖救急
- jmail接收邮件报错?This function is not included in this version of jmail.该如何解决
- Process : function (ajaxInfo, processFun)什么意思嘛?解决办法
- jquery接收后台传值出现error: function()异常
- 怎么在程序中模拟页面的javascript:function()交互?内详
- 江湖救急 隐藏和显示datalist 中的控件,该如何处理
- asp2.0 textbox.Attributes.Add("onfocus" "this.value=function()")
- c#调用MATLAB com组件Undefined function 'armax' for input arguments of type 'iddata'解决思路
- 创设函数报 Function created with compilation errors 求解释
- Declare Function GetSystemMetrics Lib "User32" (ByVal nIndex As Long) As Long,该如何解决
- matlab Missing variable or function
- 江湖救急db2 function 脚本执行的有关问题
- SQL0440N 未找到类型为 "FUNCTION" 命名为 "ROW_NUMBER"该如何解决
- .FF和opera可以。chrome不行?icon小图标什么情况?江湖救急
- a function to get the full path names of a list of files,该怎么处理
- 有相熟RATIONAL FUNCTION TESTER的人么
- 有熟悉RATIONAL FUNCTION TESTER的人么解决方法
- [求助]请教高手 江湖救急