Anasayfa / SQL SERVER / Sql Fonksiyonlar / Sql Cursor Örnekleri

Sql Cursor Örnekleri

select lastname, firstname from employees
order by lastname, firstname
declare contact_cursor scroll cursor for
select lastname, firstname from employees
order by lastname, firstname
open contact_cursor

— en sondaki kayıt
fetch last from employee_cursor

–en sondaki kayıtta kaldıyda ondan bir öncekk kayıt
fetch prior from employee_cursor

— cursor ın bulunduğu yerden 2 ilerideki kayıt
fetch absolute 2 from employee_cursor

— bulunduğu yerden 3 sonraki kayıt
fetch relative 3 from employees_cursor
— bir sonrakine gider
FETCH NEXT FROM employees_cursor

— bulunduğu yerden 2 önceki kayıt
fetch relative 2 from employees_cursor

close employee_cursor
DEALLOCATE emloyee_cursor
go
— prior en son kayıtta kalır bi öncekine birini gönderiri o-kutur..

— absolute ileri iki sonda kayıt kalmadıysa başadöner ilk iki kayıdı okur cursomrı gördüğü yerden sayar.cursordan sonra sayama başlar
–realive ise kendisinin en son okuduğu yerden okumaya devam eder
–en sonda yazılan kod deallocate remi boşaltamya yarar.
–priordan sonra relative çalışırırsan priordan sonra saymaya başlar.

declare @empfirstname varchar(50),@emplastname varchar(50)

declare @empcursor cursor for
select lastname, firstname from employees
order by lastname, firstname

open @empcursor

fetch next from empcursor
into @emplastname,@empfirstname — selectde ne okuduyda ona göre sıralamak zorundayız
while @@fetch_status = 0
begin

print ’employee :’ + @empfirstname + ‘ ‘ @emplastname

fetch next from empcursor
into @emplastname,@empfirstname
end
close empcursor
deallocate empcursor
go
SELECT OD.PRODUCTID,SUM(OD.QUANTITY) AS ‘QUANTITY’,
SUM(P.UNITSINSTOCK) AS
CASE WHEN SUM(
FROM [ORDER DETAILS] OD INNER JOIN PRODUCTS P
ON OD.PRODUCTID = P.PRODUCTID

SELECT * FROM KULLANICILAR

DECLARE @kullaniciID int,@adsoyad varchar(50), @kullanicitipi int

declare @temp_kullanicilar table
(kullaniciId int,
adsoyad varchar(50),
kullanicitipi int
)

declare kul_cursor cursor fast_forward read_only for

select kullanicilarId , adsoyad,kullanicitipi
from kullanicilar
order by 1 asc

open kul_cursor cursor
fetch next from kul_cursor
into @kullaniciId , @aysoyad, @kullanicitipi
while @@fetch_status

begin

if exists (select top 1 kullanicilarID from @temp_kullanicilar
where adsoyad = @adsoyad
begin
if (select kullanicitipi from @temp_kullanicilar
where adsoyad =@adsoyad)
end
end

close kul_cursor
deallocate kul_cursor
go

Ayrıca Buna Bakabilirsiniz

TRANSACTION Nedir

TRANSACTION Nedir ? Transaction Ne işe yarar ? Bir veya daha fazla SQL ifadeleri tek …

Bir Cevap Yazın

E-posta hesabınız yayımlanmayacak. Gerekli alanlar * ile işaretlenmişlerdir