Provided by: manpages-tr_1.0.5.1-2_all bug

ISIM

       DECLARE - bir gosterici tanimlar

KULLANIM

       DECLARE isim [ BINARY ] [ INSENSITIVE ] [ [ NO ] SCROLL ]
           CURSOR [ { WITH | WITHOUT } HOLD ] FOR sorgu
           [ FOR { READ ONLY | UPDATE [ OF s"utun [, ...] ] } ]

A,CIKLAMA

       DECLARE  buyukce  bir  sorgunun zamanasimi icinde az sayida satirin bir
       kullanici tarafindan  cekilmesi  icin  kullanilabilecek  gostericilerin
       bildirimini  yapmakta  kullanilir.  FETCH  [fetch(7)] kullanilarak veri
       ister metin ister ikilik bicimde gostericiden dondurulebilir.

       Normal gostericiler SELECT'in  urettigi  gibi  veriyi  metin  biciminde
       dondurur.  Veri dogal ortaminda ikilik bicimde saklandigindan, sistemin
       metin bicimine donusum yapmasi gerekir. Metin  biciminde  gelen  veriyi
       istemci  uygulamanin,  uzerinde  islem  yapabilmek  icin  ikilik bicime
       donusturmesi  gerekebilir.  Bundan   baska   metin   bicimindeki   veri
       cogunlukla  ikilik  bicimdeki  veriden  daha  fazla  yer kaplar. Ikilik
       gostericiler  veriyi   daha   kolay   islenebilen   ikilik   gosterimde
       dondururler.  Ancak, veriyi metin biciminde gostermeyi tasarliyorsaniz,
       verinin  metin  biciminde  alinmasi  istemci  tarafinda  daha  az  caba
       gerektirecektir.

       Bir  ornek  vermek gerekirse, bir sorgunun bir tamsayi deger iceren bir
       sutundan veri dondurmesini istiyorsaniz, bir ontanimli gosterici ile  1
       iceren  bir  dizge  alirken,  bir ikilik gosterici bu degerin 4 baytlik
       alan iceren dahili gosterimini dondurecektir (big-endian -- en kiymetli
       bayt ilk).

       Ikilik gostericiler dikkatli kullanilmalidir. psql dahil cogu uygulama,
       ikilik gostericileri bilmez ve veriyi metin biciminde dondurur.

       Bilgi: "Gelismis sorgulama" (extended query) protokolunu  kullanan  bir
              istemci   uygulamasi,   verilen   bir   FETCH   komutuyla,  Bind
              protokolunun veriyi ikilik bicimde mi yoksa metin  biciminde  mi
              alacagini belirtir. Bu secim gostericinin bildirilmesi sirasinda
              belli  bir  bicime  zorlanabilir.   Gelismis   sorgu   protokolu
              kullanarak  bir  ikilik  gosterici  alinabilecegini  ummak,   bu
              nedenle atildir; her gosterici metin ya  da  ikilik  olarak  ele
              alinabilir.

PARAMETRELER

       isim   Olusturulacak gostericinin ismi.

       BINARY Gostericinin   metin  degil  ikilik  bicimde  veri  dondurmesini
              saglar.

       INSENSITIVE
              Gostericiden  alinan  verinin,  gosterici  etkinken,  soruladigi
              tablolardaki    guncellemelerden   etkilenmeyecegini   belirtir.
              PostgreSQL'de tum gostericiler boyledir ve  bu  sozcuk  simdilik
              etkisizdir, sadece SQL standardiyla uyum icin vardir.

       SCROLL, NO SCROLL
              Gostericinin  satirlari  sirali  olmayan  bicimde dondurmek icin
              kullanilabilecegini belirtmek icin kullanilir.  SCROLL deyiminin
              belirtilmesi,   sorgunun  calistirilma  planinin  karmasikligina
              bagli olarak, sorgunun calismasi  sirasinda  bir  basarim  kaybi
              olusturabilir.  NO  SCROLL  ise,  gostericinin  satirlari sirali
              olmayan bicimde dondurmek icin kullanilamayacagini belirtir.

       WITH HOLD, WITHOUT HOLD
              WITH HOLD, gostericinin olusturuldugu hareketin tamamlanmasindan
              sonra  kullanilmaya devam edilebilecegini belirtir. WITHOUT HOLD
              ise     gostericinin     olusturuldugu      hareket      disinda
              kullanilamayacagini  belirtir.  Ne  WITHOUT HOLD ne de WITH HOLD
              belirtilmisse, WITHOUT HOLD ontanimlidir.

       sorgu  Gosterici tarafindan dondurulecek satirlari uretecek bir  SELECT
              cumlesi.  Gecerli  sorgular  hakkinda  bilgi edinmek icin SELECT
              [select(7)] kilavuz sayfasina bakiniz.

       FOR READ ONLY, FOR UPDATE
              FOR READ ONLY gostericinin  salt  okunur  kipte  kullanilacagini
              belirtir.  FOR  UPDATE  ise gostericinin tablolari guncellemekte
              kullanilacagini belirtir. Gosterici guncellemeleri PostgreSQL'de
              desteklenmediginden,  FOR  UPDATE  kullanimi  bir hata iletisine
              sebep  olacak,  FOR  READ  ONLY   deyiminin   ise   bir   etkisi
              olmayacaktir.

       s"utun  Gosterici    tarafindan    guncellenecek   sutunlar.   Gosterici
              guncellemeleri  PostgreSQL'de  desteklenmediginden,  FOR  UPDATE
              kullanimi bir hata iletisine sebep olur.

       BINARY,   INSENSITIVE   ve   SCROLL   sozcukleri  herhangi  bir  sirada
       kullanilabilir.

EK BILGI

       WITH HOLD belirtilmedikce, bu cumle ile olusturulan gosterici sadece  o
       anki  hareketin  icinde kullanilmis olabilir. Bu nedenle, WITH HOLD'suz
       DECLARE  bir  hareket  kumesinin  disinda  kullanissiz   oldugu   gibi,
       kullanildigi  takdirde  PostgreSQL  bir  hata  iletisi uretecektir. Bir
       hareket kumesini tanimlamak icin BEGIN [begin(7)],  COMMIT  [commit(7)]
       ve ROLLBACK [rollback(7)] kullanilir.

       Eger  WITH  HOLD  belirtilmis  ve  gostericinin  olusturuldugu  hareket
       baasariyla tamamlanmissa,  bu  gosterici  ayni  oturumun  daha  sonraki
       hareketleri tarafindan erisilebilir olacaktir. (Fakat hareket kesintiye
       ugramis ve tamamlanmamissa, gosterici  iptal  edilir.)  WITH  HOLD  ile
       olusturulmus  bir gosterici, dogrudan bir CLOSE komutuyla ya da dolayli
       olarak oturum  sonunda  kapatilir.  Simdiki  gerceklenimde,  boyle  bir
       gosterici  tarafindan  sunulan  satirlar  ya  gecici  bir dosyaya ya da
       bellege  kopyalanarak  daha  sonraki  hareketler  icin   kullanilabilir
       kalmasi saglanir.

       Bir  gosterici satirlarin geri yonde  cekilmesi icin kullanilacaksa, bu
       gosterici  bildirilirken  SCROLL  secenegi  belirtilmelidir.   Bu   SQL
       standardinin  geregidir.  Ancak, onceki surumlerle uyumluluk icin, eger
       gostericinin sorgusu desteklenmek icin ek  bir  masraf  gerektirmeyecek
       kadar  basitse, PostgreSQL SCROLL olmaksizin geriye dogru satir cekmeye
       izin verecektir. Yine  de,  uygulama  gelistiriciler  onerimiz,  SCROLL
       belirtmeden  olusturulmus gostericilere, geriye dogru satir cekimi icin
       guvenmemeleri olacaktir. Eger, NO SCROLL belirtilmisse  hicbir  durumda
       geri yonde satir cekmeye izin verilmeyecektir.

       SQL  standardi  sadece  gomulu SQLde gostericiler icin hukumler icerir.
       PostgreSQL sunucusu gostericiler icin bir OPEN deyimi gerceklemez;  bir
       gosterici  bildirildigi  andan  itibaren  acik  kabul  edilir. Yine de,
       PostgreSQL'in  gomulu  SQL  onislemcisi  olan  ECPG,  DECLARE  ve  OPEN
       deyimlerini de icererek, standart SQL uzlasimlarini destekler.

"ORNEKLER

       Bir gostericiyi bildirmek icin:

           DECLARE liahona CURSOR FOR SELECT * FROM films;

       Gosterici  kullanimi  ile ilgili daha fazla ornek icin FETCH [fetch(7)]
       kilavuz sayfasina bakiniz.

UYUMLULUK

       SQL standardi sadece gomulu SQL'de  ve  modullerde  gostericilere  izin
       verir.  PostgreSQL  ise,  gostericilerin etkilesimli olarak kullanimina
       izin verir.

       SQL  standardi   gostericilerin   tablo   verisini   guncellemek   icin
       kullanimina  izin  verir.  PostgreSQL  gostericilerinin  ise hepsi salt
       okunurdur.

       Ikilik gostericiler bir PostgreSQL olusumudur.

ILGILI BELGELER

       CLOSE [close(7)], FETCH [fetch(7)], MOVE [move(7)].

,CEVIREN

       Nilgun Belma Buguner <nilgun (at) belgeler.gen.tr>, Nisan 2005