Creating Cursors in SQL
Creating Cursor in SQL is used to create a cursor in SQL.
Understand with Example
The Tutorial illustrate an example from Creating Cursor in SQL. To understand it, we create a table 'Stu_Table ' using create table statement.
Create Table Stu_Table
create table Stu_Table(Stu_Id integer(2), Stu_Name varchar(15), Stu_Class varchar(10))
Insert data into Stu_Table
The insert into add the record or rows value to the table 'Stu_Table'.
insert into Stu_Table values(1,'Komal',10); insert into Stu_Table values(2,'Ajay',10); insert into Stu_Table values(3,'Rakesh',10); insert into Stu_Table values(4,'Bhanu',10); insert into Stu_Table values(5,'Santosh',10); insert into Stu_Table values(6,'Tanuj',10); |
Stu_Table
Stu_Id | Stu_Name | Stu_Class |
1 | Komal | 10 |
2 | Ajay | 10 |
3 | Rakesh | 10 |
4 | Bhanu | 10 |
5 | Santosh | 10 |
6 | Tanuj | 10 |
Create Cursor
The given below Query create a procedure curdemo which accept id as INPUT parameter. The Declare cur1 is used to define cursor and its attribute. The OPEN cur1 is used to open the cursor 'cur1'.Fetch is used to fetch the rows value into name. The close cursor temporary remove the open cursor cur1,when it is of no used for further processing.
DELIMITER $$ create procedure curdemo(id int) begin DECLARE name varchar(10); DECLARE cur1 CURSOR FOR SELECT stu_name from stu_table where stu_id =id; OPEN cur1; Fetch cur1 into name; select name; close cur1; end$$ DELIMITER ; |
Call Cursor
The call Cursor is used to execute curldemo and return you the record from row stu id '2'.
Call curdemo(2); |
Result
+------+ | name | +------+ | Ajay | +------+ |