summaryrefslogtreecommitdiff
path: root/doc/FAQ_turkish
diff options
context:
space:
mode:
Diffstat (limited to 'doc/FAQ_turkish')
-rw-r--r--doc/FAQ_turkish1933
1 files changed, 1114 insertions, 819 deletions
diff --git a/doc/FAQ_turkish b/doc/FAQ_turkish
index 47a3188674d..50634d0573b 100644
--- a/doc/FAQ_turkish
+++ b/doc/FAQ_turkish
@@ -1,480 +1,690 @@
-PostgreSQL i�in S�k�a Sorulan Sorular (SSS)
-
-Son g�ncelleme : 15 Kas�m 2004 Pazartesi - 14:47:20
-
-Current maintainer: Bruce Momjian ([email protected])
-
-�evirenler : Devrim G�nd�z ([email protected])
-Nicolai Tufar ([email protected])
-Volkan YAZICI ([email protected])
-
-Bu belgenin en g�ncel hali, http://www.PostgreSQL.org/docs/faqs/FAQ_turkish.html ve
-http://www.gunduz.org/seminer/pg/FAQ_turkish.html adreslerinde g�r�lebilir.
-
-Platforma �zel sorular�n�z, http://www.PostgreSQL.org/docs/index.html adresinde yan�tlan�r.
-Genel Sorular
-1.1) PostgreSQL nedir? Nas�l okunur?
-1.2) PostgreSQL'in haklar� nedir?
-1.3) PostgreSQL, hangi Unix platformlar�nda �al���r?
-1.4) Hangi Unix olmayan uyarlamalar� bulunmaktad�r?
-1.5) PostgreSQL'i nereden indirebilirim?
-1.6) Deste�i nereden alabilirim?
-1.7) En son s�r�m� nedir?
-1.8) Hangi belgelere ula�abilirim?
-1.9) Bilinen hatalar ya da eksik �zelliklere nereden ulasabilirim?
-1.10) Nas�l SQL ��renebilirim?
-1.11) PostgreSQL 2000 y�l�na uyumlu mudur?
-1.12) Geli�tirme tak�m�na nas�l kat�labilirim??
-1.13) Bir hata raporunu nas�l g�nderebilirim?
-1.14) PostgreSQL, di�er VTYS(DBMS) lerle nas�l kar��la�t�r�labilir?
-1.15) PostgreSQL'e maddi a��dan nas�l destek olabilirim?
-Kullan�c�/istemci Sorular�
-2.1) PostgreSQL i�in ODBC s�r�c�leri var m�?
-2.2) PostgreSQL'i web sayfalar�nda kullanabilmek i�in hangi ara�lar bulunmaktad�r?
-2.3) PostgreSQL'in grafik kullan�c� arabirimi var m�d�r?
-2.4) PostgreSQL ile ileti�imi kurabilmek i�in hangi dilleri kullanabilirim?
-Y�netimsel Sorular
-3.1) PostgreSQL'i /usr/local/pgsql dizininden ba�ka dizinlere nas�l kurabilirim?
-3.2) Postmaster'� ba�latt���mda Bad System Call ya da core dumped mesaj� al�yorum. Neden?
-3.3) Postmaster'� ba�latt���mda, IpcMemoryCreate hatas� al�yorum. Neden?
-3.4) Postmaster'�, ba�latt���mda, IpcSemaphoreCreate hatas� al�yorum. Neden?
-3.5) Di�er bilgisayarlar�n benim PostgreSQL veritaban� sunucuma ba�lant�lar�n� nas�l kontrol edebilirim?
-3.6) Veritaban� motorunu daha iyi ba�ar�m icin nas�l ayarlayabilirim?
-3.7) Hangi hata ay�klama �zellikleri bulunmaktad�r?
-3.8) Ba�lanmaya �al���rken, neden "Sorry, too many clients" hatas�n� al�yorum. Neden?
-3.9) pgsql_tmpdizinin i�indeki dosyalar nelerdir?
-3.10) PostgreSQL s�r�mlerini y�kseltmek i�in neden bir dump/reload i�lemi ger�ekle�tirmek zorunday�m?
-3.11) Nas�l bir donan�m kullanmal�y�m?br>
-��letimsel Sorular
-4.1) Binary cursor ve normal cursor aras�ndaki fark ned�r?
-4.2) Sorgunun sadece ilk birka� sat�r�n� nas�l SELECT edebilirim?
-4.3) psql'in i�inde g�rd�g�m tablolar�n ya da di�er �eylerin listesini nas�l alabilirim?
-4.4) Bir tablodan bir kolonu nas�l kald�rabilirim?
-4.5) Bir sat�r, tablo ve veritaban� i�in en fazla b�y�kl�k nedir?
-4.6) Tipik bir metin dosyas�ndaki veriyi saklamak i�in ne kadar disk alan� gereklidir?
-4.7) Veritaban�nda hangi tablo ya da index'lerin tan�mland���n� nas�l g�rebilirim?
-4.8) Sorgular�m cok yava�, ya da index'lerimi kullanm�yorlar. Neden?
-4.9) Query-optimizer'�n sorgular�m� nas�l de�erlendirdi�ini, i�leme soktu�unu nas�l g�rebilirim?
-4.10) R-tree index nedir?
-4.11) Genetic Query Optimizer nedir?
-4.12) D�zenli ifade (Regular Expression) aramalar�n� ve b�y�k/k���k harfe duyars�z aramalar� nas�l yapabilirim? Bu
-b�y�k/k���k harfe duyarl� aramalar i�in index'i nas�l kullanabilirim?
-4.13) Bir sorguda, bir alan�n NULL oldu�unu nas�l ortaya ��karabilirim?
-4.14) �esitli karakter tipleri aras�ndaki farklar nelerdir?
-4.15.1) Nas�l serial/otomatik artan (auto-incrementing) bir alan yaratabilirim?
-4.15.2) Serial giri�inin de�erini nas�l alabilirim?
-4.15.3) currval() ve nextval() di�er kullan�c�lara sorun yaratmaz m�?
-4.15.4) Neden sequence say�lar�n transaction i�leminin iptalinden sonra yeniden kullan�l�yor? Neden sequence/SERIAL
-kolonumdaki say�larda atlamalar oluyor?
-4.16) OID nedir? TID nedir?
-4.17) PostgreSQL' de kullan�lan baz� terimlerin anlamlar� nelerdir?
-4.18) Neden "ERROR: Memory exhausted in AllocSetAlloc()" hatas�n� al�yorum?
-4.19) Hangi PostgreSQL s�r�m�n� �al�st�rd���m� nas�l g�rebilirim?
-4.20) Neden large-object i�lemlerim, "invalid large obj descriptor" hatas�n� veriyor?
-4.21) �u andaki zaman� �ntan�ml� de�er olarak kabul eden kolonu nas�l yarat�r�m?
-4.22) Neden IN kullanan subquery'lerim �ok yava�?
-4.23) Outer join i�lemini nas�l yapabilirim?
-4.24) Ayn� anda birden fazla veritaban�nda nas�l i�lem yapabilirim?
-4.25) Bir fonksiyondan nas�l �oklu sat�r ya da kolon d�nd�rebilirim?
-4.26) Neden Pl/PgSQL fonksiyonlar� i�inden g�venli bir �ekilde tablo yaratma/kald�rma i�lemlerini yapam�yoruz?
-4.27) Hangi �ifreleme se�enekleri bulunmaktad�r?
-PostgreSQL �zelliklerini Geni�letmek
-5.1) Kullan�c�-tan�ml� bir fonksiyon yazd�m. psql'de �al��t�rd���m zaman neden core dump ediyor?
-5.2) PostgreSQL'e nas�l yeni veri tipleri/fonksiyonlar ekleyebilirim?
-5.3) Bir tuple d�nd�rmek i�in bir C fonksiyonunu nas�l yazar�m?
-5.4) Bir kaynak dosyas�nda de�i�iklik yapt�m. Yeniden derlememe ra�men de�i�iklik ge�erli olmuyor. Neden?
-Genel Sorular
-1.1) PostgreSQL nedir? Nas�l okunur?
-
-PostgreSQL, Post-Gres-Q-L. olarak okunur
-
-PostgreSQL, yeni-nesil VTYS ara�t�rma prototipi olan POSTGRES veritaban� y�netim sisteminin geli�tirilmesidir.
-POSTGRES'in zengin veri tiplerini ve g��l� veri modelini tutarken, SQL'in geli�tirilmi� alt k�mesi olan PostQuel dilini
-kullan�r. PostgreSQL �cretsizdir ve kaynak kodu a��k da��t�l�r.
-
-PostgreSQL, PostgreSQL geli�tirme listesine �ye olan bir Internet geli�tirici tak�m� taraf�ndan geli�tirilir. �u andaki
-koordinat�r, Marc G. Fournier ([email protected]). (Bu tak�ma nas�l kat�lacag�n�z� ��renmek i�in 1.6 numaral�
-maddeyi okuyunuz.) Bu tak�m, t�m PostgreSQL geli�iminden sorumludur.
-
-PostgreSQL 1.01 s�r�m�n�n yazarlar� Andrew Yu ve Jolly Chen idi. Bunlar�n d���nda bir ka� kisi de uyarlama, hata
-ay�klama ve kodun geli�tirilmesi i�in �al�sm��t�. PostgreSQL'in t�redi�i orijinal Postgres kodu, lisans, lisans�st� ve
-akademisyenler taraf�ndan, Professor Michael Stonebraker (University of California, Berkeley) koordinat�rl�g�nde
-yaz�lm��t�r.
-
-Berkley'deki yaz�l�m�n ad� Postgres idi. SQL uyumlulu�u 1995'te eklenince, ad� Postgres 95 oldu. 1996 y�l�n�n
-sonlar�nda ad� PostgreSQL olarak de�i�tirildi.
-1.2) PostgreSQL'in haklar� nedir?
-
-PostgreSQL Data Base Management System
-
-Portions copyright (c) 1996-2002, PostgreSQL Global Development Group Portions Copyright (c) 1994-6 Regents of the
-University of California
-
-Permission to use, copy, modify, and distribute this software and its documentation for any purpose, without fee, and
-without a written agreement is hereby granted, provided that the above copyright notice and this paragraph and the
-following two paragraphs appear in all copies.
-
-IN NO EVENT SHALL THE UNIVERSITY OF CALIFORNIA BE LIABLE TO ANY PARTY FOR DIRECT, INDIRECT, SPECIAL, INCIDENTAL, OR
-CONSEQUENTIAL DAMAGES, INCLUDING LOST PROFITS, ARISING OUT OF THE USE OF THIS SOFTWARE AND ITS DOCUMENTATION, EVEN IF
-THE UNIVERSITY OF CALIFORNIA HAS BEEN ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
-
-THE UNIVERSITY OF CALIFORNIA SPECIFICALLY DISCLAIMS ANY WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED
-WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE. THE SOFTWARE PROVIDED HEREUNDER IS ON AN "AS IS"
-BASIS, AND THE UNIVERSITY OF CALIFORNIA HAS NO OBLIGATIONS TO PROVIDE MAINTENANCE, SUPPORT, UPDATES, ENHANCEMENTS, OR
-MODIFICATIONS.
-
-�stteki metin klasik a��k-kod lisans� olan BSD lisans�d�r. Kaynak kodun nas�l kullan�labilece�ine dair s�n�rlamalar�
-yoktur. Bu lisans� seviyoruz. De�i�tirme niyetimiz bulunmamaktad�r.
-1.3) PostgreSQL, hangi Unix platforlar�nda �al���r?
-
-Genel olarak, modern bir Unix-uyumlu platform PostgreSQL'i �al��t�racakt�r. Ayr�nt�l� bilgi i�in kurulum belgelerine
-bakabilirsiniz.
-1.4) Hangi Unix olmayan uyarlamalar� bulunmaktad�r?
-
-PostgreSQL 8.0 s�r�m� ile , PostgreSQL art�k Win2000, WinXP ve Win2003 gibi Microsoft Windows NT tabanl� i�letim
-sistemlerinde do�al olarak �al��maya ba�lam��t�r. Paketlenmi� bir kurulum program�, http://pgfoundry.org/projects/pginstaller
-adresinden indirilebilir.
-
-Ayr�ca, http://forge.novell.com adresinde Novell Netware 6 portu bulunmaktad�r.
-1.5) PostgreSQL'i nereden indirebilirim?
-
-PostgreSQL i�in ana anonim ftp sitesi ftp://ftp.PostgreSQL.org/pub adresidir. Yans�lar i�in, ana web sayfam�za
-bakabilirsiniz.
-1.6) Nereden destek alabilirim?
-
-Ana e-posta listesi : [email protected]. PostgreSQL konusundaki tart��malara a��kt�r. �ye olmak i�in,
-a�a��daki sat�rlar� e-postan�z�n body k�sm�na (konu k�sm�na de�il) yaz�p, [email protected] adresine
-g�nderin:
+ PostgreSQL i�in S�k�a Sorulan Sorular (SSS)
+
+ Son g�ncelleme : 15 Kas�m 2004 Pazartesi - 15:03:23
+
+ Current maintainer: Bruce Momjian ([email protected])
+
+ �evirenler : Devrim G�nd�z ([email protected])
+ Nicolai Tufar ([email protected])
+ Volkan YAZICI ([email protected])
+
+ Bu belgenin en g�ncel hali,
+ http://www.PostgreSQL.org/docs/faqs/FAQ_turkish.html ve
+ http://www.gunduz.org/seminer/pg/FAQ_turkish.html adreslerinde
+ g�r�lebilir.
+
+ Platforma �zel sorular�n�z, http://www.PostgreSQL.org/docs/index.html
+ adresinde yan�tlan�r.
+ _________________________________________________________________
+
+ Genel Sorular
+
+ 1.1) PostgreSQL nedir? Nas�l okunur?
+ 1.2) PostgreSQL'in haklar� nedir?
+ 1.3) PostgreSQL, hangi Unix platformlar�nda �al���r?
+ 1.4) Hangi Unix olmayan uyarlamalar� bulunmaktad�r?
+ 1.5) PostgreSQL'i nereden indirebilirim?
+ 1.6) Deste�i nereden alabilirim?
+ 1.7) En son s�r�m� nedir?
+ 1.8) Hangi belgelere ula�abilirim?
+ 1.9) Bilinen hatalar ya da eksik �zelliklere nereden ulasabilirim?
+ 1.10) Nas�l SQL ��renebilirim?
+ 1.11) PostgreSQL 2000 y�l�na uyumlu mudur?
+ 1.12) Geli�tirme tak�m�na nas�l kat�labilirim??
+ 1.13) Bir hata raporunu nas�l g�nderebilirim?
+ 1.14) PostgreSQL, di�er VTYS(DBMS) lerle nas�l kar��la�t�r�labilir?
+ 1.15) PostgreSQL'e maddi a��dan nas�l destek olabilirim?
+
+ Kullan�c�/istemci Sorular�
+
+ 2.1) PostgreSQL i�in ODBC s�r�c�leri var m�?
+ 2.2) PostgreSQL'i web sayfalar�nda kullanabilmek i�in hangi ara�lar
+ bulunmaktad�r?
+ 2.3) PostgreSQL'in grafik kullan�c� arabirimi var m�d�r?
+ 2.4) PostgreSQL ile ileti�imi kurabilmek i�in hangi dilleri
+ kullanabilirim?
+
+ Y�netimsel Sorular
+
+ 3.1) PostgreSQL'i /usr/local/pgsql dizininden ba�ka dizinlere nas�l
+ kurabilirim?
+ 3.2) Postmaster'� ba�latt���mda Bad System Call ya da core dumped
+ mesaj� al�yorum. Neden?
+ 3.3) Postmaster'� ba�latt���mda, IpcMemoryCreate hatas� al�yorum.
+ Neden?
+ 3.4) Postmaster'�, ba�latt���mda, IpcSemaphoreCreate hatas� al�yorum.
+ Neden?
+ 3.5) Di�er bilgisayarlar�n benim PostgreSQL veritaban� sunucuma
+ ba�lant�lar�n� nas�l kontrol edebilirim?
+ 3.6) Veritaban� motorunu daha iyi ba�ar�m icin nas�l ayarlayabilirim?
+ 3.7) Hangi hata ay�klama �zellikleri bulunmaktad�r?
+ 3.8) Ba�lanmaya �al���rken, neden "Sorry, too many clients" hatas�n�
+ al�yorum. Neden?
+ 3.9) pgsql_tmpdizinin i�indeki dosyalar nelerdir?
+ 3.10) PostgreSQL s�r�mlerini y�kseltmek i�in neden bir dump/reload
+ i�lemi ger�ekle�tirmek zorunday�m?
+ 3.11) Nas�l bir donan�m kullanmal�y�m?br>
+
+ ��letimsel Sorular
+
+ 4.1) Binary cursor ve normal cursor aras�ndaki fark ned�r?
+ 4.2) Sorgunun sadece ilk birka� sat�r�n� nas�l SELECT edebilirim?
+ 4.3) psql'in i�inde g�rd�g�m tablolar�n ya da di�er �eylerin listesini
+ nas�l alabilirim?
+ 4.4) Bir tablodan bir kolonu nas�l kald�rabilirim?
+ 4.5) Bir sat�r, tablo ve veritaban� i�in en fazla b�y�kl�k nedir?
+ 4.6) Tipik bir metin dosyas�ndaki veriyi saklamak i�in ne kadar disk
+ alan� gereklidir?
+ 4.7) Veritaban�nda hangi tablo ya da index'lerin tan�mland���n� nas�l
+ g�rebilirim?
+ 4.8) Sorgular�m cok yava�, ya da index'lerimi kullanm�yorlar. Neden?
+ 4.9) Query-optimizer'�n sorgular�m� nas�l de�erlendirdi�ini, i�leme
+ soktu�unu nas�l g�rebilirim?
+ 4.10) R-tree index nedir?
+ 4.11) Genetic Query Optimizer nedir?
+ 4.12) D�zenli ifade (Regular Expression) aramalar�n� ve b�y�k/k���k
+ harfe duyars�z aramalar� nas�l yapabilirim? Bu b�y�k/k���k harfe
+ duyarl� aramalar i�in index'i nas�l kullanabilirim?
+ 4.13) Bir sorguda, bir alan�n NULL oldu�unu nas�l ortaya
+ ��karabilirim?
+ 4.14) �esitli karakter tipleri aras�ndaki farklar nelerdir?
+ 4.15.1) Nas�l serial/otomatik artan (auto-incrementing) bir alan
+ yaratabilirim?
+ 4.15.2) Serial giri�inin de�erini nas�l alabilirim?
+ 4.15.3) currval() ve nextval() di�er kullan�c�lara sorun yaratmaz m�?
+ 4.15.4) Neden sequence say�lar�n transaction i�leminin iptalinden
+ sonra yeniden kullan�l�yor? Neden sequence/SERIAL kolonumdaki
+ say�larda atlamalar oluyor?
+ 4.16) OID nedir? TID nedir?
+ 4.17) PostgreSQL' de kullan�lan baz� terimlerin anlamlar� nelerdir?
+ 4.18) Neden "ERROR: Memory exhausted in AllocSetAlloc()" hatas�n�
+ al�yorum?
+ 4.19) Hangi PostgreSQL s�r�m�n� �al�st�rd���m� nas�l g�rebilirim?
+ 4.20) Neden large-object i�lemlerim, "invalid large obj descriptor"
+ hatas�n� veriyor?
+ 4.21) �u andaki zaman� �ntan�ml� de�er olarak kabul eden kolonu nas�l
+ yarat�r�m?
+ 4.22) Neden IN kullanan subquery'lerim �ok yava�?
+ 4.23) Outer join i�lemini nas�l yapabilirim?
+ 4.24) Ayn� anda birden fazla veritaban�nda nas�l i�lem yapabilirim?
+ 4.25) Bir fonksiyondan nas�l �oklu sat�r ya da kolon d�nd�rebilirim?
+ 4.26) Neden Pl/PgSQL fonksiyonlar� i�inden g�venli bir �ekilde tablo
+ yaratma/kald�rma i�lemlerini yapam�yoruz?
+ 4.27) Hangi �ifreleme se�enekleri bulunmaktad�r?
+
+ PostgreSQL �zelliklerini Geni�letmek
+
+ 5.1) Kullan�c�-tan�ml� bir fonksiyon yazd�m. psql'de �al��t�rd���m
+ zaman neden core dump ediyor?
+ 5.2) PostgreSQL'e nas�l yeni veri tipleri/fonksiyonlar ekleyebilirim?
+ 5.3) Bir tuple d�nd�rmek i�in bir C fonksiyonunu nas�l yazar�m?
+ 5.4) Bir kaynak dosyas�nda de�i�iklik yapt�m. Yeniden derlememe ra�men
+ de�i�iklik ge�erli olmuyor. Neden?
+ _________________________________________________________________
+
+ Genel Sorular
+
+ 1.1) PostgreSQL nedir? Nas�l okunur?
+
+ PostgreSQL, Post-Gres-Q-L. olarak okunur
+
+ PostgreSQL, yeni-nesil VTYS ara�t�rma prototipi olan POSTGRES
+ veritaban� y�netim sisteminin geli�tirilmesidir. POSTGRES'in zengin
+ veri tiplerini ve g��l� veri modelini tutarken, SQL'in geli�tirilmi�
+ alt k�mesi olan PostQuel dilini kullan�r. PostgreSQL �cretsizdir ve
+ kaynak kodu a��k da��t�l�r.
+
+ PostgreSQL, PostgreSQL geli�tirme listesine �ye olan bir Internet
+ geli�tirici tak�m� taraf�ndan geli�tirilir. �u andaki koordinat�r,
+ Marc G. Fournier ([email protected]). (Bu tak�ma nas�l
+ kat�lacag�n�z� ��renmek i�in 1.6 numaral� maddeyi okuyunuz.) Bu tak�m,
+ t�m PostgreSQL geli�iminden sorumludur.
+
+ PostgreSQL 1.01 s�r�m�n�n yazarlar� Andrew Yu ve Jolly Chen idi.
+ Bunlar�n d���nda bir ka� kisi de uyarlama, hata ay�klama ve kodun
+ geli�tirilmesi i�in �al�sm��t�. PostgreSQL'in t�redi�i orijinal
+ Postgres kodu, lisans, lisans�st� ve akademisyenler taraf�ndan,
+ Professor Michael Stonebraker (University of California, Berkeley)
+ koordinat�rl�g�nde yaz�lm��t�r.
+
+ Berkley'deki yaz�l�m�n ad� Postgres idi. SQL uyumlulu�u 1995'te
+ eklenince, ad� Postgres 95 oldu. 1996 y�l�n�n sonlar�nda ad�
+ PostgreSQL olarak de�i�tirildi.
+
+ 1.2) PostgreSQL'in haklar� nedir?
+
+ PostgreSQL Data Base Management System
+
+ Portions Copyright (c) 1996-2005, PostgreSQL Global Development Group
+ Portions Copyright (c) 1994-6 Regents of the University of California
+
+ Permission to use, copy, modify, and distribute this software and its
+ documentation for any purpose, without fee, and without a written
+ agreement is hereby granted, provided that the above copyright notice
+ and this paragraph and the following two paragraphs appear in all
+ copies.
+
+ IN NO EVENT SHALL THE UNIVERSITY OF CALIFORNIA BE LIABLE TO ANY PARTY
+ FOR DIRECT, INDIRECT, SPECIAL, INCIDENTAL, OR CONSEQUENTIAL DAMAGES,
+ INCLUDING LOST PROFITS, ARISING OUT OF THE USE OF THIS SOFTWARE AND
+ ITS DOCUMENTATION, EVEN IF THE UNIVERSITY OF CALIFORNIA HAS BEEN
+ ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+
+ THE UNIVERSITY OF CALIFORNIA SPECIFICALLY DISCLAIMS ANY WARRANTIES,
+ INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF
+ MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE. THE SOFTWARE
+ PROVIDED HEREUNDER IS ON AN "AS IS" BASIS, AND THE UNIVERSITY OF
+ CALIFORNIA HAS NO OBLIGATIONS TO PROVIDE MAINTENANCE, SUPPORT,
+ UPDATES, ENHANCEMENTS, OR MODIFICATIONS.
+
+ �stteki metin klasik a��k-kod lisans� olan BSD lisans�d�r. Kaynak
+ kodun nas�l kullan�labilece�ine dair s�n�rlamalar� yoktur. Bu lisans�
+ seviyoruz. De�i�tirme niyetimiz bulunmamaktad�r.
+
+ 1.3) PostgreSQL, hangi Unix platforlar�nda �al���r?
+
+ Genel olarak, modern bir Unix-uyumlu platform PostgreSQL'i
+ �al��t�racakt�r. Ayr�nt�l� bilgi i�in kurulum belgelerine
+ bakabilirsiniz.
+
+ 1.4) Hangi Unix olmayan uyarlamalar� bulunmaktad�r?
+
+ PostgreSQL 8.0 s�r�m� ile , PostgreSQL art�k Win2000, WinXP ve Win2003
+ gibi Microsoft Windows NT tabanl� i�letim sistemlerinde do�al olarak
+ �al��maya ba�lam��t�r. Paketlenmi� bir kurulum program�,
+ http://pgfoundry.org/projects/pginstaller. adresinden indirilebilir.
+
+ Ayr�ca, http://forge.novell.com adresinde Novell Netware 6 portu
+ bulunmaktad�r.
+
+ 1.5) PostgreSQL'i nereden indirebilirim?
+
+ PostgreSQL i�in ana anonim ftp sitesi ftp://ftp.PostgreSQL.org/pub
+ adresidir. Yans�lar i�in, ana web sayfam�za bakabilirsiniz.
+
+ 1.6) Nereden destek alabilirim?
+
+ Ana e-posta listesi : [email protected]. PostgreSQL
+ konusundaki tart��malara a��kt�r. �ye olmak i�in, a�a��daki sat�rlar�
+ e-postan�z�n body k�sm�na (konu k�sm�na de�il) yaz�p,
+ [email protected] adresine g�nderin:
subscribe
end
-Ayn� zamanda, bir digest listesi bulunmaktad�r. Bu listeye �ye olmak i�in, [email protected]
-adresine, body k�sm�nda
-
+ Ayn� zamanda, bir digest listesi bulunmaktad�r. Bu listeye �ye olmak
+ i�in, [email protected] adresine, body
+ k�sm�nda
subscribe
end
-yazan bir e-posta atman�z yeterli olacakt�r.
-
-Digest postalar, ana liste 30k civar�nda e-postaya ula�t���nda �yelere g�nderilmektedir.
-
-Bug'lar i�in bir e-posta listesi bulunmaktad�r. Bu listeye �ye olmak i�in, [email protected] adresine,
-body k�sm�nda
-
+ yazan bir e-posta atman�z yeterli olacakt�r.
+
+ Digest postalar, ana liste 30k civar�nda e-postaya ula�t���nda �yelere
+ g�nderilmektedir.
+
+ Bug'lar i�in bir e-posta listesi bulunmaktad�r. Bu listeye �ye olmak
+ i�in, [email protected] adresine, body k�sm�nda
subscribe
end
-yazan bir e-posta atman�z yeterli olacakt�r.
-
-Ayn� zamanda, geli�tiriciler i�in tart��ma listesi bulunmaktad�r. Bu listeye �ye olmak i�in,
[email protected] adresine, body k�sm�nda
-
+ yazan bir e-posta atman�z yeterli olacakt�r.
+
+ Ayn� zamanda, geli�tiriciler i�in tart��ma listesi bulunmaktad�r. Bu
+ listeye �ye olmak i�in, [email protected] adresine,
+ body k�sm�nda
subscribe
end
-yazan bir e-posta atman�z yeterli olacakt�r.
-
-Bunun d���ndaki e-posta listelerine ve PostgreSQL hakk�nda bilgiye, PostgreSQL WWW ana sayfas�ndan ulasabilirsiniz:
-http://www.PostgreSQL.org
-
-Ayn� zamanda, EFNet �zerinde, #PostgreSQL adl� bir IRC kanal� bulunmaktad�r. Bunun i�in, irc -c '#PostgreSQL' "$USER"
-irc.phoenix.net Unix komutunu kullanabilirsiniz.
-
-Ticari destek veren firmalar�n listesine
-
-http://www.postgresql.org/users-lounge/commercial-support.html
-
-adresinden ula�bilirsiniz.
-1.7) En son s�r�m nedir?
-
-PostgreSQL'in son s�r�m� 7.4.6'd�r.
-
-Her 6-8 ayda ana s�r�m ��kar�lmas� planlanmaktad�r.
-1.8) Hangi belgelere ula�abilirim?
-
-Da��t�m�n i�inde, kitap��klar, kitap��k sayfalar� ve baz� k���k �rnekler verilmektedir. /doc dizinine bak�n�z. Ayr�ca,
-bu el kitap��klar�n� online olarak http://www.PostgreSQL.org/docs/ adresinden inceleyebilirsiniz.
-
-http://www.PostgreSQL.org/docs/awbook.html ve http://www.commandprompt.com/ppbook adreslerinde PostgreSQL kitaplar�
-bulunmaktad�r. PostgreSQL kitablar�n�n listesine, http://www.ca.PostgreSQL.org/books/ adresinden ula�aiblirsiniz.
-Ayr�ca, PostgreSQL konusundaki teknik makalelere de http://techdocs.PostgreSQL.org/ adresinden ula�abilirsiniz.
-
-psql'in, \d ile baslayan veri tipler, operatorler, fonksiyonlar, aggregate'ler, vb. ile ilgili g�zel komutlar� vard�r.
-
-Web sitemiz daha fazla belgeyi i�ermektedir.
-1.9) Bilinen hatalar ya da eksik �zelliklere nereden ula�abilirim?
-
-PostgreSQL SQL-92 uyumlulu�u i�indedir, standartlardan fazla da �zellikleri bulunmaktad�r. Bilinen hatalar, eksik
-�zellikler ve gelecek ile ilgili planlar i�in TODO listesine bak�n�z.
-1.10) Nas�l SQL ��renebilirim?
-
-http:/www.PostgreSQL.org/docs/awbook.html adresindeki kitap SQL �gretecektir. http://www.commandprompt.com/ppbook
-adresinde de bir baska PostgreSQL kitab� bulunmaktad�r.
-
-http://www.intermedia.net/support/sql/sqltut.shtm,
-http://ourworld.compuserve.com/homepages/graeme_birchall/HTM_COOK.HTM http://sqlcourse.com ve http://sqlcourse2.com
-adreslerinde de g�zel belgeler bulunmaktad�r.
-
-Bir ba�kas� da, http://members.tripod.com/er4ebus/sql/index.htm adresinde bulunan "Teach Yourself SQL in 21 Days,
-Second Edition" kitab�d�r.
-
-Baz� kullan�c�lar�m�z da �u kitab� �nermektedirler: "The Practical SQL Handbook, Bowman, Judith S., et
-al.,Addison-Wesley". Baz�lar� ise "The Complete Reference SQL, Groff et al., McGraw-Hill" kitab�n� �nermektedirler.
-1.11) PostgreSQL 2000 y�l�na uyumlu mudur?
-
-Evet.
-1.12) Geli�tirme tak�m�na nas�l kat�labilirim?
-
-�ncelikle, en son kaynak kodunu indirin ve web sitemizdeki ya da da��t�m�n i�indeki PostgreSQL Developer belgesini
-okuyun. Ard�ndan, pgsql-hackers ve pgsql-patches listelerine �ye olun. ���nc� olarak da, pgsql-pacthes listesine y�ksek
-kalitede yamalar g�nderin.
-
-PostgreSQL CVS ar�ivine eri�im izni olan, 10 kadar geli�tirici bulunmaktad�r. Hepsi defalarca, di�er ki�ilerin
-yapt���ndan �ok daha y�ksek-kaliteli yamalar g�ndermi�lerdir. Ayr�ca biz de bu geli�tiricilerin ekledikleri yamalar�n
-y�ksek kalitede oldu�una g�veniyoruz.
-1.13) Bir hata raporunu nas�l g�nderebilirim?
-
-PostgreSQL BugTool sayfas�na gidiniz. O sayfada bir bug bildirmek i�in neleri yapman�z gerekti�i anlat�lm��t�r.
-
-Ayr�ca, ftp://ftp.PostgreSQL.org/pub ftp adresimizde, yeni bir PostgreSQL s�r�m� ya da yamas� olup olmad���ni kontrol
-ediniz.
-1.14) PostgreSQL, diger DBMS'lerle nas�l kar��last�r�labilir?
-
-Bir yaz�l�m�n g�c�n� �l�mek i�in �e�itli yollar vard�r: Yaz�l�m�n �zellikleri, ba�ar�m�, g�venilirli�i, deste�i ve
-�creti.
-
-�zellikler:
-
-PostgreSQL mevcut b�y�k ticari veritabanlar�n�n, transaction, subselect, trigger, view, foreign key referential
-integrity ve sophisticated locking gibi (user-defined types), rules, inheritance ve lock cak��malar�n� d���rmek i�in
-multi-version uyumluluk �zellikleri bulunmaktad�r.
-
-Performans (Ba�ar�m):
-
-PostgreSQL, di�er ticari ve a��k kaynak kodlu veritabanlar�yla yak�n ba�ar�m� sa�lar. Baz� a��lardan daha h�zl�d�r,
-di�er a��lardan da yava�t�r. MySQL ya da daha zay�f veritabanlar� ile kar��la�t�r�ld���nda, INSERT/UPDATE i�lemlerinde,
-transaction bazl� �al�st���m�z i�in daha yava��z. MySQL, yukar�daki "�zellikler" k�sm�nda belirtilenlerden hi� birine
-sahip de�ildir. Biz, ba�ar�m�m�z� her s�r�mde artt�rsak da, esneklik ve geli�mi� �zellikler i�in yap�lanm�� durumday�z.
-PostgreSQL'i MySQL ile kar��la�t�ran �u web sitesine bakabilirsiniz: http://openacs.org/why-not-mysql.html
-
-G�venilirlik:
-
-DBMS'lerin g�venilir olmas� gerketi�i, yoksa de�erleri olmayaca��n� d���n�yoruz. �ok iyi test edilmi�, dengeli �al�san
-minimum say�da hata i�eren kod sunmaya �al���yoruz. Her bir s�r�m en az 1 ayl�k beta testlerinden ge�irilmektedir.
-S�r�m ge�mi�ine bakarsan�z, �retime haz�r, dengeli ve kararl� kodlar sundu�umuzu g�rebilirsiniz. Bu alanda, di�er
-veritaban� yaz�l�mlar�na �st�nl���m�z oldu�una inanmaktay�z.
-
-Destek:
-
-E-posta listemiz, olu�an herhangi bir sorunu ��zebilecek b�y�k say�da kullan�c� ve geli�tirici grubunu i�erir.
-Sorununuz i�in, en az bir ticari veritaban� kadar rahat ��z�m bulabilirsiniz. Gelistiricilere, kullan�c� grubuna,
-belgelere ve kaynak koda direk olarak eri�ebilme, PostgreSQL deste�ini, di�er DBMS'lere g�re daha �nemli k�lar.
-Gereksinimi olanlara, ticari destek verilebilir. (Destek i�in 1.6 b�l�m�ne bak�n�z.)
-
-Fiyat:
-
-Ticari ve ticari olmayan t�m kullan�mlar�n�z i�in PostgreSQL �cretsizdir. Kodumuzu, yukar�da belirtilen BSD-stili
-lisanstaki s�n�rlamalar hari�, �r�n�n�z�n i�ine ekleyebilirsiniz.
-1.15) PostgreSQL'e maddi a��dan nas�l destek olabilirim?
-
-PostgreSQL, 1996 y�l�ndan beri 1. s�n�f altyap�ya sahiptir. Bunun i�in, y�llar boyu �al���p bu altyap�y� olu�turup
-y�neten Marc Fournier'e te�ekk�rler.
-
-Bir a��k kaynak kodlu proje i�in, kaliteli altyap� �ok �nemlidir. Bu altyap�, projenin kesilmesini �nler ve projenin
-ilerlemesini h�zland�r�r.
-
-Tabii ki bu altyap� ucuz de�ildir. ��lerin y�r�mesi i�in �e�itli y�l�k ve anl�k harcamalar�m�z olmaktad�r. E�er siz ya
-da �irketinizin bu �abam�za ba���ta bulunabilecek paras� varsa, l�tfen http://store.pgsql.com adresine gidiniz
-ve ba���ta, hibede bulununuz.
-
-Web sayfas�n�n 'PostgreSQL Inc.' den bahsetmesine ra�men, "katk�da bulunanlar" (contributors) maddesi sadece PostgreSQL
-projesini desteklemek i�indir ve belirli bir �irketin para kayna�� de�ildir. isterseniz, ba�lant� adresine bir �ek
-g�nderebilirsiniz.
-Kullan�c�/�stemci Sorular�
-2.1) PostgreSQL icin ODBC s�r�c�leri var m�?
-
-iki tane ODBC s�r�c�s� bulunmaktad�r: PsqlODBC ve OpenLink ODBC.
-
-PsqlODBC'i http://gborg.postgresql.org/project/psqlodbc/projdisplay.php adresinden indirebilirsiniz.
-
-OpenLink ODBC http://www.openlinksw.com adresinden al�nabilir.Bu s�r�c�, kendi standart ODBC istemci yaz�l�m� ile
-�al�st���ndan, destekledikleri her platformda (Win, Mac, Unix, VMS) PostgreSQL ODBC bulunmalidir.
-
-�cretsiz s�r�m� olmakla beraber, ticari kalitede destek almak isteyenlere satmak isteyeceklerdir. Sorular�n�z� l�tfen
[email protected] adresine g�nderiniz.
-2.2) PostgreSQL'i web sayfalar�nda kullanabilmek i�in hangi ara�lar bulunmaktad�r?
-
-http://www.webreview.com/ adresinde, arka planda veritaban� �al�st�ran Web sayfalar� i�in giri� seviyesinde bilgi
-bulunmaktad�r.
-
-Web ile b�t�nle�me i�in, PHP () m�kemmel bir arabirim sunar.
-
-Karma��k sorunlar i�in, �o�u kisi Perl arabirimini ve CGI.pm ya da mod_perl kullan�r.
-2.3) PostgreSQL'in grafik kullan�c� arabirimi var m�d�r?
-
-�e�itli grafik arabirimlerimiz bulunmaktad�r. Bunlar�n aras�nda, PgAccess (http://www.pgaccess.org/), PgAdmin II
-(http://www.pgadmin.org/, sadece Win32 i�in), RHDB Admin (http://sources.redhat.com/rhdb/) ve Rekall
-(http://www.thekompany.com/products/rekall/) bulunmaktad�r. Ayr�ca, PostgreSQL i�in web tabanl� bir arabirim olan
-PHPPgAdmin (http://phppgadmin.sourceforge.net/) bulunmaktad�r.
-
-Daha ayr�nt�l� liste i�in http://techdocs.postgresql.org/guides/GUITools adresine bakabilirsiniz.
-2.4) PostgreSQL ile ileti�imi kurabilmek i�in hangi dilleri kullanabilirim?
-
- * C (libpq)
- * Embedded C (ecpg)
- * Java (jdbc)
- * Python (PyGreSQL)
- * TCL (libpgtcl)
-
-Di�erleri i�in, http://gborg.postgresql.org adresindeki Drivers/Interfaces b�l�m�ne bakabilirsiniz.
-Y�netimsel Sorular
-3.1) PostgreSQL'i, /usr/local/pgsql dizininden ba�ka dizinlere nas�l kurabilirim?
-
-configure beti�ini �al�st�r�rken, --prefix se�ene�ini veriniz.
-3.2) postmaster'i baslatt�g�mda, a Bad System Call ya da core dumped mesaj� al�yorum. Neden?
-
-Bunun bir�ok nedeni olabilir. Ancak ilk kontrol edilmesi gereken sey, �ekirdeginize System V uzant�lar�n�n kurulu olup
-olmad�g�n� kontrol etmek olabilir. PostgreSQL shared memory ve semaphores i�in �ekirdek destegine gereksinim duyar.
-3.3) postmaster'i ba�latt���mda, �pcMemoryCreate hatas� al�yorum. Neden?
-
-Ya �ekirde�inizde shared memory deste�iniz d�zg�nce yap�land�r�lmam��t�r, ya da �ekirde�inizdeki mevcut shared memory
-miktar�n� b�y�tmeniz gerekecektir. Gereksinim duyaca��n�z miktar, mimarinize ve postmaster i�in ayarlad�g�n�z tampon
-ile backend i�lemi say�s�na ba�l�d�r. T�m sistemler i�in, tamponlar ve i�lemlerde �ntan�ml� say�larla, ~ 1MB kadar yere
-gereksinmeniz olacakt�r. PostgreSQL 7.3.2 Sistem Y�neticileri Rehberi'ne, shared memory ve semaphorelar hakk�ndaki
-ayr�nt�l� bilgi i�in bakabilirsiniz.
-3.4) postmaster'� ba�latt���mda, �pcSemaphoreCreate hatas� al�yorum. Neden?
-
-E�er hata, "�pcSemaphoreCreate: semget failed (No space left on device)" ise, �ekirde�iniz yeterli semaphore ile
-yap�land�r�lmam�� demektir. Postgres, her bir potansiyel backend i�in bir semaphore gereksinimi duyar. Ge�ici bir
-��z�m, postmaster� backend i�lemleri i�in daha az miktarda s�n�rla ba�latmak olabilir. -N'i varsay�lan de�er olan
-32'den k���k bir de�erle ba�lat�n�z. Daha kal�c� bir ��z�m, �ekirde�inizin SEMMNS ve SEMMNI parametrelerini y�kseltmek
-olacakt�r.
-
-�al��mayan semaphore'lar a��r veritaban� i�lemlerinde ��kme yaratabilirler.
-
-E�er hata mesaj�n�z ba�ka bir �ey ise, �ekirde�inizde semaphore deste�ini yap�land�rmam�� olabilirsiniz. Shared memory
-ve semaphore'lar hakk�ndaki daha ayr�nt�l� bilgi i�in PostgreSQL 7.3.2 Sistem Y�neticileri Rehberi'ne bakabilirsiniz.
-3.5) Diger bilgisayarlar�n benim PostgreSQL veritaban� sunucuma ba�lant�lar�n� nas�l kontrol edebilirim?
-
-�n tan�ml� olarak, PostgreSQL sadece yerel makineden Unix domain sockets kullanarak ba�lan�lmas�na izin verir. Diger
-makineler, postmaster'a -i etiketini ge�irmezseniz ve $PGDATA/pg_hba.conf dosyas�n� d�zenleyerek host-based
-authentication'a olanak vermezseniz, ba�lant� yapamayacaklard�r.
-3.6) Veritabani motorunu daha iyi ba�ar�m i�in nas�l ayarlayabilirim?
-
-Index'ler sorgular� h�zland�rabilir. EXPLAIN komutu, PostgreSQL'in sorgunuzu nas�l yorumlad���n� ve hangi index'leri
-kulland���n� g�rmenize izin verir.
-
-E�er cok fazla INSERT i�lemi yap�yorsan�z, bunlar� b�y�k bir toplu i�lem dosyas�kullan�p COPY komutu ile veritaban�na
-girmeyi deneyiniz. Bu, tekil INSERT'lerden daha h�zl�d�r. �kinci olarak, BEGIN WORK/COMMIT transaction blo�u i�inde
-olmayan ifadeler kendi transaction'lar�ndaym�� gibi d���n�l�r. �oklu ifadeleri tek bir transaction blo�u i�inde
-yapabilirsiniz. Bu, transaction overhead'ini d���recektir. Tek bir transaction blo�u i�inde birden �ok ifadeyi
-�al��t�rmay� deneyebilirsiniz. Bu da ayn� �ekilde, transaction overhead'ini d���r�r.
-
-�e�itli ayarlama se�enekleri mevcuttur. fsync() i�lemini, postmaster'� -o -F se�ene�i ile ba�latarak devre d���
-b�rakabilirsiniz. Bu i�lem, fsync()'lerin her transactiondan sonra diski flush etmesini engelleyecektir.
-
-Ayn� zamanda, postmaster'i -B se�ene�i ile ba�lat�p, backend i�lemleri taraf�ndan kullan�lan shared memory buffers
-say�lar�n� artt�rabilirsiniz. E�er bu parametreyi �ok y�ksek tutarsan�z, �ekirde�inizin shared memory b�lgesindeki
-limiti a�ma olas�l���n�z y�z�nden postmaster ba�layamayabilir. Her bir tampon (buffer) 8K'd�r. �ntan�ml� say� ise 64
-tampondur.
-
-Ayn� �ekilde, backend'in -S se�ene�ini ge�ici s�ralamalar i�in backend s�re�leri taraf�ndan kullan�lacak haf�zay�
-artt�rmak amac�yla kullanabilirsiniz. -S se�ene�i kilobayt cinsinden de�er al�r ve �n tan�ml� de�eri 512'dir (512 K)
-
-Tablolardaki veriyi bir index'e e�lemek amac�yla gruplama i�in CLUSTER komutunu kullanabilirsiniz. Ayr�nt�l� bilgi i�in
-CLUSTER komutunun yard�m sayfas�na bakabilirsiniz.
-3.7) Hangi hata ay�klama �zellikleri bulunmaktad�r?
-
-PostgreSQL, hata ay�klama amac�yla kullan�labilecek durum bilgisi rapor eden �e�itli �zeliklere sahiptir.
-
-�ncelikle, configure beti�ini --enable-cassert se�ene�iyle �al��t�r�rsan�z, bir �ok assert() backend cal��mas�n�
-g�zlemler ve beklenmeyen bir durumda program� durdurur.
-
-Postmaster ve postgres �e�itli hata ay�klama se�eneklerine sahiptir. �ncelikle, postmaster'� ba�latt���n�zda, standart
-��kt�y� ve hatalar� bir log dosyas�na y�nlendirdi�inize emin olun:
-
+ yazan bir e-posta atman�z yeterli olacakt�r.
+
+ Bunun d���ndaki e-posta listelerine ve PostgreSQL hakk�nda bilgiye,
+ PostgreSQL WWW ana sayfas�ndan ulasabilirsiniz:
+ http://www.PostgreSQL.org
+
+ Ayn� zamanda, EFNet �zerinde, #PostgreSQL adl� bir IRC kanal�
+ bulunmaktad�r. Bunun i�in, irc -c '#PostgreSQL' "$USER"
+ irc.phoenix.net Unix komutunu kullanabilirsiniz.
+
+ Ticari destek veren firmalar�n listesine
+
+ http://www.postgresql.org/users-lounge/commercial-support.html
+
+ adresinden ula�bilirsiniz.
+
+ 1.7) En son s�r�m nedir?
+
+ PostgreSQL'in son s�r�m� 7.4.6'd�r.
+
+ Her 6-8 ayda ana s�r�m ��kar�lmas� planlanmaktad�r.
+
+ 1.8) Hangi belgelere ula�abilirim?
+
+ Da��t�m�n i�inde, kitap��klar, kitap��k sayfalar� ve baz� k���k
+ �rnekler verilmektedir. /doc dizinine bak�n�z. Ayr�ca, bu el
+ kitap��klar�n� online olarak http://www.PostgreSQL.org/docs/
+ adresinden inceleyebilirsiniz.
+
+ http://www.PostgreSQL.org/docs/awbook.html ve
+ http://www.commandprompt.com/ppbook adreslerinde PostgreSQL kitaplar�
+ bulunmaktad�r. PostgreSQL kitablar�n�n listesine,
+ http://www.ca.PostgreSQL.org/books/ adresinden ula�aiblirsiniz.
+ Ayr�ca, PostgreSQL konusundaki teknik makalelere de
+ http://techdocs.PostgreSQL.org/ adresinden ula�abilirsiniz.
+
+ psql'in, \d ile baslayan veri tipler, operatorler, fonksiyonlar,
+ aggregate'ler, vb. ile ilgili g�zel komutlar� vard�r.
+
+ Web sitemiz daha fazla belgeyi i�ermektedir.
+
+ 1.9) Bilinen hatalar ya da eksik �zelliklere nereden ula�abilirim?
+
+ PostgreSQL SQL-92 uyumlulu�u i�indedir, standartlardan fazla da
+ �zellikleri bulunmaktad�r. Bilinen hatalar, eksik �zellikler ve
+ gelecek ile ilgili planlar i�in TODO listesine bak�n�z.
+
+ 1.10) Nas�l SQL ��renebilirim?
+
+ http:/www.PostgreSQL.org/docs/awbook.html adresindeki kitap SQL
+ �gretecektir. http://www.commandprompt.com/ppbook adresinde de bir
+ baska PostgreSQL kitab� bulunmaktad�r.
+
+ http://www.intermedia.net/support/sql/sqltut.shtm,
+ http://ourworld.compuserve.com/homepages/graeme_birchall/HTM_COOK.HTM
+ http://sqlcourse.com ve http://sqlcourse2.com adreslerinde de g�zel
+ belgeler bulunmaktad�r.
+
+ Bir ba�kas� da, http://members.tripod.com/er4ebus/sql/index.htm
+ adresinde bulunan "Teach Yourself SQL in 21 Days, Second Edition"
+ kitab�d�r.
+
+ Baz� kullan�c�lar�m�z da �u kitab� �nermektedirler: "The Practical SQL
+ Handbook, Bowman, Judith S., et al.,Addison-Wesley". Baz�lar� ise "The
+ Complete Reference SQL, Groff et al., McGraw-Hill" kitab�n�
+ �nermektedirler.
+
+ 1.11) PostgreSQL 2000 y�l�na uyumlu mudur?
+
+ Evet.
+
+ 1.12) Geli�tirme tak�m�na nas�l kat�labilirim?
+
+ �ncelikle, en son kaynak kodunu indirin ve web sitemizdeki ya da
+ da��t�m�n i�indeki PostgreSQL Developer belgesini okuyun. Ard�ndan,
+ pgsql-hackers ve pgsql-patches listelerine �ye olun. ���nc� olarak da,
+ pgsql-pacthes listesine y�ksek kalitede yamalar g�nderin.
+
+ PostgreSQL CVS ar�ivine eri�im izni olan, 10 kadar geli�tirici
+ bulunmaktad�r. Hepsi defalarca, di�er ki�ilerin yapt���ndan �ok daha
+ y�ksek-kaliteli yamalar g�ndermi�lerdir. Ayr�ca biz de bu
+ geli�tiricilerin ekledikleri yamalar�n y�ksek kalitede oldu�una
+ g�veniyoruz.
+
+ 1.13) Bir hata raporunu nas�l g�nderebilirim?
+
+ PostgreSQL BugTool sayfas�na gidiniz. O sayfada bir bug bildirmek i�in
+ neleri yapman�z gerekti�i anlat�lm��t�r.
+
+ Ayr�ca, ftp://ftp.PostgreSQL.org/pub ftp adresimizde, yeni bir
+ PostgreSQL s�r�m� ya da yamas� olup olmad���ni kontrol ediniz.
+
+ 1.14) PostgreSQL, diger DBMS'lerle nas�l kar��last�r�labilir?
+
+ Bir yaz�l�m�n g�c�n� �l�mek i�in �e�itli yollar vard�r: Yaz�l�m�n
+ �zellikleri, ba�ar�m�, g�venilirli�i, deste�i ve �creti.
+
+ �zellikler:
+
+ PostgreSQL mevcut b�y�k ticari veritabanlar�n�n, transaction,
+ subselect, trigger, view, foreign key referential integrity ve
+ sophisticated locking gibi (user-defined types), rules, inheritance ve
+ lock cak��malar�n� d���rmek i�in multi-version uyumluluk �zellikleri
+ bulunmaktad�r.
+
+ Performans (Ba�ar�m):
+
+ PostgreSQL, di�er ticari ve a��k kaynak kodlu veritabanlar�yla yak�n
+ ba�ar�m� sa�lar. Baz� a��lardan daha h�zl�d�r, di�er a��lardan da
+ yava�t�r. MySQL ya da daha zay�f veritabanlar� ile
+ kar��la�t�r�ld���nda, INSERT/UPDATE i�lemlerinde, transaction bazl�
+ �al�st���m�z i�in daha yava��z. MySQL, yukar�daki "�zellikler"
+ k�sm�nda belirtilenlerden hi� birine sahip de�ildir. Biz, ba�ar�m�m�z�
+ her s�r�mde artt�rsak da, esneklik ve geli�mi� �zellikler i�in
+ yap�lanm�� durumday�z. PostgreSQL'i MySQL ile kar��la�t�ran �u web
+ sitesine bakabilirsiniz: http://openacs.org/why-not-mysql.html
+
+ G�venilirlik:
+
+ DBMS'lerin g�venilir olmas� gerketi�i, yoksa de�erleri olmayaca��n�
+ d���n�yoruz. �ok iyi test edilmi�, dengeli �al�san minimum say�da hata
+ i�eren kod sunmaya �al���yoruz. Her bir s�r�m en az 1 ayl�k beta
+ testlerinden ge�irilmektedir. S�r�m ge�mi�ine bakarsan�z, �retime
+ haz�r, dengeli ve kararl� kodlar sundu�umuzu g�rebilirsiniz. Bu
+ alanda, di�er veritaban� yaz�l�mlar�na �st�nl���m�z oldu�una
+ inanmaktay�z.
+
+ Destek:
+
+ E-posta listemiz, olu�an herhangi bir sorunu ��zebilecek b�y�k say�da
+ kullan�c� ve geli�tirici grubunu i�erir. Sorununuz i�in, en az bir
+ ticari veritaban� kadar rahat ��z�m bulabilirsiniz. Gelistiricilere,
+ kullan�c� grubuna, belgelere ve kaynak koda direk olarak eri�ebilme,
+ PostgreSQL deste�ini, di�er DBMS'lere g�re daha �nemli k�lar.
+ Gereksinimi olanlara, ticari destek verilebilir. (Destek i�in 1.6
+ b�l�m�ne bak�n�z.)
+
+ Fiyat:
+
+ Ticari ve ticari olmayan t�m kullan�mlar�n�z i�in PostgreSQL
+ �cretsizdir. Kodumuzu, yukar�da belirtilen BSD-stili lisanstaki
+ s�n�rlamalar hari�, �r�n�n�z�n i�ine ekleyebilirsiniz.
+
+ 1.15) PostgreSQL'e maddi a��dan nas�l destek olabilirim?
+
+ PostgreSQL, 1996 y�l�ndan beri 1. s�n�f altyap�ya sahiptir. Bunun
+ i�in, y�llar boyu �al���p bu altyap�y� olu�turup y�neten Marc
+ Fournier'e te�ekk�rler.
+
+ Bir a��k kaynak kodlu proje i�in, kaliteli altyap� �ok �nemlidir. Bu
+ altyap�, projenin kesilmesini �nler ve projenin ilerlemesini
+ h�zland�r�r.
+
+ Tabii ki bu altyap� ucuz de�ildir. ��lerin y�r�mesi i�in �e�itli y�l�k
+ ve anl�k harcamalar�m�z olmaktad�r. E�er siz ya da �irketinizin bu
+ �abam�za ba���ta bulunabilecek paras� varsa, l�tfen
+ http://store.pgsql.com/ adresine gidiniz ve ba���ta, hibede bulununuz.
+
+ Web sayfas�n�n 'PostgreSQL Inc.' den bahsetmesine ra�men, "katk�da
+ bulunanlar" (contributors) maddesi sadece PostgreSQL projesini
+ desteklemek i�indir ve belirli bir �irketin para kayna�� de�ildir.
+ isterseniz, ba�lant� adresine bir �ek g�nderebilirsiniz.
+ _________________________________________________________________
+
+ Kullan�c�/�stemci Sorular�
+
+ 2.1) PostgreSQL icin ODBC s�r�c�leri var m�?
+
+ iki tane ODBC s�r�c�s� bulunmaktad�r: PsqlODBC ve OpenLink ODBC.
+
+ PsqlODBC'i
+ http://gborg.postgresql.org/project/psqlodbc/projdisplay.php
+ adresinden indirebilirsiniz.
+
+ OpenLink ODBC http://www.openlinksw.com adresinden al�nabilir.Bu
+ s�r�c�, kendi standart ODBC istemci yaz�l�m� ile �al�st���ndan,
+ destekledikleri her platformda (Win, Mac, Unix, VMS) PostgreSQL ODBC
+ bulunmalidir.
+
+ �cretsiz s�r�m� olmakla beraber, ticari kalitede destek almak
+ isteyenlere satmak isteyeceklerdir. Sorular�n�z� l�tfen
+ [email protected] adresine g�nderiniz.
+
+ 2.2) PostgreSQL'i web sayfalar�nda kullanabilmek i�in hangi ara�lar
+ bulunmaktad�r?
+
+ http://www.webreview.com/ adresinde, arka planda veritaban� �al�st�ran
+ Web sayfalar� i�in giri� seviyesinde bilgi bulunmaktad�r.
+
+ Web ile b�t�nle�me i�in, PHP () m�kemmel bir arabirim sunar.
+
+ Karma��k sorunlar i�in, �o�u kisi Perl arabirimini ve CGI.pm ya da
+ mod_perl kullan�r.
+
+ 2.3) PostgreSQL'in grafik kullan�c� arabirimi var m�d�r?
+
+ �e�itli grafik arabirimlerimiz bulunmaktad�r. Bunlar�n aras�nda,
+ PgAccess (http://www.pgaccess.org/), PgAdmin II
+ (http://www.pgadmin.org/, sadece Win32 i�in), RHDB Admin
+ (http://sources.redhat.com/rhdb/) ve Rekall
+ (http://www.thekompany.com/products/rekall/) bulunmaktad�r. Ayr�ca,
+ PostgreSQL i�in web tabanl� bir arabirim olan PHPPgAdmin
+ (http://phppgadmin.sourceforge.net/) bulunmaktad�r.
+
+ Daha ayr�nt�l� liste i�in
+ http://techdocs.postgresql.org/guides/GUITools adresine
+ bakabilirsiniz.
+
+ 2.4) PostgreSQL ile ileti�imi kurabilmek i�in hangi dilleri kullanabilirim?
+
+ * C (libpq)
+ * Embedded C (ecpg)
+ * Java (jdbc)
+ * Python (PyGreSQL)
+ * TCL (libpgtcl)
+
+ Di�erleri i�in, http://gborg.postgresql.org adresindeki
+ Drivers/Interfaces b�l�m�ne bakabilirsiniz.
+ _________________________________________________________________
+
+ Y�netimsel Sorular
+
+ 3.1) PostgreSQL'i, /usr/local/pgsql dizininden ba�ka dizinlere nas�l
+ kurabilirim?
+
+ configure beti�ini �al�st�r�rken, --prefix se�ene�ini veriniz.
+
+ 3.2) postmaster'i baslatt�g�mda, a Bad System Call ya da core dumped mesaj�
+ al�yorum. Neden?
+
+ Bunun bir�ok nedeni olabilir. Ancak ilk kontrol edilmesi gereken sey,
+ �ekirdeginize System V uzant�lar�n�n kurulu olup olmad�g�n� kontrol
+ etmek olabilir. PostgreSQL shared memory ve semaphores i�in �ekirdek
+ destegine gereksinim duyar.
+
+ 3.3) postmaster'i ba�latt���mda, �pcMemoryCreate hatas� al�yorum. Neden?
+
+ Ya �ekirde�inizde shared memory deste�iniz d�zg�nce
+ yap�land�r�lmam��t�r, ya da �ekirde�inizdeki mevcut shared memory
+ miktar�n� b�y�tmeniz gerekecektir. Gereksinim duyaca��n�z miktar,
+ mimarinize ve postmaster i�in ayarlad�g�n�z tampon ile backend i�lemi
+ say�s�na ba�l�d�r. T�m sistemler i�in, tamponlar ve i�lemlerde
+ �ntan�ml� say�larla, ~ 1MB kadar yere gereksinmeniz olacakt�r.
+ PostgreSQL 7.3.2 Sistem Y�neticileri Rehberi'ne, shared memory ve
+ semaphorelar hakk�ndaki ayr�nt�l� bilgi i�in bakabilirsiniz.
+
+ 3.4) postmaster'� ba�latt���mda, �pcSemaphoreCreate hatas� al�yorum. Neden?
+
+ E�er hata, "�pcSemaphoreCreate: semget failed (No space left on
+ device)" ise, �ekirde�iniz yeterli semaphore ile yap�land�r�lmam��
+ demektir. Postgres, her bir potansiyel backend i�in bir semaphore
+ gereksinimi duyar. Ge�ici bir ��z�m, postmaster� backend i�lemleri
+ i�in daha az miktarda s�n�rla ba�latmak olabilir. -N'i varsay�lan
+ de�er olan 32'den k���k bir de�erle ba�lat�n�z. Daha kal�c� bir ��z�m,
+ �ekirde�inizin SEMMNS ve SEMMNI parametrelerini y�kseltmek olacakt�r.
+
+ �al��mayan semaphore'lar a��r veritaban� i�lemlerinde ��kme
+ yaratabilirler.
+
+ E�er hata mesaj�n�z ba�ka bir �ey ise, �ekirde�inizde semaphore
+ deste�ini yap�land�rmam�� olabilirsiniz. Shared memory ve
+ semaphore'lar hakk�ndaki daha ayr�nt�l� bilgi i�in PostgreSQL 7.3.2
+ Sistem Y�neticileri Rehberi'ne bakabilirsiniz.
+
+ 3.5) Diger bilgisayarlar�n benim PostgreSQL veritaban� sunucuma
+ ba�lant�lar�n� nas�l kontrol edebilirim?
+
+ �n tan�ml� olarak, PostgreSQL sadece yerel makineden Unix domain
+ sockets kullanarak ba�lan�lmas�na izin verir. Diger makineler,
+ postmaster'a -i etiketini ge�irmezseniz ve $PGDATA/pg_hba.conf
+ dosyas�n� d�zenleyerek host-based authentication'a olanak vermezseniz,
+ ba�lant� yapamayacaklard�r.
+
+ 3.6) Veritabani motorunu daha iyi ba�ar�m i�in nas�l ayarlayabilirim?
+
+ Index'ler sorgular� h�zland�rabilir. EXPLAIN komutu, PostgreSQL'in
+ sorgunuzu nas�l yorumlad���n� ve hangi index'leri kulland���n�
+ g�rmenize izin verir.
+
+ E�er cok fazla INSERT i�lemi yap�yorsan�z, bunlar� b�y�k bir toplu
+ i�lem dosyas�kullan�p COPY komutu ile veritaban�na girmeyi deneyiniz.
+ Bu, tekil INSERT'lerden daha h�zl�d�r. �kinci olarak, BEGIN
+ WORK/COMMIT transaction blo�u i�inde olmayan ifadeler kendi
+ transaction'lar�ndaym�� gibi d���n�l�r. �oklu ifadeleri tek bir
+ transaction blo�u i�inde yapabilirsiniz. Bu, transaction overhead'ini
+ d���recektir. Tek bir transaction blo�u i�inde birden �ok ifadeyi
+ �al��t�rmay� deneyebilirsiniz. Bu da ayn� �ekilde, transaction
+ overhead'ini d���r�r.
+
+ �e�itli ayarlama se�enekleri mevcuttur. fsync() i�lemini, postmaster'�
+ -o -F se�ene�i ile ba�latarak devre d��� b�rakabilirsiniz. Bu i�lem,
+ fsync()'lerin her transactiondan sonra diski flush etmesini
+ engelleyecektir.
+
+ Ayn� zamanda, postmaster'i -B se�ene�i ile ba�lat�p, backend i�lemleri
+ taraf�ndan kullan�lan shared memory buffers say�lar�n�
+ artt�rabilirsiniz. E�er bu parametreyi �ok y�ksek tutarsan�z,
+ �ekirde�inizin shared memory b�lgesindeki limiti a�ma olas�l���n�z
+ y�z�nden postmaster ba�layamayabilir. Her bir tampon (buffer) 8K'd�r.
+ �ntan�ml� say� ise 64 tampondur.
+
+ Ayn� �ekilde, backend'in -S se�ene�ini ge�ici s�ralamalar i�in backend
+ s�re�leri taraf�ndan kullan�lacak haf�zay� artt�rmak amac�yla
+ kullanabilirsiniz. -S se�ene�i kilobayt cinsinden de�er al�r ve �n
+ tan�ml� de�eri 512'dir (512 K)
+
+ Tablolardaki veriyi bir index'e e�lemek amac�yla gruplama i�in CLUSTER
+ komutunu kullanabilirsiniz. Ayr�nt�l� bilgi i�in CLUSTER komutunun
+ yard�m sayfas�na bakabilirsiniz.
+
+ 3.7) Hangi hata ay�klama �zellikleri bulunmaktad�r?
+
+ PostgreSQL, hata ay�klama amac�yla kullan�labilecek durum bilgisi
+ rapor eden �e�itli �zeliklere sahiptir.
+
+ �ncelikle, configure beti�ini --enable-cassert se�ene�iyle
+ �al��t�r�rsan�z, bir �ok assert() backend cal��mas�n� g�zlemler ve
+ beklenmeyen bir durumda program� durdurur.
+
+ Postmaster ve postgres �e�itli hata ay�klama se�eneklerine sahiptir.
+ �ncelikle, postmaster'� ba�latt���n�zda, standart ��kt�y� ve hatalar�
+ bir log dosyas�na y�nlendirdi�inize emin olun:
cd /usr/local/pgsql
./bin/postmaster >server.log 2>&1 &
-Bu i�lem PostgreSQL ana dizinine server.log dosyas� yerle�tirecektir. Bu dosya sunucunun ya�ad��� sorunlar ya da
-hatalar hakk�nda yararl� bilgiler i�erir. -d se�ene�i, hata ay�klama seviyesini belirten bir rakam ile kullan�l�r.
-Y�ksek hata ay�klama seviyelerinin b�y�k log dosyalar� olu�turaca��n� unutmay�n�z.
-
-E�er postmaster �al��m�yorsa, postgres backend'ini komut sat�r�ndan �al��t�rabilir ve SQL ifadenizi direk olarak
-yazabilirsiniz. Bu sadece hata ay�klama amac�yla �nerilir. Burada, noktal� virg�l�n de�il de yeni bir sat�r�n sorguyu
-sonland�rd���n� unutmay�n�z. E�er hata ay�klama sembolleri ile derlediyseniz, ne oldu�unu g�rmek i�in bir hata
-ay�klay�c� kullanabilirsiniz. backend postmaster'dan ba�lat�lmad���ndan, e�de�er bir ortamda �al��mamaktad�r ve
-locking/backend etkile�im sorunlar� artabilir.
-
-E�er postmaster �al���yorsa, bir pencerede psql'i �al��t�r�n ve psql taraf�ndan kullan�lan postgres s�recinin s�re�
-numaras�n� (PID) bulun. Postgres s�reci ile ili�kilendirmek i�in bir hata ay�klar�c� kullan�n. Sorgular� psql arac�l���
-ile �al��t�rabilirsiniz. E�er postgres ba�lang�c�nda hata ay�klamak istiyorsan�z, PGOPTIONS="-W n" se�ene�ini
-ayarlayabilir ve psql'i ba�latabilirsiniz. Bu i�lem, ba�lang�c�n n saniye kadar gecikmesini sa�layacakt�r; b�ylece hata
-ay�klay�c�y� s�rece ili�kilendirdikten sonra ba�lang�� s�recinin devam etmesini sa�layabilirsiniz.
-
-postgres program� hata ay�klama ve ba�ar�m �l��mleri i�in -s, -A ve -t se�eneklerine sahiptir.
-3.8) Ba�lanmaya �al���rken, neden "Sorry, too many clients" hatas�n� al�yorum?
-
-Postmaster'�n e�zamanl� olarak ba�latabilece�i backend s�re�leri s�n�rlar�n� artt�rman�z gerekmektedir.
-
-�n tan�ml� de�er 32 s�re�tir. Bunu, postmaster'� uygun -N de�eri ile ya da postgresql.conf dosyas�n� d�zenleyerek
-yeniden ba�latmakla artt�rabilirsiniz.
-
-E�er -N de�erini 32'den b�y�k yapacaksan�z, ayn� zamanda -B de�erini de de�i�tirmeniz gerekti�ini unutmay�n. -B, -N'nin
-en az 2 kat� kadar olmal�d�r; daha iyi ba�ar�m i�in bu say�y� daha da artt�rmal�s�n�z. Y�ksek say�daki backend
-s�re�leri i�in, �e�itli �ekirdek yap�land�rma parametrelerini artt�rman�z gerekecektir. Yap�lmas� gerekenler, SHMMAX,
-SEMMNS, SEMMNI, NPROC, MAXUPRC ve a��labilecek dosyalar�n maksimum say�s� olan NFILE ve NINODE de�erlerini
-kar��t�rmakt�r. Bunun nedeni, PostgreSQL'in izin verilen backend s�re�lerinin say�s� �zerinde bir s�n�r� olmas�d�r.
-B�ylelikle sistem kaynaklar�n�n d���na ��k�lmayacakt�r.
-
-PostgreSQL'in 6.5 s�r�m�ne kadar, en fazla backend say�s� 64 idi ve bunu de�i�tirmek i�in include/storage/sinvaladt.h
-dosyas� i�indeki MaxBAckendid sabitini de�i�tirdek sonra yaz�l�m� yeniden derlemek gerekiyordu.
-3.9) pgsql_tmp dizinin i�indeki dosyalar nelerdir?
-
-Sorgu �al�st�r�c� (query executer) taraf�ndan yarat�lan ge�ici dosyalard�r. �rnegin, bir s�ralama ORDER BY ile
-yap�lacaksa ve s�ralama backend'in -s parametresinin izin verdi�inden daha fazla alana gereksinim duyuyorsa, ekstra
-veriyi tutmak i�in ge�ici dosyalar yarat�l�r.
-
-Ge�ici dosyalar, e�er s�ralama s�ras�nda backend g��mezse otomatik olarak silinecektir. E�er �al��an durumda bir
-backend'iniz yoksa, pg_tempNNN.NN dosyalar�n� silmeniz g�venlidir.
-3.10) PostgreSQL s�r�mlerini y�kseltmek i�in neden bir dump/reload i�lemi ger�ekle�tirmek zorunday�m?
-
-PostgreSQL tak�m� ara s�r�mlerde sadece k���k de�i�iklikler yapmaktad�r; bu y�zden 7.2 s�r�m�nden 7.2.1'e y�kseltmek
-dump/restore i�lemi gerekmemektedir. Ancak, esas s�r�mlerde (�rnek: 7.2'den 7.3'e) �o�unlukla sistem tablolar�n�n ve
-veri dosyalar�n�n i� yap�s� de�i�tirilir. Bu de�i�iklikler �o�unlukla karma��kt�r; dolay�s�yla veri dosyalar�n�n geriye
-d�n�k uyumlulu�u i�lemlerini yapm�yoruz. Dump i�lemi, veriyi genel bi�imde alaca��ndan yeniden y�kleme esnas�nda veri,
-yeni i� bi�ime uygun �ekilde yerle�tirilecektir.
-
-Disk bi�iminin de�i�medi�i s�r�mlerde, pg_upgrade beti�i g�ncellemenin bir dump/restore gerektirmeden yap�lmas�n�
-sa�layacakt�r. pg_upgrade beti�inin o s�r�m i�in bulunup bulunmad���n� s�r�m notlar� i�inde bulabilirsiniz.
-3.11) Nas�l bir donan�m kullanmal�y�m?
-
-PC donan�m� tamamen uyumlu oldu�u i�in, insanlar t�m PC donan�mlar�n�n ayn� kalitede oldu�unu d���n�rler. Oysa b�yle
-de�ildir. ECC RAM, SCSI ve kaliteli anakartlar daha ucuz donan�mlara g�re daha �ok g�venilirlerdir ve ba�ar�mlar� daha
-y�ksektir. PostgreSQL hemen hemen t�m donan�mda �al��abilmektedir, ancak g�venilirlik ve ba�ar�m �nemli ise donan�m
-se�eneklerini �ok iyi ara�t�rmak gereklidir. E-posta listelerimi donan�mlarla ilgili sorular ve de ticaret i�in
-kullan�labilir.
-��letimsel Sorular
-4.1) Binary cursor ve normal cursor aras�ndaki fark nedir?
-
-DECLARE yard�m sayfas�na bak�n�z.
-4.2) Sorgunun sadece ilk birka� sat�r�n� nas�l SELECT edebilirim?
-
-FETCH yard�m sayfas�na bak�n�z, ya da SELECT ... LIMIT ... kullan�n�z.
-
-�lk birka� sat�r� almak isteseniz bile, t�m sorgu de�erlendirilmek durumunda kal�nabilir. ORDER BY i�eren bir sorgu
-d���n�n. E�er ORDER BY i�e e�le�en bir index varsa, PostgreSQL istenen ilk birka� sat�r� i�leyebilir, ya da t�m sorgu
-istenen sat�rlar �retilene kadar i�lenebilir.
-4.3) psql'in i�inde g�rd�g�m tablolar�n ya da di�er �eylerin listesini nas�l alabilirim?
-
-pgsql/src/bin/psql/describe.c i�indeki psql kaynak kodunu okuyabilirsiniz. Bu kod, psql'in \ ile ba�layan komutlar�n�n
-��kt�s�n� olusturan SQL komutlar�n� i�erir. Ayn� zamanda, psql'i -E se�ene�i ile ba�lat�p, verdi�iniz komutlar�
-�al��t�rmak i�in yapt��� sorgular�n ��kt�lar�n� g�rebilirsiniz.
-4.4) Bir tablodan bir kolonu nas�l kald�rabilirim?
-
-Bu �zellik (ALTER TABLE DROP COLUMN) 7.3 s�r�m� ile gelmi�tir. Eski s�r�mlerde a�a��dakileri uygulamal�s�n�z:
-
+ Bu i�lem PostgreSQL ana dizinine server.log dosyas� yerle�tirecektir.
+ Bu dosya sunucunun ya�ad��� sorunlar ya da hatalar hakk�nda yararl�
+ bilgiler i�erir. -d se�ene�i, hata ay�klama seviyesini belirten bir
+ rakam ile kullan�l�r. Y�ksek hata ay�klama seviyelerinin b�y�k log
+ dosyalar� olu�turaca��n� unutmay�n�z.
+
+ E�er postmaster �al��m�yorsa, postgres backend'ini komut sat�r�ndan
+ �al��t�rabilir ve SQL ifadenizi direk olarak yazabilirsiniz. Bu sadece
+ hata ay�klama amac�yla �nerilir. Burada, noktal� virg�l�n de�il de
+ yeni bir sat�r�n sorguyu sonland�rd���n� unutmay�n�z. E�er hata
+ ay�klama sembolleri ile derlediyseniz, ne oldu�unu g�rmek i�in bir
+ hata ay�klay�c� kullanabilirsiniz. backend postmaster'dan
+ ba�lat�lmad���ndan, e�de�er bir ortamda �al��mamaktad�r ve
+ locking/backend etkile�im sorunlar� artabilir.
+
+ E�er postmaster �al���yorsa, bir pencerede psql'i �al��t�r�n ve psql
+ taraf�ndan kullan�lan postgres s�recinin s�re� numaras�n� (PID) bulun.
+ Postgres s�reci ile ili�kilendirmek i�in bir hata ay�klar�c� kullan�n.
+ Sorgular� psql arac�l��� ile �al��t�rabilirsiniz. E�er postgres
+ ba�lang�c�nda hata ay�klamak istiyorsan�z, PGOPTIONS="-W n" se�ene�ini
+ ayarlayabilir ve psql'i ba�latabilirsiniz. Bu i�lem, ba�lang�c�n n
+ saniye kadar gecikmesini sa�layacakt�r; b�ylece hata ay�klay�c�y�
+ s�rece ili�kilendirdikten sonra ba�lang�� s�recinin devam etmesini
+ sa�layabilirsiniz.
+
+ postgres program� hata ay�klama ve ba�ar�m �l��mleri i�in -s, -A ve -t
+ se�eneklerine sahiptir.
+
+ 3.8) Ba�lanmaya �al���rken, neden "Sorry, too many clients" hatas�n�
+ al�yorum?
+
+ Postmaster'�n e�zamanl� olarak ba�latabilece�i backend s�re�leri
+ s�n�rlar�n� artt�rman�z gerekmektedir.
+
+ �n tan�ml� de�er 32 s�re�tir. Bunu, postmaster'� uygun -N de�eri ile
+ ya da postgresql.conf dosyas�n� d�zenleyerek yeniden ba�latmakla
+ artt�rabilirsiniz.
+
+ E�er -N de�erini 32'den b�y�k yapacaksan�z, ayn� zamanda -B de�erini
+ de de�i�tirmeniz gerekti�ini unutmay�n. -B, -N'nin en az 2 kat� kadar
+ olmal�d�r; daha iyi ba�ar�m i�in bu say�y� daha da artt�rmal�s�n�z.
+ Y�ksek say�daki backend s�re�leri i�in, �e�itli �ekirdek yap�land�rma
+ parametrelerini artt�rman�z gerekecektir. Yap�lmas� gerekenler,
+ SHMMAX, SEMMNS, SEMMNI, NPROC, MAXUPRC ve a��labilecek dosyalar�n
+ maksimum say�s� olan NFILE ve NINODE de�erlerini kar��t�rmakt�r. Bunun
+ nedeni, PostgreSQL'in izin verilen backend s�re�lerinin say�s�
+ �zerinde bir s�n�r� olmas�d�r. B�ylelikle sistem kaynaklar�n�n d���na
+ ��k�lmayacakt�r.
+
+ PostgreSQL'in 6.5 s�r�m�ne kadar, en fazla backend say�s� 64 idi ve
+ bunu de�i�tirmek i�in include/storage/sinvaladt.h dosyas� i�indeki
+ MaxBAckendid sabitini de�i�tirdek sonra yaz�l�m� yeniden derlemek
+ gerekiyordu.
+
+ 3.9) pgsql_tmp dizinin i�indeki dosyalar nelerdir?
+
+ Sorgu �al�st�r�c� (query executer) taraf�ndan yarat�lan ge�ici
+ dosyalard�r. �rnegin, bir s�ralama ORDER BY ile yap�lacaksa ve
+ s�ralama backend'in -s parametresinin izin verdi�inden daha fazla
+ alana gereksinim duyuyorsa, ekstra veriyi tutmak i�in ge�ici dosyalar
+ yarat�l�r.
+
+ Ge�ici dosyalar, e�er s�ralama s�ras�nda backend g��mezse otomatik
+ olarak silinecektir. E�er �al��an durumda bir backend'iniz yoksa,
+ pg_tempNNN.NN dosyalar�n� silmeniz g�venlidir.
+
+ 3.10) PostgreSQL s�r�mlerini y�kseltmek i�in neden bir dump/reload i�lemi
+ ger�ekle�tirmek zorunday�m?
+
+ PostgreSQL tak�m� ara s�r�mlerde sadece k���k de�i�iklikler
+ yapmaktad�r; bu y�zden 7.2 s�r�m�nden 7.2.1'e y�kseltmek dump/restore
+ i�lemi gerekmemektedir. Ancak, esas s�r�mlerde (�rnek: 7.2'den 7.3'e)
+ �o�unlukla sistem tablolar�n�n ve veri dosyalar�n�n i� yap�s�
+ de�i�tirilir. Bu de�i�iklikler �o�unlukla karma��kt�r; dolay�s�yla
+ veri dosyalar�n�n geriye d�n�k uyumlulu�u i�lemlerini yapm�yoruz. Dump
+ i�lemi, veriyi genel bi�imde alaca��ndan yeniden y�kleme esnas�nda
+ veri, yeni i� bi�ime uygun �ekilde yerle�tirilecektir.
+
+ Disk bi�iminin de�i�medi�i s�r�mlerde, pg_upgrade beti�i g�ncellemenin
+ bir dump/restore gerektirmeden yap�lmas�n� sa�layacakt�r. pg_upgrade
+ beti�inin o s�r�m i�in bulunup bulunmad���n� s�r�m notlar� i�inde
+ bulabilirsiniz.
+
+ 3.11) Nas�l bir donan�m kullanmal�y�m?
+
+ PC donan�m� tamamen uyumlu oldu�u i�in, insanlar t�m PC donan�mlar�n�n
+ ayn� kalitede oldu�unu d���n�rler. Oysa b�yle de�ildir. ECC RAM, SCSI
+ ve kaliteli anakartlar daha ucuz donan�mlara g�re daha �ok
+ g�venilirlerdir ve ba�ar�mlar� daha y�ksektir. PostgreSQL hemen hemen
+ t�m donan�mda �al��abilmektedir, ancak g�venilirlik ve ba�ar�m �nemli
+ ise donan�m se�eneklerini �ok iyi ara�t�rmak gereklidir. E-posta
+ listelerimi donan�mlarla ilgili sorular ve de ticaret i�in
+ kullan�labilir.
+ _________________________________________________________________
+
+ ��letimsel Sorular
+
+ 4.1) Binary cursor ve normal cursor aras�ndaki fark nedir?
+
+ DECLARE yard�m sayfas�na bak�n�z.
+
+ 4.2) Sorgunun sadece ilk birka� sat�r�n� nas�l SELECT edebilirim?
+
+ FETCH yard�m sayfas�na bak�n�z, ya da SELECT ... LIMIT ... kullan�n�z.
+
+ �lk birka� sat�r� almak isteseniz bile, t�m sorgu de�erlendirilmek
+ durumunda kal�nabilir. ORDER BY i�eren bir sorgu d���n�n. E�er ORDER
+ BY i�e e�le�en bir index varsa, PostgreSQL istenen ilk birka� sat�r�
+ i�leyebilir, ya da t�m sorgu istenen sat�rlar �retilene kadar
+ i�lenebilir.
+
+ 4.3) psql'in i�inde g�rd�g�m tablolar�n ya da di�er �eylerin listesini
+ nas�l alabilirim?
+
+ pgsql/src/bin/psql/describe.c i�indeki psql kaynak kodunu
+ okuyabilirsiniz. Bu kod, psql'in \ ile ba�layan komutlar�n�n ��kt�s�n�
+ olusturan SQL komutlar�n� i�erir. Ayn� zamanda, psql'i -E se�ene�i ile
+ ba�lat�p, verdi�iniz komutlar� �al��t�rmak i�in yapt��� sorgular�n
+ ��kt�lar�n� g�rebilirsiniz.
+
+ 4.4) Bir tablodan bir kolonu nas�l kald�rabilirim?
+
+ Bu �zellik (ALTER TABLE DROP COLUMN) 7.3 s�r�m� ile gelmi�tir. Eski
+ s�r�mlerde a�a��dakileri uygulamal�s�n�z:
BEGIN;
LOCK TABLE old_table;
SELECT ... -- select all columns but the one you want to remove
@@ -482,355 +692,421 @@ INTO TABLE new_table
FROM old_table;
DROP TABLE old_table;
ALTER TABLE new_table RENAME TO old_table;
-COMMIT;
-
-
-4.5) Bir sat�r, tablo ve veritaban� i�in en fazla b�y�kl�k nedir?
-
-S�n�rlar:
-
-Veritaban� i�in en fazla b�y�kl�k nedir?
-S�n�rs�z (32 TB'l�k veritaban� bulunmaktad�r)
-
-Bir tablo i�in en fazla b�y�kl�k nedir?
-32 TB
-
-Bir sat�r i�in en fazla b�y�kl�k nedir?
-1.6 TB
-
-Bir alan i�in en fazla b�y�kl�k nedir?
-1 GB
-
-Tabloda en fazla sat�r say�s� ka�t�r?
-S�n�rs�z
-
-Bir tabloda olabilecek en fazla kolon say�s� ka�t�r?
-Kolon tiplerine ba�l� olarak 250-1600
-
-Bir tabloda olabilecek en fazla index say�s� ka�t�r?
-S�n�rs�z
-
-Tabii ki bunlar asl�nda s�n�rs�z degildir. Burada belirtilen s�n�rlar, fiziksel s�n�rlar�n haricindeki s�n�rlard�r. Bo�
-disk alan�, haf�za/takas alan� na ba�l� s�n�rlamalar vard�r. Ba�ar�m, s�n�r de�erlere yakla�t�k�a, ya da de�erler �ok
-b�y�k oldu�unda d��ebilir.
-
-Bir tablo i�in b�y�kl�k s�n�r� olan 32 TB, i�letim sisteminin b�y�k dosya deste�i olup olmamas�ndan ba��ms�zd�r. B�y�k
-tablolar, 1 GB'lik dosyalarda sakland��� i�in, dosya sistemi s�n�rlar�nin bir �nemi yoktur.
-
-Tablo ve kolon say�s� b�y�kl�kleri, �n tan�ml� blok b�y�kl��� 32k ya ��kar�larak artt�r�labilir.
-4.6) Tipik bir metin dosyas�ndaki veriyi saklamak i�in ne kadar disk alan� gereklidir?
-
-Bir PostgreSQL veritaban�, veriyi "flat" metin dosyas�nda saklamak i�in gereken alan�n 5 kat fazla disk alan�na
-gereksinim duyabilir.
-
-Her sat�r�nda bir tamsay� ve metin (text) i�eren, 100.000 sat�rl�k bir dosya d���n�n. Her sat�r�n ortalama 20 byte
-oldu�unu farzedelim. Metin dosyas� 2.8 MB olacakt�r. Bu veriyi tutan PostgreSQL veritaban� yakla��k 6.4 MB yer
-kaplayacakt�r.
-
+COMMIT;
+
+ 4.5) Bir sat�r, tablo ve veritaban� i�in en fazla b�y�kl�k nedir?
+
+ S�n�rlar:
+
+ Veritaban� i�in en fazla b�y�kl�k nedir?
+ S�n�rs�z (32 TB'l�k veritaban� bulunmaktad�r)
+ Bir tablo i�in en fazla b�y�kl�k nedir?
+ 32 TB
+ Bir sat�r i�in en fazla b�y�kl�k nedir?
+ 1.6 TB
+ Bir alan i�in en fazla b�y�kl�k nedir?
+ 1 GB
+ Tabloda en fazla sat�r say�s� ka�t�r?
+ S�n�rs�z
+ Bir tabloda olabilecek en fazla kolon say�s� ka�t�r?
+ Kolon tiplerine ba�l� olarak 250-1600
+ Bir tabloda olabilecek en fazla index say�s� ka�t�r?
+ S�n�rs�z
+
+ Tabii ki bunlar asl�nda s�n�rs�z degildir. Burada belirtilen s�n�rlar,
+ fiziksel s�n�rlar�n haricindeki s�n�rlard�r. Bo� disk alan�,
+ haf�za/takas alan� na ba�l� s�n�rlamalar vard�r. Ba�ar�m, s�n�r
+ de�erlere yakla�t�k�a, ya da de�erler �ok b�y�k oldu�unda d��ebilir.
+
+ Bir tablo i�in b�y�kl�k s�n�r� olan 32 TB, i�letim sisteminin b�y�k
+ dosya deste�i olup olmamas�ndan ba��ms�zd�r. B�y�k tablolar, 1 GB'lik
+ dosyalarda sakland��� i�in, dosya sistemi s�n�rlar�nin bir �nemi
+ yoktur.
+
+ Tablo ve kolon say�s� b�y�kl�kleri, �n tan�ml� blok b�y�kl��� 32k ya
+ ��kar�larak artt�r�labilir.
+
+ 4.6) Tipik bir metin dosyas�ndaki veriyi saklamak i�in ne kadar disk alan�
+ gereklidir?
+
+ Bir PostgreSQL veritaban�, veriyi "flat" metin dosyas�nda saklamak
+ i�in gereken alan�n 5 kat fazla disk alan�na gereksinim duyabilir.
+
+ Her sat�r�nda bir tamsay� ve metin (text) i�eren, 100.000 sat�rl�k bir
+ dosya d���n�n. Her sat�r�n ortalama 20 byte oldu�unu farzedelim. Metin
+ dosyas� 2.8 MB olacakt�r. Bu veriyi tutan PostgreSQL veritaban�
+ yakla��k 6.4 MB yer kaplayacakt�r.
36 byte: Her bir sat�r ba�l��� (yakla��k)
-+ 24 byte: Bir tamsay� (int) alan� ve bir metin (text) alan�
++ 24 byte: Bir tamsay� (int) alan� ve bir metin (text) alan�
+ 4 byte: Sayfada tuple a pointer
----------------------------------------
64 byte -> kay�t ba��na
-PostgreSQL'de veri sayfas� (data page) b�y�kl��� 8192 byte (8k)d�r, dolay�s�yla:
-
+ PostgreSQL'de veri sayfas� (data page) b�y�kl��� 8192 byte (8k)d�r,
+ dolay�s�yla:
8192 byte -> page ba��na
------------------------- = Her bir veritaban� page'� ba��na 128 sat�r (yakla��k)
Sat�r ba��na 64 byte
-
+
100000 veri sat�r�
-------------------- = 782 veritaban� sayfas�
128 sat�r
-782 veritaban� sayfas� * sayfa ba��na 8192 byte = 6,406,144 bytes (6.4 MB)
-
-Index'ler �ok fazla yere gereksinim duymazlar, ama index'lenmi� veriyi tutacaklar�ndan b�y�k olabilirler.
-
-NULL de�erler bitmapler i�inde tutulur; dolay�s�yla �ok az yer kaplarlar.
-4.7) Veritaban�nda hangi tablo ya da index'lerin tan�mland���n� nas�l g�rebilirim?
-
-psql, bu t�r bilgileri g�stermek i�in, \ ile ba�layan bir �ok komut sunmaktad�r. \? komutu ile bu komutlar�
-g�rebilirsiniz. Ayr�ca, bunlar� a��klayan ve pg_ ile ba�layan �ok say�da sistem tablosu bulunmaktad�r. Ayn� zamanda,
-psql -l ile t�m veritabanlar�n� listeyelebirsiniz.
-
-Ayr�ca, pgsql/src/tutorial/syscat.source kodunu inceleyebilirsiniz. Bu dosya, veritaban� sistem dosyalar�ndan bilgiyi
-almak i�in gereksinim duyulan bir �ok SELECT'leri g�sterir.
-4.8) Sorgular�m cok yava�, ya da index'lerimi kullanm�yorlar. Neden?
-
-Indexler her sorgu taraf�ndan otomatik olarak kullan�lmazlar. Indexler e�er bir tablonun b�y�kl��� minimum bir
-b�y�kl�kten fazla ise ve sorgu tablodaki sat�rlar�n sadece k���k bir y�zdesini se�iyorsa kullan�l�r. Bunun nedeni,
-index eri�iminin neden oldu�u raslansal disk eri�imi nin diskin ya da tablonun s�ral� okunmas�ndan daha yavas
-olabilmesidir.
-
-Bir index'in kullan�l�p kullan�lmayaca��n� belirlemek i�in, PostgreSQL tablo hakk�ndaki istatistiklere gereksinmesi
-vard�r. Bu istatistikler, VACUUM ANALYZE kullan�larak toplan�rlar. Optimizer, istatistikleri kullanarak, tabloda ka�
-sat�r oldu�unu ve bilir ve indexin kullan�l�p kullan�lmayaca��na daha iyi karar verir. Istatistikler, ayn� zamanda en
-uygun join s�ras�n� ve y�ntemini belirlemekte �ok �nemlidir. �statistik toplanmas�, tablo i�erikleri de�i�tik�e
-periyodik olarak yap�lmal�d�r.
-
-Indexler normalde ORDER BY sorgular� ya da join i�lemlerini ger�ekle�tirmek i�in kullan�lmazlar. A��k bir s�ralamay�
-takip eden s�ral� bir arama (sequential scan), b�y�k bir tabloda index aramas� yapmaktan genelde daha h�zl�d�r.
-Ancak, ORDER BY ile birle�mi� LIMIT genellikle bir index kullanacakt�r; ��nk� tablonun sadece belirli bir miktar�
-d�nd�r�lecektir. Asl�nda, MAX() ve MIN() fonksiyonlar�n�n index kullanmamalar�ndan dolay�, bu gibi de�erleri ORDER BY
-ve LIMIT kullanarak da almak olas�d�r:
-
+ 782 veritaban� sayfas� * sayfa ba��na 8192 byte = 6,406,144 bytes (6.4
+ MB)
+
+ Index'ler �ok fazla yere gereksinim duymazlar, ama index'lenmi� veriyi
+ tutacaklar�ndan b�y�k olabilirler.
+
+ NULL de�erler bitmapler i�inde tutulur; dolay�s�yla �ok az yer
+ kaplarlar.
+
+ 4.7) Veritaban�nda hangi tablo ya da index'lerin tan�mland���n� nas�l
+ g�rebilirim?
+
+ psql, bu t�r bilgileri g�stermek i�in, \ ile ba�layan bir �ok komut
+ sunmaktad�r. \? komutu ile bu komutlar� g�rebilirsiniz. Ayr�ca,
+ bunlar� a��klayan ve pg_ ile ba�layan �ok say�da sistem tablosu
+ bulunmaktad�r. Ayn� zamanda, psql -l ile t�m veritabanlar�n�
+ listeyelebirsiniz.
+
+ Ayr�ca, pgsql/src/tutorial/syscat.source kodunu inceleyebilirsiniz. Bu
+ dosya, veritaban� sistem dosyalar�ndan bilgiyi almak i�in gereksinim
+ duyulan bir �ok SELECT'leri g�sterir.
+
+ 4.8) Sorgular�m cok yava�, ya da index'lerimi kullanm�yorlar. Neden?
+
+ Indexler her sorgu taraf�ndan otomatik olarak kullan�lmazlar. Indexler
+ e�er bir tablonun b�y�kl��� minimum bir b�y�kl�kten fazla ise ve sorgu
+ tablodaki sat�rlar�n sadece k���k bir y�zdesini se�iyorsa kullan�l�r.
+ Bunun nedeni, index eri�iminin neden oldu�u raslansal disk eri�imi nin
+ diskin ya da tablonun s�ral� okunmas�ndan daha yavas olabilmesidir.
+
+ Bir index'in kullan�l�p kullan�lmayaca��n� belirlemek i�in, PostgreSQL
+ tablo hakk�ndaki istatistiklere gereksinmesi vard�r. Bu istatistikler,
+ VACUUM ANALYZE kullan�larak toplan�rlar. Optimizer, istatistikleri
+ kullanarak, tabloda ka� sat�r oldu�unu ve bilir ve indexin kullan�l�p
+ kullan�lmayaca��na daha iyi karar verir. Istatistikler, ayn� zamanda
+ en uygun join s�ras�n� ve y�ntemini belirlemekte �ok �nemlidir.
+ �statistik toplanmas�, tablo i�erikleri de�i�tik�e periyodik olarak
+ yap�lmal�d�r.
+
+ Indexler normalde ORDER BY sorgular� ya da join i�lemlerini
+ ger�ekle�tirmek i�in kullan�lmazlar. A��k bir s�ralamay� takip eden
+ s�ral� bir arama (sequential scan), b�y�k bir tabloda index aramas�
+ yapmaktan genelde daha h�zl�d�r.
+ Ancak, ORDER BY ile birle�mi� LIMIT genellikle bir index
+ kullanacakt�r; ��nk� tablonun sadece belirli bir miktar�
+ d�nd�r�lecektir. Asl�nda, MAX() ve MIN() fonksiyonlar�n�n index
+ kullanmamalar�ndan dolay�, bu gibi de�erleri ORDER BY ve LIMIT
+ kullanarak da almak olas�d�r:
SELECT col
FROM tab
ORDER BY col [ DESC ]
LIMIT 1;
-E�er optimizer'�n s�ral� arama yapmas�n�n yanl�� oldu�una inan�yorsan�z, SET enable_seqscan TO 'off' kullan�n ve index
-kullanan aramalar�n hala daha h�zl� olup olmad���n� g�r�n.
-
-LIKE ya da ~ gibi operat�rler kullan�yorsan�z, index'ler sadece a�a��daki ko�ullarda kullan�labilir:
-
- * Arama dizininin ba��, dizinin ba�� ile ba�lanmal�d�r. Yani,
- o LIKE sorgular� % ile ba�lamamal�d�r.
- o D�zenli ifade sorgular� ^ i�e ba�lamamal�d�r.
- * Arama metni bir karakter s�n�f� ile ba�layamaz. �rnek: [a-e]
- * ILIKE ve ~* gibi b�y�k/k���k harfe duyars�z aramalar index'lerden yararlanmazlar. Onun yerine, b�l�m 4.12'de
-anlat�lan fonksiyonel index'leri kullanabilirsiniz.
- * initdb s�ras�nda �ntan�ml� C locale'i kullan�lmal�d�r.
-
-4.9) query-optimizer'�n sorgular�m� nas�l de�erlendirdi�ini, i�leme soktu�unu nas�l g�rebilirim?
-
-EXPLAIN yard�m sayfas�na bak�n�z.
-4.10) R-tree index nedir?
-
-R-tree index, uzaysal (spatial) verileri indexlemek i�in kullan�l�r. Bir hash index, dizi aramalar�nda (range search)
-kullan�lamaz. B-tree index dizi aramalar�nda sadece tek boyutlu �al��maktad�r. R-tree, �ok boyutlu veriyi destekler.
-�rne�in, e�er bir R-tree index point veri tipi �zerinde in�a edililebilirse, sistem "select all points within a
-bounding rectangle" gibi sorgulara daha verimli yan�tlar verecektir.
-
-Orijinal R-tree tasar�m�n� a��klayan belge:
-
-Guttman, A. "R-trees: A Dynamic Index Structure for Spatial Searching." Proceedings of the 1984 ACM SIGMOD Int'l Conf
-on Mgmt of Data, 45-57.
-
-Bu belgeyi, Stonebraker'�n "Readings in Database Systems" kitab�nda bulabilirsiniz.
-
-G�m�l� R-tree indexleri poligon ve boxlar� kullanabilir. Teorik olarak, R-tree indexlerin �zelliklerini geni�letmek bir
-miktar �aba gerektirir ve bunun nas�l yap�laca��na dair bir belgemiz hen�z bulunmamaktad�r.
-4.11) Genetic Query Optimizer nedir?
-
-GEQO mod�l�, Genetic Algorithm(GA) kullan�larak tablolar birle�tirildi�inde sorgu optimizasyonunu h�zland�r�r.
-4.12) D�zenli ifade (Regular Expression) aramalar�n� ve b�y�k/k���k harfe duyars�z aramalar� nas�l yapabilirim? Bu
-b�y�k(k���k harfe duyarl� aramalar i�in index'i nas�l kullanabilirim?
-
-~ operat�r� d�zenli ifade e�le�mesi ve ~* b�y�k/k���k harfe duyars�z d�zenli ifade e�le�mesi yapar. B�y�k/k���k harfe
-duyarl� olan LIKE'�n b�y�k/k���k harfe duyars�z olan bi�imi ILIKE't�r ve PostgreSQL 7.1 s�r�m� ile birlikte gelmi�tir.
-
-B�y�k-k���k harfe duyars�z e�itlik kar��la�t�rmalar� a�a��daki gibi ifade edilir:
-
+ E�er optimizer'�n s�ral� arama yapmas�n�n yanl�� oldu�una
+ inan�yorsan�z, SET enable_seqscan TO 'off' kullan�n ve index kullanan
+ aramalar�n hala daha h�zl� olup olmad���n� g�r�n.
+
+ LIKE ya da ~ gibi operat�rler kullan�yorsan�z, index'ler sadece
+ a�a��daki ko�ullarda kullan�labilir:
+ * Arama dizininin ba��, dizinin ba�� ile ba�lanmal�d�r. Yani,
+ + LIKE sorgular� % ile ba�lamamal�d�r.
+ + D�zenli ifade sorgular� ^ i�e ba�lamamal�d�r.
+ * Arama metni bir karakter s�n�f� ile ba�layamaz. �rnek: [a-e]
+ * ILIKE ve ~* gibi b�y�k/k���k harfe duyars�z aramalar index'lerden
+ yararlanmazlar. Onun yerine, b�l�m 4.12'de anlat�lan fonksiyonel
+ index'leri kullanabilirsiniz.
+ * initdb s�ras�nda �ntan�ml� C locale'i kullan�lmal�d�r.
+
+ 4.9) query-optimizer'�n sorgular�m� nas�l de�erlendirdi�ini, i�leme
+ soktu�unu nas�l g�rebilirim?
+
+ EXPLAIN yard�m sayfas�na bak�n�z.
+
+ 4.10) R-tree index nedir?
+
+ R-tree index, uzaysal (spatial) verileri indexlemek i�in kullan�l�r.
+ Bir hash index, dizi aramalar�nda (range search) kullan�lamaz. B-tree
+ index dizi aramalar�nda sadece tek boyutlu �al��maktad�r. R-tree, �ok
+ boyutlu veriyi destekler. �rne�in, e�er bir R-tree index point veri
+ tipi �zerinde in�a edililebilirse, sistem "select all points within a
+ bounding rectangle" gibi sorgulara daha verimli yan�tlar verecektir.
+
+ Orijinal R-tree tasar�m�n� a��klayan belge:
+
+ Guttman, A. "R-trees: A Dynamic Index Structure for Spatial
+ Searching." Proceedings of the 1984 ACM SIGMOD Int'l Conf on Mgmt of
+ Data, 45-57.
+
+ Bu belgeyi, Stonebraker'�n "Readings in Database Systems" kitab�nda
+ bulabilirsiniz.
+
+ G�m�l� R-tree indexleri poligon ve boxlar� kullanabilir. Teorik
+ olarak, R-tree indexlerin �zelliklerini geni�letmek bir miktar �aba
+ gerektirir ve bunun nas�l yap�laca��na dair bir belgemiz hen�z
+ bulunmamaktad�r.
+
+ 4.11) Genetic Query Optimizer nedir?
+
+ GEQO mod�l�, Genetic Algorithm(GA) kullan�larak tablolar
+ birle�tirildi�inde sorgu optimizasyonunu h�zland�r�r.
+
+ 4.12) D�zenli ifade (Regular Expression) aramalar�n� ve b�y�k/k���k harfe
+ duyars�z aramalar� nas�l yapabilirim? Bu b�y�k(k���k harfe duyarl� aramalar
+ i�in index'i nas�l kullanabilirim?
+
+ ~ operat�r� d�zenli ifade e�le�mesi ve ~* b�y�k/k���k harfe duyars�z
+ d�zenli ifade e�le�mesi yapar. B�y�k/k���k harfe duyarl� olan LIKE'�n
+ b�y�k/k���k harfe duyars�z olan bi�imi ILIKE't�r ve PostgreSQL 7.1
+ s�r�m� ile birlikte gelmi�tir.
+
+ B�y�k-k���k harfe duyars�z e�itlik kar��la�t�rmalar� a�a��daki gibi
+ ifade edilir:
SELECT *
FROM tab
WHERE lower(col) = 'abc'
-
-
-Bu standart bir index yaratmayacakt�r. Ancak e�er fonksiyonel bir index yarat�rsan�z; o kullan�lacakt�r:
-
+
+ Bu standart bir index yaratmayacakt�r. Ancak e�er fonksiyonel bir
+ index yarat�rsan�z; o kullan�lacakt�r:
CREATE INDEX tabindex on tab (lower(col));
-4.13) Bir sorguda, bir alanin "NULL" oldu�unu nas�l ortaya ��karabilirim?
-
-Kolonu, IS NULL ve IS NOT NULL ile test edebilirsiniz.
-4.14) �esitli karakter tipleri aras�ndaki farklar nelerdir?
-
-Veri Tipi �� Ad� Not
+ 4.13) Bir sorguda, bir alanin "NULL" oldu�unu nas�l ortaya ��karabilirim?
+
+ Kolonu, IS NULL ve IS NOT NULL ile test edebilirsiniz.
+
+ 4.14) �esitli karakter tipleri aras�ndaki farklar nelerdir?
+
+Veri Tipi �� Ad� Not
--------------------------------------------------
VARCHAR(n) varchar boyut en b�y�k uzunlu�u verir; sadece verilen kadar veri tutulur.
CHAR(n) bpchar belirtilen uzunlu�a kadar sonuna bo�luk eklenir.
-TEXT text uzunlukta herhangi bir �st s�n�r yoktur.
+TEXT text uzunlukta herhangi bir �st s�n�r yoktur.
BYTEA bytea variable-length byte array (null-byte safe)
-"char" char bir karakter
-
-
-�� adlar� (internal name) sistem kataloglar�n� ve baz� hata mesajlar�n� incelerken g�receksiniz.
-
-�lk d�rt veri tipi "varlena" tipidir (yani, diskteki ilk 4 bayt uzunluktur; devam� da veridir.) Dolay�s�yla, kullan�lan
-ger�ek alan, belirtilen alandan biraz daha b�y�kt�r. Ancak, bu veri tipleri, s�k��t�r�lmaya tabi tutulabilir;
-dolay�s�yla disk alan� beklenilenden k���k olabilir. VARCHAR(n) b�y�kl��� artabilen ama en b�y�k uzunlu�u s�n�rl� olan
-verileri saklamak i�in en uygun y�ntemdir. TEXT, 1 GB b�y�kl��e kadar olan verileri tutmak i�in kullan�l�r.
-
-CHAR(n), ayn� uzunluktaki dizilerin saklanmas� i�in kullan�m�r. CHAR(n) belirtilen uzunlu�a kadar bo�luk ile doldurur;
-ancak VARCHAR(n) sadece verilen karakterleri saklar. BYTEA binary veri saklamak i�indir; ayr�ca "NULL" bayt i�eren
-de�erleri de saklar. Burada anlat�lan �� veri tipi de benzer ba�ar�m karakteristiklere sahiptir.
-4.15.1) Nas�l serial/otomatik artan (auto-incrementing) bir alan yaratabilirim?
-
-PostgreSQL'de SERIAL veri tipi vard�r. Bu veri tipi bir sequence ve kolon �zerinde bir index yarat�r.
-
-�rnek, a�a��daki sorgu:
-
+"char" char bir karakter
+
+ �� adlar� (internal name) sistem kataloglar�n� ve baz� hata
+ mesajlar�n� incelerken g�receksiniz.
+
+ �lk d�rt veri tipi "varlena" tipidir (yani, diskteki ilk 4 bayt
+ uzunluktur; devam� da veridir.) Dolay�s�yla, kullan�lan ger�ek alan,
+ belirtilen alandan biraz daha b�y�kt�r. Ancak, bu veri tipleri,
+ s�k��t�r�lmaya tabi tutulabilir; dolay�s�yla disk alan� beklenilenden
+ k���k olabilir. VARCHAR(n) b�y�kl��� artabilen ama en b�y�k uzunlu�u
+ s�n�rl� olan verileri saklamak i�in en uygun y�ntemdir. TEXT, 1 GB
+ b�y�kl��e kadar olan verileri tutmak i�in kullan�l�r.
+
+ CHAR(n), ayn� uzunluktaki dizilerin saklanmas� i�in kullan�m�r.
+ CHAR(n) belirtilen uzunlu�a kadar bo�luk ile doldurur; ancak
+ VARCHAR(n) sadece verilen karakterleri saklar. BYTEA binary veri
+ saklamak i�indir; ayr�ca "NULL" bayt i�eren de�erleri de saklar.
+ Burada anlat�lan �� veri tipi de benzer ba�ar�m karakteristiklere
+ sahiptir.
+
+ 4.15.1) Nas�l serial/otomatik artan (auto-incrementing) bir alan
+ yaratabilirim?
+
+ PostgreSQL'de SERIAL veri tipi vard�r. Bu veri tipi bir sequence ve
+ kolon �zerinde bir index yarat�r.
+
+ �rnek, a�a��daki sorgu:
CREATE TABLE person (
id SERIAL,
name TEXT
-);
-
-
-buna �evrilir:
-
+);
+
+ buna �evrilir:
CREATE SEQUENCE person_id_seq;
CREATE TABLE person (
id INT4 NOT NULL DEFAULT nextval('person_id_seq'),
name TEXT
);
-CREATE UNIQUE INDEX person_id_key ON person ( id );
-
-
-Sequenceler hakk�nda daha fazla bilgi i�in create_sequence yard�m sayfas�na bakabilirsiniz. Her sat�r�n OID alan�n�
-tekil bir say� olarak alabilirsiniz. Ancak, veritaban�n�z�n dump'�n� al�p yeniden y�klerseniz, OID de�erlerini
-koruyabilmek i�in pg_dump'�n -o parametresini ya da "COPY WITH OIDS" se�ene�ini kullanman�z gerekecektir.
-4.15.2) SERIAL giri�inin degerini nas�l alabilirim?
-
-Bir yakla��m, sequence nesnesindeki SERIAL de�erini, veriyi girmeden �nce nextval() ile al�p, ald���n�z de�eri
-kendinizin girmesidir. 4.15.1'deki �rnek tabloyu kullanarak bir �rnek verelim:
-
+CREATE UNIQUE INDEX person_id_key ON person ( id );
+
+ Sequenceler hakk�nda daha fazla bilgi i�in create_sequence yard�m
+ sayfas�na bakabilirsiniz. Her sat�r�n OID alan�n� tekil bir say�
+ olarak alabilirsiniz. Ancak, veritaban�n�z�n dump'�n� al�p yeniden
+ y�klerseniz, OID de�erlerini koruyabilmek i�in pg_dump'�n -o
+ parametresini ya da "COPY WITH OIDS" se�ene�ini kullanman�z
+ gerekecektir.
+
+ 4.15.2) SERIAL giri�inin degerini nas�l alabilirim?
+
+ Bir yakla��m, sequence nesnesindeki SERIAL de�erini, veriyi girmeden
+ �nce nextval() ile al�p, ald���n�z de�eri kendinizin girmesidir.
+ 4.15.1'deki �rnek tabloyu kullanarak bir �rnek verelim:
new_id = execute("SELECT nextval('person_id_seq')");
execute("INSERT INTO person (id, name) VALUES (new_id, 'Blaise Pascal')");
-Di�er sorgular i�in new_id'de yeni de�erin saklanmas� gerekir. Otomatik olarak yarat�lan SEQUENE nesnesinin ad�, __seq
-�eklinde olacakt�r (< > i�aretleri olmadan).
-
-Alternatif olarak, atanm�� SERIAL de�erini, de�er girildikten sonra currval() fonksiyonu ile alabilirsiniz:
-
- execute("INSERT INTO person (name) VALUES ('Blaise Pascal')");
- new_id = execute("SELECT currval('person_id_seq')");
-
-
-Son olarak, �n tan�ml� de�eri bulmak i�in INSERT ifadesinden d�nen OID de�erini kullanabilirsiniz; ancak bu en az
-ta��nabilir ��z�m olacakt�r. Perl'de, Edmund Mergl'in DBD:Pg m�d�l� ile birlikte DBI kullanarak, OID de�eri
-$sth->execute() �al��t�r�ld�ktan sonra $sth->(pg_oid_status) ile al�nabilir.
-4.15.3) currval() ve nextval() di�er kullan�c�lara sorun yaratmaz m�?
-
-Hay�r. curval(), t�m kullan�c�lar de�il, backend taraf�ndan atanan ge�erli de�eri d�nd�r�r.
-4.15.4) Neden sequence say�lar� transaction i�leminin iptalinden sonra yeniden kullan�l�yor? Neden sequence/SERIAL
-kolonumdaki say�larda atlamalar oluyor?
-
-Uyumlulu�u artt�rmak i�in, sequence de�erleri �al��an transaction'lara gerekti�i �ekilde aktar�l�r ve transaction
-bitene kadar o de�er kilitlenmez. Bu, iptal edilen transaction i�lemleri nedeniyle bo�luklara neden olur.
-4.16) OID nedir? TID nedir?
-
-OIDler, tekil sat�r numaralar�na PostgreSQL'in yan�t�d�r. PostgreSQL'de yarat�lan her say�, tekil bir OID al�r. initdb
-i�lemi s�ras�nda yarat�lan t�m OID'ler 16384'ten k���kt�r (backend/access/transam.h). Kullan�c�lar taraf�ndan yarat�lan
-t�m OID'ler bu say�ya e�it ya da bu say�dan b�y�kt�r. Varsay�lan durumda, t�m bu OIDler sadece bir tablo ya da
-veritaban�nda de�il, t�m PostgreSQL kurulumunda tekildir.
-
-PostgreSQL OIDleri, tablolar aras�nda sat�rlar� ili�kilendirmek i�in kendi i� tablolar�nda kullan�r. Bu OIDler belirli
-kullan�c� sat�rlar�n� belirtmek i�in kullanabilir ve join i�lemlerinde kullan�l�r. OID de�erlerini saklamak i�in OID
-kolon tipini kullanman�z �nerinir. Daha h�zl� bir eri�im i�in, OID alan�nda bir index yaratabilirsiniz.
-
-OID'ler yeni sat�rlara, t�m veritabanlar� taraf�nda kullan�lan ortak bir alandan atan�rlar. E�er OID'i ba�ka bir de�ere
-e�itlemek isterseniz ya da tablonun bir kopyas�n� orijinal OIDler ile ��karmak isterseniz, bu m�mk�nd�r:
-
- CREATE TABLE new_table(old_oid oid, mycol int);
- SELECT old_oid, mycol INTO new FROM old;
- COPY new TO '/tmp/pgtable';
- DELETE FROM new;
- COPY new WITH OIDS FROM '/tmp/pgtable';
-
-
-OIDler 4-bit tamsay� olarak saklan�rlar ve 4 milyarda overflow olacakt�r. Kimse bu say�ya ula�t���na dair bir bilgi
-iletmedi ve bu s�n�r� kimse bu s�n�ra ula�madan kald�raca��z.
-
-TIDler, belirli fiziksel sat�rlar block ve offset de�erleri ile belirtmekte kullan�l�r. TIDler, sat�rlar de�i�ti�inde
-ya da yeniden y�klendi�inde de�i�irler. Index girdileri taraf�ndan fiziksel sat�rlar� g�stermek i�in kullan�l�rlar.
-
-4.17) PostgreSQL'de kullan�lan baz� terimlerin anlamlar� nelerdir?
-
-Kaynak kodun bir k�sm� ve eski belgeler, daha geni� kullan�m alan� olan terimleri kullan�rlar. Bunlar�n baz�lar�:
-
- * table, relation, class
- * row, record, tuple
- * column, field, attribute
- * retrieve, select
- * replace, update
- * append, insert
- * OID, serial value
- * portal, cursor
- * range variable, table name, table alias
-
-Genel veritaban� terimleri, http://hea-www.harvard.edu/MST/simul/software/docs/pkgs/pgsql/glossary/glossary.html
-adresinde bulunabilir.
-4.18) Neden "ERROR: Memory exhausted in AllocSetAlloc()" hatas�n� al�yorum?
-
-Sisteminizde sanal belle�inizi t�ketmi� olabilirsiniz, ya da �ekirde�iniz belli kaynaklar icin d���k bir s�n�ra sahip
-olabilir. postmaster'� ba�latmadan �nce a�a��dakileri deneyebilirsiniz:
-
+ Di�er sorgular i�in new_id'de yeni de�erin saklanmas� gerekir.
+ Otomatik olarak yarat�lan SEQUENE nesnesinin ad�, <tablo ad�>_<serial
+ kolonu ad�>_seq �eklinde olacakt�r (< > i�aretleri olmadan).
+
+ Alternatif olarak, atanm�� SERIAL de�erini, de�er girildikten sonra
+ currval() fonksiyonu ile alabilirsiniz:
+ execute("INSERT INTO person (name) VALUES ('Blaise Pascal')");
+ new_id = execute("SELECT currval('person_id_seq')");
+
+ Son olarak, �n tan�ml� de�eri bulmak i�in INSERT ifadesinden d�nen OID
+ de�erini kullanabilirsiniz; ancak bu en az ta��nabilir ��z�m
+ olacakt�r. Perl'de, Edmund Mergl'in DBD:Pg m�d�l� ile birlikte DBI
+ kullanarak, OID de�eri $sth->execute() �al��t�r�ld�ktan sonra
+ $sth->(pg_oid_status) ile al�nabilir.
+
+ 4.15.3) currval() ve nextval() di�er kullan�c�lara sorun yaratmaz m�?
+
+ Hay�r. curval(), t�m kullan�c�lar de�il, backend taraf�ndan atanan
+ ge�erli de�eri d�nd�r�r.
+
+ 4.15.4) Neden sequence say�lar� transaction i�leminin iptalinden sonra
+ yeniden kullan�l�yor? Neden sequence/SERIAL kolonumdaki say�larda atlamalar
+ oluyor?
+
+ Uyumlulu�u artt�rmak i�in, sequence de�erleri �al��an transaction'lara
+ gerekti�i �ekilde aktar�l�r ve transaction bitene kadar o de�er
+ kilitlenmez. Bu, iptal edilen transaction i�lemleri nedeniyle
+ bo�luklara neden olur.
+
+ 4.16) OID nedir? TID nedir?
+
+ OIDler, tekil sat�r numaralar�na PostgreSQL'in yan�t�d�r.
+ PostgreSQL'de yarat�lan her say�, tekil bir OID al�r. initdb i�lemi
+ s�ras�nda yarat�lan t�m OID'ler 16384'ten k���kt�r
+ (backend/access/transam.h). Kullan�c�lar taraf�ndan yarat�lan t�m
+ OID'ler bu say�ya e�it ya da bu say�dan b�y�kt�r. Varsay�lan durumda,
+ t�m bu OIDler sadece bir tablo ya da veritaban�nda de�il, t�m
+ PostgreSQL kurulumunda tekildir.
+
+ PostgreSQL OIDleri, tablolar aras�nda sat�rlar� ili�kilendirmek i�in
+ kendi i� tablolar�nda kullan�r. Bu OIDler belirli kullan�c�
+ sat�rlar�n� belirtmek i�in kullanabilir ve join i�lemlerinde
+ kullan�l�r. OID de�erlerini saklamak i�in OID kolon tipini kullanman�z
+ �nerinir. Daha h�zl� bir eri�im i�in, OID alan�nda bir index
+ yaratabilirsiniz.
+
+ OID'ler yeni sat�rlara, t�m veritabanlar� taraf�nda kullan�lan ortak
+ bir alandan atan�rlar. E�er OID'i ba�ka bir de�ere e�itlemek
+ isterseniz ya da tablonun bir kopyas�n� orijinal OIDler ile ��karmak
+ isterseniz, bu m�mk�nd�r:
+ CREATE TABLE new_table(old_oid oid, mycol int);
+ SELECT old_oid, mycol INTO new FROM old;
+ COPY new TO '/tmp/pgtable';
+ DELETE FROM new;
+ COPY new WITH OIDS FROM '/tmp/pgtable';
+
+ OIDler 4-bit tamsay� olarak saklan�rlar ve 4 milyarda overflow
+ olacakt�r. Kimse bu say�ya ula�t���na dair bir bilgi iletmedi ve bu
+ s�n�r� kimse bu s�n�ra ula�madan kald�raca��z.
+
+ TIDler, belirli fiziksel sat�rlar block ve offset de�erleri ile
+ belirtmekte kullan�l�r. TIDler, sat�rlar de�i�ti�inde ya da yeniden
+ y�klendi�inde de�i�irler. Index girdileri taraf�ndan fiziksel
+ sat�rlar� g�stermek i�in kullan�l�rlar.
+
+ 4.17) PostgreSQL'de kullan�lan baz� terimlerin anlamlar� nelerdir?
+
+ Kaynak kodun bir k�sm� ve eski belgeler, daha geni� kullan�m alan�
+ olan terimleri kullan�rlar. Bunlar�n baz�lar�:
+ * table, relation, class
+ * row, record, tuple
+ * column, field, attribute
+ * retrieve, select
+ * replace, update
+ * append, insert
+ * OID, serial value
+ * portal, cursor
+ * range variable, table name, table alias
+
+ Genel veritaban� terimleri,
+ http://hea-www.harvard.edu/MST/simul/software/docs/pkgs/pgsql/glossary
+ /glossary.html adresinde bulunabilir.
+
+ 4.18) Neden "ERROR: Memory exhausted in AllocSetAlloc()" hatas�n� al�yorum?
+
+ Sisteminizde sanal belle�inizi t�ketmi� olabilirsiniz, ya da
+ �ekirde�iniz belli kaynaklar icin d���k bir s�n�ra sahip olabilir.
+ postmaster'� ba�latmadan �nce a�a��dakileri deneyebilirsiniz:
ulimit -d 262144
-limit datasize 256m
-
-
-Kabu�unuza ba�l� olarak, bunlardan sadece biri olumlu sonu� verecektir, ama bu i�lem veri segment s�n�r�n�z�
-artt�racak, ve belki de sorgunuzun tamamlanmas�n� sa�layacakt�r. Bu komut, varolan i�leme (current process) ve komut
-�al��t�r�ld�ktan sonraki t�m alt i�lemlere uygulan�r. E�er SQL istemcinizle, backend'in �ok fazla veri d�nd�rmesi
-nedeniyle bir sorun ya��yorsan�z, bunu istemciyi ba�latmadan �nce deneyiniz.
-4.19) Hangi PostgreSQL s�r�m�n� �al��t�rd���m� nas�l g�rebilirim?
-
-psql arabiriminde, select version(); yaz�n�z.
-4.20) Neden large-object i�lemlerim, "invalid large obj descriptor" hatas�n� veriyor?
-
-Large object i�lemlerinizin u�lar�na, yani lo_open ... lo_close komutlar�n�n �evresine, BEGIN WORK ve COMMIT koyman�z
-gerekmektedir;
-
-�u anda, PostgreSQL kurallar� large objectleri transaction commit edildi�inde kapatarak uygulamaktad�r. Dolay�s�yla
-handle ile yap�lacak ilk �ey invalid large obj descriptor hatas� ile sonu�lanacakt�r.Dolay�s�yla �al��an kodunuz e�er
-transaction kullanmazsan�z hata mesajlar� �retecektir.
-
-E�er ODBC gibi bir istemci arabirimi kullan�yorsan�z, auto-commit'i kapatman�z gerekebilir.
-4.21) �u andaki zaman� �ntan�ml� de�er olarak kabul eden How do I create a column that will default to the current
-time?
-
-Alttakini kullanabilirsiniz:
-
+limit datasize 256m
+
+ Kabu�unuza ba�l� olarak, bunlardan sadece biri olumlu sonu�
+ verecektir, ama bu i�lem veri segment s�n�r�n�z� artt�racak, ve belki
+ de sorgunuzun tamamlanmas�n� sa�layacakt�r. Bu komut, varolan i�leme
+ (current process) ve komut �al��t�r�ld�ktan sonraki t�m alt i�lemlere
+ uygulan�r. E�er SQL istemcinizle, backend'in �ok fazla veri d�nd�rmesi
+ nedeniyle bir sorun ya��yorsan�z, bunu istemciyi ba�latmadan �nce
+ deneyiniz.
+
+ 4.19) Hangi PostgreSQL s�r�m�n� �al��t�rd���m� nas�l g�rebilirim?
+
+ psql arabiriminde, select version(); yaz�n�z.
+
+ 4.20) Neden large-object i�lemlerim, "invalid large obj descriptor"
+ hatas�n� veriyor?
+
+ Large object i�lemlerinizin u�lar�na, yani lo_open ... lo_close
+ komutlar�n�n �evresine, BEGIN WORK ve COMMIT koyman�z gerekmektedir;
+
+ �u anda, PostgreSQL kurallar� large objectleri transaction commit
+ edildi�inde kapatarak uygulamaktad�r. Dolay�s�yla handle ile yap�lacak
+ ilk �ey invalid large obj descriptor hatas� ile
+ sonu�lanacakt�r.Dolay�s�yla �al��an kodunuz e�er transaction
+ kullanmazsan�z hata mesajlar� �retecektir.
+
+ E�er ODBC gibi bir istemci arabirimi kullan�yorsan�z, auto-commit'i
+ kapatman�z gerekebilir.
+
+ 4.21) �u andaki zaman� �ntan�ml� de�er olarak kabul eden How do I create a
+ column that will default to the current time?
+
+ Alttakini kullanabilirsiniz:
CURRENT_TIMESTAMP:
CREATE TABLE test (x int, modtime timestamp DEFAULT CURRENT_TIMESTAMP );
-
-
-4.22) Neden IN kullanan subquery'lerim �ok yavas?
-
-7.4 s�r�m�nden �nce, subqueryler. E�er subquery sadece birka� sat�r ve outer query bol say�da sat�r d�nd�r�yorsa, IN en
-h�zl�s�d�r. Sorgular� h�zland�rmak i�in IN yerine EXISTS kullan�n:
-
+
+ 4.22) Neden IN kullanan subquery'lerim �ok yavas?
+
+ 7.4 s�r�m�nden �nce, subqueryler. E�er subquery sadece birka� sat�r ve
+ outer query bol say�da sat�r d�nd�r�yorsa, IN en h�zl�s�d�r. Sorgular�
+ h�zland�rmak i�in IN yerine EXISTS kullan�n:
SELECT *
FROM tab
WHERE col1 IN (SELECT col2 FROM TAB2)
-
-
-sorgusunu, a�a��daki ile de�i�tirin:
-
+
+ sorgusunu, a�a��daki ile de�i�tirin:
SELECT *
FROM tab
- WHERE EXISTS (SELECT col2 FROM TAB2 WHERE col1 = col2)
-
-
-Bu i�lemin h�zl� olmas� i�in, subcol'un indexlenmi� bir kolon olmas� gerekmektedir.
-
-7.4 s�r�m� ve sonras�nda, IN asl�nda normal sorgularla ayn� karma��k join tekniklerini kullan�r ve EXISTS'e tercih
-edilir.
-4.23) Outer join i�lemini nas�l yapabilirim?
-
-PostgreSQL outer joins islemlerini SQL standartlar�n� kullanarak ger�ekle�tirmektedir. A�a��da 2 �rnek bulunmaktad�r:
-
+ WHERE EXISTS (SELECT col2 FROM TAB2 WHERE col1 = col2)
+
+ Bu i�lemin h�zl� olmas� i�in, subcol'un indexlenmi� bir kolon olmas�
+ gerekmektedir.
+
+ 7.4 s�r�m� ve sonras�nda, IN asl�nda normal sorgularla ayn� karma��k
+ join tekniklerini kullan�r ve EXISTS'e tercih edilir.
+
+ 4.23) Outer join i�lemini nas�l yapabilirim?
+
+ PostgreSQL outer joins islemlerini SQL standartlar�n� kullanarak
+ ger�ekle�tirmektedir. A�a��da 2 �rnek bulunmaktad�r:
SELECT *
-FROM t1 LEFT OUTER JOIN t2 ON (t1.col = t2.col);
-
-
-ya da
-
+FROM t1 LEFT OUTER JOIN t2 ON (t1.col = t2.col);
+
+ ya da
SELECT *
-FROM t1 LEFT OUTER JOIN t2 ON (t1.col = t2.col);
-
-
-Bu �zde� sorgular t1.col' i t2.col'ye join ederler ve ayn� zamanda t1'deki unjoined sat�rlar� (t2'de e�lenmemi�
-olanlarla) d�nd�r�rler. RIGHT JOIN t2'nin unjoined sat�rlar�n� ekleyecektir. Bir FULL join, e�le�mi� b�t�n sat�rlar� ve
-t1 ile t2'den t�m ba�lanmam�� (unjoined) sat�rlar� al�r. OUTER s�zc��� se�imseldir ve LEFT, RIGHT ve FULL join
-i�lemlerinde oldu�u kabul edilir. S�radan join i�lemleri INNER JOIN olarak adland�r�l�r.
-
-�nceki s�r�mlerde, OUTER JOINler UNION ve NOT IN kullan�larak sim�le edilebiliyordu. �rne�in, tab1 ve tab2'yi
-birle�tirirken, a�a��daki sorgu iki tablonun d��tan ba�lanmas�n� sa�lar:
-
+FROM t1 LEFT OUTER JOIN t2 ON (t1.col = t2.col);
+
+ Bu �zde� sorgular t1.col' i t2.col'ye join ederler ve ayn� zamanda
+ t1'deki unjoined sat�rlar� (t2'de e�lenmemi� olanlarla) d�nd�r�rler.
+ RIGHT JOIN t2'nin unjoined sat�rlar�n� ekleyecektir. Bir FULL join,
+ e�le�mi� b�t�n sat�rlar� ve t1 ile t2'den t�m ba�lanmam�� (unjoined)
+ sat�rlar� al�r. OUTER s�zc��� se�imseldir ve LEFT, RIGHT ve FULL join
+ i�lemlerinde oldu�u kabul edilir. S�radan join i�lemleri INNER JOIN
+ olarak adland�r�l�r.
+
+ �nceki s�r�mlerde, OUTER JOINler UNION ve NOT IN kullan�larak sim�le
+ edilebiliyordu. �rne�in, tab1 ve tab2'yi birle�tirirken, a�a��daki
+ sorgu iki tablonun d��tan ba�lanmas�n� sa�lar:
SELECT tab1.col1, tab2.col2
FROM tab1, tab2
WHERE tab1.col1 = tab2.col1
@@ -838,60 +1114,79 @@ UNION ALL
SELECT tab1.col1, NULL
FROM tab1
WHERE tab1.col1 NOT IN (SELECT tab2.col1 FROM tab2)
-ORDER BY col1
-
-
-4.24) Ayn� andan birden fazla veritaban�nda nas�l i�lem yapabilirim?
-
-Mevcut veritaban�n�z d���ndaki ba�ka bir veritaban�n�z� sorgulaman�z�n bir yolu bulunmamaktad�r. Bunun nedeni,
-PostgreSQL'in veritaban�na �zel sistem kataloglar� y�klemesidir. Bu nedenle, cross-database bir sorgunun nas�l
-davranaca��n� kestirmek zordur.
-
-contrib/dblink fonksiyon �a�r�lar�n� kullanarak cross-database sorgulara izin verir. Tabii ki, bir istemci de�i�ik
-veritabanlar�na ayn� anda eri�im sa�layabilir ve bilgiyi bu �ekilde birle�tirebilir.
-
-4.25) Bir fonksiyondan nas�l �oklu sat�r ya da kolon d�nd�rebilirim?
-
-7.3 s�r�m�nde, bir fonksiyondan kolayl�kla �oklu sat�r ya da s�tun d�nd�rebilirsiniz.
-(http://techdocs.postgresql.org/guides/SetReturningFunctions)
-
-4.26) Neden Pl/PgSQL fonksiyonlar� i�inden g�venli bir �ekilde tablo yaratma/kald�rma i�lemlerini yapam�yoruz?
-
-PL/PgSQL fonksiyon i�erikleri cache'ler. Bunun istenmeyen bir taraf�, e�er bir PL/PgSQL fonksiyonu ge�ici bir tabloya
-eri�iyorsa ve bu tablo ileride kald�r�l�p yeniden olu�turulduktan sonra fonksiyon yeniden �a�r�l�rsa, fonksiyon
-�al��mayacakt�r; ��nk� cache'lenmi� fonksiyon hala eski ge�ici tabloyu g�steriyor olacakt�r. ��z�m, ge�ici tablo
-eri�imleri i�in PL/PgSQL'de EXECUTE kullanmakt�r. Bu, sorgunun her seferinde yeniden i�lenmesini sa�layacakt�r.
-
-4.27) Hangi �ifreleme se�enekleri bulunmaktad�r?
-
- * contrib/pgcrypto SQL sorgular�nda kullan�labilmesi i�in �ifreleme fonksiyonlar� i�ermektedir.
- * �stemciden sunucuya ileti�imi �ifrelemek i�in, sunucuda ssl se�ene�i postgresql.conf i�inde a��k olmal�d�r.
-Ayr�ca,pg_hba.conf dosyas� i�inde host ya da hostssl kayd� mutlaka olmal�d�r ve istemci sslmode kapat�lmamal�d�r. (Ayn�
-zamanda,PostgreSQL'in do�al SSL ba�lant�lar� d���nda ssh ya da ssl gibi 3.parti �ifrelenmi� veri iletimi de m�mk�nd�r.)
- * Veritaban� kullan�c� ad� ve �ifreleri 7.3 s�r�m� ile birlikte otomatik olarak �ifrelenirler. �nceki s�r�mlerde,
-postgresql.conf i�indeki PASSWORD_ENCRYPTION se�ene�ini aktif hale getirmeniz gerekmektedir.
- * Sunucunun kendisini �ifreli dosya sistemi �zerinde �al��t�rabilirsiniz.
-
-PostgreSQL �zelliklerini Geni�letmek
-
-5.1) Kullan�c�-tan�ml� bir fonksiyon yazd�m. psql'de �al��t�rd���m zaman neden core dump ediyor?
-
-Sorunun nedeni birden fazla �ey olabilir. Kullan�c�-tan�ml� fonksiyonunuzu stand-alone bir programda �al��t�rmay�
-deneyiniz.
-
-5.2) PostgreSQL'e nas�l yeni tipler/fonksiyonlar ekleyebilirim?
-
-�al��malar�n�z� pgsql-hackers e-posta listesine g�nderiniz. Kodunuz incelendikten sonra /contrib dizinine konacakt�r.
-
-5.3) Bir tuple dond�rmek icin bir C fonksiyonunu nasil yazar�m?
-
-PostgreSQL 7.3 s�r�m� ile birlikte, C, PL/PgSQL ve SQL kullan�larak tablo-d�nd�ren fonksiyonlar tamamen
-desteklenmektedir. Ayr�nt�l� bilgi i�in PostgreSQL 7.3.2 Kullan�c� Rehberi'ne bakabilrisiniz. Bir �rne�i
-contrib/tablefunc i�inde bulabilirsiniz.
-
-5.4) Bir kaynak dosyas�nda de�i�iklik yapt�m. Yeniden derlememe ra�men de�i�iklik ge�erli olmuyor. Neden?
-
-Makefile'lar include dosyalar� i�in tam bir ba��ml�l�k i�ermezler. �ncelikle make clean, ard�ndan da baska bir make
-i�lemi yapman�z gerekir. GCC kullan�yorsan�z, configure beti�inin --enable-depend se�ene�ini, derleyicinin
-ba��ml�l�klar� otomatik olarak hesaplamas� i�in kullanabilirsiniz.
-
+ORDER BY col1
+
+ 4.24) Ayn� andan birden fazla veritaban�nda nas�l i�lem yapabilirim?
+
+ Mevcut veritaban�n�z d���ndaki ba�ka bir veritaban�n�z� sorgulaman�z�n
+ bir yolu bulunmamaktad�r. Bunun nedeni, PostgreSQL'in veritaban�na
+ �zel sistem kataloglar� y�klemesidir. Bu nedenle, cross-database bir
+ sorgunun nas�l davranaca��n� kestirmek zordur.
+
+ contrib/dblink fonksiyon �a�r�lar�n� kullanarak cross-database
+ sorgulara izin verir. Tabii ki, bir istemci de�i�ik veritabanlar�na
+ ayn� anda eri�im sa�layabilir ve bilgiyi bu �ekilde birle�tirebilir.
+
+ 4.25) Bir fonksiyondan nas�l �oklu sat�r ya da kolon d�nd�rebilirim?
+
+ 7.3 s�r�m�nde, bir fonksiyondan kolayl�kla �oklu sat�r ya da s�tun
+ d�nd�rebilirsiniz.
+ (http://techdocs.postgresql.org/guides/SetReturningFunctions)
+
+ 4.26) Neden Pl/PgSQL fonksiyonlar� i�inden g�venli bir �ekilde tablo
+ yaratma/kald�rma i�lemlerini yapam�yoruz?
+
+ PL/PgSQL fonksiyon i�erikleri cache'ler. Bunun istenmeyen bir taraf�,
+ e�er bir PL/PgSQL fonksiyonu ge�ici bir tabloya eri�iyorsa ve bu tablo
+ ileride kald�r�l�p yeniden olu�turulduktan sonra fonksiyon yeniden
+ �a�r�l�rsa, fonksiyon �al��mayacakt�r; ��nk� cache'lenmi� fonksiyon
+ hala eski ge�ici tabloyu g�steriyor olacakt�r. ��z�m, ge�ici tablo
+ eri�imleri i�in PL/PgSQL'de EXECUTE kullanmakt�r. Bu, sorgunun her
+ seferinde yeniden i�lenmesini sa�layacakt�r.
+
+ 4.27) 4.28) Hangi �ifreleme se�enekleri bulunmaktad�r?
+
+ * contrib/pgcrypto SQL sorgular�nda kullan�labilmesi i�in �ifreleme
+ fonksiyonlar� i�ermektedir.
+ * �stemciden sunucuya ileti�imi �ifrelemek i�in, sunucuda ssl
+ se�ene�i postgresql.conf i�inde a��k olmal�d�r. Ayr�ca,pg_hba.conf
+ dosyas� i�inde host ya da hostssl kayd� mutlaka olmal�d�r ve
+ istemci sslmode kapat�lmamal�d�r. (Ayn� zamanda,PostgreSQL'in
+ do�al SSL ba�lant�lar� d���nda ssh ya da ssl gibi 3.parti
+ �ifrelenmi� veri iletimi de m�mk�nd�r.)
+ * Veritaban� kullan�c� ad� ve �ifreleri 7.3 s�r�m� ile birlikte
+ otomatik olarak �ifrelenirler. �nceki s�r�mlerde, postgresql.conf
+ i�indeki PASSWORD_ENCRYPTION se�ene�ini aktif hale getirmeniz
+ gerekmektedir.
+ * Sunucunun kendisini �ifreli dosya sistemi �zerinde
+ �al��t�rabilirsiniz.
+ _________________________________________________________________
+
+ PostgreSQL �zelliklerini Geni�letmek
+
+ 5.1) Kullan�c�-tan�ml� bir fonksiyon yazd�m. psql'de �al��t�rd���m zaman
+ neden core dump ediyor?
+
+ Sorunun nedeni birden fazla �ey olabilir. Kullan�c�-tan�ml�
+ fonksiyonunuzu stand-alone bir programda �al��t�rmay� deneyiniz.
+
+ 5.2) PostgreSQL'e nas�l yeni tipler/fonksiyonlar ekleyebilirim?
+
+ �al��malar�n�z� pgsql-hackers e-posta listesine g�nderiniz. Kodunuz
+ incelendikten sonra /contrib dizinine konacakt�r.
+
+ 5.3) Bir tuple dond�rmek icin bir C fonksiyonunu nasil yazar�m?
+
+ PostgreSQL 7.3 s�r�m� ile birlikte, C, PL/PgSQL ve SQL kullan�larak
+ tablo-d�nd�ren fonksiyonlar tamamen desteklenmektedir. Ayr�nt�l� bilgi
+ i�in PostgreSQL 7.3.2 Kullan�c� Rehberi'ne bakabilrisiniz. Bir �rne�i
+ contrib/tablefunc i�inde bulabilirsiniz.
+
+ 5.4) Bir kaynak dosyas�nda de�i�iklik yapt�m. Yeniden derlememe ra�men
+ de�i�iklik ge�erli olmuyor. Neden?
+
+ Makefile'lar include dosyalar� i�in tam bir ba��ml�l�k i�ermezler.
+ �ncelikle make clean, ard�ndan da baska bir make i�lemi yapman�z
+ gerekir. GCC kullan�yorsan�z, configure beti�inin --enable-depend
+ se�ene�ini, derleyicinin ba��ml�l�klar� otomatik olarak hesaplamas�
+ i�in kullanabilirsiniz.