SQL Server游标使用实例
2008-10-24 10:07:05 来源:WEB开发网核心提示: l 串行化过程 – 如果你需要以串行化方式完成一个过程,那么游标是一个可行的选项,SQL Server游标使用实例(3),l 管理员任务 – 很多管理员任务需要在串行状态下执行,这与基于游标的逻辑很相符,用可能并非事实的基于集合的方法直到获得数据的整个集合是完整的,
l 串行化过程 – 如果你需要以串行化方式完成一个过程,那么游标是一个可行的选项。
l 管理员任务 – 很多管理员任务需要在串行状态下执行,这与基于游标的逻辑很相符,但是基于其他系统的对象存在来满足这种需要。在某些情况下,游标用来完成这一进程。
l 大型数据集 – 在大型数据集的情况下,你可能会遇到以下任何一种情况:
基于游标的逻辑可能没有足够大的规模满足需求。
在服务器上具有大型数据集的运算而内存又很小,数据可能会被分页或独占SQL Server,这将是很费时间的,可能会导致争夺和内存的问题。
有些固有的工具把数据存储到一个隐藏的文件中,所以在内存中处理数据可能会也可能不会是实际的情况。
如果数据能够在一个中间数据库中处理,那么对生产环境的影响只有在最后数据被处理时,所以服务器上所有的资源可用于ETL过程,然后引入最后的数据。
SSIS支持批处理数据,这将解决把大量数据分解成更多可管理的大小和比用按行方法执行效果更好的总体需求。
根据游标或者SSIS逻辑如何编码,它可能基于检查点或者在游标的每一行做标记来在失败时重新启动。尽管如此,用可能并非事实的基于集合的方法直到获得数据的整个集合是完整的。同样地,解决行的问题会更加困难。
游标的替代
下面列出了可以替代能够满足相同需求的基于游标的逻辑:
l 基于集合的逻辑
l SSIS或者数据转换服务
l WHILE循环
l COALSCE
l sp_MSforeachdb
l sp_MSforeachtable
l CASE表达
l 用GO命令重复一批数据
- ››sql server自动生成批量执行SQL脚本的批处理
- ››sql server 2008亿万数据性能优化
- ››SQL Server 2008清空数据库日志方法
- ››sqlserver安装和简单的使用
- ››SQL Sever 2008 R2 数据库管理
- ››SQL SERVER无法安装成功,sqlstp.log文件提示[未发...
- ››Sql Server中通过父记录查找出所有关联的子记录
- ››SqlServer触发器、存储过程和函数
- ››SQL Server 中的事务(含义,属性,管理)
- ››Sqlite数据库插入和读取图片数据
- ››Sql server 2005拒绝了对对象 'xx表' (数...
- ››Sql server 2005拒绝了对对象 'xx表' (数...
更多精彩
赞助商链接