这是一个好的想法的使用,同时循环,而不是一个光标?有什么优点/缺点的游标?

有帮助吗?

解决方案

这些取决于DBMS,但一般是:

赞成:

  • 胜过循环,当它涉及到逐行处理

  • 工作合理以及与较大的数据集

缺点:

  • 不规模以及

  • 使用更多资源的服务器

  • 增加了负荷临

  • 可能会导致泄漏,如果使用不当(例如。打开,而不应靠近)

其他提示

我正在遵循这一点建议:

  

[...]哪个更好:游标或   什么循环?再次,它真的取决于   在你的情况。我几乎总是用   一个游标循环遍历记录时   必要。光标格式为a   对我来说更直观,   因为我只是使用构造   它遍历结果集一次   有意义的是使用FAST_FORWARD   光标。记住那种类型   你使用的光标会产生巨大的影响   关于循环的性能   构造

—蒂姆·查普曼在比较SQL Server 2008中的游标与WHILE循环性能

链接文章包含有关如何实施每种方法的简单示例。

我会问你用光标/ while循环做什么。

如果要更新或返回数据,为什么不使用正确的WHERE子句。我知道有人会说你永远不应该使用游标。

游标的一些缺点是此处

然后还有这个(实际上是一个非常有趣的问题叫 - “万圣节问题”)

许可以下: CC-BY-SA归因
不隶属于 StackOverflow
scroll top