从游标中读取数据主要使用___命令。
时间: 2024-03-09 09:48:21 浏览: 13
从游标中读取数据主要使用 `FETCH` 命令。
`FETCH` 命令用于从游标中获取一条记录,并将其存储在指定的变量中。FETCH 命令的语法如下:
```sql
FETCH { NEXT | PRIOR | FIRST | LAST | ABSOLUTE <row_number> | RELATIVE <relative_row_number> } FROM <cursor_name> INTO <variable_list>
```
其中,`<cursor_name>` 是游标的名称,`<variable_list>` 是一个逗号分隔的变量列表,用于存储获取的记录中的列值。`<row_number>` 是要获取的记录的行号,`<relative_row_number>` 是相对于当前位置要获取的记录的行数,`NEXT`、`PRIOR`、`FIRST`、`LAST` 分别表示获取下一条、上一条、第一条、最后一条记录。
例如,以下代码演示了如何使用 FETCH 命令从游标中获取记录:
```sql
DECLARE @id INT, @name VARCHAR(50)
DECLARE cur CURSOR FOR SELECT id, name FROM mytable
OPEN cur
FETCH NEXT FROM cur INTO @id, @name
WHILE @@FETCH_STATUS = 0
BEGIN
PRINT 'id: ' + CAST(@id AS VARCHAR) + ', name: ' + @name
FETCH NEXT FROM cur INTO @id, @name
END
CLOSE cur
DEALLOCATE cur
```
该代码创建了一个名为 `cur` 的游标,并使用 `FETCH NEXT` 命令从游标中获取一条记录,并将其存储在 `@id`、`@name` 变量中。然后使用 WHILE 循环不断从游标中获取下一条记录,直到获取完所有记录。