VeryGoodGirl
Programmer
Below is a simple T-sql cursor. It seems to get stuck on the first row. What am I doing wrong?
USE ADatabase
go
IF EXISTS (SELECT name FROM sysobjects
WHERE name = 'pr_Update_Aircraft' AND type = 'P')
DROP PROCEDURE pr_Update_Aircraft
go
CREATE PROCEDURE pr_Update_Aircraft AS
DECLARE
@AircraftID int,
@AircraftStatusID int,
@tail_num varchar(10)
DECLARE AirCraft_Cursor CURSOR FOR
SELECT AircraftID,AircraftStatusID,aircrafttailshort
FROM sharon_AcAircraft
OPEN AirCraft_Cursor
FETCH NEXT FROM AirCraft_Cursor
INTO
@AircraftID,
@AircraftStatusID,
@tail_num
While @@FETCH_STATUS = 0
BEGIN
print ' in loop, status is : ' + @tail_num
END
-- It takes so long and when I kill it, it has only printed for the first record.
USE ADatabase
go
IF EXISTS (SELECT name FROM sysobjects
WHERE name = 'pr_Update_Aircraft' AND type = 'P')
DROP PROCEDURE pr_Update_Aircraft
go
CREATE PROCEDURE pr_Update_Aircraft AS
DECLARE
@AircraftID int,
@AircraftStatusID int,
@tail_num varchar(10)
DECLARE AirCraft_Cursor CURSOR FOR
SELECT AircraftID,AircraftStatusID,aircrafttailshort
FROM sharon_AcAircraft
OPEN AirCraft_Cursor
FETCH NEXT FROM AirCraft_Cursor
INTO
@AircraftID,
@AircraftStatusID,
@tail_num
While @@FETCH_STATUS = 0
BEGIN
print ' in loop, status is : ' + @tail_num
END
-- It takes so long and when I kill it, it has only printed for the first record.