谁能给我讲解下 SQL SERVER中的游标问题啊
  游标是怎么回事?
  怎么使用它?
  使用它有什么好处?
  使用它的优越性在那?
  为什么要使用游标?  求大侠的 高解!!!!!

解决方案 »

  1.   

    关系数据库中的操作会对整个行集起作用。由 SELECT 语句返回的行集包括满足该语句的 WHERE 子句中条件的所有行。这种由语句返回的完整行集称为结果集。应用程序,特别是交互式联机应用程序,并不总能将整个结果集作为一个单元来有效地处理。这些应用程序需要一种机制以便每次处理一行或一部分行。游标就是提供这种机制的对结果集的一种扩展。游标通过以下方式来扩展结果处理:    允许定位在结果集的特定行。
        从结果集的当前位置检索一行或一部分行。
        支持对结果集中当前位置的行进行数据修改。
        为由其他用户对显示在结果集中的数据库数据所做的更改提供不同级别的可见性支持。
        提供脚本、存储过程和触发器中用于访问结果集中的数据的 Transact-SQL 语句。
    參照
    http://technet.microsoft.com/zh-cn/library/ms191179%28SQL.90%29.aspx
      

  2.   

    http://msdn.microsoft.com/zh-cn/library/ms191179.aspx
      

  3.   

    游标定义
    DECLARE cursor_name CURSOR FOR SELECT_statement; 
    游标操作
    OPEN 打开游标
    OPEN cursor_name; 
    FETCH 获取游标当前指针的记录,并传给指定变量列表,注意变量数必须与游标返回的字段数一致,要获得多行数据,使用循环语句去执行FETCH
    FETCH cursor_name INTO variable list; 
    CLOSE关闭游标
    CLOSE cursor_name ; 
    注意:mysql的游标是向前只读的,也就是说,你只能顺序地从开始往后读取结果集,不能从后往前,也不能直接跳到中间的记录.