首页 新闻 论坛 群组 Blog 文档 下载 读书 Tag 网摘 搜索 开源 FAQ 第二书店 博文视点 程序员
频道: 研发 数据库 中间件 信息化 视频 .NET Java 游戏 移动 服务: 人才 外包 培训
    图书品种:235680
       
热门搜索: ASP.NET Ajax Spring Hibernate Java

15.5  在游标中修改数据

一直到现在,我们对于直接在游标中修改数据的概念都比较敷衍。眼下,是时候了解在游标中对记录进行的更新和删除了。

由于这里是在处理特定的行而非行集数据,因此,需要某种专门的语法来告诉SQL Server我们想要进行更新。幸而在已经知道了如何执行UPDATE或DELETE的前提下,该语法实际上将是相当简单的。

本质上,我们将在游标底层的表中更新或删除数据。这里的操作与运行我们已熟悉的UPDATE和DELETE语句一样简单,只不过,眼下需要用一个匹配游标行的WHERE子句来进行限制。在DELETE或UPDATE语句中只加入一行语句即可:

WHERE CURRENT OF <游标名>

关于该语法没有什么需要特别讲述之处。不过,为了更完美,接下来我们使用这里的语法来执行一个游标。

同样,把这里的游标当作一个全新的游标来对待。我们已经完成了很多的删除、添加和更新,我想你会发现,比起不得不通过逐行浏览来找出可能缺失的事情,只是第二次使用键会更容易些。

另外,我们再次使用了在本书前面用过的取模运算符(%)。记得该运算符只返回余数。因此,如果任何数除以2的余数是零,那么我们将知道该数是偶数。

关于这里的具体细节,剩下的部分毫无难处可言,我们很快还能知道得到了一些结果:

可以看到多个“1 row affected”(1行受影响)的消息,这是针对所有受UPDATE和DELETE语句影响的行所返回的消息。当我们着手进行最后一个结果集的列举时,很快就能知道删除了所有的奇数数值(这是我们告诉代码去做的事情),并且,用新的CustomerID更新了偶数数值的行。

没有任何疑难之处——就是一个使用了WHERE CURRENT参数的WHERE子句而已。

查看所有评论(0)条】

最近评论



正在载入评论列表...
热点评论