Linux上调用db2存储过程,DB2 存储过程调用 存储过程

匿名用户

1级

2014-09-05 回答

1、存储过程编写

DROP PROCEDURE "PLName"

@

CREATE PROCEDURE "PLName"(--存储过程名字

IN IN_ID BIGINT ,                    --以下全是输入参数

IN IN_ENTNAME VARCHAR(200) ,

IN IN_REGNO VARCHAR(50),

IN IN_PASSWORD VARCHAR(20),

IN IN_LEREP VARCHAR(300),

IN IN_CERTYPE CHARACTER(1),

IN IN_CERNO VARCHAR(50),

IN IN_LINKMAN VARCHAR(50),

IN IN_SEX CHARACTER(1),

IN IN_MOBTEL VARCHAR(30),

IN IN_REQDATE TIMESTAMP,

IN IN_REMITEM VARCHAR(300),

IN IN_STATE CHARACTER(1),

IN IN_TIMESTAMP TIMESTAMP

)

BEGIN

declare V_RESULT  BIGINT;     --声明变量

DELETE FROM  TableNameA WHERE ID = IN_ID;

SET V_RESULT = NULL;          --为变量赋值

--检查用户输入的信息是否合法

select b.id INTO V_RESULT  from TableNameB b,TableNameC c where 正常的判断条件

if(V_RESULT IS NOT NULL)  then ---如果合法,执行下面的insert语句

INSERT INTO TableNameA(ID,ENTNAME,REGNO,PASSWORD,LEREP,CERTYPE,CERNO,LINKMAN,SEX,MOBTEL,REQDATE,REMITEM,STATE,TIMESTAMP)

VALUES(IN_ID,IN_ENTNAME,IN_REGNO,IN_PASSWORD,IN_LEREP,IN_CERTYPE,IN_CERNO,IN_LINKMAN,IN_SEX,IN_MOBTEL,IN_REQDATE,IN_REMITEM,IN_STATE,IN_TIMESTAMP);

end if;

commit;

END

@2、调用存储过程

1.拷贝到DB2客户端工具中直接执行

2.将上面的语句保存为test.db2文件放到任意目录下(比如D盘根目录),然后在cmd输入db2cmd 然后输入db2 -td@ -vf  D:\test.db2即可

3.直接写sql:

call PLName(存储过程名字) (IN_ID,IN_ENTNAME,IN_REGNO,IN_PASSWORD,IN_LEREP,IN_CERTYPE,IN_CERNO,IN_LINKMAN,IN_SEX,IN_MOBTEL,IN_REQDATE,IN_REMITEM,IN_STATE,IN_TIMESTAMP对应的值)

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值