在DB2中执行存储过程需要先创建存储过程,然后使用CALL语句来调用它。
创建存储过程可以使用CREATE PROCEDURE语句,指定存储过程的名称、参数、SQL语句等信息。
调用存储过程时,需要使用CALL语句,指定存储过程的名称和参数值。
执行存储过程可以使用DB2命令行工具或者其他支持DB2的应用程序。在执行存储过程时,可以获取存储过程的返回值或者输出参数的值。
1、db2 create database 数据库名 <-- 创建数据库
2、db2 connect to 数据库名 user 用户名 using 用户密码 <-- 连接数据库
3、db2 -tvf otpdb_v3_db2.sql <-- 为新建数据库建立表结构
4、db2 -td@ -f 存储过程文件绝对路径 <-- 导入存储过程,无错误会提示成功 4、调用存储过程: Windows 下:db2 call 存储过程名(参数1,参数2) AIX 下:db2 <-- 要先进入DB2,方可调用存储过程或执行SQL语句 db2=>call 存储过程名(参数1,参数2)
5、验证插入数据是否成功 Windows 下:db2 select count(*) from FTOTP_USERINFO AIX 下:db2 <-- 要先进入DB2,方可调用存储过程或执行SQL语句 db2=>select count(*) from FTOTP_USERINFO Windows 下:db2 select count(*) from FTOTP_TOKENINFO AIX 下:db2 <-- 要先进入DB2,方可调用存储过程或执行SQL语句 db2=>select count(*) from FTOTP_TOKENINFO
6、db2 SELECT TOKEN, PUBKEY FROM FTOTP_TOKENINFO FETCH FIRST 10000 ROWS ONLY > 要保存文件的绝对全路径 <-- 从 DB2 中导出前一万条记录 windows - e.g. db2 SELECT TOKEN, PUBKEY FROM FTOTP_TOKENINFO FETCH FIRST 10000 ROWS ONLY > c:abc.txt AIX - e.g. db2 SELECT TOKEN, PUBKEY FROM FTOTP_TOKENINFO FETCH FIRST 10000 ROWS ONLY > c:abc.txt <-- 注意:不能先进入DB2,执行查询与导出命令组合
7、db2 drop procedure 存储过程名 <-- 删除存储过程
8、db2 drop database 数据库名 <-- 删除指定名称的数据库 注,如果删除时提示有应用程序连接到这个数据库上,可以用如下命令断开所有应用程序的连接: db2 force application all <-- 断开所有应用程序的连接