• db2存储过程测试数据


    关于db2有一个测试数据的方法,特总结一下,方便自己以后使用,也欢迎大家指正错误。

    一个很大的存储过程,包含多个临时表,执行存储过程可以通过,但在调用时发生异常。数据量太大不知道从哪里查找,可以用以下两种方式进行测试:

    1.创建一个新表,然后从新表中查询

    CREATE TABLE BIT_TABLE LIKE SESSION.middle;
    INSERT INTO BIT_TABLE  SELECT * FROM SESSION.middle;

    在这里,BIT_TABLE 是一个新表, SESSION.middle是存储过程中的一个临时表。

    目的是:测试 SESSION.middle中的数据

    说明:必须调用存储过程后,才能在数据库中查询到表 BIT_TABLE的数据

    2.利用游标的方式

    例如:

    DECLARE v_resultCur2 CURSOR WITH RETURN TO CALLER FOR
    	    WITH temp (i_org, c_brand,pricetypecode, sellqty, sellmny, sellqtytq, sellmnytq) AS 
    		    (  
    			SELECT CASE WHEN i_org LIKE '22%' THEN '11' || SUBSTR(i_org, 3, 6) ELSE i_org END AS i_org,
    		           c_brand,pricetypecode,
    		           SUM(CASE WHEN report_date between v_begindate and v_endDate THEN out_sell_amount END),
    		           SUM(CASE WHEN report_date between v_begindate and v_endDate THEN out_sell_money END),
    		           SUM(CASE WHEN report_date between v_tq_beginDate and v_tq_endDate THEN out_sell_amount END),
    		           SUM(CASE WHEN report_date between v_tq_beginDate and v_tq_endDate THEN out_sell_money END)           
    		    FROM sum_qy_y_d_selldetail 
    		    WHERE ((report_date between v_begindate and v_endDate) OR (report_date between v_tq_beginDate and v_tq_endDate))
    		      AND (out_sell_amount<>0 OR out_sell_money<>0)
    		    GROUP BY CASE WHEN i_org LIKE '22%' THEN '11' || SUBSTR(i_org, 3, 6) ELSE i_org END,
    		           c_brand,pricetypecode
    		    )
    		    
    		    	SELECT i_org, c_brand,pricetypecode, sellqty,sellmny, 1 FROM temp
    			    UNION ALL
    			    SELECT i_org, c_brand,pricetypecode, sellqtytq,sellmnytq,2 FROM temp
    		   
     OPEN v_resultCur2;  

      这里 v_resultCur2 是一个游标,利用这个游标测试 temp 中的数据。

    我常用第一种方式,觉得简单直观些。

    一切美好的都是值得等待的。
  • 相关阅读:
    一步完成 MySQL 向 Redis 迁移
    php7性能、兼容性和稳定性探讨
    【高并发简单解决方案】redis缓存队列+mysql 批量入库+php离线整合
    Nginx的Rewrite正则表达式,匹配非某单词
    ajax下载,前端js下载(转)
    根据马甲、应用商店、统计每天的注册量,要求可以根据选择马甲和app,马甲和appstrore和user_login不同表问题
    别名的使用注意,""真坑。
    策略模式Strategy
    关于poi操作excel我使用的一些修饰操作
    java的代理(编程思想)
  • 原文地址:https://www.cnblogs.com/minghua-b/p/8175863.html
Copyright © 2020-2023  润新知