首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 数据库 > IBM DB2 >

求存储过程兑现clob字段数据的更新,

2012-12-23 
求存储过程实现clob字段数据的更新,急!DB2数据库,t_pos_info表有个xml_value字段类型为clob。字段的数据存

求存储过程实现clob字段数据的更新,急!


DB2数据库,t_pos_info表有个xml_value字段类型为clob。字段的数据存储的是指定格式的数据,请写个存储过程实现如下要求。

举个例子,xml_value字段的数据如下:


<POS交易清单>
==============================

                                  中国银联直联商户清算交易明细表            


  商户编号:      30135xxxxx         商户名称:      xxx连锁有限公司        收单机构:    xxxxx          

  清算日期:      20111127           生成日期:        20111128          




终端编号     交易日期时间   主账号           发卡行           交易金额       商户费用          结算金额     

____________________________________________________________________________________________________________________
                                                                                                                                                                                                    

06102210    1127094859      62109539xxx     邮储银行                          38.00             -0.38            
##page_1##
06102211    1127133850      62270018xxx     xxx分行             40.00         -0.40             39.60           

06102211    1127165622      62270018xxx     xxx分行            151.10         -1.51            149.59     
##page_2##


##page_3_end##
</POS交易清单>



现要对不符合格式的数据进行修改:
最后两页没有数据的节点,把最后一页的那个节点删除,把倒数第二页的节点改为结束节点。

也就是说:

需要遍历表中数据,凡是数据中有<POS交易清单>,那么就读取总页数(页数是节点##page_1##中得数字),然后看倒数两页之间有没有数据,如果有数据,则此条数据不修改,继续下一条数据,如果最后两页之间
无数据,则把最后一页的那个节点删除,把倒数第二页的节点改为结束节点。

比如上面的数据:
    把节点##page_3_end##删除,把##page_3_end##改为##page_2_end##  即可。



200分跪求,希望大虾给个实际的方法,急!



[最优解释]
你现在的问题是clob字段读写的问题 还是xml文档操作的问题?

关于操纵lob类型 可以参见 http://publib.boulder.ibm.com/infocenter/db2luw/v9/topic/com.ibm.db2.udb.apdv.sample.doc/doc/c/s-dtlob-sqc.htm

关于xml文档操作就跟db2无关了

另外,DB2 8.2以后版本增加了对XML字段类型支持以及Xquery的支持,这在操作上比上述处理更加方便了
具体可以查阅该网站
[其他解释]

说错了点,这样修改:
  把节点##page_3_end##删除,把##page_3_end##改为##page_2_end##  并且删除##page_2## 。

还要注意,如果最后两个节点之间全部是空格,也要按上要求修改。

也就是说
##page_2##
这中间是空格
##page_3_end##

修改为:
##page_2_end##


热点排行