大家观察下面SQL语句:
use pubs
go-----1---
set rowcount 5
select *
from authors
----------
-----2------
select top 5 *
from authors
-------------这两条语句的最终都是返回表authors中的前5条记录;
但问题是运行完第1条语句后 再运行“select * from authors”的时候查出的还是前5条记录,
甚至是其他表或其他数据库中的表 查询出来后也是前5条记录
除非关闭查询分析器的窗口或断开连接才能正常运行这是为什么呢?
怎么才能关闭set命令
解决方案 »
- 请问如何提取文本字段中的部分内容?
- 如何从tbl表里面查找出a字段值重复的记录?急,在线等!
- 如何用SQL获取一个表的主键的名字,谢谢
- select count(*) from ait1为何不使用“唯一聚集索引”
- 很郁闷是兄弟帮帮忙!SQLServe只能用主机名登陆,不能通过IP地址登陆.十万火急.
- 这个要如何安装呀Microsoft SQL Server 2000 Desktop Engine
- 关于数据导出问题?
- MS SQL 2000如何统计数据库中所有用户表的数据?
- 是否所有的数据库表都可以组织为这样呢?
- 我们的服务器是专业服务器,但是用起来就是很慢
- 日志文件 最大只允许两G吗?没有办法设成更大了好像
- 主键和标识列的问题需要高手帮确认一下。
go -----1---
set rowcount 5
select *
from authors
----------
-----2------
select top 5 *
from authors
-------------
set rowcount 0select * from authors
使 Microsoft® SQL Server™ 在返回指定的行数之后停止处理查询。 语法
SET ROWCOUNT { number | @number_var } 参数
number | @number_var是在停止给定查询之前要处理的行数(整数)。注释
建议将当前使用 SET ROWCOUNT 的 DELETE、INSERT 和 UPDATE 语句重新编写为使用 TOP 语法。有关更多信息,请参见 DELETE、INSERT 或 UPDATE。对于在远程表和本地及远程分区视图上执行的 INSERT、UPDATE 和 DELETE 语句,忽略 SET ROWCOUNT 选项设置。若要关闭该选项(以便返回所有的行),请将 SET ROWCOUNT 指定为 0。