赛迪网 > IT技术 数据库 > DB2开发者园地
  IT资讯搜索
 
IT产品搜索
[程序开发][网管世界][网络安全][数据库技术]
[操作系统][嘉宾聊天·在线访谈][活动集锦]
[精彩专题][Symantec专区][订阅IT技术周刊]
[开发论坛][网管论坛][安全论坛][数据库论坛]
[操作系统论坛][Sybase专区][IBM dW技术专区]
[病毒求助][病毒与漏洞播报][文档·源码下载]

教你轻松掌握如何从DB2的图表中删除N个行

发布时间:2007.12.17 04:46     来源:赛迪网    作者:84013

问:“怎样从DB2图表中删除N个行?”

答:“首先,你需要更新你的"关系型"数据库管理系统的知识. 在图表中没有"顶端"或"底端"的N个行的概念. 但对结果集有顶端或底端的概念. 你可以用FETCH FIRST N ROWS ONLY子句来得到开始的N个行,但是得到底端的N个行是更困难的问题.为实现这点,你需要用可滚动的指针.可滚动的指针允许你在不用读取/得到所有的行前在结果集里前后移动。我建议你阅读DB2 SQL参考手册和DB2应用程序手册中可滚动的指针的内容(所有的DB2手册可以从网上免费下载)。基本上你应该用可滚动的指针的FETCH LAST 语句,再用FETCH PRIOR语句循环N-1次。那将给出任何结果集的“底端”的N个行”(分类或未分类的)。

如果你要从图表里删除N个行。我猜想你会问如何在DELETE的WHERE条件处限制行子集的删除,答案是否定的。你必须在同样WHERE条件处注明FOR UPDATE OF来打开一个指针,然后你需要在循环N次的行处打开FETCH和DELETE WHERE CURRENT OF指针。当然这意味着你必须重写一个程序。

(责任编辑:卢兆林)


[ 发表评论 ] 字体[  ] [ 打印 ] [ 进入博客 ] [ 进入论坛 ]  [ 推荐给朋友 ]
  相关文章
  客户需求反馈表
* 姓  名:
更多资料  了解方案  认识厂商
* 单位名称:
* 联系电话:
* 电子邮件:
  赛迪推荐  
  手机·资费 ·新品·导购·评测·手机资费·宽带
手机搜索  诺基亚 N73 MOTO Z6
  IT产品 ·笔记本·台式机·服务器·打印·投影
IT产品搜索 
  IT技术 ·开发·网管·安全·数据库·操作系统
  信息化 ·热点·专题·访谈·周刊·方案案例
· 网站建设市场重新洗牌 一卡通引领革命潮流
· 北京加快信息化建设 医保一卡通年底前启动
· ERP案例分析 SaaS带来冲击 IT服务商面临挑战
· 通方期货CRM解决方案 房地产行业CRM解决方案
  IT博客 ·曾剑秋·项立刚·Java学习·网管
  IT技术论坛 ·开发·网管·安全·数据库·系统