光标的使用
- 查询语句可能返回多条记录,如果数据非常大,需要在存储过程和存储函数中使用光标来逐条读取查询结果集 中的记录。
- 光标必须在声明处理程序之前使用,并且变量和条件还必须在声明光标或者处理程序之前被声明。
- 【注】: MySQL中光标只能在存储过程和函数中使用。
声明光标:
declare 光标名称 cursor for select语句;
- 返回一个用于创建光标的结果集。
- 声明名称为 cursor_name的光标,select语句从students表中查询出的 id、name字段的值:
declare cursor_name cursor for select id, name from students;
打开光标:
open 光标名称;
使用光标:
fetch 光标名称 into var_name[, var_name];
- var_name参数表示将光标中的select语句查询出来的信息存入该参数中
- var_name(变量)必须在声明光标前定义好。
关闭光标:
close 光标名称;