sql server中的 SET NOCOUNT ON 的含义
程序员文章站
2022-06-17 10:39:17
...
在使用查询分析器调试SQL语句的时候,在消息提醒中会显示,有多少行 如 受影响 :(520 行受影响),这些信息在编程中不用返回到 客户端的应用程序中,这些信息是存储过程中的每个语句的DONE_IN_PROC 信息。 使用SET NOCOUNT 开关 来控制这些信息提高程序性能
在使用查询分析器调试SQL语句的时候,在消息提醒中会显示,有多少行 如受影响:(520 行受影响),这些信息在编程中不用返回到客户端的应用程序中,这些信息是存储过程中的每个语句的DONE_IN_PROCMSDN中帮助如下:
SET
使返回的结果中不包含有关受
语法
SET
注释
当
即使当
如果存储过程中包含的一些语句并不返回许多实际的数据,则该设置由于大量减少了网络流量,因此可显著提高性能。
SET
权限
SET
结论:我们应该在存储过程的头部加上SET
1:在查看SqlServer的帮助的时候,要注意“权限”这一节,因为某些语句是需要一定的权限的,而我们往往忽略。
2:@@ROWCOUNT是返回受上一语句影响的行数,包括找到记录的数目、删除的行数、更新的记录数等,不要认为只是返回查找的记录数目,而且@@ROWCOUNT要紧跟需要判断语句,否则@@ROWCOUNT将返回0。