Thursday, May 16, 2013

Cursor Demo



 CREATE TABLE Employee(
EmpID int PRIMARY KEY,
EmpName varchar (50) NOT NULL,
    Salary int NOT NULL,
   Address varchar (200) NOT NULL,
)
  1. INSERT INTO Employee(EmpID,EmpName,Salary,Address) VALUES(1,'Mohan',12000,'Noida')
  2. INSERT INTO Employee(EmpID,EmpName,Salary,Address) VALUES(2,'Pavan',25000,'Delhi')
  3. INSERT INTO Employee(EmpID,EmpName,Salary,Address) VALUES(3,'Amit',22000,'Dehradun')
  4. INSERT INTO Employee(EmpID,EmpName,Salary,Address) VALUES(4,'Sonu',22000,'Noida')
  5. INSERT INTO Employee(EmpID,EmpName,Salary,Address) VALUES(5,'Deepak',28000,'Gurgaon')

__________________________________________________________________________
SET NOCOUNT ON
DECLARE @Id int
DECLARE @name varchar(50)
DECLARE @salary int

 create table temp1
( Id int,
 name varchar(50),
salary int
)

 DECLARE cur_emp CURSOR
 STATIC FOR
 SELECT EmpID,EmpName,Salary from Employee

 OPEN cur_emp

IF @@CURSOR_ROWS > 0
 BEGIN
 FETCH NEXT FROM cur_emp INTO @Id,@name,@salary
 WHILE @@Fetch_status = 0
 BEGIN
 PRINT 'ID : '+ convert(varchar(20),@Id)+', Name : '+@name+ ', Salary : '+convert(varchar(20),@salary)
 insert into temp1 values(@Id,@name,@salary)
 FETCH NEXT FROM cur_emp INTO @Id,@name,@salary
 END
END
CLOSE cur_emp
DEALLOCATE cur_emp
select * from temp1
drop table temp1

SET NOCOUNT OFF

No comments:

Post a Comment