summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--doc/FAQ5
-rw-r--r--doc/FAQ_DEV14
-rw-r--r--doc/FAQ_brazilian77
-rw-r--r--doc/FAQ_czech2282
-rw-r--r--doc/FAQ_farsi2408
-rw-r--r--doc/FAQ_french32
-rw-r--r--doc/FAQ_german14
-rw-r--r--doc/FAQ_japanese2311
-rw-r--r--doc/FAQ_polish67
-rw-r--r--doc/FAQ_russian16
-rw-r--r--doc/FAQ_turkish1933
-rw-r--r--doc/src/FAQ/FAQ.html24
-rw-r--r--doc/src/FAQ/FAQ_DEV.html10
-rw-r--r--doc/src/FAQ/FAQ_MINGW.html2
-rw-r--r--doc/src/FAQ/FAQ_brazilian.html42
-rw-r--r--doc/src/FAQ/FAQ_czech.html38
-rw-r--r--doc/src/FAQ/FAQ_french.html13
-rw-r--r--doc/src/FAQ/FAQ_german.html18
-rw-r--r--doc/src/FAQ/FAQ_japanese.html345
-rw-r--r--doc/src/FAQ/FAQ_polish.html54
-rw-r--r--doc/src/FAQ/FAQ_russian.html31
-rw-r--r--doc/src/FAQ/FAQ_turkish.html20
22 files changed, 5447 insertions, 4309 deletions
diff --git a/doc/FAQ b/doc/FAQ
index 5b2ac568755..616258ee047 100644
--- a/doc/FAQ
+++ b/doc/FAQ
@@ -1,7 +1,7 @@
Frequently Asked Questions (FAQ) for PostgreSQL
- Last updated: Thu Feb 24 23:18:31 EST 2005
+ Last updated: Fri Mar 11 16:42:06 EST 2005
Current maintainer: Bruce Momjian ([email protected])
@@ -819,7 +819,8 @@
4.19) How do I return multiple rows or columns from a function?
It is easy using set-returning functions,
- http://techdocs.postgresql.org/guides/SetReturningFunctions.
+ http://techdocs.postgresql.org/guides/SetReturningFunctions
+ .
4.20) Why do I get "relation with OID ##### does not exist" errors when
accessing temporary tables in PL/PgSQL functions?
diff --git a/doc/FAQ_DEV b/doc/FAQ_DEV
index 688cf2819da..f3a9835cfff 100644
--- a/doc/FAQ_DEV
+++ b/doc/FAQ_DEV
@@ -1,7 +1,7 @@
Developer's Frequently Asked Questions (FAQ) for PostgreSQL
- Last updated: Fri Mar 11 08:09:23 EST 2005
+ Last updated: Fri Mar 11 16:43:05 EST 2005
Current maintainer: Bruce Momjian ([email protected])
@@ -9,8 +9,8 @@
http://www.postgresql.org/files/documentation/faqs/FAQ_DEV.html.
_________________________________________________________________
- General Questions
-
+General Questions
+
1.1) How do I get involved in PostgreSQL development?
1.2) What development environment is required to develop code?
1.3) What areas need work?
@@ -31,8 +31,8 @@
1.17) Where can I get technical assistance?
1.18) How do I get involved in PostgreSQL web site development?
- Technical Questions
-
+Technical Questions
+
2.1) How do I efficiently access information in tables from the
backend code?
2.2) Why are table, column, type, function, view names sometimes
@@ -564,8 +564,8 @@
contribute to that. A temporary todo list for current website
development issues is available at http://xzilla.postgresql.org/todo
- Technical Questions
-
+Technical Questions
+
2.1) How do I efficiently access information in tables from the backend code?
You first need to find the tuples(rows) you are interested in. There
diff --git a/doc/FAQ_brazilian b/doc/FAQ_brazilian
index a44ed10c200..45297e30592 100644
--- a/doc/FAQ_brazilian
+++ b/doc/FAQ_brazilian
@@ -603,22 +603,17 @@
Se o postmaster est� sendo executado, inicie o psql em uma janela, e
ent�o encontre o PID do processo postgres utilizado pelo psql
- utilizando
-SELECT pg_backend_pid()
-
- . Utilize um depurador para anexar ao PID do postgres. Voc� pode
- definir pontos de parada (breakpoints) no depurador e digitar
- consultas no psql. Se voc� est� depurando a inicializa��o do postgres,
- voc� pode definir PGOPTIONS="-W n" e ent�o iniciar o psql. Isto
- retardar� a inicializa��o por n segundos ent�o voc� pode anexar o
- depurador ao processo, definir quaisquer pontos de parada e continuar
- pela sequ�ncia de inicializa��o.
-
- H� v�rias vari�veis de configura��o do servidor
-log_*
-
- que habilitam a exibi��o de estat�sticas que podem ser muito �teis
- para depura��o e medidas de performance.
+ utilizando SELECT pg_backend_pid(). Utilize um depurador para anexar
+ ao PID do postgres. Voc� pode definir pontos de parada (breakpoints)
+ no depurador e digitar consultas no psql. Se voc� est� depurando a
+ inicializa��o do postgres, voc� pode definir PGOPTIONS="-W n" e ent�o
+ iniciar o psql. Isto retardar� a inicializa��o por n segundos ent�o
+ voc� pode anexar o depurador ao processo, definir quaisquer pontos de
+ parada e continuar pela sequ�ncia de inicializa��o.
+
+ H� v�rias vari�veis de configura��o do servidor log_* que habilitam a
+ exibi��o de estat�sticas que podem ser muito �teis para depura��o e
+ medidas de performance.
Voc� tamb�m pode compilar com perfil para ver que fun��es est�o
demandando tempo de execu��o. Os arquivo de perfil do n�cleo (backend)
@@ -680,13 +675,13 @@ log_*
3.11) Que tipo de hardware eu devo usar?
Por causa do hardware de PC ser em sua maioria compat�vel, pessoas
- tendem a acreditar que todos os hardwares de PC s�o de mesma
- qualidade. N�o � verdade. ECC RAM, SCSI e placas m�e de qualidade s�o
- mais confi�veis e t�m uma melhor performance do que hardwares mais
- baratos. O PostgreSQL executar� em quase todo hardware, mas se a
- confiabilidade e a performance forem importantes � prudente pesquisar
- sobre as op��es de hardware. Nossas listas de discuss�o podem ser
- usadas para discutir op��es de hardware e dilemas.
+ tendem a acreditar que todos os hardwares de PC satilde;o de mesma
+ qualidade. Natilde;o � verdade. ECC RAM, SCSI e placas m�e de
+ qualidade s�o mais confi�veis e t�m uma melhor performance do que
+ hardwares mais baratos. O PostgreSQL executar� em quase todo hardware,
+ mas se a confiabilidade e a performance forem importantes � prudente
+ pesquisar sobre as op��es de hardware. Nossas listas de discuss�o
+ podem ser usadas para discutir op��es de hardware e dilemas.
_________________________________________________________________
Perguntas Operacionais
@@ -753,14 +748,12 @@ log_*
dados?
Estes s�o os limites:
-Tamanho m�ximo de um banco de dados? ilimitado (existem bancos de dad
-os de 32 TB)
+Tamanho m�ximo de um banco de dados? ilimitado (existem bancos de dados de 32 TB)
Tamanho m�ximo de uma tabela? 32 TB
Tamanho m�ximo de um registro? 1.6TB
Tamanho m�ximo de um campo? 1 GB
N�mero m�ximo de registros em uma tabela? ilimitado
-N�mero m�ximo de colunas em uma tabela? 250-1600 dependendo dos tipos da
-s colunas
+N�mero m�ximo de colunas em uma tabela? 250-1600 dependendo dos tipos das colunas
N�mero m�ximo de �ndices em uma tabela? ilimitado
� claro, que eles n�o s�o ilimitados, mas limitados ao espa�o em disco
@@ -795,17 +788,14 @@ N�mero m�ximo de �ndices em uma tabela? ilimitado
O tamanho de uma p�gina de dados no PostgreSQL � 8192 bytes (8 KB), ent�o:
8192 bytes por p�gina
- ------------------------ = 136 registros por p�gina do banco de dados (ar
-redondado para baixo)
+ ------------------------ = 136 registros por p�gina do banco de dados (arredondado para baixo)
60 bytes por registro
100000 registros de dados
- ---------------------------- = 735 p�ginas do banco de dados (arredondado
-para cima)
+ ---------------------------- = 735 p�ginas do banco de dados (arredondadopara cima)
128 registros por p�gina
-735 p�ginas do banco de dados * 8192 bytes por p�gina = 6,021,120 bytes (6 MB
-)
+735 p�ginas do banco de dados * 8192 bytes por p�gina = 6,021,120 bytes (6 MB)
�ndices n�o requerem muito espa�o, mas cont�m dados que foram
indexados, ent�o eles podem ocupar algum espa�o.
@@ -874,10 +864,8 @@ para cima)
* A localidade padr�o C deve ser utilizada durante o initdb porque
n�o � poss�vel saber o pr�ximo/maior caracter em uma localidade
que n�o seja a C. Voc� pode criar um �ndice especial
-text_pattern_ops
- para tais casos que funcionam somente para indexa��o utilizando
-LIKE
- .
+ text_pattern_ops para tais casos que funcionam somente para
+ indexa��o utilizando LIKE.
Em vers�es anteriores a 8.0, �ndices frequentemente n�o podiam ser
usados a menos que os tipos de dados correspodessem aos tipos da
@@ -948,14 +936,10 @@ LIKE
Tipo Nome Interno Notas
--------------------------------------------------
-VARCHAR(n) varchar tamanho especifica o comprimento m�ximo, sem pr
-eenchimento
-CHAR(n) bpchar preenchimento em branco para comprimento fixo e
-spec�fico
-TEXT text nenhum limite superior espec�fico no compriment
-o
-BYTEA bytea vetor de bytes de comprimento vari�vel (null-by
-te safe)
+VARCHAR(n) varchar tamanho especifica o comprimento m�ximo, sem preenchimento
+CHAR(n) bpchar preenchimento em branco para comprimento fixo espec�fico
+TEXT text nenhum limite superior espec�fico no comprimento
+BYTEA bytea vetor de bytes de comprimento vari�vel (null-byte safe)
"char" char um caracter
Voc� ver� o nome interno quando examinar o cat�logo do sistema e em
@@ -1063,8 +1047,7 @@ te safe)
de alguma coisa, ou se voc� quer fazer uma c�pia da tabela, com os
OIDs, n�o h� raz�o para que voc� n�o possa faz�-la:
CREATE TABLE nova_tabela(minha_coluna int);
- SELECT oid as oid_antigo, minha_coluna INTO tabela_tmp FROM tabela_anti
-ga;
+ SELECT oid as oid_antigo, minha_coluna INTO tabela_tmp FROM tabela_antiga;
COPY tabela_tmp TO '/tmp/pgtable';
DROP TABLE tabela_tmp;
COPY nova_tabela WITH OIDS FROM '/tmp/pgtable';
diff --git a/doc/FAQ_czech b/doc/FAQ_czech
index 1fd6627b8a5..1a2b33cb687 100644
--- a/doc/FAQ_czech
+++ b/doc/FAQ_czech
@@ -1,855 +1,823 @@
-�asto kladen� dotazy (FAQ) PostgreSQL
-=====================================
-
-Obecn� ot�zky
-=============
-1.1 Co je PostgreSQL? Jak se vyslovuje?
-1.2 Jak� je licence na PostgreSQL?
-1.3 Na kter�ch Unixex lze spustit PostgreSQL?
-1.4 Kter� ne-unixov� platformy jsou podporovan�?
-1.5 Kde mohu z�skat PostgreSQL?
-1.6 Kde mohu z�skat podporu?
-1.7 Kde je posledn� verze?
-1.8 Jak� je dostupn� dokumentace?
-1.9 Kde najdu seznam zn�m�ch chyb nebo nepodporovan�ch vlastnost�?
-1.10 Jak se mohu nau�it SQL?
-
-1.11 Nem� PostgreSQL probl�my s rokem 2000?
-1.12 Jak se p�ipojit k v�voj��sk�mu t�mu?
-1.13 Kam podat report o chyb�?
-1.14 Jak je na tom PostgreSQL v porovn�n� s jin�mi datab�zemi?
-1.15 Jak lze finan�n� pomoci PostgreSQL?
-
-User client dotazy
-==================
-2.1 Kde naleznu ODBC ovlada�e pro PostgreSQL?
-2.2 Jak� n�stroje lze pou��t pro PostgreSQL a web?
-2.3 Existuje grafick� rozhran� pro PostgreSQL?
-2.4 Kter� programovac� jazyky maj� podporu pro PostgreSQL?
-
-Administrativn� dotazy
-======================
-3.1 Jak nainstalovat PostgreSQL jinam ne� do /usr/local/pgsql?
-3.2 P�i startu postmaster, dostanu chybov� hl�en� Bad System Call nebo
-core dump. Pro�? 3.3 P�i startu postmastera dostanu hl�en� o chyb�
-IpcMemoryCreate. Pro�? 3.4 P�i startu postmastera dostanu hl�en� o
-chyb� IpcSemaphoreCreate. Pro�? 3.5 Jak povolit nebo zak�zat p��stup z
-jin�ch stanic? 3.6 Jak ladit datab�zov� stroj na lep�� v�kon?
-
-3.7 Jak� jsou mo�nosti lad�n�?
-3.8 Pro� dostanu "Sorry, too many clients", kdy� se zkou��m p�ipojit?
-3.9 K �emu slou�� adres�� pgsql_tmp?
-
-3.10 Pro� je po�adov�no dump a obnoven� (load) datab�ze b�hem upgrade
-mezi velk�mi verzemi PostgreSQL?
-
-Provozn� dotazy
-===============
-4.1 ��m se li�� bin�rn� a norm�ln� kurzor?
-4.2 Jak z�skat pouze prvn� ��dek dotazu? N�hodn� ��dek?
-4.3 Jak z�sk�m seznam tabulek nebo jinak jak jej z�sk� psql?
-4.4 Jak odstran�m sloupec tabulky, jak zm�n�m jeho typ?
-4.5 Jak� je maxim�ln� velikost ��dku, tabulky a datab�ze?
-4.6 Kolik diskov�ho prostoru je pot�eba k ulo�en� dat z norm�ln�ho
-textov�ho souboru? 4.7 Jak z�sk�m seznam vytvo�en�ch tabulek, index�,
-datab�z�? 4.8 M�j dotaz je pomal� a nepou��v� vytvo�en� indexy. Pro�?
-4.9 Jak zjist�m, jak optimizer dotazu vyhodnocuje m�j dotaz?
-
-4.10 Co to je R-tree index?
-4.11 Co je Genetic Query Optimizer?
-4.12 Jak prov�st vyhled�v�n� regul�rn�ho v�razu case sensitiv,
-insensitiv? Jak pou��t index pro case insensitive vyhled�v�n�? 4.13 Jak
-v dotazu detekovat, �e polo�ka je NULL? 4.14 Jak� jsou rozd�ly mezi
-r�zn�mi znakov�mi typy? 4.15.1 Jak vytvo�it serial/auto-increment pole?
-4.15.2 Jak z�skat hodnotu SERIAL po vlo�en� ��dku?
-
-4.15.3 Nepovede currval() a nextval() k rozhozen� podm�nek p�i soub�hu s
-jin�mi u�ivateli? 4.15.4 Pro� nen� vygenerovan� ��slo pou�ito p�i
-p�eru�en� transakce? Pro� vznikaj� d�ry v ��slov�n� vlastn�
-sekvenc�/SERIAL sloupce? 4.16 Co to je OID? Co je to TID?
-
-4.17 Jak� je v�znam n�kter�ch v�raz� pou�it�ch v PostgreSQL?
-4.18 Pro� jsem z�skal chybov� hl�en� "ERROR: Memory exhausted in
-AllocSetAlloc()"? 4.19 Jak se dozv�m, kterou verzi PostgreSQL pou��v�m?
-4.20 Pro� operace s velk�mi objekty kon�� "invalid large obj
-descriptor"? 4.21 Jak vytvo�it sloupec obsahuj�c� implicitn� aktu�ln�
-datum? 4.22 Pro� jsou moje vno�en� dotazy pou��vaj�c� IN tak pomal�?
-4.23 Jak prov�st vn�j�� spojen� (outer join)?
-
-4.24 Jak prov�st dotaz nap��� n�kolika datab�zemi?
-4.25 M��e funkce vr�tit v�ce ��dk� nebo sloupc�?
-4.26 Pro� nelze spolehliv� vytv��et a ru�it do�asn� tabulky v PL/pgSQL
-funkc�ch? 4.27 Jak� jsou mo�nosti replikace datab�z�?
-
-4.28 Jak� jsou mo�nosti �ifrov�n� datab�z�?
-
-Roz�i�ov�n� PostgreSQL
-======================
-5.1 Napsal jsem UDF funkci, PostgreSQL v�ak kon�� dump core?
-5.2 Jak mohu p�isp�t n�jak�mi �ikovn�mi datov�mi typy a funkcemi do
-PostgreSQL? 5.3 Jak napsat funkci v C vracej�c� ntici?
-
-5.4 Modifikoval jsem zdrojov� soubory. Tato zm�na nebyla p�i rekompilaci
-vzata v potaz. Pro�?
-------------------------------------------------------------------------
-
-Obecn� ot�zky
-=============
-
-1.1 Co je PostgreSQL? Jak se vyslovuje?
----------------------------------------
-
-PostgreSQL se vyslovuje Post-Gres-Q-L.
-
-PostgreSQL vych�z� z datab�ze POSTGRES - v�zkumn�ho prototypu DBMS nov�
-generace. Z postgresu byl p�evzat siln� datov� model a bohat� soubor
-datov�ch typ� a jeho dotazovac� jazyk PostQuel byl nahrazen roz���enou
-podmno�inou jazyka SQL. PostgreSQL lze pou��vat bez omezen� a jeho
-zdrojov� k�dy jsou voln� k dispozici.
-
-PostgreSQL vyv�j� t�m v�voj��� p�ihl�en�ch do v�voj��sk� konference
-PostgreSQL. Sou�asn�m koordin�torem je Marc G. Fournier. (Odpov�� 1.6. -
-jak se zapojit). Tento t�m je zodpov�dn� za ve�ker� v�voj PostgreSQL.
-
-Autory prvn� verze PostgreSQL 1.01 byli Andrew Yu and Jolly Chen. Do
-portace, testov�n�, lad�n� a roz�i�ov�n� k�du se zapojilo mnoho dal��ch
-v�voj��� . P�vodni k�d Postgresu, ze kter�ho PostgreSQL vych�z�, je
-v�sledkem �sil� mnoha student� a program�tor� pracuj�c�ch pod veden�m
-prof. Michaela Stonebrakera na University of California v Berkley.
-
-P�vodn� n�zev software z Berkley byl Postgres. Po p�id�n� jazyka SQL se
-n�zev zm�nil na Postgres95. Koncem roku 1996 byl RDBMS p�ejmenov�n na
-PostgreSQL.
-
-1.2 Jak� je licence na PostgreSQL?
-----------------------------------
-
-PostgreSQL je p�edm�tem n�sleduj�c�ch autorsk�ch pr�v:
-
-D�l�� copyright (c) 1996-2002, PostgreSQL Global Development Group
-
-D�l�� copyright (c) 1994-6, Regents of the University of California
-
-Ud�luje se opr�vn�n� k u�it�, rozmno�ov�n�, prov�d�n� �prav a
-roz�i�ov�n� tohoto softwaru a dokumentace k n�mu, pro jak�koli ��ely,
-bez licen�n�ho poplatku a bez p�semn� licen�n� smlouvy, za podm�nky, �e
-na v�ech jeho kopi�ch je uvedeno ozn�men� o v��e uveden�ch pr�vech,
-jako� i obsah tohoto a dvou n�sleduj�c�ch odstavc�.
-
-THE UNIVERSITY OF CALIFORNIA ("KALIFORNSK� UNIVERZITA") NEN� V ��DN�M
-P��PAD� ODPOV�DNA ��DN� T�ET� OSOB� ZA P��MOU, NEP��MOU, ZVL��TN�,
-NAHODILOU NEBO V�SLEDNOU �KODU, V�ETN� U�L�HO ZISKU, ZP�SOBENOU U�IT�M
-TOHOTO SOFTWARU A DOKUMENTACE K N�MU, A TO I V P��PAD�, �E THE
-UNIVERSITY OF CALIFORNIA BYLA INFORMOV�NA O MO�NOSTI VZNIKU TAKOV�
-�KODY.
-
-THE UNIVERSITY OF CALIFORNIA ZEJM�NA NEPOSKYTUJE JAK�KOLI Z�RUKY, A TO
-NEJEN Z�RUKY OBCHODOVATELNOSTI A VHODNOSTI TOHOTO V�ROBKU KE SPECIFICK�M
-��EL�M. NͮE UVEDEN� SOFTWARE JE POSKYTNUT "JAK STOJ� A LE��" A THE
-UNIVERSITY OF CALIFORNIA NEN� POVINNA ZAJISTIT JEHO �DR�BU, PODPORU,
-AKTUALIZACI, VYLEP�EN� NEBO MODIFIKACI.
-
-V��e uveden� je BSD licence, b�n� licence otev�en�ho zdroje. Nen� zde
-��dn� omezen� ohledn� u�it� k�du zdroje. Jsme s t�m spokojeni a nem�me v
-�myslu na t�to skute�nosti cokoli m�nit.
-
-1.3 Na kter�ch Unixex lze spustit PostgreSQL?
----------------------------------------------
-
-PostgreSQL b�� na v�ech modern�ch unixov�ch platform�ch. V instala�n�ch
-instrukc�ch naleznete aktu�ln� seznam v�ech platforem na kter�ch byla
-testov�n�m ov��ena funkcionalita PostgreSQL.
-
-1.4 Kter� ne-unixov� platformy jsou podporovan�?
-------------------------------------------------
-
-Klient
-------
-
-Knihovna libpq, psql a n�kter� dal�� moduly byly p�elo�eny pro MS
-Windows. Klienta lze provozovat na MS Windows, ten prost�ednictv�m
-TCP/IP protokolu komunikuje se serverem b��c�m na n�kter� z
-podporovan�ch Unixov�ch platforem. K p�ekladu lze pou��t win32.mak a
-Win32 knihovny libpq a psql. K datab�zi PostgerSQL lze p�istupovat skrze
-rozhran� ODBC.
-
-Server
-------
-
-Server m��e b�t na WindowsNT a Win2k provozov�n pouze s knihovnou
-Cygwin, Cygnus Unix/NT porting library. Na nativn�m portu pro MS Win
-NT/2000/XP se pracuje. Existuj�c� port pro Novell Netware 6 naleznete na
-http://forge.novell.com.
-
-1.5 Kde mohu z�skat PostgreSQL?
--------------------------------
-
-Prim�rn�m anonymn�m ftp serverem pro PostgreSQL je
-ftp://ftp.PostgreSQL.org/pub . Seznam zrcadel naleznete na na�ich
-webov�ch str�nk�ch.
-
-1.6 Kde mohu z�skat podporu?
-----------------------------
-
-Hlavn�m mailov� konference je [email protected]. Slou�� k
-diskuz�m ohledn� PostgreSQL. P�ihl�s�te se zasl�n�m mailu obsahuj�c�
-n�sleduj�c� ��dky v t�le dopisu (nikoliv v z�hlav� - subjectu)
-
-subscribe
-end
-
-na adresu mailto:[email protected].
-
-M��ete si vy��dat denn� p�ehled (diggest), kter� m� zhruba 30K denn�
-zpr�v.
-
-Konference psql-bugs je ur�ena k zas�l�n� zpr�v o chyb�ch. Pro
-p�ihl�en� po�lete mail se stejn�m obsahem jako v p�edchoz�m p��pad� na
-adresu mailto:[email protected].
-
-Do v�voj��sk� konference se p�ihl�s�te odesl�n�m dopisu s ji� zmi�ovan�m
-obsahem na mailto:[email protected].
-
-Seznam dal��ch konferenc� naleznete na str�nk�ch PostgreSQL
-http://www.postgresql.org
-
-1.7 Kde je posledn� verze?
---------------------------
-
-Posledn� verz� je PostgreSQL 7.4.. Pl�nujeme uvolnit velkou verzi
-ka�d�ch �est a� osm m�s�c�.
-
-1.8 Jak� je dostupn� dokumentace?
----------------------------------
-
-R�zn� manu�ly, manu�lov� str�nky a n�kolik mal�ch testovac�ch p��klad�
-jsou sou��sti distribuce. Pod�vejte se do adres��e /doc. Manu�ly jsou
-p��stupn� online na http://www.PostgreSQL.org/docs.
-
-Na adres�ch http://www.PostgreSQL.org/docs/awbook.html a
-http://www.commandprompt.com/ppbook/ naleznezte dv� online knihy o
-PostgreSQL. Seznam dostupn� literatury je na
-http://techdocs.PostgreSQL.org/techdocs/bookreviews.php. Soubor
-technick�ch �l�nk� s tematikou PostgresQL najdete na
-http://techdocs.PostgreSQL.org/.
-
-psql m� u�ite�n� metap��kaz \d slou��c� k zobrazen� informac� o typech,
-oper�torech, funkc�, agrega�n�ch funkc� atd.
-
-V�ce dokumentace naleznete na na�ich webov�ch str�nk�ch.
-
-1.9 Kde najdu seznam zn�m�ch chyb nebo nepodporovan�ch vlastnost�?
-------------------------------------------------------------------
-
-PostgreSQL podporuje roz���enou podmno�inu SQL-92. V na�em TODO [1]
-najdete seznam zn�m�ch chyb, chyb�j�c�ch vlastnost� a seznam vlastnost�,
-kter� budou do syst�mu implementov�ny v budoucnu (v�etn� priorit).
-
-1.10 Jak se mohu nau�it SQL?
-----------------------------
-
-V knize The PostgreSQL book na
-http://www.PostgreSQL.org/docs/awbook.html je vysv�tlen jazyk SQL (vy�la
-�esky). Dal�� dostupnou knihou je http://www.commandprompt.com/ppbook.
-Kvalitn� n�vody naleznete na
-http://www.intermedia.net/support/sql/sqltut.shtm, na
-http://www.intermedia.net/support/sql/sqltut.shtm [2] , a na
-http://sqlcourse.com.
-
-Dal�� je Teach Yourself SQL in 21 days, Second Edition na
-http://members.tripod.com/er4ebus/sql/index.htm.
-
-Mnoho u�ivatel� doporu�uje The Practical SQL Handbook, Bowman, Judith
-S., et al., Addison-Wesley. Jin� preferuj� The Complete Reference SQL,
-Groff et al., McGraw-Hill.
-
-1.11 Nem� PostgreSQL probl�my s rokem 2000?
--------------------------------------------
-
-Nem�, m��eme pracovat s datumy po roce 2000 na�eho letopo�tu i p�ed
-rokem 2000 p�.n.l.
-
-1.12 Jak se p�ipojit k v�voj��sk�mu t�mu?
------------------------------------------
-
-Nejd��ve si st�hn�te nejnov�j�� zdroje a p�e�t�te si v�voj��skou
-dokumentaci na na�em webu nebo v distribuci. Pak se p�ihla�te do
-konferenc� pgsql-hackers a pgsql-patches. Kvalitn� z�platy pos�lejte do
-pgsql-patches.
-
-Pr�vo commit m� v cvs archivu asi t�in�cti lid�. Ka�d� z nich poslal
-mnoho kvalitn�ch z�plat, tak�e tehdej�� commiters m�li jistotu, �e budou
-p�edkl�dat jenom kvalitn� z�platy a mohli jim p�ed�lit v�t�� pr�va.
-
-1.13 Kam podat report o chyb�?
-------------------------------
-
-Nav�tivte na�i PostgreSQL BugTool str�nku na
-http://www.PostgreSQL.org/bugs/bugs.php, kter� obsahuje n�vod a sm�rnice
-jak podat chybov� report.
-
-Ov��te si na na�em ftp serveru ftp://ftp.PostgreSQL.org/pub, zda-li m�te
-nejnov�j�� verzi PostgreSQL a zda-li k n� neexistuj� n�jak� z�platy.
-
-1.14 Jak je na tom PostgreSQL v porovn�n� s jin�mi datab�zemi?
---------------------------------------------------------------
-
-Existuje n�kolik hledisek jak porovn�vat software: vlastnosti, v�kon,
-spolehlivost, podpora a cena.
-
-Vlastnosti
-----------
-
-PostgreSQL m� hodn� spole�n�ch vlastnost� s velk�mi komer�n�mi DBMS,
-nap�. transakce, vno�en� dotazy, spou�t�, pohledy, kontrolu referen�n�
-integrity a sofistikovan� zamyk�n�. Podporuje n�kter� vlastnosti, kter�
-tyto syst�my nemaj�, u�ivatelem definovan� typy, d�di�nost, pravidla,
-MVCC redukuj�c� zamyk�n�.
-
-V�kon
------
-
-V�konnostn� je na tom PostgreSQL podobn� jako dal�� komer�n� ale i open
-source datab�ze, v n��em je rychlej��, jindy pomalej��. V porovn�n� s
-MySQL a podobn�mi datab�zov�mi syst�my je PostgreSQL rychlej�� p�i
-v�ceu�ivatelsk�m p��stupu, slo�it�j��ch dotazech a zat��en� read/write
-dotazy. MySQL je rychlej�� v jednodu���ch dotazech s mal�m po�tem
-u�ivatel�. Nav�c, MySQL nepodporuje mnoh� vlatnosti zm�n�n� v sekci
-vlastnosti. Zapracovali jsme na spolehlivosti a podporovan�ch
-vlastnostech, a v�kon zvy�ujeme v ka�d� verzi. Zaj�mavou str�nku
-porovn�vaj�c� PostgreSQL a MySQL naleznete na
-http://openacs.org/philosophy/why-not-mysql.html. Za v�vojem MySQL nen�
-Open Source komunita, ale komer�n� spole�nost, p�esto�e svoje produkty
-distribuuje jako Open Source.
-
-Spolehlivost
-------------
-
-Jsme si v�domi, �e datab�ze mus� b�t spolehliv�, jinak je nepou�iteln�.
-Sna��me se zve�ej�ovat dob�e otestovan�, stabiln� k�d s minimem chyb.
-Ka�d� verze je v�ce ne� m�s�c v beta testov�n�, a na�e historie verz�
-ukazuje, �e m��eme nab�dnout stabiln�, solidn� verze, kter� jsou
-p�ipraveny pro re�ln� nasazen�. V t�to oblasti jsme srovnateln� s
-dal��mi datab�zemi.
-
-Podpora
--------
-
-Na na�� mailov� konferenci m��ete kontaktovat velkou skupinu v�voj��� a
-u�ivatel�.probl�m�. Nem��eme garantovat opravu, nicm�n� komer�n�
-datab�ze tak� ne v�dy nab�dnou opravu. Podle ohlas� je na�e podpora
-hodnocena l�pe ne� u jin�ch DBMS a to d�ky p��m�mu kontaktu s v�voj��i,
-velkou komunitou u�ivatel�, kvalitn�mi manu�ly a p��stupn�m zdrojov�m
-k�dem. Pro u�ivatele, kte�� vy�aduj� podporu ke konkr�tn�m p��pad�m,
-existuje placen� podpora (FAQ sekce 1.6).
-
-Cena
-----
-
-PosgreSQL lze voln� pou��vat pro nekomer�n� i komer�n� pou�it�. M��ete
-do sv�ch produkt� p�idat n� k�d bez omezen�, respektive v souladu s
-podm�nkami na�� licen�n� smlouvy (v duchu BSD licence).
-
-1.15 Jak lze finan�n� pomoci PostgreSQL?
-----------------------------------------
-
-PosgreSQL m� prvot��dn� infrastrukturu od na�eho za��tku v roce 1996.
-Vd���me za to Marku Fournierovi, kter� zalo�il a spravoval tuto
-infrastrukturu n�kolik let.
-
-Kvalitn� infrastruktura je velice d�le�it� pro ka�d� open source
-projekt. P�edch�z� nedorozum�n�m, kter� velice zdr�uj� pokrok v
-projektu.
-
-Tato infrastruktura nen� lacin�. K jej�mu zaji�t�n� je t�eba st�le
-hradit ur�it� m�s��n� a jednor�zov� ��stky. Pokud m�te Vy nebo Va�e
-spole�nost pen�ze, kter� n�m m��ete darovat, obra�e se na
-http://store.pgsql.com/shopping/ a darujte je.
-
-A�koliv webov� str�nka zmi�uje PostgreSQL, Inc. vklady jsou ur�eny pouze
-k podpo�e projektu PostgreSQL a nepodporuj� ��dnou existuj�c�
-spole�nost. Pokud to vy�adujete, m��ete poslat kontrolu na na�i
-kontaktn� adresu.
-
-Pokud m�te p��klad �sp�n�ho nasazen� PostgreSQL, p�ihla�t� se na n�
-advocacy site na http://advocacy.postgresql.org.
-
-------------------------------------------------------------------------
-
-User client dotazy
-==================
-
-2.1 Kde naleznu ODBC ovlada�e pro PostgreSQL?
----------------------------------------------
-
-Pro PostgreSQL existuj� dva ODBC ovlada�e - PsqlODBC a OpenLink ODBC.
-
-PsqlODBC je ke sta�en� na
-http://gborg.postgresql.org/project/psqlodbc/projdisplay.php.
-
-OpenLink m��ete z�skat na http://www.openlinksw.com. Spolupracuje s
-jejich klientsk�m programov�m vybaven�m a je dostupn� pro v�echny jimi
-podporovan� platformy (Win, Mac, Unix, VMS).
-
-Tento ovlada� je ur�en pro ty, kte�� vy�aduj� podporu komer�n� kvality,
-nicm�n� freeware verze je dostupn� a funk�n�. Dotazy zas�lejte na
-
-2.2 Jak� n�stroje lze pou��t pro PostgreSQL a web?
---------------------------------------------------
-
-P�kn� �vod do datab�zov�ch technologi� zabezpe�uj�c�ch chod webov�ch
-str�nek najdete na http://www.webreview.com.
-
-Pro tvorbu webu existuje excelentn� rozhran� PHP, kter� naleznete na
-http://www.php.net.
-
-Pro slo�it�j�� p��pady se �asto pou��v� Perl a CGI.pm nebo mod_perl.
-
-2.3 Existuje grafick� rozhran� pro PostgreSQL?
-----------------------------------------------
-
-Pro PostgreSQL existuje n�kolik grafick�ch rozhran�: PgAccess
-(http://www.php.net), PgAdmin (http://www.php.net), RHDB Admin
-(http://sources.redhat.com/rhdb/) a Rekall (
-http://www.thekompany.com/products/rekall/). D�le existuje PHPPgAdmin
-(http://phppgadmin.sourceforge.net/) rozhran� PostgreSQL zalo�en� na web
-technologii.
-
-�pln�j�� seznam najdete na
-http://techdocs.postgresql.org/guides/GUITools.
-
-2.4 Kter� programovac� jazyky maj� podporu pro PostgreSQL?
-----------------------------------------------------------
-
-V�t�ina programovac�ch jazyk� obsahuje rozhran� pro PostgreSQL.
-Pod�vejte se do roz�i�uj�c�ch modul� Va�eho programovac�ho jazyka.
-
-Distribuce PostgreSQL obsahuje tato rozhran�:
-
- - C (libpq)
- - Embbedded C (ecpg)
- - Java (jdbc)
- - Python (PyGreSQL)
- - TCL (libpgtcl)
-
-Dal�� rozhran� jsou dostupn� na http://gborg.postgresql.org v sekci
-Drivers/Interfaces.
-
-------------------------------------------------------------------------
-
-Administrativn� dotazy
-======================
-
-3.1 Jak nainstalovat PostgreSQL jinam ne� do /usr/local/pgsql?
---------------------------------------------------------------
-
-Pou�ijte volbu --prefix p�i spu�t�n� configure
-
-3.2 P�i startu postmaster, dostanu chybov� hl�en� Bad System Call nebo core dump. Pro�?
-----------------------------------------------------------------------------------------
-
-D�vody mohou b�t r�zn�, ale nejprve zkontrolujte, zda V� syst�m
-podporuje System V extensions. PostgreSQL vy�aduje v j�d�e podporu
-sd�len� pam�ti a semafor�.
-
-3.3 P�i startu postmastera dostanu hl�en� o chyb� IpcMemoryCreate. Pro�?
--------------------------------------------------------------------------
-
-Bu�to nem�te spr�vn� nakonfigurovanou sd�lenou pam� v j�d�e nebo musite
-zv�t�it jej� velikost. Pot�ebn� velikost je z�visl� na architektu�e a na
-tom, kolik pam�ov�ch buffer� a backend� m�te povoleno pro postmastera.
-Pro v�t�inu syst�m� s p�eddefinovan�m po�tem backend� a pam�ov�ch
-buffer� je minimum zhruba 1MB. V
-http://www.postgresql.org/docs/view.php?version=current&idoc=1&file=kern
-el-resources.html [3] naleznete podrobn�j�� informace o sd�len� pam�ti a
-semaforech.
-
-3.4 P�i startu postmastera dostanu hl�en� o chyb� IpcSemaphoreCreate. Pro�?
-----------------------------------------------------------------------------
-
-Pokud dostane chybovou zpr�vu IpcSemaphoreCreate: semget failed (No
-space left on device), pak va�e j�dro nem� dost voln�ch semafor�.
-PostgreSQL vy�aduje jeden semafor pro ka�d� backend v pozad�. Do�asn�m
-�e�en�m je start postmastera s limitem backend�. Pou�ijte p�ep�na� -N s
-hodnotou men�� ne� 32. �pln�m �e�en�m je zv��en� hodnot SEMMNS a SEMMNI
-jadra.
-
-Nefunk�n� semafory mohou zp�sobit p�d b�hem intenzivn�ch datab�zov�ch
-operac�.
-
-Pokud se tato chyba vyskytuje je�t� n�kde jinde, mo�n� nem�te v�bec
-nakonfigurov�ny semafory ve va�em j�d�e. V PostgreSQL Administrator's
-Guide najdete podrobn�j�� popis po�adavk� na sd�lenou pam�t a semafory.
-
-3.5 Jak povolit nebo zak�zat p��stup z jin�ch stanic?
------------------------------------------------------
-
-P�i v�choz�m nastaven� PostgreSQL odep�e p��stup z jin�ch stanic ne�
-lok�ln� s pou�it�m UDP. Datab�ze se zp��stupn� jin�m stanic�m nastaven�m
-p�ep�na�e -i postmastera a povolen�m stanice a ur�en�m re�imu
-autentifikace v $PGDATA/pg_hba.conf. T�m se povol� TCP/IP spojen�.
-ZASTARAL�
-
-3.6 Jak ladit datab�zov� stroj na lep�� v�kon?
-----------------------------------------------
-
-Ur�it� pomohou indexy. P��kaz EXPLAIN zobraz� zp�sob interpretace Va�eho
-dotazu a pou�it� index�.
-
-P�i v�t�� d�vce INSERT� uva�ujte o n�hrad� p��kazem COPY. Ten je mnohem
-rychlej�� ne�li samotn� INSERT. Ka�d� p��kaz mimo blok BEGIN WORK/COMMIT
-se prov�d� ve vlastn� transakci. Zva�te, zda-li by se nedalo n�kolik
-p��kaz� spojit do jedn� transakce. T�m se sn��� re�ie na transakce. P�ed
-proveden�m rozs�hl�ch zm�n zru�te indexy, kter� po dokon�en� zm�n op�t
-vytvo�te.
-
-M�te n�kolik dal��ch mo�nost�, jak zlep�it v�kon. M��ete zak�zat fsyn()
-p�i startu postmastera p�ep�na�i -o -F. Tyto p�ep�na�e zabr�n� fsync(),
-tj. z�pisu na disk po ka�d� transakci.
-
-M��ete zv��it velikost pam�ov�ch buffer� pou�it�ch backendy tj.
-parametr -B postmasteru. Pokud ale tato hodnota bude p��li� velk�, tak
-mo�n� nespust�te postmastera jeliko� dos�hnete limitu sd�len� pam�ti.
-Ka�d� buffer m� 8K a implicitn� je 64 buffer�.
-
-D�le m��ete pou��t p�ep�na� -S k zv��en� limitu pam�ti pro backendy na
-do�asn� t��d�n�. Hodnota je m�n�na v kilobytech a v�choz� nastaven� je
-512, tj. 512K.
-
-M��ete pou��t p��kaz CLUSTER, kter� uspo��d� fyzicky data v tabulk�ch
-podle indexu. V�ce na manu�lov�ch str�nk�ch p��kazu CLUSTER.
-
-3.7 Jak� jsou mo�nosti lad�n�?
-------------------------------
-
-M�te n�kolik mo�nost� jak se dostat k u�ite�n�m stavov�m informac�m.
-
-Zaprv�, p�i p�ekladu pou�ijte p�ep�na� --enable-cassert, t�m se zapne
-monitorov�n� a n�sledn� zastaven� aplikace, kdy� se proces v backendu
-dostane do neo�ek�van�ho stavu.
-
-Jak postmaster tak postgres m� n�kolik p�ep�na�� umo��uj�c�ch lad�n�.
-Postmaster nastartujte tak, abyste si byli jisti, �e je standartn�
-v�stup a standartn� chybov� v�stup p�esm�rov�n do souboru logu,
-nap��klad:
-
-cd /usr/local/pgsql
-./bin/postmaster > server.log 2>&1 &
-
-T�m se vytvo�� log v adres��i PostgreSQL, Tento soubor obsahuje u�ite�n�
-informace o probl�mech a chyb�ch vyskytl�ch se na serveru. Postmaster m�
-p�ep�na� -d ur�uj�c�, jak podrobn� maj� b�t reportovan� informace, tj.
-debug level. Pozor, p�i velk� hodnot� debug levelu rychle roste velikost
-souboru logu.
-
-Pokud neb�� postmaster, m��ete spustit backend PostgreSQL z p��kazov�
-��dky a napsat sv�j SQL dotaz p��mo v backendu (doporu�eno pouze pro
-lad�n�). Dotaz je v tomto p��pad� ukon�en novou ��dkou, nikoliv
-st�edn�kem. Pokud m�te aplikaci p�elo�enou s lad�c�mi symboly, m��ete
-pou��t debbuger k monitorov�n� procesu. Pokud nen� backend spu�t�n
-postmasterem, pak neb�� ve sv�m obvykl�m prost�ed� a tud�� n�kter�
-probl�my dan� interakc� mezi backendy nemohou b�t nasimulov�ny.
-
-Pokud b�� postmaster, spus�e psql v jednom okn� a pak si zjist�te PID
-procesu postgres pou�it�ho psql. V debuggeru sep�ipojte k postgresql
-PID. Pak nastavte breakpointy v debuggeru a zadejte dotaz v psql. Pokud
-lad�te startup postgresu, pak nastavte PGOPTIONS="-W n" a spus�e psql.
-Tento p�ep�na� zp�sob� pauzu n sekund, tak�e budete m�t �as se p�ipojit
-k procesu, a nastavit breakpointy a pokra�ovat v startup posloupnosti.
-
-Pro lad�n� a m��en� v�konu mohou b�t u�ite�n� p�ep�na�e -s, -A a -t
-programu postgres (backend).
-
-M��ete prov�st p�eklad s profilac�, tak abyste vid�li kolik �asu
-zab�raj� jednotliv� funkce. Soubory s profily backend� jsou ulo�eny v
-adres��i pgsql/data/base/dbname. Profil klienta pak v jeho aktu�ln�m
-adres��i. Korektn� profilace v prost�ed� Linux po�aduje konfiguraci
-syst�mu s parametrem -DLINUX_PROFILE.
-
-3.8 Pro� dostanu "Sorry, too many clients", kdy� se zkou��m p�ipojit?
----------------------------------------------------------------------
-
-Zvy�te limit postmastera na maxim�ln� po�et sou�asn� spu�t�n�ch
-backend�.
-
-V�choz� hodnota je 32 backend�. Tuto hodnotu zv���te zastaven�m a
-op�tovn�m spu�t�n�m postmastera s parametrem -N nebo �pravou
-postgresql.conf.
-
-P�i zv��en� hodnoty -N nad 32 mus�te zv��it hodnotu -B nad v�choz� 64,
--B mus� b�t minim�ln� dvakr�t v�t��, nebo je�t� l�pe v�ce. Pravd�podobn�
-zjist�te, �e pro velk� po�et proces� backendu je nutn� zv��it n�kter�
-parametry j�dra. Jsou to p�edev��m maxim�ln� velikost sd�len� pam�ti
-SHMMAX, maxim�ln� po�et semaf�r� SEMMNS a SEMMNI, maxim�ln� po�et
-proces� NPROC, maxim�ln� po�et proces� u�ivatele MAXUPRC a maxim�ln�
-po�et otev�en�ch soubor� NFILE a NINODE. D�vod pro omezen� maxim�ln�ho
-po�tu backend� je fakt, �e by mohlo doj�t k vy�erp�n� zdroj� Va�eho
-syst�mu.
-
-3.9 K �emu slou�� adres�� pgsql_tmp?
-------------------------------------
-
-Tento adres�� obsahuje do�asn� soubory vytvo�en� exekutorem dotaz�.
-Nap��klad, kdy� je nutn� t��d�n� k zaji�t�n� ORDER BY a t��d�n� m� v�t��
-n�roky na prostor ne� povoluje parametr -S backendu, pak je vytvo�en
-do�asn� soubor k ulo�en� extra �daj�.
-
-Do�asn� soubory jsou obvykle maz�ny automaticky, ale m��e se st�t, �e
-b�hem t��d�n� server spadne. Zastaven� a dal�� start postmastera zajist�
-odstran�n� soubor� s t�chto adres���.
-
-3.10 Pro� je po�adov�no dump a obnoven� (load) datab�ze b�hem upgrade mezi velk�mi verzemi PostgreSQL?
-------------------------------------------------------------------------------------------------------
-
-PostgreSQL se minim�ln� m�n� b�hem mal�ch verz�, tak�e nap�. p�i upgrade
-z 7.2 na 7.2.1 nen� nutn� dump a load datab�ze. Ale velk� verze �asto
-m�n� intern� form�t syst�mov�ch tabulek a datov�ch soubor�. Tyto zm�ny
-jsou natolik rozs�hl�, �e nelze zajistit zp�tnou kompatibilitu pro
-datov� soubory. Dump ulo�� data v obecn�m form�tu, tak�e mohou b�t
-na�tena a pou��v�na v nov�m intern�m form�tu.
-
-------------------------------------------------------------------------
-
-Provozn� dotazy
-===============
-
-4.1 ��m se li�� bin�rn� a norm�ln� kurzor?
-------------------------------------------
-
-Popis najdete v manu�lov� str�nce DECLARE
-
-4.2 Jak z�skat pouze prvn� ��dek dotazu? N�hodn� ��dek?
--------------------------------------------------------
-
-Pod�vejte se do man. str�nky p��kazu FETCH, nebo pou�ijte SELECT ...
-LIMIT ...
-
-Nen� nutn� zpracov�vat cel� dotaz, kdy� pot�ebujete pouze n�kolik
-prvn�ch ��dk�. Pokud existuje index ORDER BY, PostgreSQL je schopen
-p�eru�it zpracov�n� dotazu po z�sk�n� po�adovan�ho po�tu ��dk�.
-
-K z�sk�n� n�hodn�ho ��dku pou�ijte:
-
-SELECT col FROM tab
- ORDER BY random() LIMIT 1;
-
-4.3 Jak z�sk�m seznam tabulek nebo jinak jak jej z�sk� psql?
-------------------------------------------------------------
-
-Pod�vejte se do zdrojov�ch k�d� psql do souboru
-pgsql/src/bin/psql/describe.c. Ten obsahuje SQL p��kazy, kter� se
-pou��vaj� v psql metap��kazech. D�le m��ete spustit psql s p�ep�na�em
--E, kter� zp�sob� zobrazen� ka�d�ho dotazu, kter� zpracov�n� metap��kazu
-vyvol�.
-
-4.4 Jak odstran�m sloupec tabulky, jak zm�n�m jeho typ?
--------------------------------------------------------
-
-Po��naje verz� 7.3 m��ete pou��t p��kaz ALTER TABLE DROP COLUMN. Ve
-star��ch verz�ch m��ete pou��t n�sleduj�c� postup:
-
-BEGIN;
-LOCK TABLE old_table;
-SELECT ... -- mimo sloupec, kter� chceme odstranit
- INTO TABLE new_table;
-DROP TABLE old_table;
-ALTER TABLE new_table RENAME TO old_table;
-COMMIT;
-
-Pro zm�nu typu sloupce je t�eba prov�st:
-
-BEGIN;
-ALTER TABLE tab ADD COLUMN new_col new_data_type;
-UPDATE tab SET new_col = CAST(old_col AS new_data_type;
-ALTER TABLE tab DROP COLUMN old_col;
-COMMIT;
-
-Pot� prove�te VACUUM FULL tab - uvoln�te t�m diskov� prostor zabran�
-nyn� ji� neplatn�mi ��dky.
-
-4.5 Jak� je maxim�ln� velikost ��dku, tabulky a datab�ze?
----------------------------------------------------------
-
-PostgreSQL m� tato omezen�:
-
- Maxim�ln� velikost datab�ze: neomezena (existuj� 32TB db)
-
- Maxim�ln� velikost tabulky: 32 TB
-
- Maxim�ln� velikost ��dky: 1.6 TB
-
- Maxim�ln� velikost polo�ky 1 GB
-
- Maxim�ln� po�et ��dk� v tabulce: neomezeno
-
- Maxim�ln� po�et sloupc� v tabulce: 250-1600 podle typ�
-
- Maxim�ln� po�et index� na tabulce: neomezeno
-
-Ve skute�nosti nic nen� neomezeno, limitem b�v� v�dy dostupn� diskov�
-pam� nebo velikost opera�n� pam�ti. Pokud m�te n�kterou z t�chto hodnot
-neobvykle velkou, m��e doj�t ke sn��en� v�konu.
-
-Maxim�ln� velikost tabulky je 32 TB a nevy�aduje podporu velk�ch soubor�
-opera�n�m syst�mem. Velk� tabulky se ukl�daj� do n�kolika 1 GB soubor�
-tak�e limity souborov�ho syst�mu nejsou podstatn�.
-
-Maxim�ln� velikost tabulky a maxim�ln� po�et sloupc� m��eme
-ze�ty�n�sobit nastaven�m velikosti bloku na 32K.
-
-4.6 Kolik diskov�ho prostoru je pot�eba k ulo�en� dat z norm�ln�ho textov�ho souboru?
--------------------------------------------------------------------------------------
-
-PostgreSQL vy�aduje a� p�tin�sobek diskov�ho prostoru k ulo�en� dat z
-textov�ho souboru.
-
-Nap��klad, uva�ujme soubor se 100 tis�ci ��dky obsahuj�c� na ka�d� ��dce
-cel� ��slo a textov� popis. Text je v pr�m�ru dvacet byt� dlouh�.
-Textov� soubor bude 2.8 MB dlouh�. Velikost datab�ze obsahuj�c�
-odpov�daj�c� data bude zhruba 6.4 MB.
-
- 36 byt�: hlavi�ka ��dku (p�ibli�n�)
- 24 byt�: jedna celo��seln� polo�ka a jedna textov�
- 4 byty: ukazatel na str�nku k ntici
-------------------------------------------------------
- 64 byt� na ��dek
-
-Velikost datov� str�nky PostgreSQL je 8KB
-
- 8192 byt� na str�nce
----------------------- = 128 ��dek na str�nku
- 64 byt� za ��dek
-
-100000 ��dek
--------------------- = 782 str�nek (zaokrouhleno nahoru)
-128 ��dek na str�nce
-
-782 * 8192 = 6, 406, 144 byt� (6.4 MB)
-
-Indexy nemaj� tak velkou re�ii, ale mohou b�t tak� velk�, proto�e
-obsahuj� indexovan� data.
-
-Hodnoty NULL jsou ulo�eny v bitmap�ch, tak�e spot�ebuj� jen velmi m�lo
-diskov�ho prostoru.
-
-4.7 Jak z�sk�m seznam vytvo�en�ch tabulek, index�, datab�z�?
-------------------------------------------------------------
-
-psql m� sadu metap��kaz� k zobrazen� t�chto informac�. Jejich seznam
-z�sk�te p��kazem \?. D�le se m��ete pod�vat na obsah syst�mov�ch tabulek
-za��naj�c�ch pg_. Spu�t�n� psql s parametrem -l provede v�pis n�zv�
-v�ech datab�z�.
-
-Soubor pgsql/src/tutorial/syscat.source obsahuje SELECTy p�istupuj�c� k
-syst�mov�m tabulk�mm.
-
-4.8 M�j dotaz je pomal� a nepou��v� vytvo�en� indexy. Pro�?
------------------------------------------------------------
-
-Ka�d� dotaz nemus� nutn� pou��t existuj�c� indexy. Index se pou�ije
-tehdy, kdy� je tabulka v�t�� ne� ur�it� minim�ln� velikost, a dotaz
-vyb�r� pouze procentu�ln� malou ��st ��dk� tabulky. To proto, �e n�hodn�
-p��stup k disku dan� �ten�m indexu m��e b�t pomalej�� ne� line�rn� �ten�
-tabulky nebo sekven�n� �ten�,
-
-PostgreSQL rozhoduje o pou�it� index� na z�klad� statistiky p��stup� k
-tabulce. Tyto statistiky se shroma��uj� p��kazy VACUUM ANALYZE nebo
-ANALYZE. D�ky statistik�m m� optimizer informaci o po�tu ��dek v tabulce
-a m��e l�pe rozhodnout o pou�it� index�. Statistiky se uplatn� p�i
-ur�en� optim�ln�ho po�ad� a metody spojen� tabulek. Statistiky by se
-m�li aktualizovat opakovan�, tak jak se m�n� obsah tabulek.
-
-Indexy nejsou oby�ejn� pou�ity pro set��d�n� nebo spojen� tabulek.
-Sekven�n� zpracov�n� n�sledovan� explicitn�m t��d�n�m je oby�ejn�
-rychlej�� ne� indexn� �ten� na velk� tabulce.
-
-Jinak je tomu v p��pad� pou�it� LIMIT a ORDER BY, p�i kter�m se v�t�inou
-index pou�ije, v�sledkem je pouze mal� ��st tabulky. Funkce MAX() a
-MIN() nepou��vaj� indexy, ale je mo�n� tut� hodnotu z�skat
-
-SELECT col FROM tab
- ORDER BY col [ DESC ] LIMIT 1;
-
-Pokud si mysl�te, �e optimizer myln� zvolil sekven�n� prohled�v�n�
-tabulky, pou�ijte p��kaz SET enable_seqscan TO 'off' a zkuste zda je
-indexn� prohled�v�n� rychlej��.
-
-P�i vyhled�v�n� na z�klad� vzoru jako je nap�. oper�tor LIKE nebo ~ se
-indexy pou��j� pouze za ur�it�ch skute�nost�:
-
- - za��tek hledan�ho vzoru mus� b�t ukotven k za��tku, tj.
-
- * vzor LIKE nesm� za��nat %
- * regul�rn� v�raz mus� za��nat ^
-
- - vzor nesm� za��nat intervalem, nap�. [a-e]
-
- - vyhled�van�, kter� nen� Case sensitiv nepou��v� indexy.
- M��ete ale pou��t funkcion�ln� indexy, kter� jsou pos�ny v sekci
- 4.12
- - p�i inicializaci datab�ze (initdb) mus� b�t pou�ito C locale
- (pozn. p�ekladatele - tud�� v na�ich podm�nk�ch nepou�iteln�,
- nepracovalo by �esk� t��d�n�).
-
-4.9 Jak zjist�m, jak optimizer dotazu vyhodnocuje m�j dotaz?
-------------------------------------------------------------
-
-Pod�vejte se do manu�lov� str�nky p��kazu EXPLAIN.
-
-4.10 Co to je R-tree index?
----------------------------
-
-R-tree index se pou��v� pro indexov�n� prostorov�ch dat. Hash index
-nem��e obslou�it prohled�v�n� oblast�. B-tree index m��e ��dit vyhled�n�
-oblast� v jedn� dimenzi. R-tree index m��e podporovat hled�n� v
-multidimenzion�ln�ch datech. Pou�ijeme-li nap��klad R-tree index na
-atributy typu point, pak syst�m m��e efektivn� odpov�d�t na dotaz -
-vyber v�echny body uvnit� obd�ln�k�.
-
-P�vodn� n�vrh R-tree je 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
-
-Tyto materi�ly naleznete v Stonebraker's "Readings in Database Systems".
-
-Vestav�n� R-tree m��e slou�it k indexaci polygon� a oblast�. Teoreticky
-m��eme R-tree pou��t i pro v�ce dimenz� (jin� ne� 3D). Ve skute�nosti
-ale takov� roz���en� R-tree vy�aduje trochu pr�ce a ve sou�astnosti
-chyb� dokumentace jak na to.
-
-4.11 Co je Genetic Query Optimizer?
------------------------------------
-
-GEQO modul urychluje optimalizaci dotaz� p�i spojov�n� mno�stv� tabulek
-metodou Genetick�ch algoritm� (GA). To umo��uje z�skat velk�ho mno�stv�
-variant spojen� p�i ne�pln�m prohled�v�n�m.
-
-4.12 Jak prov�st vyhled�v�n� regul�rn�ho v�razu case sensitiv,
-insensitiv? Jak pou��t index pro case insensitive vyhled�v�n�?
-
-Oper�tor ~ slou�� k porov�n� s regul�rn�m v�razem, jeho modifikace *~
-p�edstavuje case insensitive vyhled�v�n�. Jedn� se o obdobu LIKE a
-ILIKE.
-
-Pro vyhled�v�n� bez ohledu na velk� mal� p�smena pou�ijeme
-
-SELECT * FROM tab
- WHERE lower(col) = 'abc';
-
-V tomto p��pad� se nepou�ije standardn� index. Nicm�n�, pou�ije se
-funkcion�ln� index, pokud jej vytvo��te
-
-CREATE INDEX tabindex ON tab (lower(col));
-
-4.13 Jak v dotazu detekovat, �e polo�ka je NULL?
-------------------------------------------------
-
-Ur��te pomoc� IS NULL nebo IS NOT NULL
-
-4.14 Jak� jsou rozd�ly mezi r�zn�mi znakov�mi typy?
----------------------------------------------------
+ �asto kladen� dotazy (FAQ) PostgreSQL
+
+ Posledn� aktualizace: St�eda 23. �ervna 21:10:00 EST 2004
+
+ Sou�asn� spr�vce: Bruce Momjian ([email protected])
+
+ P�elo�il: Pavel St�hule ([email protected])
+
+ Aktu�ln� verzi tohoto dokumentu naleznete na adrese:
+ http://www.PostgreSQL.org/docs/faqs/FAQ.html. �esk� p�eklad na adrese:
+ http://www.PostgreSQL.org/docs/faqs/FAQ_czech.html.
+
+ Odpov�di na dotazy relevantn� ke konkr�tn�m platform�m lze nal�zt na
+ adrese: http://www.PostgreSQL.org/docs/index.html.
+ _________________________________________________________________
+
+ Obecn� ot�zky
+
+ 1.1) Co je PostgreSQL? Jak se vyslovuje?
+ 1.2) Jak� je licence na PostgreSQL?
+ 1.3) Na kter�ch Unixex lze spustit PostgreSQL?
+ 1.4) Kter� ne-unixov� platformy jsou podporovan�?
+ 1.5) Kde mohu z�skat PostgreSQL?
+ 1.6) Kde mohu z�skat podporu?
+ 1.7) Kde je posledn� verze?
+ 1.8) Jak� je dostupn� dokumentace?
+ 1.9) Kde najdu seznam zn�m�ch chyb nebo nepodporovan�ch vlastnost�?
+ 1.10) Jak se mohu nau�it SQL?
+ 1.11) Nem� PostgreSQL probl�my s rokem 2000?
+ 1.12) Jak se p�ipojit k v�voj��sk�mu t�mu?
+ 1.13) Kam podat report o chyb�?
+ 1.14) Jak je na tom PostgreSQL v porovn�n� s jin�mi datab�zemi?
+ 1.15) Jak lze finan�n� pomoci PostgreSQL?
+
+ User client dotazy
+
+ 2.1) Kde naleznu ODBC ovlada�e pro PostgreSQL?
+ 2.2) Jak� n�stroje lze pou��t pro PostgreSQL a web?
+ 2.3) Existuje grafick� rozhran� pro PostgreSQL?
+ 2.4) Kter� programovac� jazyky maj� podporu pro PostgreSQL?
+
+ Administrativn� dotazy
+
+ 3.1) Jak nainstalovat PostgreSQL jinam ne� do /usr/local/pgsql?
+ 3.2) P�i startu postmaster, dostanu chybov� hl�en� Bad System Call
+ nebo core dump. Pro�?
+ 3.3) P�i startu postmastera dostanu hl�en� o chyb� IpcMemoryCreate.
+ Pro�?
+ 3.4) P�i startu postmastera dostanu hl�en� o chyb�
+ IpcSemaphoreCreate. Pro�?
+ 3.5) Jak povolit nebo zak�zat p��stup z jin�ch stanic?
+ 3.6) Jak ladit datab�zov� stroj na lep�� v�kon?
+ 3.7) Jak� jsou mo�nosti lad�n�?
+ 3.8) Pro� dostanu "Sorry, too many clients", kdy� se zkou��m p�ipojit?
+ 3.9) K �emu slou�� adres�� pgsql_tmp?
+ 3.10) Pro� je po�adov�no dump a obnoven� (load) datab�ze b�hem upgrade
+ mezi velk�mi verzemi PostgreSQL?
+
+ Provozn� dotazy
+
+ 4.1) ��m se li�� bin�rn� a norm�ln� kurzor?
+ 4.2) Jak z�skat pouze prvn� ��dek dotazu? N�hodn� ��dek?
+ 4.3) Jak z�sk�m seznam tabulek nebo jinak jak jej z�sk� psql?
+ 4.4) Jak odstran�m sloupec tabulky, jak zm�n�m jeho typ?
+ 4.5) Jak� je maxim�ln� velikost ��dku, tabulky a datab�ze?
+ 4.6) Kolik diskov�ho prostoru je pot�eba k ulo�en� dat z norm�ln�ho
+ textov�ho souboru?
+ 4.7) Jak z�sk�m seznam vytvo�en�ch tabulek, index�, datab�z�?
+ 4.8) M�j dotaz je pomal� a nepou��v� vytvo�en� indexy. Pro�?
+ 4.9) Jak zjist�m, jak optimizer dotazu vyhodnocuje m�j dotaz?
+ 4.10) Co to je R-tree index?
+ 4.11) Co je Genetic Query Optimizer?
+ 4.12) Jak prov�st vyhled�v�n� regul�rn�ho v�razu case sensitiv,
+ insensitiv? Jak pou��t index pro case insensitive vyhled�v�n�?
+ 4.13) Jak v dotazu detekovat, �e polo�ka je NULL?
+ 4.14) Jak� jsou rozd�ly mezi r�zn�mi znakov�mi typy?
+ 4.15.1) Jak vytvo�it serial/auto-increment pole?
+ 4.15.2) Jak z�skat hodnotu SERIAL po vlo�en� ��dku?
+ 4.15.3) Nepovede currval() a nextval() k rozhozen� podm�nek p�i
+ soub�hu s jin�mi u�ivateli?
+ 4.15.4) Pro� nen� vygenerovan� ��slo pou�ito p�i p�eru�en� transakce?
+ Pro� vznikaj� d�ry v ��slov�n� vlastn� sekvenc�/SERIAL sloupce?
+ 4.16) Co to je OID? Co je to TID?
+ 4.17) Jak� je v�znam n�kter�ch v�raz� pou�it�ch v PostgreSQL?
+ 4.18) Pro� jsem z�skal chybov� hl�en� "ERROR: Memory exhausted in
+ AllocSetAlloc()"?
+ 4.19) Jak se dozv�m, kterou verzi PostgreSQL pou��v�m?
+ 4.20) Pro� operace s velk�mi objekty kon�� "invalid large obj
+ descriptor"?
+ 4.21) Jak vytvo�it sloupec obsahuj�c� implicitn� aktu�ln� datum?
+ 4.22) Pro� jsou moje vno�en� dotazy pou��vaj�c� IN tak pomal�?
+ 4.23) Jak prov�st vn�j�� spojen� (outer join)?
+ 4.24) Jak prov�st dotaz nap��� n�kolika datab�zemi?
+ 4.25) M��e funkce vr�tit v�ce ��dk� nebo sloupc�?
+ 4.26) Pro� nelze spolehliv� vytv��et a ru�it do�asn� tabulky v
+ PL/pgSQL funkc�ch?
+ 4.27) Jak� jsou mo�nosti replikace datab�z�?
+ 4.28) Jak� jsou mo�nosti �ifrov�n� datab�z�?
+
+ Roz�i�ov�n� PostgreSQL
+
+ 5.1) Napsal jsem UDF funkci, PostgreSQL v�ak kon�� dump core?
+ 5.2) Jak mohu p�isp�t n�jak�mi �ikovn�mi datov�mi typy a funkcemi do
+ PostgreSQL?
+ 5.3) Jak napsat funkci v C vracej�c� ntici?
+ 5.4) Modifikoval jsem zdrojov� soubory. Tato zm�na nebyla p�i
+ rekompilaci vzata v potaz. Pro�?
+ _________________________________________________________________
+
+ Obecn� ot�zky
+
+ 1.1) Co je PostgreSQL? Jak se vyslovuje?
+
+ PostgreSQL se vyslovuje Post-Gres-Q-L. Zvukov� z�znam je dostupn� na
+ adrese .
+
+ PostgreSQL vych�z� z datab�ze POSTGRES (a st�le je n�kdy ozna�ov�n
+ zjednodu�en� jako Postgres) - v�zkumn�ho prototypu DBMS nov� generace.
+ Z postgresu byl p�evzat siln� datov� model a bohat� soubor datov�ch
+ typ� a jeho dotazovac� jazyk PostQuel byl nahrazen roz���enou
+ podmno�inou jazyka SQL. PostgreSQL lze pou��vat bez omezen� a jeho
+ zdrojov� k�dy jsou voln� k dispozici.
+
+ PostgreSQL vyv�j� t�m v�voj��� p�ihl�en�ch do v�voj��sk� konference
+ PostgreSQL. Sou�asn�m koordin�torem je Marc G. Fournier
+ ([email protected]). (viz 1.6 - jak se zapojit). Tento t�m je
+ zodpov�dn� za ve�ker� v�voj PostgreSQL. Jedn� se o ve�ejn� projekt,
+ kter� nen� ��zen ��dnou firmou. Pokud se chcete zapojit, p�e�t�te si
+ developer's FAQ na adrese
+ http://www.PostgreSQL.org/docs/faqs/FAQ_DEV.html
+
+ Autory prvn� verze PostgreSQL 1.01 byli Andrew Yu and Jolly Chen. Do
+ portace, testov�n�, lad�n� a roz�i�ov�n� k�du se zapojilo mnoho
+ dal��ch v�voj��� . P�vodni k�d Postgresu, ze kter�ho PostgreSQL
+ vych�z�, je v�sledkem �sil� mnoha student� a program�tor� pracuj�c�ch
+ pod veden�m prof. Michaela Stonebrakera na University of California v
+ Berkley.
+
+ P�vodn� n�zev software z Berkley byl Postgres. Po p�id�n� jazyka SQL
+ se n�zev zm�nil na Postgres95. Koncem roku 1996 byl RDBMS p�ejmenov�n
+ na PostgreSQL.
+
+ 1.2) Jak� je licence na PostgreSQL?
+
+ PostgreSQL je p�edm�tem n�sleduj�c�ch autorsk�ch pr�v:
+
+ D�l�� Copyright (c) 1996-2005, PostgreSQL Global Development Group
+ D�l�� Copyright (c) 1994-6, Regents of the University of California
+
+ Ud�luje se opr�vn�n� k u�it�, rozmno�ov�n�, prov�d�n� �prav a
+ roz�i�ov�n� tohoto softwaru a dokumentace k n�mu, pro jak�koli ��ely,
+ bez licen�n�ho poplatku a bez p�semn� licen�n� smlouvy, za podm�nky,
+ �e na v�ech jeho kopi�ch je uvedeno ozn�men� o v��e uveden�ch pr�vech,
+ jako� i obsah tohoto a dvou n�sleduj�c�ch odstavc�.
+
+ THE UNIVERSITY OF CALIFORNIA ("KALIFORNSK� UNIVERZITA") NEN� V ��DN�M
+ P��PAD� ODPOV�DNA ��DN� T�ET� OSOB� ZA P��MOU, NEP��MOU, ZVL��TN�,
+ NAHODILOU NEBO V�SLEDNOU �KODU, V�ETN� U�L�HO ZISKU, ZP�SOBENOU U�IT�M
+ TOHOTO SOFTWARU A DOKUMENTACE K N�MU, A TO I V P��PAD�, �E THE
+ UNIVERSITY OF CALIFORNIA BYLA INFORMOV�NA O MO�NOSTI VZNIKU TAKOV�
+ �KODY.
+
+ HE UNIVERSITY OF CALIFORNIA ZEJM�NA NEPOSKYTUJE JAK�KOLI Z�RUKY, A TO
+ NEJEN Z�RUKY OBCHODOVATELNOSTI A VHODNOSTI TOHOTO V�ROBKU KE
+ SPECIFICK�M ��EL�M. NͮE UVEDEN� SOFTWARE JE POSKYTNUT "JAK STOJ� A
+ LE��" A THE UNIVERSITY OF CALIFORNIA NEN� POVINNA ZAJISTIT JEHO
+ �DR�BU, PODPORU, AKTUALIZACI, VYLEP�EN� NEBO MODIFIKACI.
+
+ V��e uveden� je BSD licence, b�n� licence otev�en�ho zdroje. Nen� zde
+ ��dn� omezen� ohledn� u�it� k�du zdroje. Jsme s t�m spokojeni a nem�me
+ v �myslu na t�to skute�nosti cokoli m�nit.
+
+ 1.3) Na kter�ch Unixex lze spustit PostgreSQL?
+
+ PostgreSQL b�� na v�ech modern�ch unixov�ch platform�ch. V
+ instala�n�ch instrukc�ch naleznete aktu�ln� seznam v�ech platforem na
+ kter�ch byla testov�n�m ov��ena funkcionalita PostgreSQL.
+
+ 1.4) Kter� ne-unixov� platformy jsou podporovan�?
+
+ Klient
+
+ Knihovna libpq, psql a n�kter� dal�� moduly byly p�elo�eny pro MS
+ Windows. Klienta lze provozovat na MS Windows, ten prost�ednictv�m
+ TCP/IP protokolu komunikuje se serverem b��c�m na n�kter� z
+ podporovan�ch Unixov�ch platforem. K p�ekladu lze pou��t win32.mak a
+ Win32 knihovny libpq a psql. K datab�zi PostgerSQL lze p�istupovat
+ skrze rozhran� ODBC.
+
+ Server
+
+ Server m��e b�t na WindowsNT a Win2k provozov�n pouze s knihovnou
+ Cygwin, Cygnus Unix/NT porting library. V�ce pgsql/doc/FAQ_MSWIN v
+ distribuci nebo MS Windows FAQ na adrese
+ http://www.PostgreSQL.org/docs/faqs/text/FAQ_MSWIN.
+
+ Na nativn�m portu pro MS Win NT/2000/XP se pracuje. Dal�� informace o
+ aktu�ln�m stavu PostgreSQL pro Windows naleznet na adrese
+ http://techdocs.postgresql.org/guides/Windows a
+ http://momjian.postgresql.org/main/writings/pgsql/win32.html.
+
+ Existuj�c� port pro Novell Netware 6 naleznete na
+ http://forge.novell.com.
+
+ 1.5) Kde mohu z�skat PostgreSQL?
+
+ Prim�rn�m anonymn�m ftp serverem pro PostgreSQL je
+ ftp://ftp.PostgreSQL.org/pub. Seznam zrcadel naleznete na na�ich
+ webov�ch str�nk�ch.
+
+ 1.6) Kde mohu z�skat podporu?
+
+ Hlavn� mailov� konference je: [email protected]. Slou�� k
+ diskuz�m ohledn� PostgreSQL. P�ihl�s�te se zasl�n�m mailu obsahuj�c�
+ n�sleduj�c� ��dky v t�le dopisu (nikoliv v z�hlav� - subjectu):
+ subscribe
+ end
+
+ na adresu [email protected].
+
+ M��ete si vy��dat denn� p�ehled (diggest), kter� m� zhruba 30K denn�
+ zpr�v.
+
+ Konference psql-bugs je ur�ena k zas�l�n� zpr�v o chyb�ch. Pro
+ p�ihl�en� po�lete mail se stejn�m obsahem jako v p�edchoz�m p��pad�
+ na adresu [email protected].
+
+ Do v�voj��sk� konference se p�ihl�s�te odesl�n�m dopisu s ji�
+ zmi�ovan�m obsahem na mailto:[email protected].
+
+ Seznam dal��ch konferenc� naleznete na str�nk�ch PostgreSQL:
+
+ http://www.postgresql.org
+
+ 1.7) Jak� je posledn� verze?
+
+ Posledn� verze PostgreSQL je 7.4.3. Pl�nujeme uvolnit v�znamnou verzi
+ ka�d�ch �est a� osm m�s�c�.
+
+ 1.8) Jak� je dostupn� dokumentace?
+
+ R�zn� manu�ly, manu�lov� str�nky a n�kolik mal�ch testovac�ch p��klad�
+ jsou sou��sti distribuce. Pod�vejte se do adres��e /doc. Manu�ly jsou
+ p��stupn� online na http://www.PostgreSQL.org/docs.
+
+ Na adres�ch http://www.PostgreSQL.org/docs/awbook.html a
+ http://www.commandprompt.com/ppbook/ naleznezte dv� online knihy o
+ PostgreSQL. Seznam dostupn� literatury je na
+ http://techdocs.PostgreSQL.org/techdocs/bookreviews.php. Soubor
+ technick�ch �l�nk� s tematikou PostgresQL najdete na
+ http://techdocs.PostgreSQL.org/.
+
+ psql m� u�ite�n� metap��kaz \d slou��c� k zobrazen� informac� o
+ typech, oper�torech, funkc�, agrega�n�ch funkc� atd.
+
+ V�ce dokumentace naleznete na na�ich webov�ch str�nk�ch.
+
+ 1.9) Kde najdu seznam zn�m�ch chyb nebo nepodporovan�ch vlastnost�?
+
+ PostgreSQL podporuje roz���enou podmno�inu SQL-92. V na�em TODO
+ najdete seznam zn�m�ch chyb, chyb�j�c�ch vlastnost� a seznam
+ vlastnost�, kter� budou do syst�mu implementov�ny v budoucnu (v�etn�
+ priorit).
+
+ 1.10) Jak se mohu nau�it SQL?
+
+ V knize The PostgreSQL book na
+ http://www.PostgreSQL.org/docs/awbook.html je vysv�tlen jazyk SQL
+ (vy�la �esky). Dal�� dostupnou knihou je
+ http://www.commandprompt.com/ppbook. Kvalitn� n�vody naleznete na
+ http://www.intermedia.net/support/sql/sqltut.shtm, a na
+ http://sqlcourse.com.
+
+ Dal�� je Teach Yourself SQL in 21 days, Second Edition na
+ http://members.tripod.com/er4ebus/sql/index.htm.
+
+ Mnoho u�ivatel� doporu�uje The Practical SQL Handbook, Bowman, Judith
+ S., et al., Addison-Wesley. Jin� preferuj� The Complete Reference SQL,
+ Groff et al., McGraw-Hill.
+
+ 1.11) Nem� PostgreSQL probl�my s rokem 2000?
+
+ Nem�, m��eme pracovat s datumy po roce 2000 na�eho letopo�tu i p�ed
+ rokem 2000 p�.n.l.
+
+ 1.12) Jak se p�ipojit k v�voj��sk�mu t�mu?
+
+ Nejd��ve si st�hn�te nejnov�j�� zdroje a p�e�t�te si v�voj��skou
+ dokumentaci na na�em webu nebo v distribuci. Pak se p�ihla�te do
+ konferenc� pgsql-hackers a pgsql-patches. Kvalitn� z�platy pos�lejte
+ do pgsql-patches.
+
+ Pr�vo commit m� v CVS archivu asi t�in�cti lid�. Ka�d� z nich poslal
+ mnoho kvalitn�ch z�plat, tak�e tehdej�� commiters m�li jistotu, �e
+ budou p�edkl�dat jenom kvalitn� z�platy a mohli jim p�ed�lit v�t��
+ pr�va.
+
+ 1.13) Kam podat report o chyb�?
+
+ Nav�tivte na�i PostgreSQL BugTool str�nku na
+ http://www.PostgreSQL.org/bugs/bugs.php, kter� obsahuje n�vod a
+ sm�rnice jak podat chybov� report.
+
+ Ov��te si na na�em ftp serveru ftp://ftp.PostgreSQL.org/pub, zda-li
+ m�te nejnov�j�� verzi PostgreSQL a zda-li k n� neexistuj� n�jak�
+ z�platy.
+
+ 1.14) Jak je na tom PostgreSQL v porovn�n� s jin�mi datab�zemi?
+
+ Existuje n�kolik hledisek jak porovn�vat software: vlastnosti, v�kon,
+ spolehlivost, podpora a cena.
+
+ Vlastnosti
+ PostgreSQL m� hodn� spole�n�ch vlastnost� s velk�mi komer�n�mi
+ DBMS, nap�. transakce, vno�en� dotazy, spou�t�, pohledy,
+ kontrolu referen�n� integrity a sofistikovan� zamyk�n�.
+ Podporuje n�kter� vlastnosti, kter� tyto syst�my nemaj�,
+ u�ivatelem definovan� typy, d�di�nost, pravidla, MVCC
+ redukuj�c� zamyk�n�.
+
+ V�kon
+ V�konnostn� je na tom PostgreSQL podobn� jako dal�� komer�n�
+ ale i open source datab�ze, v n��em je rychlej��, jindy
+ pomalej��. V porovn�n� s MySQL a podobn�mi datab�zov�mi syst�my
+ je PostgreSQL rychlej�� p�i v�ceu�ivatelsk�m p��stupu,
+ slo�it�j��ch dotazech a zat��en� read/write dotazy. MySQL je
+ rychlej�� v jednodu���ch dotazech s mal�m po�tem u�ivatel�.
+ Nav�c, MySQL nepodporuje mnoh� vlatnosti zm�n�n� v sekci
+ vlastnosti. Zapracovali jsme na spolehlivosti a podporovan�ch
+ vlastnostech, a v�kon zvy�ujeme v ka�d� verzi. Zaj�mavou
+ str�nku porovn�vaj�c� PostgreSQL a MySQL naleznete na
+ http://openacs.org/philosophy/why-not-mysql.html. Za v�vojem
+ MySQL nen� Open Source komunita, ale komer�n� spole�nost,
+ p�esto�e svoje produkty distribuuje jako Open Source.
+
+ Spolehlivost
+ Jsme si v�domi, �e datab�ze mus� b�t spolehliv�, jinak je
+ nepou�iteln�. Sna��me se zve�ej�ovat dob�e otestovan�, stabiln�
+ k�d s minimem chyb. Ka�d� verze je v�ce ne� m�s�c v beta
+ testov�n�, a na�e historie verz� ukazuje, �e m��eme nab�dnout
+ stabiln�, solidn� verze, kter� jsou p�ipraveny pro re�ln�
+ nasazen�. V t�to oblasti jsme srovnateln� s dal��mi datab�zemi.
+
+ Podpora
+ Na na�� mailov� konferenci m��ete kontaktovat velkou skupinu
+ v�voj��� a u�ivatel�.probl�m�. Nem��eme garantovat opravu,
+ nicm�n� komer�n� datab�ze tak� ne v�dy nab�dnou opravu. Podle
+ ohlas� je na�e podpora hodnocena l�pe ne� u jin�ch DBMS a to
+ d�ky p��m�mu kontaktu s v�voj��i, velkou komunitou u�ivatel�,
+ kvalitn�mi manu�ly a p��stupn�m zdrojov�m k�dem. Pro u�ivatele,
+ kte�� vy�aduj� podporu ke konkr�tn�m p��pad�m, existuje placen�
+ podpora (FAQ sekce 1.6).
+
+ Cena
+ PosgreSQL lze voln� pou��vat pro nekomer�n� i komer�n� pou�it�.
+ M��ete do sv�ch produkt� p�idat n� k�d bez omezen�, respektive
+ v souladu s podm�nkami na�� licen�n� smlouvy (v duchu BSD
+ licence).
+
+ 1.15) Jak lze finan�n� pomoci PostgreSQL?
+
+ PosgreSQL m� prvot��dn� infrastrukturu od na�eho za��tku v roce 1996.
+ Vd���me za to Marku Fournierovi, kter� zalo�il a spravoval tuto
+ infrastrukturu n�kolik let.
+
+ Kvalitn� infrastruktura je velice d�le�it� pro ka�d� open source
+ projekt. P�edch�z� nedorozum�n�m, kter� velice zdr�uj� pokrok v
+ projektu.
+
+ Tato infrastruktura nen� lacin�. K jej�mu zaji�t�n� je t�eba st�le
+ hradit ur�it� m�s��n� a jednor�zov� ��stky. Pokud m�te Vy nebo Va�e
+ spole�nost pen�ze, kter� n�m m��ete darovat, obra�e se na
+ http://store.pgsql.com/shopping/ a darujte je.
+
+ A�koliv webov� str�nka zmi�uje PostgreSQL, Inc. vklady jsou ur�eny
+ pouze k podpo�e projektu PostgreSQL a nepodporuj� ��dnou existuj�c�
+ spole�nost. Pokud to vy�adujete, m��ete poslat kontrolu na na�i
+ kontaktn� adresu.
+ _________________________________________________________________
+
+ Pokud m�te p��klad �sp�n�ho nasazen� PostgreSQL, p�ihla�t� se na n�
+ advocacy site na http://advocacy.postgresql.org.
+
+ User client dotazy
+
+ 2.1) Kde naleznu ODBC ovlada�e pro PostgreSQL?
+
+ Pro PostgreSQL existuj� dva ODBC ovlada�e - PsqlODBC a OpenLink ODBC.
+
+ PsqlODBC je ke sta�en� na
+ http://gborg.postgresql.org/project/psqlodbc/projdisplay.php.
+
+ OpenLink m��ete z�skat na http://www.openlinksw.com. Spolupracuje s
+ jejich klientsk�m programov�m vybaven�m a je dostupn� pro v�echny jimi
+ podporovan� platformy (Win, Mac, Unix, VMS).
+
+ Tento ovlada� je ur�en pro ty, kte�� vy�aduj� podporu komer�n�
+ kvality, nicm�n� freeware verze je dostupn� a funk�n�. Dotazy
+ zas�lejte na [email protected].
+
+ 2.2) Jak� n�stroje lze pou��t pro PostgreSQL a web?
+
+ P�kn� �vod do datab�zov�ch technologi� zabezpe�uj�c�ch chod webov�ch
+ str�nek najdete na http://www.webreview.com.
+
+ Pro tvorbu webu existuje excelentn� rozhran� PHP, kter� naleznete na
+ http://www.php.net.
+
+ Pro slo�it�j�� p��pady se �asto pou��v� Perl a CGI.pm nebo mod_perl.
+
+ 2.3) Existuje grafick� rozhran� pro PostgreSQL?
+
+ Pro PostgreSQL existuje n�kolik grafick�ch rozhran�: PgAccess
+ (http://www.php.net), PgAdmin III (http://www.php.net), RHDB Admin
+ (http://sources.redhat.com/rhdb/) a Rekall (
+ http://www.thekompany.com/products/rekall/). D�le je�t� PhpPgAdmin
+ (http://phppgadmin.sourceforge.net/) co� je rozhran� PostgreSQL
+ zalo�en� na web technologii.
+
+ �pln�j�� seznam najdete na
+ http://techdocs.postgresql.org/guides/GUITools.
+
+ 2.4) Kter� programovac� jazyky maj� podporu pro PostgreSQL?
+
+ V�t�ina programovac�ch jazyk� obsahuje rozhran� pro PostgreSQL.
+ Pod�vejte se do roz�i�uj�c�ch modul� Va�eho programovac�ho jazyka.
+
+ Distribuce PostgreSQL obsahuje tato rozhran�:
+ * C (libpq)
+ * Embbedded C (ecpg)
+ * Java (jdbc)
+ * Python (PyGreSQL)
+ * TCL (libpgtcl)
+
+ Dal�� rozhran� jsou dostupn� na http://gborg.postgresql.org v sekci
+ Drivers/Interfaces.
+ _________________________________________________________________
+
+ Administrativn� dotazy
+
+ 3.1) Jak nainstalovat PostgreSQL jinam ne� do /usr/local/pgsql?
+
+ Pou�ijte volbu --prefix p�i spu�t�n� configure.
+
+ 3.2) P�i startu postmaster, dostanu chybov� hl�en� Bad System Call nebo
+ core dump. Pro�?
+
+ D�vody mohou b�t r�zn�, ale nejprve zkontrolujte, zda V� syst�m
+ podporuje System V extensions. PostgreSQL vy�aduje v j�d�e podporu
+ sd�len� pam�ti a semafor�.
+
+ 3.3) P�i startu postmastera dostanu hl�en� o chyb� IpcMemoryCreate. Pro�?
+
+ Bu�to nem�te spr�vn� nakonfigurovanou sd�lenou pam� v j�d�e nebo
+ musite zv�t�it jej� velikost. Pot�ebn� velikost je z�visl� na
+ architektu�e a na tom, kolik pam�ov�ch buffer� a backend� m�te
+ povoleno pro postmastera. Pro v�t�inu syst�m� s p�eddefinovan�m po�tem
+ backend� a pam�ov�ch buffer� je minimum zhruba 1MB. V PostgreSQL
+ Administrator's Guide naleznete podrobn�j�� informace o sd�len� pam�ti
+ a semaforech.
+
+ 3.4) P�i startu postmastera dostanu hl�en� o chyb� IpcSemaphoreCreate.
+ Pro�?
+
+ Pokud dostane chybovou zpr�vu IpcSemaphoreCreate: semget failed (No
+ space left on device), pak va�e j�dro nem� dost voln�ch semafor�.
+ PostgreSQL vy�aduje jeden semafor pro ka�d� backend v pozad�. Do�asn�m
+ �e�en�m je start postmaster s limitem backend�. Pou�ijte p�ep�na� -N s
+ hodnotou men�� ne� 32. �pln�m �e�en�m je zv��en� hodnot SEMMNS a
+ SEMMNI jadra.
+
+ Nefunk�n� semafory mohou zp�sobit p�d b�hem intenzivn�ch datab�zov�ch
+ operac�.
+
+ Pokud se tato chyba vyskytuje je�t� n�kde jinde, mo�n� nem�te v�bec
+ nakonfigurov�ny semafory ve va�em j�d�e. V PostgreSQL Administrator's
+ Guide najdete podrobn�j�� popis po�adavk� na sd�lenou pam�t a
+ semafory.
+
+ 3.5) Jak povolit nebo zak�zat p��stup z jin�ch stanic?
+
+ P�i v�choz�m nastaven� PostgreSQL odep�e p��stup z jin�ch stanic ne�
+ lok�ln� s pou�it�m UDP. P��stup z jin�ch stroj� nen� mo�n� dokud jej
+ nepovol�te nastaven�m tcpip_socket v postgresql.conf a ur�en�m zp�sobu
+ autentifikace v $PGDATA/pg_hba.conf.
+
+ 3.6) Jak ladit datab�zov� stroj na lep�� v�kon?
+
+ Ur�it� pomohou indexy. P��kaz EXPLAIN ANALYZE V�m umo�n� sledovat jak
+ PostgreSQL interpretuje V� dotaz a kter� indexy pou��v�.
+
+ P�i v�t�� d�vce INSERT� uva�ujte o n�hrad� p��kazem COPY. Ten je
+ mnohem rychlej�� ne�li samotn� INSERT. Ka�d� p��kaz mimo blok BEGIN
+ WORK/COMMIT se prov�d� ve vlastn� transakci. Zva�te, zda-li by se
+ nedalo n�kolik p��kaz� spojit do jedn� transakce. T�m se sn��� re�ie
+ na transakce. P�ed proveden�m rozs�hl�ch zm�n zru�te indexy, kter� po
+ dokon�en� zm�n op�t vytvo�te.
+
+ M�te n�kolik dal��ch mo�nost�, jak zlep�it v�kon. M��ete zak�zat
+ fsyn() p�i startu postmastera p�ep�na�i -o -F. Tyto p�ep�na�e zabr�n�
+ fsync(), tj. z�pisu na disk po ka�d� transakci.
+
+ M��ete zv��it velikost pam�ov�ch buffer� pou�it�ch backendy tj.
+ parametr -B postmasteru. Pokud ale tato hodnota bude p��li� velk�, tak
+ mo�n� nespust�te postmastera jeliko� dos�hnete limitu sd�len� pam�ti.
+ Ka�d� buffer m� 8K a implicitn� je 64 buffer�.
+
+ D�le m��ete pou��t p�ep�na� -S k zv��en� limitu pam�ti pro backendy na
+ do�asn� t��d�n�. Hodnota je m�n�na v kilobytech a v�choz� nastaven� je
+ 512, tj. 512K.
+
+ M��ete pou��t p��kaz CLUSTER, kter� uspo��d� fyzicky data v tabulk�ch
+ podle indexu. V�ce na manu�lov�ch str�nk�ch p��kazu CLUSTER.
+
+ 3.7) Jak� jsou mo�nosti lad�n�?
+
+ M�te n�kolik mo�nost� jak se dostat k u�ite�n�m stavov�m informac�m.
+
+ Zaprv�, p�i p�ekladu pou�ijte p�ep�na� --enable-cassert, t�m se zapne
+ monitorov�n� a n�sledn� zastaven� aplikace, kdy� se proces v backendu
+ dostane do neo�ek�van�ho stavu.
+
+ Jak postmaster tak postgres m� n�kolik p�ep�na�� umo��uj�c�ch lad�n�.
+ Postmaster nastartujte tak, abyste si byli jisti, �e je standartn�
+ v�stup a standartn� chybov� v�stup p�esm�rov�n do souboru logu,
+ nap��klad:
+ cd /usr/local/pgsql
+ ./bin/postmaster > server.log 2>&1 &
+
+ T�m se vytvo�� log v adres��i PostgreSQL, Tento soubor obsahuje
+ u�ite�n� informace o probl�mech a chyb�ch vyskytl�ch se na serveru.
+ Postmaster m� p�ep�na� -d ur�uj�c�, jak podrobn� maj� b�t reportovan�
+ informace, tj. debug level. Pozor, p�i velk� hodnot� debug levelu
+ rychle roste velikost souboru logu.
+
+ Pokud neb�� postmaster, m��ete spustit backend PostgreSQL z p��kazov�
+ ��dky a napsat sv�j SQL dotaz p��mo v backendu (doporu�eno pouze pro
+ lad�n�). Dotaz je v tomto p��pad� ukon�en novou ��dkou, nikoliv
+ st�edn�kem. Pokud m�te aplikaci p�elo�enou s lad�c�mi symboly, m��ete
+ pou��t debbuger k monitorov�n� procesu. Pokud nen� backend spu�t�n
+ postmasterem, pak neb�� ve sv�m obvykl�m prost�ed� a tud�� n�kter�
+ probl�my dan� interakc� mezi backendy nemohou b�t nasimulov�ny.
+
+ Pokud b�� postmaster, spus�e psql v jednom okn� a pak si zjist�te PID
+ procesu postgres pou�it�ho psql. V debuggeru sep�ipojte k postgresql
+ PID. Pak nastavte breakpointy v debuggeru a zadejte dotaz v psql.
+ Pokud lad�te startup postgresu, pak nastavte PGOPTIONS="-W n" a spus�e
+ psql. Tento p�ep�na� zp�sob� pauzu n sekund, tak�e budete m�t �as se
+ p�ipojit k procesu, a nastavit breakpointy a pokra�ovat v startup
+ posloupnosti.
+
+ Pro lad�n� a m��en� v�konu mohou b�t u�ite�n� p�ep�na�e -s, -A a -t
+ programu postgres (backend).
+
+ M��ete prov�st p�eklad s profilac�, tak abyste vid�li kolik �asu
+ zab�raj� jednotliv� funkce. Soubory s profily backend� jsou ulo�eny v
+ adres��i pgsql/data/base/dbname. Profil klienta pak v jeho aktu�ln�m
+ adres��i. Korektn� profilace v prost�ed� Linux po�aduje konfiguraci
+ syst�mu s parametrem -DLINUX_PROFILE.
+
+ 3.8) Pro� dostanu "Sorry, too many clients", kdy� se zkou��m p�ipojit?
+
+ Zvy�te limit postmastera na maxim�ln� po�et sou�asn� spu�t�n�ch
+ backend�.
+
+ V�choz� hodnota je 32 backend�. Tuto hodnotu zv���te zastaven�m a
+ op�tovn�m spu�t�n�m postmastera s parametrem -N nebo �pravou
+ postgresql.conf.
+
+ P�i zv��en� hodnoty -N nad 32 mus�te zv��it hodnotu -B nad v�choz� 64,
+ -B mus� b�t minim�ln� dvakr�t v�t��, nebo je�t� l�pe v�ce.
+ Pravd�podobn� zjist�te, �e pro velk� po�et proces� backendu je nutn�
+ zv��it n�kter� parametry j�dra. Jsou to p�edev��m maxim�ln� velikost
+ sd�len� pam�ti SHMMAX, maxim�ln� po�et semaf�r� SEMMNS a SEMMNI,
+ maxim�ln� po�et proces� NPROC, maxim�ln� po�et proces� u�ivatele
+ MAXUPRC a maxim�ln� po�et otev�en�ch soubor� NFILE a NINODE. D�vod pro
+ omezen� maxim�ln�ho po�tu backend� je fakt, �e by mohlo doj�t k
+ vy�erp�n� zdroj� Va�eho syst�mu.
+
+ 3.9) K �emu slou�� adres�� pgsql_tmp?
+
+ Tento adres�� obsahuje do�asn� soubory vytvo�en� exekutorem dotaz�.
+ Nap��klad, kdy� je nutn� t��d�n� k zaji�t�n� ORDER BY a t��d�n� m�
+ v�t�� n�roky na prostor ne� povoluje parametr -S backendu, pak je
+ vytvo�en do�asn� soubor k ulo�en� extra �daj�.
+
+ Do�asn� soubory jsou obvykle maz�ny automaticky, ale m��e se st�t, �e
+ b�hem t��d�n� server spadne. Zastaven� a dal�� start postmastera
+ zajist� odstran�n� soubor� s t�chto adres���.
+
+ 3.10) Pro� je po�adov�no dump a obnoven� (load) datab�ze b�hem upgrade mezi
+ velk�mi verzemi PostgreSQL?
+
+ PostgreSQL se minim�ln� m�n� b�hem mal�ch verz�, tak�e nap�. p�i
+ upgrade z 7.2 na 7.2.1 nen� nutn� dump a load datab�ze. Ale v�ynamn�
+ verze �asto m�n� intern� form�t syst�mov�ch tabulek a datov�ch
+ soubor�. Tyto zm�ny jsou natolik rozs�hl�, �e nelze zajistit zp�tnou
+ kompatibilitu pro datov� soubory. Dump ulo�� data v obecn�m form�tu,
+ tak�e mohou b�t na�tena a pou��v�na v nov�m intern�m form�tu.
+ _________________________________________________________________
+
+ Provozn� dotazy
+
+ 4.1) ��m se li�� bin�rn� a norm�ln� kurzor?
+
+ Popis najdete v manu�lov� str�nce DECLARE
+
+ 4.2) Jak z�skat pouze prvn� ��dek dotazu? N�hodn� ��dek?
+
+ Pod�vejte se do man. str�nky p��kazu FETCH, nebo pou�ijte SELECT ...
+ LIMIT ...
+
+ I kdy� pot�ebujete z�skat pouze prvn�ch n�kolik ��dk�, je t�eba
+ zpracovat v�echna data, nap�. pokud dotaz m� ORDER BY. Pokud v�ak
+ existuje index, kter� odpov�d� ORDER BY, PostgreSQL m��e z�skat pouze
+ prvn�ch n ��dk� a ukon�it zpracov�n� dotazu.
+
+ K z�sk�n� n�hodn�ho ��dku pou�ijte:
+ SELECT col
+ FROM tab
+ ORDER BY random()
+ LIMIT 1;
+
+ 4.3) Jak z�sk�m seznam tabulek nebo jinak jak jej z�sk� psql?
+
+ P��kaz \dt v psql zobraz� seznam tabulek. �pln� seznam p��kaz� psql
+ dostanete p��kazem \?. Tak� se m��ete pod�vat do zdrojov�ch k�d� psql
+ do souboru pgsql/src/bin/psql/describe.c. Ten obsahuje SQL p��kazy,
+ kter� se pou��vaj� v psql metap��kazech. D�le m��ete spustit psql s
+ p�ep�na�em -E, kter� zp�sob� zobrazen� ka�d�ho dotazu, kter�
+ zpracov�n� metap��kazu vyvol�. PostgreSQL nab�z� SQLi INFORMATION
+ SCHEMA s tabulkami obsahuj�c� informace o datab�zi.
+
+ 4.4) Jak odstran�m sloupec tabulky, jak zm�n�m jeho typ?
+
+ Po��naje verz� 7.3 m��ete pou��t p��kaz ALTER TABLE DROP COLUMN. Ve
+ star��ch verz�ch m��ete pou��t n�sleduj�c� postup:
+ BEGIN;
+ LOCK TABLE old_table;
+ SELECT ... -- mimo sloupec, kter� chceme odstranit
+ INTO TABLE new_table;
+ DROP TABLE old_table;
+ ALTER TABLE new_table RENAME TO old_table;
+ COMMIT;
+
+ Pro zm�nu typu sloupce je t�eba prov�st:
+ BEGIN;
+ ALTER TABLE tab ADD COLUMN new_col new_data_type;
+ UPDATE tab SET new_col = CAST(old_col AS new_data_type;
+ ALTER TABLE tab DROP COLUMN old_col;
+ COMMIT;
+
+ Pot� prove�te VACUUM FULL tab - uvoln�te t�m diskov� prostor zabran�
+ nyn� ji� neplatn�mi ��dky.
+
+ 4.5) Jak� je maxim�ln� velikost ��dku, tabulky a datab�ze?
+
+ PostgreSQL m� tato omezen�:
+ Maxim�ln� velikost datab�ze: neomezena (existuj� 32TB db)
+ Maxim�ln� velikost tabulky: 32 TB
+ Maxim�ln� velikost ��dky: 1.6 TB
+ Maxim�ln� velikost polo�ky 1 GB
+ Maxim�ln� po�et ��dk� v tabulce: neomezeno
+ Maxim�ln� po�et sloupc� v tabulce: 250-1600 podle typ�
+ Maxim�ln� po�et index� na tabulce: neomezeno
+
+ Ve skute�nosti nic nen� neomezeno, limitem b�v� v�dy dostupn� diskov�
+ pam� nebo velikost opera�n� pam�ti. Pokud m�te n�kterou z t�chto
+ hodnot neobvykle velkou, m��e doj�t ke sn��en� v�konu.
+
+ Maxim�ln� velikost tabulky je 32 TB a nevy�aduje podporu velk�ch
+ soubor� opera�n�m syst�mem. Velk� tabulky se ukl�daj� do n�kolika 1 GB
+ soubor� tak�e limity souborov�ho syst�mu nejsou podstatn�.
+
+ Maxim�ln� velikost tabulky a maxim�ln� po�et sloupc� m��eme
+ ze�ty�n�sobit nastaven�m velikosti bloku na 32K.
+
+ 4.6) Kolik diskov�ho prostoru je pot�eba k ulo�en� dat z
+
+ norm�ln�ho textov�ho souboru?
+
+ PostgreSQL vy�aduje a� p�tin�sobek diskov�ho prostoru k ulo�en� dat z
+ textov�ho souboru.
+
+ Nap��klad, uva�ujme soubor se 100 tis�ci ��dky obsahuj�c� na ka�d�
+ ��dce cel� ��slo a textov� popis. Text je v pr�m�ru dvacet byt�
+ dlouh�. Textov� soubor bude 2.8 MB dlouh�. Velikost datab�ze
+ obsahuj�c� odpov�daj�c� data bude zhruba 6.4 MB.
+ 36 byt�: hlavi�ka ��dku (p�ibli�n�)
+ 24 byt�: jedna celo��seln� polo�ka a jedna textov�
+ + 4 byty: ukazatel na str�nku k ntici
+ ------------------------------------------------------
+ 64 byt� na ��dek
+
+ Velikost datov� str�nky PostgreSQL je 8KB
+
+ 8192 byt� na str�nce
+ ---------------------- = 128 ��dek na str�nku
+ 64 byt� za ��dek
+
+ 100000 ��dek
+ -------------------- = 782 str�nek (zaokrouhleno nahoru)
+ 128 ��dek na str�nce
+
+ 782 * 8192 = 6, 406, 144 byt� (6.4 MB)
+
+ Indexy nemaj� tak velkou re�ii, ale mohou b�t tak� velk�, proto�e
+ obsahuj� indexovan� data.
+
+ Hodnoty NULL jsou ulo�eny v bitmap�ch, tak�e spot�ebuj� jen velmi m�lo
+ diskov�ho prostoru.
+
+ 4.7) Jak z�sk�m seznam vytvo�en�ch tabulek, index�, datab�z�?
+
+ psql m� sadu metap��kaz� k zobrazen� t�chto informac�. Jejich seznam
+ z�sk�te p��kazem \?. D�le se m��ete pod�vat na obsah syst�mov�ch
+ tabulek za��naj�c�ch pg_. Spu�t�n� psql s parametrem -l provede v�pis
+ n�zv� v�ech datab�z�.
+
+ Soubor pgsql/src/tutorial/syscat.source obsahuje SELECTy p�istupuj�c�
+ k syst�mov�m tabulk�mm.
+
+ 4.8) M�j dotaz je pomal� a nepou��v� vytvo�en� indexy. Pro�?
+
+ Ka�d� dotaz nemus� nutn� pou��t existuj�c� indexy. Index se pou�ije
+ tehdy, kdy� je tabulka v�t�� ne� ur�it� minim�ln� velikost, a dotaz
+ vyb�r� pouze procentu�ln� malou ��st ��dk� tabulky. To proto, �e
+ n�hodn� p��stup k disku dan� �ten�m indexu m��e b�t pomalej�� ne�
+ line�rn� �ten� tabulky nebo sekven�n� �ten�.
+
+ PostgreSQL rozhoduje o pou�it� index� na z�klad� statistiky p��stup� k
+ tabulce. Tyto statistiky se shroma��uj� p��kazy VACUUM ANALYZE nebo
+ ANALYZE. D�ky statistik�m m� optimizer informaci o po�tu ��dek v
+ tabulce a m��e l�pe rozhodnout o pou�it� index�. Statistiky se uplatn�
+ p�i ur�en� optim�ln�ho po�ad� a metody spojen� tabulek. Statistiky by
+ se m�li aktualizovat opakovan�, tak jak se m�n� obsah tabulek.
+
+ Indexy nejsou oby�ejn� pou�ity pro set��d�n� nebo spojen� tabulek.
+ Sekven�n� zpracov�n� n�sledovan� explicitn�m t��d�n�m je oby�ejn�
+ rychlej�� ne� indexn� �ten� na velk� tabulce.
+
+ Jinak je tomu v p��pad� pou�it� LIMIT a ORDER BY, p�i kter�m se
+ v�t�inou index pou�ije, v�sledkem je pouze mal� ��st tabulky. Funkce
+ MAX() a MIN() nepou��vaj� indexy, ale je mo�n� tut� hodnotu z�skat:
+ SELECT col
+ FROM tab
+ ORDER BY col [ DESC ]
+ LIMIT 1;
+
+ Pokud si mysl�te, �e optimizer myln� zvolil sekven�n� prohled�v�n�
+ tabulky, pou�ijte p��kaz SET enable_seqscan TO 'off' a zkuste zda je
+ indexn� prohled�v�n� rychlej��.
+
+ P�i vyhled�v�n� na z�klad� vzoru jako je nap�. oper�tor LIKE nebo ~ se
+ indexy pou��j� pouze za ur�it�ch skute�nost�:
+ * za��tek hledan�ho vzoru mus� b�t ukotven k za��tku, tj.
+ + vzor LIKE nesm� za��nat %
+ + ~ regul�rn� v�raz mus� za��nat ^
+ * vzor nesm� za��nat intervalem, nap�. [a-e]
+ * vyhled�van�, kter� nen� Case sensitiv jako je ILIKE nebo ~*
+ nepou��v� indexy. M��ete ale pou��t funkcion�ln� indexy, kter�
+ jsou pos�ny v sekci 4.12
+ * p�i inicializaci datab�ze (initdb) mus� b�t pou�ito C locale
+ (pozn. p�ekladatele - tud�� v na�ich podm�nk�ch nepou�iteln�,
+ nepracovalo by �esk� t��d�n�).
+
+ 4.9) Jak zjist�m, jak optimizer dotazu vyhodnocuje m�j dotaz?
+
+ Pod�vejte se do manu�lov� str�nky p��kazu EXPLAIN.
+
+ 4.10) Co to je R-tree index?
+
+ R-tree index se pou��v� pro indexov�n� prostorov�ch dat. Hash index
+ nem��e obslou�it prohled�v�n� oblast�. B-tree index m��e ��dit
+ vyhled�n� oblast� v jedn� dimenzi. R-tree index m��e podporovat
+ hled�n� v multidimenzion�ln�ch datech. Pou�ijeme-li nap��klad R-tree
+ index na atributy typu point, pak syst�m m��e efektivn� odpov�d�t na
+ dotaz - vyber v�echny body uvnit� obd�ln�k�.
+
+ P�vodn� n�vrh R-tree je 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
+
+ Tyto materi�ly naleznete v Stonebraker's "Readings in Database
+ Systems".
+
+ Vestav�n� R-tree m��e slou�it k indexaci polygon� a oblast�.
+ Teoreticky m��eme R-tree pou��t i pro v�ce dimenz� (jin� ne� 3D). Ve
+ skute�nosti ale takov� roz���en� R-tree vy�aduje trochu pr�ce a ve
+ sou�astnosti chyb� dokumentace jak na to.
+
+ 4.11) Co je Genetic Query Optimizer?
+
+ GEQO modul urychluje optimalizaci dotaz� p�i spojov�n� mno�stv�
+ tabulek metodou Genetick�ch algoritm� (GA). To umo��uje z�skat velk�ho
+ mno�stv� variant spojen� p�i ne�pln�m prohled�v�n�m.
+
+ 4.12) Jak prov�st vyhled�v�n� regul�rn�ho v�razu case sensitiv, insensitiv?
+ Jak pou��t index pro case insensitive vyhled�v�n�?
+
+ Oper�tor ~ slou�� k porov�n� s regul�rn�m v�razem, jeho modifikace *~
+ p�edstavuje case insensitive vyhled�v�n�. Jedn� se o obdobu LIKE a
+ ILIKE.
+
+ Pro vyhled�v�n� bez ohledu na velk� mal� p�smena pou�ijeme:
+ SELECT *
+ FROM tab
+ WHERE lower(col) = 'abc';
+
+ V tomto p��pad� se nepou�ije standardn� index. Nicm�n�, pou�ije se
+ funkcion�ln� index, pokud jej vytvo��te:
+ CREATE INDEX tabindex ON tab (lower(col));
+
+ 4.13) Jak v dotazu detekovat, �e polo�ka je NULL?
+
+ Ur��te pomoc� IS NULL nebo IS NOT NULL
+
+ 4.14) Jak� jsou rozd�ly mezi r�zn�mi znakov�mi typy?
+
Typ Intern� n�zev Pozn�mka
--------------------------------------------------------------------------
VARCHAR(n) varchar omezeno maxim�ln� d�lkou, bez dopln�n� mezerami
@@ -858,332 +826,292 @@ TEXT text bez horn�ho limitu na d�lku
BYTEA bytea pole byt� (bezpe�n� lze ulo�it i znak NULL)
"char" char jeden znak
-S intern�mi n�zvy se setk�te v syst�mov�m katalogu a v n�kter�ch
-chybov�ch hl�en�ch.
-
-Prvn� �ty�i uveden� typy jsou tzv. varlena typy (tj. prvn� �ty�i byty na
-disku nesou �daj o d�lce, n�sleduj� samotn� data). Proto skute�n�
-pou�it� prostor je v�dy o n�co m�lo v�t�� ne� deklarovan� d�lka. Naopak,
-tyto datov� typy jsou komprimov�nty TOASTem, tak�e prostor na disku m��e
-b�t ni��� ne� je o�ek�v�no.
-
-VARCHAR(n) je vhodn� pro ukl�d�n� text� promm�n� d�lky s pevn�
-stanovenou maxim�ln� d�lkou. TEXT je pro �et�zce bez omezen� d�lky s
-maximem jeden gigabajt.
-
-CHAR(n) slou�� k ukl�d�n� �et�zc� stejn� d�lky. CHAR(n) dopln� pr�zdn�
-znaky do specifikovan� d�lky, zat�mco VARCHAR(n) ulo�� pouze p�edan�
-znaky. BYTEA je ur�eno pro ukl�d�n� bin�rn�ch dat, v�etn� NULL byte.
-V�echny zde popsan� typy maj� podobn� v�konnostn� charakteristiky.
-
-4.15.1 Jak vytvo�it serial/auto-increment pole?
------------------------------------------------
-
-PostgreSQL podporuje typ SERIAL. P�i jeho pou�it� se automaticky vytvo��
-SEQUENCE a index na sloupci (Pro vy��� verze to neplat� OV��IT).
-Nap��klad:
-
-CREATE TABLE person (
- id SERIAL,
- name TEXT
-);
-
-je automaticky p�evedeno do
-
-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);
-
-Viz dokumentace create_sequence v manu�lov�ch str�nk�ch. D�le m��ete
-pou��t unik�tn� hodnotu OID ka�d�ho ��dku. Potom ale mus�te spou�t�t
-pg_dump s p�ep�na�em -o, tak aby z�staly zachov�ny hodnoty OID (u
-p��kazu copy COPY WITH OIDS).
-
-4.15.2 Jak z�skat hodnotu SERIAL po vlo�en� ��dku?
---------------------------------------------------
-
-Jednou z mo�nost� je z�skat budouc� hodnotu SERIAL funkc� nextval p�ed
-samotn�m vlo�en�m a pak ji vlo�it explicitn�. Nap��klad v jak�msi
-pseudojazyku
-
-newid = execute("SELECT nextval('person_id_seq')");
-execute("INSERT INTO person (id, name) VALUES (new_id, 'Blaise Pascal')");
-
-M��ete pak je�t� pou��t hodnotu newid v dal��ch dotazech, nap�. jako
-hodnotu ciz�ho kl��e. N�zev automaticky vytvo�en� sekvence je
-tabulka_sloupec_seq.
-
-Alternativn� m��ete z�skat hodnotu posledn� generovou sekvenc� funkc�
-currval() po vlo�en�
-
-execute("INSERT INTO person (name) VALUES ('Blaise Pascal')");
-new_id = execute("SELECT currval('person_id_seq')");
-
-Kone�n� m��ete pou��t OID hodnotu vr�cenou p��kazem INSERT, ale to je
-pravd�podobn� nejm�n� p�enositeln� �e�en�. V Perlu p�i pou�it� DBI
-modulu Edmunda Mergleho DBD:Pg oid hodnotu z�sk�me $sth->{pg_oid_status}
-po ka�d�m $sth->execute().
-
-4.15.3 Nepovede currval() a nextval() k rozhozen� podm�nek p�i soub�hu s jin�mi u�ivateli?
-------------------------------------------------------------------------------------------
-
-Nikoliv, currval() vrac� hodnotu naposledy generovanou ve va�em
-backendu, a ta tud�� nen� spole�n� v�em u�ivatel�m.
-
-4.15.4 Pro� nen� vygenerovan� ��slo pou�ito p�i p�eru�en� transakce?
-Pro� vznikaj� d�ry v ��slov�n� vlastn� sekvenc�/SERIAL sloupce?
-
-K zaji�t�n� efektivnosti soub�hu, jsou hodnoty posloupnosti, kdy� se o
-n� po��d�, a sekvence nen� zam�ena do ukon�en� transakce. To zp�sobuje
-d�ry v ��slov�n� ze zru�en�ch transakc�.
-
-4.16 Co to je OID? Co je to TID?
---------------------------------
-
-Ka�d� ��dek vytvo�en� v PostgreSQL z�sk� jedine�n� OID. V�echna OID
-generovan� b�hem inicializace datab�ze jsou men�� ne� 16384
-(include/access/transam.h). V�echna OID generovan� na po�adavek
-u�ivatele jsou rovna nebo vy��� t�to hodnot�. Norm�ln�, v�echna OID jsou
-jedine�n� nejen uvnit� tabulky nebo datab�ze, ale v r�mci cel� instalace
-PostgreSQL
-
-PostgreSQL pou��v� OID ve sv�m intern�m syst�mu tabulek k vytvo�en�
-relac�. Tato OID mohou b�t pou�ita k identifikaci konkr�tn�ho u�ivatele
-a pou�ita v spojen�. Pro OID hodnoty je doporu�en typ OID. Nad t�mto
-sloupcem m��ete vytvo�it index pro urychlen� p��stupu.
-
-OID jsou d�na v�em ��dk�m z centr�ln� oblasti a jsou pou�ita v ka�d�
-datab�zi. Pokud pot�ebujete zm�nit OID, nebo chcete zkop�rovat tabulku s
-p�vodn�mi OID, lze pou��t
-
-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';
-
-OID jsou ulo�ena jako 4bajtov� integer a p�ete�ou po �ty�ech miliard�ch.
-Nebylo hl�eno, �e by se tak n�kdy stalo, p�esto ale pl�nujeme odstranit
-tento limit d��v ne� se tak stane.
-
-TID se pou��vaj� i identifikaci fyzick�ch ��dk� s hodnotou bloku a
-offsetu. TIDs se m�n� modifikac� ��dk� (pou��v� se jako ukazatel indexu
-fyzick�ho ��dku).
-
-4.17 Jak� je v�znam n�kter�ch v�raz� pou�it�ch v PostgreSQL?
-------------------------------------------------------------
-
-V n�kter�ch zdrojov�ch k�dech nebo star�� dokumentaci se m��ete setkat s
-n�sleduj�c�mi v�razy, kter� maj� �ir�� v�znam. Zde je p��klad nekter�ch:
-
- - tabulka, relace, t��da (table, relation, class)
- - ��dek, z�znam, ntice (row, record, tuple)
- - sloupec, polo�ka, atribut (column, field, attribute)
- - vyhled�n�, v�b�r (retrieve, select)
-
- - n�hrada, �prava (replace, update)
- - p�id�n�, vkl�d�n� (append, insert)
- - OID, serial value (OID, serial value)
- - portal, kurzor (portal, cursor)
- - range variable, jm�no tabulky, alias tabulky (range
- variable, table name, table alias)
-
-seznam t�chto v�raz� m��ete nal�zt na
-http://hea-www.harvard.edu/MST/simul/software/docs/pkgs/pgsql/glossary/g
-lossary.html.
-
-4.18 Pro� jsem z�skal chybov� hl�en� "ERROR: Memory exhausted in AllocSetAlloc()"?
------------------------------------------------------------------------------------
-
-Pravd�podobn� do�lo k vy�erp�n� virtu�ln� pam�i na Va�em syst�mu, nebo
-j�dro m� n�zk� limit pro ur�it� zdroje. Vyzkou�ejte p�ed startem
-posmatera
-
-ulimit -d 262144
-limit datasize 256m
-
-Z�le�� na Va�em shellu, zda budou tyto p��kazy �sp�n�, m�ly by zv��it
-limit datov�ho segmentu pro Va�e procesy a umo�nit tak dokon�en� dotazu.
-Tyto p��kazy se aplikuj� na aktu�ln� proces a v�echny synovsk� procesy
-vytvo�en� po proveden� p��kazu. Pokud m�te probl�my s SQL klientem
-proto�e backend vrac� p��li� mnoho dat, zkuste zv��it limity p�ed
-startem klienta.
-
-4.19 Jak se dozv�m, kterou verzi PostgreSQL pou��v�m?
------------------------------------------------------
-
-V psql spus�te
-
-SELECT version();
-
-4.20 Pro� operace s velk�mi objekty kon�� "invalid large obj descriptor"?
--------------------------------------------------------------------------
-
-V�echny operace s velk�mi objekty - lo_open, lo_close, ... mus�te
-spou�t�t v transakci, tj. mezi p��kazy BEGIN WORK a COMMIT.
-
-PostgreSQL uvol�uje handle velk�ch objekt� p�i skon�en� transakce. Pokud
-budete pracovat s velk�mi objekty mimo transakci, pravd�podobn�
-dostanete toto chybov� hl�en�, proto�e handle ji� budou neplatn�.
-
-Pokud pou��v�te interface podobn� ODBC mus�te nastavit set auto_commit
-off
-
-4.21 Jak vytvo�it sloupec obsahuj�c� implicitn� aktu�ln� datum?
----------------------------------------------------------------
-
-Pou�ijte CURRENT_TIMESTAMP
+ S intern�mi n�zvy se setk�te v syst�mov�m katalogu a v n�kter�ch
+ chybov�ch hl�en�ch.
+
+ Prvn� �ty�i uveden� typy jsou tzv. varlena typy (tj. prvn� �ty�i byty
+ na disku nesou �daj o d�lce, n�sleduj� samotn� data). Proto skute�n�
+ pou�it� prostor je v�dy o n�co m�lo v�t�� ne� deklarovan� d�lka.
+ Naopak, tyto datov� typy jsou komprimov�nty TOASTem, tak�e prostor na
+ disku m��e b�t ni��� ne� je o�ek�v�no.
+
+ VARCHAR(n) je vhodn� pro ukl�d�n� text� promm�n� d�lky s pevn�
+ stanovenou maxim�ln� d�lkou. TEXT je pro �et�zce bez omezen� d�lky s
+ maximem jeden gigabajt.
+
+ CHAR(n) slou�� k ukl�d�n� �et�zc� stejn� d�lky. CHAR(n) dopln� pr�zdn�
+ znaky do specifikovan� d�lky, zat�mco VARCHAR(n) ulo�� pouze p�edan�
+ znaky. BYTEA je ur�eno pro ukl�d�n� bin�rn�ch dat, v�etn� NULL byte.
+ V�echny zde popsan� typy maj� podobn� v�konnostn� charakteristiky.
+
+ 4.15.1) Jak vytvo�it serial/auto-increment pole?
+
+ PostgreSQL podporuje typ SERIAL. P�i jeho pou�it� se automaticky
+ vytvo�� SEQUENCE. Nap��klad:
+ CREATE TABLE person (
+ id SERIAL,
+ name TEXT
+ );
+
+ je automaticky p�evedeno do
+ 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);
+
+ Viz dokumentace create_sequence v manu�lov�ch str�nk�ch. D�le m��ete
+ pou��t unik�tn� hodnotu OID ka�d�ho ��dku. Potom ale mus�te spou�t�t
+ pg_dump s p�ep�na�em -o, tak aby z�staly zachov�ny hodnoty OID (u
+ p��kazu copy COPY WITH OIDS).
+
+ 4.15.2) Jak z�skat hodnotu SERIAL po vlo�en� ��dku?
+
+ Jednou z mo�nost� je z�skat budouc� hodnotu SERIAL funkc� nextval()
+ p�ed samotn�m vlo�en�m a pak ji vlo�it explicitn�. Nap��klad v jak�msi
+ pseudojazyku:
+ newid = execute("SELECT nextval('person_id_seq')");
+ execute("INSERT INTO person (id, name) VALUES (new_id, 'Blaise Pascal')");
+
+ M��ete pak je�t� pou��t hodnotu newid v dal��ch dotazech, nap�. jako
+ hodnotu ciz�ho kl��e. N�zev automaticky vytvo�en� sekvence je
+ tabulka_sloupec_seq.
+
+ Alternativn� m��ete z�skat hodnotu posledn� generovou sekvenc� funkc�
+ currval() po vlo�en�:
+ execute("INSERT INTO person (name) VALUES ('Blaise Pascal')");
+ new_id = execute("SELECT currval('person_id_seq')");
+
+ Kone�n� m��ete pou��t OID hodnotu vr�cenou p��kazem INSERT, ale to je
+ pravd�podobn� nejm�n� p�enositeln� �e�en�. V Perlu p�i pou�it� DBI
+ modulu Edmunda Mergleho DBD:Pg oid hodnotu z�sk�me
+ $sth->{pg_oid_status} po ka�d�m $sth->execute().
+
+ 4.15.3) Nepovede currval() a nextval() k rozhozen� podm�nek p�i soub�hu s
+ jin�mi u�ivateli?
+
+ Nikoliv, currval() vrac� hodnotu naposledy generovanou ve va�em
+ backendu, a ta tud�� nen� spole�n� v�em u�ivatel�m.
+
+ 4.15.4) Pro� nen� vygenerovan� ��slo pou�ito p�i p�eru�en� transakce? Pro�
+ vznikaj� d�ry v ��slov�n� vlastn� sekvenc�/SERIAL sloupce?
+
+ K zaji�t�n� efektivnosti soub�hu, jsou hodnoty posloupnosti, kdy� se o
+ n� po��d�, a sekvence nen� zam�ena do ukon�en� transakce. To zp�sobuje
+ d�ry v ��slov�n� ze zru�en�ch transakc�.
+
+ 4.16) Co to je OID? Co je to TID?
+
+ Ka�d� ��dek vytvo�en� v PostgreSQL z�sk� jedine�n� OID. V�echna OID
+ generovan� b�hem inicializace datab�ze jsou men�� ne� 16384
+ (include/access/transam.h). V�echna OID generovan� na po�adavek
+ u�ivatele jsou rovna nebo vy��� t�to hodnot�. Norm�ln�, v�echna OID
+ jsou jedine�n� nejen uvnit� tabulky nebo datab�ze, ale v r�mci cel�
+ instalace PostgreSQL
+
+ PostgreSQL pou��v� OID ve sv�m intern�m syst�mu tabulek k vytvo�en�
+ relac�. Tato OID mohou b�t pou�ita k identifikaci konkr�tn�ho
+ u�ivatele a pou�ita v spojen�. Pro OID hodnoty je doporu�en typ OID.
+ Nad t�mto sloupcem m��ete vytvo�it index pro urychlen� p��stupu.
+
+ OID jsou d�na v�em ��dk�m z centr�ln� oblasti a jsou pou�ita v ka�d�
+ datab�zi. Pokud pot�ebujete zm�nit OID, nebo chcete zkop�rovat tabulku
+ s p�vodn�mi OID, lze pou��t:
+ 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';
+
+ OID jsou ulo�ena jako 4bajtov� integer a p�ete�ou po �ty�ech
+ miliard�ch. Nebylo hl�eno, �e by se tak n�kdy stalo, p�esto ale
+ pl�nujeme odstranit tento limit d��v ne� se tak stane.
+
+ TID se pou��vaj� i identifikaci fyzick�ch ��dk� s hodnotou bloku a
+ offsetu. TIDs se m�n� modifikac� ��dk� (pou��v� se jako ukazatel
+ indexu fyzick�ho ��dku).
+
+ 4.17) Jak� je v�znam n�kter�ch v�raz� pou�it�ch v PostgreSQL?
+
+ V n�kter�ch zdrojov�ch k�dech nebo star�� dokumentaci se m��ete setkat
+ s n�sleduj�c�mi v�razy, kter� maj� �ir�� v�znam. Zde je p��klad
+ nekter�ch:
+ * tabulka, relace, t��da (table, relation, class)
+ * ��dek, z�znam, ntice (row, record, tuple)
+ * sloupec, polo�ka, atribut (column, field, attribute)
+ * vyhled�n�, v�b�r (retrieve, select)
+ * n�hrada, �prava (replace, update)
+ * p�id�n�, vkl�d�n� (append, insert)
+ * OID, serial value (OID, serial value)
+ * portal, kurzor (portal, cursor)
+ * range variable, jm�no tabulky, alias tabulky (range variable,
+ table name, table alias)
+
+ seznam t�chto v�raz� m��ete nal�zt na
+ http://hea-www.harvard.edu/MST/simul/software/docs/pkgs/pgsql/glossary
+ /glossary.html.
+
+ 4.18) Pro� jsem z�skal chybov� hl�en� "ERROR: Memory exhausted in
+ AllocSetAlloc()"?
+
+ Pravd�podobn� do�lo k vy�erp�n� virtu�ln� pam�i na Va�em syst�mu,
+ nebo j�dro m� n�zk� limit pro ur�it� zdroje. Vyzkou�ejte p�ed startem
+ posmatera
+ ulimit -d 262144
+ limit datasize 256m
+
+ Z�le�� na Va�em shellu, zda budou tyto p��kazy �sp�n�, m�ly by zv��it
+ limit datov�ho segmentu pro Va�e procesy a umo�nit tak dokon�en�
+ dotazu. Tyto p��kazy se aplikuj� na aktu�ln� proces a v�echny synovsk�
+ procesy vytvo�en� po proveden� p��kazu. Pokud m�te probl�my s SQL
+ klientem proto�e backend vrac� p��li� mnoho dat, zkuste zv��it limity
+ p�ed startem klienta.
+
+ 4.19) Jak se dozv�m, kterou verzi PostgreSQL pou��v�m?
+
+ V psql spus�te SELECT version();
+
+ 4.20) Pro� operace s velk�mi objekty kon�� "invalid large obj descriptor"?
+
+ V�echny operace s velk�mi objekty - lo_open, lo_close, ... mus�te
+ spou�t�t v transakci, tj. mezi p��kazy BEGIN WORK a COMMIT.
+
+ PostgreSQL uvol�uje handle velk�ch objekt� p�i skon�en� transakce.
+ Pokud budete pracovat s velk�mi objekty mimo transakci, pravd�podobn�
+ dostanete toto chybov� hl�en�, proto�e handle ji� budou neplatn�.
+ Pokud pou��v�te interface podobn� ODBC mus�te nastavit set auto_commit
+ off.
+
+ 4.21) Jak vytvo�it sloupec obsahuj�c� implicitn� aktu�ln� datum?
+
+ Pou�ijte CURRENT_TIMESTAMP:
CREATE TABLE test (x int, modtime timestamp DEFAULT CURRENT_TIMESTAMP );
-4.22 Pro� jsou moje vno�en� dotazy pou��vaj�c� IN tak pomal�?
--------------------------------------------------------------
-
-Aktu�ln� spojujeme tabulky se sekven�n�m skenov�n�m v�sledku pro ka�d�
-��dek vn�j��ho dotazu. Pokud vno�en� dotaz m� pouze n�kolik ��dk� a
-vn�j�� dotaz vrac� hodn� ��dek, IN je rychl�. V jin�ch p��padech
-nahra�te IN EXISTS:
-
-SELECT * FROM tab
- WHERE col IN (SELECT subcol FROM subtab);
-
-takto
-
-SELECT * FROM tab
- WHERE EXISTS (SELECT subcol FROM subtab WHERE subcol = col);
-
-Pro urychlen� vytvo�ete index pro subcol. Tento v�konnostn� probl�m byl
-odstran�n ve verzi 7.4.
-
-4.23 Jak prov�st vn�j�� spojen� (outer join)?
----------------------------------------------
-
-PostgreSQL podporuje vn�j�� spojen� tabulek standardn�mi SQL p��kazy.
-Zde jsou dva p��klady:
-
-SELECT * FROM t1 LEFT OUTER JOIN t2 ON (t1.col = t2.col);
-
-nebo
-
-SELECT * FROM t1 LEFT OUTER JOIN USING (col);
-
-Tyto identick� dotazy napoj� t1.col na t2.col a je�t� p�id� nep�ipojen�
-��dky z t1 (kter� nemaj� obdoby v t2). Prav� spojen� (RIGHT JOIN) p�id�
-nep�ipojen� ��dky z t2. FULL JOIN vr�t� v�echny ��dky, v�etn�
-nep�ipojen�ch z tbulek t1 a t2. Kl��ov� slovo OUTER je nepovinn� a v�e
-se na LEFT, RIGHT a FULL join. B�n� spojen� se naz�v� INNER JOIN.
-
-V d��v�j��ch verz�ch se vn�j�� spojen� tabulek mohlo simulovat pomoc�
-UNION a NOT IN. Nap��klad pro spojen� tabulek tab1 a tab2, je
-n�sleduj�c� dotaz ekvivalentn� k vn�j��mu spojen� dvou tabulek:
-
-SELECT tab1.col2, tab2.col2 FROM tab1, tab2
- WHERE tab1.col1 = tab2.col1
-UNION ALL
-SELECT tab1.col2, NULL FROM tab1
- WHERE tab1.col1 NOT IN (SELECT tab2.col1 FROM tab2)
-ORDER BY col1;
-
-4.24 Jak prov�st dotaz nap��� n�kolika datab�zemi?
---------------------------------------------------
-
-PostgreSQL nenab�z� ��dn� zp�sob, jak se dot�zat do jin� datab�ze ne� do
-aktu�ln�. Dopln�k contrib/dblink umo��uje dotaz do ciz� datab�ze
-prost�ednictv�m funkce. Na stran� klienta nen� probl�m si otev��t v�ce
-simult�ln�ch p��stup� do r�zn�ch datab�z� a spojovat v�sledek na stran�
-klienta.
-
-4.25 M��e funkce vr�tit v�ce ��dk� nebo sloupc�?
-------------------------------------------------
-
-V PostgreSQL 7.3 m��ete jednodu�e vracet v�ce ��dk� nebo sloupc� z
-funkce, viz:
-http://techdocs.postgresql.org/guides/SetReturningFunctions.
-
-4.26 Pro� nelze spolehliv� vytv��et a ru�it do�asn� tabulky v PL/pgSQL funkc�ch?
---------------------------------------------------------------------------------
-
-P�elo�en� k�d PL/pgSQL funkce je ulo�en ve vyrovn�vac� pam�ti, tj.
-funkce je p�ekl�d�na pouze p�i zm�n� k�du, nikoliv p�ed ka�d�m vol�n�m
-funkce. Necht�n�m vedlej��m efektem je, �e vol�n� funkce sel�e, kdy� se
-funkce odkazuje na do�asnou tabulku, pokud tato tabulka byla od p�ekladu
-funkce zru�ena (a�koliv ji� byla znovu vytvo�ena a existuje). Jedin�m
-�e�en�m probl�mu je p��stup k do�asn� tabulce pomoc� EXECUTE, tj.
-dynamick� prov�d�n� dotazu. Tento p��kaz zajist� opakovan� p�eklad
-dotazu p�i ka�d�m vol�n� funkce.
-
-4.27 Jak� jsou mo�nosti replikace datab�z�?
--------------------------------------------
-
-Existuje n�kolik dostupn�ch �e�en� master/slave replikac�. Ty povoluj�
-modifikace master datab�ze a slave datab�z�m umo��uj� pouze �ten�. Na
-konci http://gborg.PostgreSQL.org/genpage?replication_research najdete
-jejich seznam. Na �e�en� multi-master replikaci se pracuje na
-http://gborg.PostgreSQL.org/project/pgreplication/projdisplay.php.
-
-4.28 Jak� jsou mo�nosti �ifrov�n� datab�z�?
--------------------------------------------
- -
-
- contrib/pgcrypto obsahuje �ifrovac� funkce pou�iteln� v SQL
- dotazech.
-
- -
-
- K �ifrov�n� p�enosu dat z klienta na server, mus� b�t server
- p�elo�en s podporou ssl a p�ep�na� sslv postgresql.conf mus� b�t
- nastaven na hodnotu true. Klient mus� m�t vytvo�en z�znam hostssl v
- pg_hba.conf a tak� m�t povolen re�im ssl. Lze pou��t i jin�
- prost�edky, nejen nativn� podporu ssl v PostgreSQL, nap�. stunel a
- ssh.
-
- -
-
- Hesla u�ivatel� datab�ze jsou za�ifrov�na po��naje verz� 7.3. Ve
- star��ch verz�ch toto chov�n� muselo b�t vynuceno volbou
- PASSWORD_ENCRYPTION v postgresql.conf
-
- -
-
- Server m��e b�et na �ifrovan�m souborov�m syst�mu.
-
-------------------------------------------------------------------------
-
-Roz�i�ov�n� PostgreSQL
-======================
-
-5.1 Napsal jsem UDF funkci, PostgreSQL v�ak kon�� dump core?
-------------------------------------------------------------
-
-Probl�m m��e b�t zp�soben mnoha okolnostmi. Vyzkou�ejte si svoji funkci
-nejd��ve v n�jak� jednoduch� aplikaci.
-
-5.2 Jak mohu p�isp�t n�jak�mi �ikovn�mi datov�mi typy a funkcemi do PostgreSQL?
--------------------------------------------------------------------------------
-
-Po�lete sv� roz���en� do konference pgsql-hackers, a ono pak mo�n�
-skon�� v podadres��i contrib.
-
-5.3 Jak napsat funkci v C vracej�c� ntici?
-------------------------------------------
-
-Funkce vracej�c� tabulky jsou podporovan� PostgreSQL 7.3 a vy��� pro
-jazyky C, PL/PgSQL a SQL. V�ce naleznete v The Programmer's Guide.
-P��klady t�chto funkc� pro C naleznete v contrib/tablefunc.
-
-5.4 Modifikoval jsem zdrojov� soubory. Tato zm�na nebyla p�i rekompilaci vzata v potaz. Pro�?
----------------------------------------------------------------------------------------------
-
-Makefile nem� informace o z�vislostech mezi hlavi�kov�mi soubory. Mus�te
-prov�st make clean a pak make. Pokud pou��v�te gcc, m��ete pou��t
-p�ep�na� --enable-depend p��kazu configure k automatick�mu �e�en�
-z�vislost� p�eklada�em.
-
-
-[1] http://developer.postgresql.org/todo.php
-[2] http://ourworld.compuserve.com/homepages/graeme_birchall/HTM_COOK.HTM
-[3] http://postgresql.ok.cz/PostgreSQL%20Administrator%27sGuide
-
+ 4.22) Pro� jsou moje vno�en� dotazy pou��vaj�c� IN tak pomal�?
+
+ D��v�j�� verze (p�ed 7.4) spojovali vno�en� dotazy k vn�j��m
+ sekven�n�m �ten�m v�sledku poddotazu pro ka�d� ��dek vn�j��ho dotazu.
+ Pokud poddotaz vr�til n�kolik m�lo ��dk� IN bylo rychl�. Pro ostatn�
+ p��pady je vhodn� nahradit IN EXISTS:
+ SELECT *
+ FROM tab
+ WHERE col IN (SELECT subcol FROM subtab);
+
+ na:
+ SELECT *
+ FROM tab
+ WHERE EXISTS (SELECT subcol FROM subtab WHERE subcol = col);
+
+ Pro urychlen� vytvo�ete index pro subcol.
+
+ Ve verzi 7.4 a pozd�j��ch, IN pou��v� stejn� sofistikovanou techniku
+ spojov�n� tabulek jako ostatn� dotazy a je preferovan� p�ed EXISTS.
+
+ 4.23) Jak prov�st vn�j�� spojen� (outer join)?
+
+ PostgreSQL podporuje vn�j�� spojen� tabulek standardn�mi SQL p��kazy.
+ Zde jsou dva p��klady:
+ SELECT *
+ FROM t1 LEFT OUTER JOIN t2 ON (t1.col = t2.col);
+
+ nebo
+ SELECT *
+ FROM t1 LEFT OUTER JOIN USING (col);
+
+ Tyto identick� dotazy napoj� t1.col na t2.col a je�t� p�id�
+ nep�ipojen� ��dky z t1 (kter� nemaj� obdoby v t2). Prav� spojen�
+ (RIGHT JOIN) p�id� nep�ipojen� ��dky z t2. FULL JOIN vr�t� v�echny
+ ��dky, v�etn� nep�ipojen�ch z tbulek t1 a t2. Kl��ov� slovo OUTER je
+ nepovinn� a v�e se na LEFT, RIGHT a FULL join. B�n� spojen� se
+ naz�v� INNER JOIN.
+
+ V d��v�j��ch verz�ch se vn�j�� spojen� tabulek mohlo simulovat pomoc�
+ UNION a NOT IN. Nap��klad pro spojen� tabulek tab1 a tab2, je
+ n�sleduj�c� dotaz ekvivalentn� k vn�j��mu spojen� dvou tabulek:
+ SELECT tab1.col2, tab2.col2
+ FROM tab1, tab2
+ WHERE tab1.col1 = tab2.col1
+ UNION ALL
+ SELECT tab1.col2, NULL
+ FROM tab1
+ WHERE tab1.col1 NOT IN (SELECT tab2.col1 FROM tab2)
+ ORDER BY col1;
+
+ 4.24) Jak prov�st dotaz z v�ce datab�z�?
+
+ PostgreSQL nepodporuje dotazy do jin� ne� aktu�ln� datab�ze.
+
+ contrib/dblink nab�z� funkce umo��uj�c� proveden� dotazu v jin�
+ datab�zi. Klient si m��e otev��t simult�ln� p�ipojen� do r�zn�ch db
+ bez omezen�.
+
+ 4.25) M��e funkce vr�tit v�ce ��dk� nebo sloupc�?
+
+ V PostgreSQL 7.3 m��ete jednodu�e vracet v�ce ��dk� nebo sloupc� z
+ funkce, viz:
+ http://techdocs.postgresql.org/guides/SetReturningFunctions.
+
+ 4.26) Pro� nelze spolehliv� vytv��et a ru�it do�asn� tabulky v PL/pgSQL
+ funkc�ch?
+
+ P�elo�en� k�d PL/pgSQL funkce je ulo�en ve vyrovn�vac� pam�ti, tj.
+ funkce je p�ekl�d�na pouze p�i zm�n� k�du, nikoliv p�ed ka�d�m vol�n�m
+ funkce. Necht�n�m vedlej��m efektem je, �e vol�n� funkce sel�e, kdy�
+ se funkce odkazuje na do�asnou tabulku, pokud tato tabulka byla od
+ p�ekladu funkce zru�ena (a�koliv ji� byla znovu vytvo�ena a existuje).
+ Jedin�m �e�en�m probl�mu je p��stup k do�asn� tabulce pomoc� EXECUTE,
+ tj. dynamick� prov�d�n� dotazu. Tento p��kaz zajist� opakovan� p�eklad
+ dotazu p�i ka�d�m vol�n� funkce.
+
+ 4.27) Jak� jsou mo�nosti replikace datab�z�?
+
+ Existuje n�kolik dostupn�ch �e�en� master/slave replikac�, tj umo��uj�
+ modifikace master datab�ze a slave datab�z�m umo��uj� pouze �ten�. Na
+ konci http://gborg.PostgreSQL.org/genpage?replication_research najdete
+ jejich seznam. Na �e�en� multi-master replikaci se pracuje na
+ http://gborg.PostgreSQL.org/project/pgreplication/projdisplay.php.
+
+ 4.28) Jak� jsou mo�nosti �ifrov�n� datab�z�?
+
+ * contrib/pgcrypto obsahuje �ifrovac� funkce pou�iteln� v SQL
+ dotazech.
+ * K �ifrov�n� p�enosu dat z klienta na server, mus� b�t server
+ p�elo�en s podporou ssl a p�ep�na� ssl v postgresql.conf mus� b�t
+ nastaven na hodnotu true. Klient mus� m�t vytvo�en z�znam hostssl
+ v pg_hba.conf a tak� m�t povolen re�im ssl. Lze pou��t i jin�
+ prost�edky, nejen nativn� podporu ssl v PostgreSQL, nap�. stunel a
+ ssh.
+ * Hesla u�ivatel� datab�ze jsou za�ifrov�na po��naje verz� 7.3. Ve
+ star��ch verz�ch toto chov�n� muselo b�t vynuceno volbou
+ PASSWORD_ENCRYPTION v postgresql.conf
+ * Server m��e b�et na �ifrovan�m souborov�m syst�mu.
+ _________________________________________________________________
+
+ Roz�i�ov�n� PostgreSQL
+
+ 5.1) Napsal jsem UDF funkci, PostgreSQL v�ak kon�� dump core?
+
+ Probl�m m��e b�t zp�soben mnoha okolnostmi. Vyzkou�ejte si svoji
+ funkci nejd��ve v n�jak� jednoduch� aplikaci.
+
+ 5.2) Jak mohu p�isp�t n�jak�mi �ikovn�mi datov�mi typy a funkcemi do
+ PostgreSQL?
+
+ Po�lete sv� roz���en� do konference pgsql-hackers, a ono pak mo�n�
+ skon�� v podadres��i contrib.
+
+ 5.3) Jak napsat funkci v C vracej�c� ntici?
+
+ Funkce vracej�c� tabulky jsou podporovan� PostgreSQL 7.3 a vy��� pro
+ jazyky C, PL/PgSQL a SQL. V�ce naleznete v The Programmer's Guide.
+ P��klady t�chto funkc� pro C naleznete v contrib/tablefunc.
+
+ 5.4) Modifikoval jsem zdrojov� soubory. Tato zm�na nebyla p�i rekompilaci
+ vzata v potaz. Pro�?
+
+ Makefile nem� informace o z�vislostech mezi hlavi�kov�mi soubory.
+ Mus�te prov�st make clean a pak make. Pokud pou��v�te gcc, m��ete
+ pou��t p�ep�na� --enable-depend p��kazu configure k automatick�mu
+ �e�en� z�vislost� p�eklada�em.
diff --git a/doc/FAQ_farsi b/doc/FAQ_farsi
index c8ff95967cd..b7cbb205750 100644
--- a/doc/FAQ_farsi
+++ b/doc/FAQ_farsi
@@ -1,816 +1,1566 @@
-PostgreSQL FAQسوالاتي كه اغلب در مورد PostgreSQL‌ پرسيده مي شوند
-تاريخ آخرين اصلاح اين فايل: 28 شهریور 1383 هجری شمسی
-نگهدارنده اصلي فايل (زبان انگليسي)در حال حاضر : Bruce Momjian
-نگهدارنده فايل به زبان فارسي: [email protected] محمود تقي‌زاده مهرجردی
-آخرين نسخه اين فايل را مي‌توانيد از اين آدرس بگيريد
-http://www.PostgreSQL.org/docs/faqs/FAQ.html
-سوالاتي كه در مورد يك سکوی(پلتفرم) خاص است در اين آدرس جواب داده شده اند
-http://www.PostgreSQL.org/docs/index.html
-
-
-
-سوالات عمومي
-1.1) PostgreSQL چيست و چگونه بايد آن را تلفظ كرد؟
-1.2) قانون كپي رايت‌ (حقوق معنوي) در مورد PostgreSQL به چه صورت است؟
-1.3) PostgreSQL‌ روي چه نوع يونيكسهايي اجرا مي‌شود؟
-1.4) روي چه محيطهاي غير يونيكسي مي‌توان آن را اجرا كرد؟
-1.5) PostgreSQL را از كجا مي‌توانم بگيرم؟
-1.6) از كجا خدمات پشتيباني بگيرم؟
-1.7) آخرين نسخه اعلام شده چيست؟
-1.8) چه مستندات و راهنمائيهايي وجود دارند؟
-1.9) چگونه مي‌توانم ازاشكالات شناخته شده و يا امكاناتي كه در اين پايگاه داده
-وجود ندارد مطلع شوم؟
-1.10) چگونه مي‌توانم زبان SQL را ياد بگيرم؟
-1.11) آيا PostgreSQL مشكل Y2K‌ دارد يا خير؟
-1.12) چگونه مي‌توانم به تيم برنامه نويس PostgreSQL ملحق شوم؟
-1.13) چگونه مي‌توانم يك اشكال را به گروه برنامه نويس اعلام كنم؟
-1.14) وضعيت PostgreSQL‌ در مقايسه با ساير DBMSها به چه صورت است؟
-1.15) من چگونه مي‌توانم از نظر مالي به PostgreSQL كمك كنم؟
-
-سوالات مربوط به استفاده از پايگاه داده
-2.1) آيا هيچ درايور ODBC‌ براي PostgreSQL وجود دارد؟
-2.2) چه ابزارهايي براي استفاده از PostgreSQL‌ با صفحات وب وجود دارد؟
-2.3) آيا PostgreSQL‌ يك واسط كاربري گرافيكي دارد؟
-2.4) با چه زبانهاي برنامه‌نويسي مي‌توان با PostgreSQL‌ ارتباط برقرار كرد؟
-
-سوالات مربوط به راهبري
-3.1) چگونه مي‌توانم PostgreSQL‌ را در شاخه‌اي غير از /usr/local/pgsql/ نصب كنم؟
-3.2) چرا موقعي كه من برنامه postmaster‌ را اجرا مي كنم پيام Bad system call‌ و
-يا core dump ‌مي‌گيرم؟
-3.3) چرا موقعي كه من سعي مي‌كنم برنامه postmaster‌ را اجرا كنم خطاي
-IpcMemoryCreate مي‌گيرم؟
-3.4) چرا موقعي كه من سعي مي‌كنم برنامه postmaster‌ را اجرا كنم خطاي
-IpcSemaphoreCreate مي‌گيرم؟
-3.5) چگونه مي‌توانم اتصالات ساير ماشينها را كنترل كنم؟
-3.6) براي كارايي بالاتر و بهتر پايگاه داده من چه تنظيماتي را بايد انجام دهم؟
-3.7) چه امكاناتي براي پيدا كردن اشكال‌ وجود دارد؟
-3.8) چرا موقعي كه من مي‌خواهم به پايگاه داده وصل شوم پيام "Sorry, too many
-clients" ‌مي‌گيرم؟
-3.9) در شاخه pgsql_tmp چه چيزي قرار دارد؟
-3.10) چرا براي به روز كردن نسخه پايگاه داده من بايد كل داده ها را dump‌ و مجدداً
-restore كنم؟
-3.11) از چه سخت افزاري بايد استفاده كنم؟
-
-سوالات عملياتي
-4.1) تفاوت بين binary cursors و Normal cursors چيست؟
-4.2) من چگونه مي‌توانم فقط روي چند رديف اول يا يك رديف تصادفي درخواست SELECT‌
-بزنم؟
-4.3) من چگونه مي‌توانم ليستي از جداول يا ساير چيزهايي كه در psql‌ وجود دارد را
-ببينم؟
-4.4) چگونه يك ستون جدول را حذف مي‌كنيد؟ چگونه نوع داده آن را عوض كنيم؟
-4.5) حداكثر اندازه يك رديف،‌ جدول و خود پايگاه داده چقدر است؟
-4.6) چقدر فضاي ديسك سخت براي ذخيره كردن داده‌‌هاي يك فايل متني مورد نياز است؟
-4.7) چگونه مي‌توانم بفهمم كه چه كاربران،‌ پايگاه داده،‌ نمايه و جداولي در سيستم
-تعريف شده است؟
-4.8) چرا درخواستهاي من كند اجرا مي‌شوند يا چرا از نمايه ها استفاده نمي‌كنند؟
-4.9) چگونه مي‌توانم نحوه بررسي درخواست را توسط بهينه‌ساز درخواستها مشاهده كنم؟
-4.10) نمايه R-tree‌ چيست؟
-4.11) بهينه ساز تكويني درخواست چيست؟ (Genetic Query Optimizer)
-4.12) چگونه از عبارات منظم براي جستجو استفاده كنم؟ چگونه جستجويي انجام دهم كه
-حساس به متن نباشد؟ چگونه براي يك جستجوي غير حساس به متن از نمايه استفاده كنم؟
-4.13) چگونه مي‌توانم در يك درخواست تشخيص دهم كه يك فيلد NULL‌ است؟
-4.14) تفاوت بين گونه‌هاي مختلف character چيست؟
-4.15.1) چگونه مي‌توانم يك فيلد سريال يا افزايشي ايجاد كنم؟
-4.15.2) چگونه مي‌توانم مقدار يك درج سريالي را بدانم؟
-4.15.3) آیا توابع ()nextval و ()currval منجر به ایجاد شرایط race برای سایر
-کاربران می شوند؟
-4.15.4) چرا اعداد سریالی مربوط به تراکنشهای abort شده مجدداً استفاده نمی شود؟
-چرا بین اعداد سریالی یک فاصله خالی ایجاد می شود؟
-4.16) OID و TID چه هستند؟
-4.17) معني بعضي از ترمها و كلماتي كه در PostgreSQL‌ استفاده مي‌شود چيست؟
-4.18) چرا من خطاي "ERROR: Memory exhausted in AllocSetAlloc" مي‌گيرم؟
-4.19) از كجا تشخيص دهم كه ويرايش يا نسخه PostgreSQLيي كه من استفاده مي‌كنم چيست؟
-4.20) چرا در حین اجرای عملیات روی large-objectها خطای "invalid large obj
-descriptor"به وجود می آید؟
-4.21) چگونه يك ستون ايجاد كنم كه مقدار زمان جاري را به عنوان مقدار پيش‌فرض داشته
-باشد؟
-4.22) چرا زير درخواستهايي كه از IN استفاده مي‌كنند كند هستند؟
-4.23) چگونه مي‌توانم يك الحاق خارجي (outer join) انجام دهم؟
-4.24) چگونه مي‌توان درخواستهايي از چند پايگاه داده توليد كرد؟
-4.25) چگونه خروجي يك تابع مي‌تواند چند رديف يا ستون باشد؟
-4.26) در توابع PL/PgSQL چرا نمي‌توان با اطمينان جداول موقت را ايجاد يا حذف كرد؟
-4.27) چه گزينه‌هايي براي تكرار (replication) وجود دارد؟
-4.28) چه گزينه‌هايي براي رمزنگاري وجود دارد؟
-
-توسعه PostgreSQL
-5.1) من يك تابع نوشته‌ام. چگونه آن را در psql اجرا كنم؟ چرا با اجراي آن core
-dump مي‌گيرم؟
-5.2) چگونه مي‌توانم در توليد نوع‌ها و توابع جديد و جالب براي PostgreSQL‌ همكاري
-و مشاركت داشته باشم.
-5.3) چگونه مي‌توانم يك تابع به زبان C بنويسم كه خروجي آن يك ‌tuple (چند تايي)
-باشد؟
-5.4) من يك فايل منبع را عوض كرده ام چرا در عمليات كامپيل مجدد آن تغيير ديده
-نمي‌شود؟
-
-
-
-
-سوالات عمومي
-1.1) PostgreSQL چيست و چگونه آن را بايد تلفظ كرد؟
-PostgreSQL به صورت Post-Gres-Q-L‌ تلفظ مي‌شود. يك فايل صوتي در آدرس
-http://www.postfresql.org/postgresql.mp3‌ براي كساني كه مايلند تلفظ صحيح را
-بشنوند وجود دارد.
-PostgreSQL از روي سيستم مديريت پايگاه داده POSTGRES توسعه داده شده است (هنوز هم
-بعضي مواقع براي سادگي به آن Postgres گفته مي‌شود) كه يك نمونه تحقيقاتي از پايگاه
-داده‌هاي نسل بعد است. PostgreSQL همان الگوي داده قوي و انواع داده را حفظ كرده
-است ولي زبان PostQuel را با يك زيرمجموعه پيشرفته از SQL جايگزين كرده است.
-PostgreSQL متن باز بوده و متن كامل آن در دسترس است.
-PostgreSQL توسط يك تيم برنامه‌نويس كه همگي در گروه پست الكترونيك برنامه‌نويسان
-PostgreSQL عضو هستند، انجام مي‌شود. هماهنگ كننده اصلي در حال حاضر Marc G.
-Fournier‌ به آدرس [email protected] مي‌باشد. (براي ديدن نحوه ملحق شدن به
-اين تيم قسمت 1.6 را ببينيد). اين تيم در حاضر مسئوليت تمام مسائل مربوط به
-برنامه‌نويسي PostgreSQL را بر عهده دارد. اين يك پروژه گروهي است و تحت كنترل هيچ
-شركتي نيست. براي اطلاعات بيشتر در مورد اين تيم به آدرس
-http://www.PostgreSQL.org/docs/faqs/FAQ_DEV.html مراجعه كنيد.
-اولين نسخه PostgreSQL‌ توسط Andrew Yu and Jolly Chen به وجود آمد. افراد بسياري
-در توسعه و رفع اشكال و انتقال آن شركت كرده‌اند. متن اصلي Postgres كه PostgreSQL
-از روي آن نوشته شده است، توسط تعداد زيادي دانشجوي كارشناسي ارشدو دانشجوي
-كارشناسي و تيم برنامه‌نويسي كه تحت نظر پروفسور Michael Stonebrake در دانشگاه
-بركلي،‌كاليفرنيا كار مي‌كرده‌اند نوشته شده است.
-نام اصلي نرم افزار در دانشگاه بركلي Postgres‌ بود. در سال 1995 بعد از اضافه شدن
-SQL نام آن به Postgres95 تغيير داده شد. در سال 1996 نام آن به PostgreSQL تغيير
-داده شد.
-1.2) قوانين كپي رايت در مورد PostgreSQL به چه صورت است؟
-PostgreSQL تحت قانون كپي رايت زير قرار دارد:
-PostgreSQL Data Base Management System
-Portions copyright (c) 1996-2004, 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.
-قانون بالا ليسانس BSD كه يك ليسانس كلاسيك براي متن‌هاي باز است مي‌باشد. هيچ
-محدوديتي در مورد نحوه استفاده از متن در آن ديده نمي‌شود. ما آن را دوست داريم و
-هيچ قصدي براي تغيير آن نداريم.
-1.3) PostgreSQL‌ روي چه نوع يونيكسهايي اجرا مي‌شود؟
-در حالت كلي PostgreSQL روي هر پلتفرم (سكوي) سازگار با يونيكس اجرا مي‌شود. ليست
-پلتفرمهايي كه تاكنون PostgreSQL‌ روي آنها نصب و تست شده است درقسمت دستورالعملهاي
-نصب آمده است.
-1.4) روي چه محيطهاي غير يونيكسي مي‌توان آن را اجرا كرد؟
-Client
-مي‌توان psql, كتابخانه libpq و ساير واسطها و برنامه‌هاي كاربردي را طوري كامپيل
-كرد كه روي محيطهاي ويندوز نيز اجرا شوند. در اين حالت Client روي ويندوز اجرا
-مي‌شود و از طربق شبكه و پروتكل TCP/IP با يك سرور كه روي يك پلتفرم لينوكس در حال
-اجراست ارتباط برقرار مي‌كند.يك فايل win32.mak همراه با كدهاي PostgreSQL وجود
-دارد كه براي كامپيل كردن كتابخانه libpq و برنامه psql مي‌باشد. P‌ostgreSQL‌
-همچنين امكان ارتباط به صورت ODBC‌ را نيز دارد.
-Server
-با استفاده از Cygwin‌ و كتابخانه Cygnus مي‌توان پايگاه داده را روي ويندوز NT و
-يا Win2K اجرا كرد.براي ديدن اطلاعات بيشتر فايل pgsql/doc/FAQ_MSWIN ‌را كه بهمراه
-توزبع‌هاي PostgreSQL آمده است ببينيد و يا اينكه به اين صفحه
-http://www.PostgreSQL.org/docs/faqs/text/FAQ_MSWIN مراجعه كنيد.
-در حال حاضر يك عمليات انتقال PostgreSQL به روي سكوهاي Win NT/2000/XP در جريان
-است. براي ديدن وضعيت اين پروژه به سايت‌هاي
-http://momjian.postgresql.org/main/writings/pgsql/win32.htm و
-http://techdocs.postgresql.org/guides/Windows مراجعه كنيد.
-همچنين يك عمليات انتقال بر روي Novell Netware 6 نيز در حال انجام است كه در سايت
-http://forge.novell.com مي‌توانيد اطلاعات بيشتر را ببينيد.
-1.5) PostgreSQL را از كجا مي‌توانم بگيرم؟
-PostgreSQL‌ را از سايت اصلي آن ftp://ftp.PostgreSQL.org/pub مي‌توانيد بگيريد.
-در صفحه اصلي سايت ليست ساير آدرسهايي كه مي‌توانيد PostgreSQL‌ را از آنها بگيريد
-آمده است.
-1.6) از كجا خدمات پشتيباني بگيرم؟
-گروه پستي اصلي [email protected] مي‌باشد. اين گروه براي بحث در مورد
-موضوعات مختلف در زمينه PostgreSQL است. براي عضو شدن در اين گروه پستي يك نامه
-الكترونيكي به آدرس گروه با محتوياتی كه در ادامه آمده است ارسال كنيد. در قسمت
-Subject چيزي ننويسيد.
+s+w+a+l+a+t+y+ k+h+ a+i+l+b+ d+r+ m+w+r+d+ PostgreSQL p+r+s+y+d+h+ m+y+ snw+n+d +
+
+ t+a+r+y+x+ aMx+r+y+n+ a+c+l+a+hk a+y+n+ f+a+y+l+: 28 snh+r+یw+r+
+ 1383 h+g+r+ی snm+s+ی
+
+ n+gfh+d+a+r+n+d+h+ a+c+l+y+ f+a+y+l+ (z+b+a+n+ a+n+gfl+y+s+y+)d+r+
+ hka+l+ hka+ddr+ : Bruce Momjian [email protected]
+
+ n+gfh+d+a+r+n+d+h+ f+a+y+l+ b+h+ z+b+a+n+ f+a+r+s+y+:
+ [email protected] m+hkm+w+d+ t+q+y+z+a+d+h+
+ m+h+r+g+r+d+ی
+
+ aMx+r+y+n+ n+s+x+h+ a+y+n+ f+a+y+l+ r+a+ m+y+t+w+a+n+y+d+ a+z+ a+y+n+
+ aMd+r+s+ b+gfy+r+y+d+ http://www.PostgreSQL.org/docs/faqs/FAQ.html
+
+ s+w+a+l+a+t+y+ k+h+ d+r+ m+w+r+d+ y+k+
+ s+کw+ی(p+l+t+f+r+m+) x+a+c+ a+s+t+ d+r+ a+y+n+ aMd+r+s+
+ g+w+a+b+ d+a+d+h+ snd+h+ a+n+d+
+ http://www.PostgreSQL.org/docs/index.html
+ _________________________________________________________________
+
+ s+w+a+l+a+t+ e+m+w+m+y+
+
+ 1.1) PostgreSQL tcy+s+t+ w+ tcgfw+n+h+ b+a+y+d+ aMn+ r+a+ t+l+f+zH
+ k+r+d+?+
+ 1.2) q+a+n+w+n+ k+p+y+ r+a+y+t+ (hkq+w+q+ m+e+n+w+y+) d+r+ m+w+r+d+
+ PostgreSQL b+h+ tch+ c+w+r+t+ a+s+t+?+
+ 1.3) PostgreSQL r+w+y+ tch+ n+w+e+ y+w+n+y+k+s+h+a+y+y+ a+g+r+a+ m+y+
+ snw+d+?+
+ 1.4) r+w+y+ tch+ m+hky+tjh+a+y+ i+y+r+ y+w+n+y+k+s+y+ m+y+t+w+a+n+
+ aMn+ r+a+ a+g+r+a+ k+r+d+?+
+ 1.5) PostgreSQL r+a+ a+z+ k+g+a+ m+y+t+w+a+n+m+ b+gfy+r+m+?+
+ 1.6) a+z+ k+g+a+ x+d+m+a+t+ p+snt+y+b+a+n+y+ b+gfy+r+m+?+
+ 1.7) aMx+r+y+n+ n+s+x+h+ a+e+l+a+m+ snd+h+ tcy+s+t+?+
+ 1.8) tch+ m+s+t+n+d+a+t+ w+ r+a+h+n+m+a+yHy+h+a+y+y+ w+g+w+d+
+ d+a+r+n+d+?+
+ 1.9) tcgfw+n+h+ m+y+t+w+a+n+m+ a+z+a+snk+a+l+a+t+ snn+a+x+t+h+ snd+h+
+ w+ y+a+ a+m+k+a+n+a+t+y+ k+h+ d+r+ a+y+n+ p+a+y+gfa+h+ d+a+d+h+
+ w+g+w+d+ n+d+a+r+d+ m+tjl+e+ snw+m+?+
+ 1.10) tcgfw+n+h+ m+y+t+w+a+n+m+ z+b+a+n+ SQL r+a+ y+a+d+ b+gfy+r+m+?+
+ 1.11) aMy+a+ PostgreSQL m+snk+l+ Y2K d+a+r+d+ y+a+ x+y+r+?+
+ 1.12) tcgfw+n+h+ m+y+t+w+a+n+m+ b+h+ t+y+m+ b+r+n+a+m+h+ n+w+y+s+
+ PostgreSQL m+l+hkq+ snw+m+?+
+ 1.13) tcgfw+n+h+ m+y+t+w+a+n+m+ y+k+ a+snk+a+l+ r+a+ b+h+ gfr+w+h+
+ b+r+n+a+m+h+ n+w+y+s+ a+e+l+a+m+ k+n+m+?+
+ 1.14) w+dde+y+t+ PostgreSQL d+r+ m+q+a+y+s+h+ b+a+ s+a+y+r+ DBMSh+a+
+ b+h+ tch+ c+w+r+t+ a+s+t+?+
+ 1.15) m+n+ tcgfw+n+h+ m+y+t+w+a+n+m+ a+z+ n+zHr+ m+a+l+y+ b+h+
+ PostgreSQL k+m+k+ k+n+m+?+
+
+ s+w+a+l+a+t+ m+r+b+w+tj b+h+ a+s+t+f+a+d+h+ a+z+ p+a+y+gfa+h+ d+a+d+h+
+
+ 2.1) aMy+a+ h+y+tc d+r+a+y+w+r+ ODBC b+r+a+y+ PostgreSQL w+g+w+d+
+ d+a+r+d+?+
+ 2.2) tch+ a+b+z+a+r+h+a+y+y+ b+r+a+y+ a+s+t+f+a+d+h+ a+z+ PostgreSQL
+ b+a+ c+f+hka+t+ w+b+ w+g+w+d+ d+a+r+d+?+
+ 2.3) aMy+a+ PostgreSQL y+k+ w+a+s+tj k+a+r+b+r+y+ gfr+a+f+y+k+y+
+ d+a+r+d+?+
+ 2.4) b+a+ tch+ z+b+a+n+h+a+y+ b+r+n+a+m+h+n+w+y+s+y+ m+y+t+w+a+n+ b+a+
+ PostgreSQL a+r+t+b+a+tj b+r+q+r+a+r+ k+r+d+?+
+
+ s+w+a+l+a+t+ m+r+b+w+tj b+h+ r+a+h+b+r+y+
+
+ 3.1) tcgfw+n+h+ m+y+t+w+a+n+m+ PostgreSQL r+a+ d+r+ sna+x+h+a+y+
+ i+y+r+ a+z+ /usr/local/pgsql/ n+c+b+ k+n+m+?+
+ 3.2) tcr+a+ m+w+q+e+y+ k+h+ m+n+ b+r+n+a+m+h+ postmaster r+a+ a+g+r+a+
+ m+y+ k+n+m+ p+y+a+m+ Bad system call w+ y+a+ core dump m+y+gfy+r+m+?+
+ 3.3) tcr+a+ m+w+q+e+y+ k+h+ m+n+ s+e+y+ m+y+k+n+m+ b+r+n+a+m+h+
+ postmaster r+a+ a+g+r+a+ k+n+m+ x+tja+y+ IpcMemoryCreate m+y+
+ gfy+r+m+?+
+ 3.4) tcr+a+ m+w+q+e+y+ k+h+ m+n+ s+e+y+ m+y+k+n+m+ b+r+n+a+m+h+
+ postmaster r+a+ a+g+r+a+ k+n+m+ x+tja+y+ IpcSemaphoreCreate m+y+
+ gfy+r+m+?+
+ 3.5) tcgfw+n+h+ m+y+t+w+a+n+m+ a+t+c+a+l+a+t+ s+a+y+r+ m+a+sny+n+h+a+
+ r+a+ k+n+t+r+l+ k+n+m+?+
+ 3.6) b+r+a+y+ k+a+r+a+y+y+ b+a+l+a+t+r+ w+ b+h+t+r+ p+a+y+gfa+h+
+ d+a+d+h+ m+n+ tch+ t+n+zHy+m+a+t+y+ r+a+ b+a+y+d+ a+n+g+a+m+ d+h+m+?+
+ 3.7) tch+ a+m+k+a+n+a+t+y+ b+r+a+y+ p+y+d+a+ k+r+d+n+ a+snk+a+l+
+ w+g+w+d+ d+a+r+d+?+
+ 3.8) tcr+a+ m+w+q+e+y+ k+h+ m+n+ m+y+x+w+a+h+m+ b+h+ p+a+y+gfa+h+
+ d+a+d+h+ w+c+l+ snw+m+ p+y+a+m+ "Sorry, too many clients" m+y+
+ gfy+r+m+?+
+ 3.9) d+r+ sna+x+h+ pgsql_tmp tch+ tcy+z+y+ q+r+a+r+ d+a+r+d+?+
+ 3.10) tcr+a+ b+r+a+y+ b+h+ r+w+z+ k+r+d+n+ n+s+x+h+ p+a+y+gfa+h+
+ d+a+d+h+ m+n+ b+a+y+d+ k+l+ d+a+d+h+ h+a+ r+a+ dump w+ m+g+d+d+a+:+
+ restore k+n+m+?+
+ 3.11) a+z+ tch+ s+x+t+ a+f+z+a+r+y+ b+a+y+d+ a+s+t+f+a+d+h+ k+n+m+?+
+
+ s+w+a+l+a+t+ e+m+l+y+a+t+y+
+
+ 4.1) t+f+a+w+t+ b+y+n+ binary cursors w+ Normal cursors tcy+s+t+?+
+ 4.2) m+n+ tcgfw+n+h+ m+y+t+w+a+n+m+ f+q+tj r+w+y+ tcn+d+ r+d+y+f+
+ a+w+l+ y+a+ y+k+ r+d+y+f+ t+c+a+d+f+y+ d+r+x+w+a+s+t+ SELECT
+ b+z+n+m+?+
+ 4.3) m+n+ tcgfw+n+h+ m+y+t+w+a+n+m+ l+y+s+t+y+ a+z+ g+d+a+w+l+ y+a+
+ s+a+y+r+ tcy+z+h+a+y+y+ k+h+ d+r+ psql w+g+w+d+ d+a+r+d+ r+a+
+ b+b+y+n+m+?+
+ 4.4) tcgfw+n+h+ y+k+ s+t+w+n+ g+d+w+l+ r+a+ hkdkf+ m+y+k+n+y+d+?+
+ tcgfw+n+h+ n+w+e+ d+a+d+h+ aMn+ r+a+ e+w+dd k+n+y+m+?+
+ 4.5) hkd+a+k+tkr+ a+n+d+a+z+h+ y+k+ r+d+y+f+,+ g+d+w+l+ w+ x+w+d+
+ p+a+y+gfa+h+ d+a+d+h+ tcq+d+r+ a+s+t+?+
+ 4.6) tcq+d+r+ f+dda+y+ d+y+s+k+ s+x+t+ b+r+a+y+ dkx+y+r+h+ k+r+d+n+
+ d+a+d+h+h+a+y+ y+k+ f+a+y+l+ m+t+n+y+ m+w+r+d+ n+y+a+z+ a+s+t+?+
+ 4.7) tcgfw+n+h+ m+y+t+w+a+n+m+ b+f+h+m+m+ k+h+ tch+ k+a+r+b+r+a+n+,+
+ p+a+y+gfa+h+ d+a+d+h+,+ n+m+a+y+h+ w+ g+d+a+w+l+y+ d+r+ s+y+s+t+m+
+ t+e+r+y+f+ snd+h+ a+s+t+?+
+ 4.8) tcr+a+ d+r+x+w+a+s+t+h+a+y+ m+n+ k+n+d+ a+g+r+a+ m+y+snw+n+d+
+ y+a+ tcr+a+ a+z+ n+m+a+y+h+ h+a+ a+s+t+f+a+d+h+ n+m+y+k+n+n+d+?+
+ 4.9) tcgfw+n+h+ m+y+t+w+a+n+m+ n+hkw+h+ b+r+r+s+y+ d+r+x+w+a+s+t+ r+a+
+ t+w+s+tj b+h+y+n+h+s+a+z+ d+r+x+w+a+s+t+h+a+ m+sna+h+d+h+ k+n+m+?+
+ 4.10) n+m+a+y+h+ R-tree tcy+s+t+?+
+ 4.11) b+h+y+n+h+ s+a+z+ t+k+w+y+n+y+ d+r+x+w+a+s+t+ tcy+s+t+?+
+ (Genetic Query Optimizer)
+ 4.12) tcgfw+n+h+ a+z+ e+b+a+r+a+t+ m+n+zHm+ b+r+a+y+ g+s+t+g+w+
+ a+s+t+f+a+d+h+ k+n+m+?+ tcgfw+n+h+ g+s+t+g+w+y+y+ a+n+g+a+m+ d+h+m+
+ k+h+ hks+a+s+ b+h+ m+t+n+ n+b+a+snd+?+ tcgfw+n+h+ b+r+a+y+ y+k+
+ g+s+t+g+w+y+ i+y+r+ hks+a+s+ b+h+ m+t+n+ a+z+ n+m+a+y+h+
+ a+s+t+f+a+d+h+ k+n+m+?+
+ 4.13) tcgfw+n+h+ m+y+t+w+a+n+m+ d+r+ y+k+ d+r+x+w+a+s+t+ t+snx+y+c+
+ d+h+m+ k+h+ y+k+ f+y+l+d+ NULL a+s+t+?+
+ 4.14) t+f+a+w+t+ b+y+n+ gfw+n+h+h+a+y+ m+x+t+l+f+ character tcy+s+t+?+
+ 4.15.1) tcgfw+n+h+ m+y+t+w+a+n+m+ y+k+ f+y+l+d+ s+r+y+a+l+ y+a+
+ a+f+z+a+y+sny+ a+y+g+a+d+ k+n+m+?+
+ 4.15.2) tcgfw+n+h+ m+y+t+w+a+n+m+ m+q+d+a+r+ y+k+ d+r+g+ s+r+y+a+l+y+
+ r+a+ b+d+a+n+m+?+
+ 4.15.3) aMیa+ t+w+a+b+e+ ()nextval w+ ()currval m+n+g+r+ b+h+
+ a+یg+a+d+ snr+a+یtj race b+r+a+ی s+a+یr+
+ کa+r+b+r+a+n+ m+ی snw+n+d+?+
+ 4.15.4) tcr+a+ a+e+d+a+d+ s+r+یa+l+ی m+r+b+w+tj b+h+
+ t+r+a+کn+snh+a+ی abort snd+h+ m+g+d+d+a+:+ a+s+t+f+a+d+h+
+ n+m+ی snw+d+?+ tcr+a+ b+یn+ a+e+d+a+d+
+ s+r+یa+l+ی یک f+a+c+l+h+ x+a+l+ی
+ a+یg+a+d+ m+ی snw+d+?+
+ 4.16) OID w+ TID tch+ h+s+t+n+d+?+
+ 4.17) m+e+n+y+ b+e+ddy+ a+z+ t+r+m+h+a+ w+ k+l+m+a+t+y+ k+h+ d+r+
+ PostgreSQL a+s+t+f+a+d+h+ m+y+snw+d+ tcy+s+t+?+
+ 4.18) tcr+a+ m+n+ x+tja+y+ "ERROR: Memory exhausted in AllocSetAlloc"
+ m+y+gfy+r+m+?+
+ 4.19) a+z+ k+g+a+ t+snx+y+c+ d+h+m+ k+h+ w+y+r+a+y+sn y+a+ n+s+x+h+
+ PostgreSQLy+y+ k+h+ m+n+ a+s+t+f+a+d+h+ m+y+k+n+m+ tcy+s+t+?+
+ 4.20) tcr+a+ d+r+ hkیn+ a+g+r+a+ی e+m+l+یa+t+
+ r+w+ی large-objecth+a+ x+tja+ی "invalid large obj
+ descriptor"b+h+ w+g+w+d+ m+ی aMیd+?+
+ 4.21) tcgfw+n+h+ y+k+ s+t+w+n+ a+y+g+a+d+ k+n+m+ k+h+ m+q+d+a+r+
+ z+m+a+n+ g+a+r+y+ r+a+ b+h+ e+n+w+a+n+ m+q+d+a+r+ p+y+snf+r+dd
+ d+a+snt+h+ b+a+snd+?+
+ 4.22) tcr+a+ z+y+r+ d+r+x+w+a+s+t+h+a+y+y+ k+h+ a+z+ IN a+s+t+f+a+d+h+
+ m+y+k+n+n+d+ k+n+d+ h+s+t+n+d+?+
+ 4.23) tcgfw+n+h+ m+y+t+w+a+n+m+ y+k+ a+l+hka+q+ x+a+r+g+y+ (outer
+ join) a+n+g+a+m+ d+h+m+?+
+ 4.24) tcgfw+n+h+ m+y+t+w+a+n+ d+r+x+w+a+s+t+h+a+y+y+ a+z+ tcn+d+
+ p+a+y+gfa+h+ d+a+d+h+ t+w+l+y+d+ k+r+d+?+
+ 4.25) tcgfw+n+h+ x+r+w+g+y+ y+k+ t+a+b+e+ m+y+t+w+a+n+d+ tcn+d+
+ r+d+y+f+ y+a+ s+t+w+n+ b+a+snd+?+
+ 4.26) d+r+ t+w+a+b+e+ PL/PgSQL tcr+a+ n+m+y+t+w+a+n+ b+a+
+ a+tjm+y+n+a+n+ g+d+a+w+l+ m+w+q+t+ r+a+ a+y+g+a+d+ y+a+ hkdkf+
+ k+r+d+?+
+ 4.27) tch+ gfz+y+n+h+h+a+y+y+ b+r+a+y+ t+k+r+a+r+ (replication)
+ w+g+w+d+ d+a+r+d+?+
+ 4.28) tch+ gfz+y+n+h+h+a+y+y+ b+r+a+y+ r+m+z+n+gfa+r+y+ w+g+w+d+
+ d+a+r+d+?+
+
+ t+w+s+e+h+ PostgreSQL
+
+ 5.1) m+n+ y+k+ t+a+b+e+ n+w+snt+h+a+m+. tcgfw+n+h+ aMn+ r+a+ d+r+ psql
+ a+g+r+a+ k+n+m+?+ tcr+a+ b+a+ a+g+r+a+y+ aMn+ core dump m+y+gfy+r+m+?+
+ 5.2) tcgfw+n+h+ m+y+t+w+a+n+m+ d+r+ t+w+l+y+d+ n+w+e+h+a+ w+
+ t+w+a+b+e+ g+d+y+d+ w+ g+a+l+b+ b+r+a+y+ PostgreSQL h+m+k+a+r+y+ w+
+ m+sna+r+k+t+ d+a+snt+h+ b+a+snm+.
+ 5.3) tcgfw+n+h+ m+y+t+w+a+n+m+ y+k+ t+a+b+e+ b+h+ z+b+a+n+ C
+ b+n+w+y+s+m+ k+h+ x+r+w+g+y+ aMn+ y+k+ tuple (tcn+d+ t+a+y+y+)
+ b+a+snd+?+
+ 5.4) m+n+ y+k+ f+a+y+l+ m+n+b+e+ r+a+ e+w+dd k+r+d+h+ a+m+ tcr+a+ d+r+
+ e+m+l+y+a+t+ k+a+m+p+y+l+ m+g+d+d+ aMn+ t+i+y+y+r+ d+y+d+h+ n+m+y+
+ snw+d+?+
+ _________________________________________________________________
+
+ s+w+a+l+a+t+ e+m+w+m+y+
+
+ 1.1) PostgreSQL tcy+s+t+ w+ tcgfw+n+h+ aMn+ r+a+ b+a+y+d+ t+l+f+zH k+r+d+?+
+
+ PostgreSQL b+h+ c+w+r+t+ Post-Gres-Q-L t+l+f+zH m+y+snw+d+. y+k+
+ f+a+y+l+ c+w+t+y+ d+r+ aMd+r+s+
+ http://www.postfresql.org/postgresql.mp3 b+r+a+y+ k+s+a+n+y+ k+h+
+ m+a+y+l+n+d+ t+l+f+zH c+hky+hk r+a+ b+snn+w+n+d+ w+g+w+d+ d+a+r+d+.
+
+ PostgreSQL a+z+ r+w+y+ s+y+s+t+m+ m+d+y+r+y+t+ p+a+y+gfa+h+ d+a+d+h+
+ POSTGRES t+w+s+e+h+ d+a+d+h+ snd+h+ a+s+t+ (h+n+w+z+ h+m+ b+e+ddy+
+ m+w+a+q+e+ b+r+a+y+ s+a+d+gfy+ b+h+ aMn+ Postgres gff+t+h+ m+y+snw+d+)
+ k+h+ y+k+ n+m+w+n+h+ t+hkq+y+q+a+t+y+ a+z+ p+a+y+gfa+h+ d+a+d+h+h+a+y+
+ n+s+l+ b+e+d+ a+s+t+. PostgreSQL h+m+a+n+ a+l+gfw+y+ d+a+d+h+ q+w+y+
+ w+ a+n+w+a+e+ d+a+d+h+ r+a+ hkf+zH k+r+d+h+ a+s+t+ w+l+y+ z+b+a+n+
+ PostQuel r+a+ b+a+ y+k+ z+y+r+m+g+m+w+e+h+ p+y+snr+f+t+h+ a+z+ SQL
+ g+a+y+gfz+y+n+ k+r+d+h+ a+s+t+. PostgreSQL m+t+n+ b+a+z+ b+w+d+h+ w+
+ m+t+n+ k+a+m+l+ aMn+ d+r+ d+s+t+r+s+ a+s+t+.
+
+ PostgreSQL t+w+s+tj y+k+ t+y+m+ b+r+n+a+m+h+n+w+y+s+ k+h+ h+m+gfy+
+ d+r+ gfr+w+h+ p+s+t+ a+l+k+t+r+w+n+y+k+ b+r+n+a+m+h+n+w+y+s+a+n+
+ PostgreSQL e+ddw+ h+s+t+n+d+,+ a+n+g+a+m+ m+y+snw+d+. h+m+a+h+n+gf
+ k+n+n+d+h+ a+c+l+y+ d+r+ hka+l+ hka+ddr+ Marc G. Fournier b+h+
+ aMd+r+s+ [email protected] m+y+b+a+snd+. (b+r+a+y+ d+y+d+n+
+ n+hkw+h+ m+l+hkq+ snd+n+ b+h+ a+y+n+ t+y+m+ q+s+m+t+ 1.6 r+a+
+ b+b+y+n+y+d+). a+y+n+ t+y+m+ d+r+ hka+ddr+ m+s+yHw+l+y+t+ t+m+a+m+
+ m+s+a+yHl+ m+r+b+w+tj b+h+ b+r+n+a+m+h+n+w+y+s+y+ PostgreSQL r+a+ b+r+
+ e+h+d+h+ d+a+r+d+. a+y+n+ y+k+ p+r+w+zjh+ gfr+w+h+y+ a+s+t+ w+ t+hkt+
+ k+n+t+r+l+ h+y+tc snr+k+t+y+ n+y+s+t+. b+r+a+y+ a+tjl+a+e+a+t+
+ b+y+snt+r+ d+r+ m+w+r+d+ a+y+n+ t+y+m+ b+h+ aMd+r+s+
+ http://www.PostgreSQL.org/docs/faqs/FAQ_DEV.html m+r+a+g+e+h+
+ k+n+y+d+.
+
+ a+w+l+y+n+ n+s+x+h+ PostgreSQL t+w+s+tj Andrew Yu and Jolly Chen b+h+
+ w+g+w+d+ aMm+d+. a+f+r+a+d+ b+s+y+a+r+y+ d+r+ t+w+s+e+h+ w+ r+f+e+
+ a+snk+a+l+ w+ a+n+t+q+a+l+ aMn+ snr+k+t+ k+r+d+h+a+n+d+. m+t+n+
+ a+c+l+y+ Postgres k+h+ PostgreSQL a+z+ r+w+y+ aMn+ n+w+snt+h+ snd+h+
+ a+s+t+,+ t+w+s+tj t+e+d+a+d+ z+y+a+d+y+ d+a+n+sng+w+y+
+ k+a+r+snn+a+s+y+ a+r+snd+w+ d+a+n+sng+w+y+ k+a+r+snn+a+s+y+ w+ t+y+m+
+ b+r+n+a+m+h+n+w+y+s+y+ k+h+ t+hkt+ n+zHr+ p+r+w+f+s+w+r+ Michael
+ Stonebrake d+r+ d+a+n+sngfa+h+ b+r+k+l+y+,+k+a+l+y+f+r+n+y+a+ k+a+r+
+ m+y+k+r+d+h+a+n+d+ n+w+snt+h+ snd+h+ a+s+t+.
+
+ n+a+m+ a+c+l+y+ n+r+m+ a+f+z+a+r+ d+r+ d+a+n+sngfa+h+ b+r+k+l+y+
+ Postgres b+w+d+. d+r+ s+a+l+ 1995 b+e+d+ a+z+ a+dda+f+h+ snd+n+ SQL
+ n+a+m+ aMn+ b+h+ Postgres95 t+i+y+y+r+ d+a+d+h+ snd+. d+r+ s+a+l+ 1996
+ n+a+m+ aMn+ b+h+ PostgreSQL t+i+y+y+r+ d+a+d+h+ snd+.
+
+ 1.2) q+w+a+n+y+n+ k+p+y+ r+a+y+t+ d+r+ m+w+r+d+ PostgreSQL b+h+ tch+
+ c+w+r+t+ a+s+t+?+
+
+ PostgreSQL t+hkt+ q+a+n+w+n+ k+p+y+ r+a+y+t+ z+y+r+ q+r+a+r+ d+a+r+d+:
+
+ 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.
+
+ q+a+n+w+n+ b+a+l+a+ l+y+s+a+n+s+ BSD k+h+ y+k+ l+y+s+a+n+s+
+ k+l+a+s+y+k+ b+r+a+y+ m+t+n+h+a+y+ b+a+z+ a+s+t+ m+y+b+a+snd+. h+y+tc
+ m+hkd+w+d+y+t+y+ d+r+ m+w+r+d+ n+hkw+h+ a+s+t+f+a+d+h+ a+z+ m+t+n+
+ d+r+ aMn+ d+y+d+h+ n+m+y+snw+d+. m+a+ aMn+ r+a+ d+w+s+t+ d+a+r+y+m+ w+
+ h+y+tc q+c+d+y+ b+r+a+y+ t+i+y+y+r+ aMn+ n+d+a+r+y+m+.
+
+ 1.3) PostgreSQL r+w+y+ tch+ n+w+e+ y+w+n+y+k+s+h+a+y+y+ a+g+r+a+ m+y+
+ snw+d+?+
+
+ d+r+ hka+l+t+ k+l+y+ PostgreSQL r+w+y+ h+r+ p+l+t+f+r+m+ (s+k+w+y+)
+ s+a+z+gfa+r+ b+a+ y+w+n+y+k+s+ a+g+r+a+ m+y+snw+d+. l+y+s+t+
+ p+l+t+f+r+m+h+a+y+y+ k+h+ t+a+k+n+w+n+ PostgreSQL r+w+y+ aMn+h+a+
+ n+c+b+ w+ t+s+t+ snd+h+ a+s+t+ d+r+q+s+m+t+ d+s+t+w+r+a+l+e+m+l+h+a+y+
+ n+c+b+ aMm+d+h+ a+s+t+.
+
+ 1.4) r+w+y+ tch+ m+hky+tjh+a+y+ i+y+r+ y+w+n+y+k+s+y+ m+y+t+w+a+n+ aMn+
+ r+a+ a+g+r+a+ k+r+d+?+
+
+ Client
+
+ m+y+t+w+a+n+ psql, k+t+a+b+x+a+n+h+ libpq w+ s+a+y+r+ w+a+s+tjh+a+ w+
+ b+r+n+a+m+h+h+a+y+ k+a+r+b+r+d+y+ r+a+ tjw+r+y+ k+a+m+p+y+l+ k+r+d+
+ k+h+ r+w+y+ m+hky+tjh+a+y+ w+y+n+d+w+z+ n+y+z+ a+g+r+a+ snw+n+d+. d+r+
+ a+y+n+ hka+l+t+ Client r+w+y+ w+y+n+d+w+z+ a+g+r+a+ m+y+snw+d+ w+ a+z+
+ tjr+b+q+ snb+k+h+ w+ p+r+w+t+k+l+ TCP/IP b+a+ y+k+ s+r+w+r+ k+h+
+ r+w+y+ y+k+ p+l+t+f+r+m+ l+y+n+w+k+s+ d+r+ hka+l+ a+g+r+a+s+t+
+ a+r+t+b+a+tj b+r+q+r+a+r+ m+y+k+n+d+.y+k+ f+a+y+l+ win32.mak
+ h+m+r+a+h+ b+a+ k+d+h+a+y+ PostgreSQL w+g+w+d+ d+a+r+d+ k+h+ b+r+a+y+
+ k+a+m+p+y+l+ k+r+d+n+ k+t+a+b+x+a+n+h+ libpq w+ b+r+n+a+m+h+ psql m+y+
+ b+a+snd+. PostgreSQL h+m+tcn+y+n+ a+m+k+a+n+ a+r+t+b+a+tj b+h+
+ c+w+r+t+ ODBC r+a+ n+y+z+ d+a+r+d+.
+
+ Server
+
+ b+a+ a+s+t+f+a+d+h+ a+z+ Cygwin w+ k+t+a+b+x+a+n+h+ Cygnus m+y+
+ t+w+a+n+ p+a+y+gfa+h+ d+a+d+h+ r+a+ r+w+y+ w+y+n+d+w+z+ NT w+ y+a+
+ Win2K a+g+r+a+ k+r+d+.b+r+a+y+ d+y+d+n+ a+tjl+a+e+a+t+ b+y+snt+r+
+ f+a+y+l+ pgsql/doc/FAQ_MSWIN r+a+ k+h+ b+h+m+r+a+h+ t+w+z+b+e+h+a+y+
+ PostgreSQL aMm+d+h+ a+s+t+ b+b+y+n+y+d+ w+ y+a+ a+y+n+k+h+ b+h+ a+y+n+
+ c+f+hkh+ http://www.PostgreSQL.org/docs/faqs/text/FAQ_MSWIN
+ m+r+a+g+e+h+ k+n+y+d+.
+
+ d+r+ hka+l+ hka+ddr+ y+k+ e+m+l+y+a+t+ a+n+t+q+a+l+ PostgreSQL b+h+
+ r+w+y+ s+k+w+h+a+y+ Win NT/2000/XP d+r+ g+r+y+a+n+ a+s+t+. b+r+a+y+
+ d+y+d+n+ w+dde+y+t+ a+y+n+ p+r+w+zjh+ b+h+ s+a+y+t+h+a+y+
+ http://momjian.postgresql.org/main/writings/pgsql/win32.htm w+
+ http://techdocs.postgresql.org/guides/Windows m+r+a+g+e+h+ k+n+y+d+.
+
+ h+m+tcn+y+n+ y+k+ e+m+l+y+a+t+ a+n+t+q+a+l+ b+r+ r+w+y+ Novell Netware
+ 6 n+y+z+ d+r+ hka+l+ a+n+g+a+m+ a+s+t+ k+h+ d+r+ s+a+y+t+
+ http://forge.novell.com m+y+t+w+a+n+y+d+ a+tjl+a+e+a+t+ b+y+snt+r+
+ r+a+ b+b+y+n+y+d+.
+
+ 1.5) PostgreSQL r+a+ a+z+ k+g+a+ m+y+t+w+a+n+m+ b+gfy+r+m+?+
+
+ PostgreSQL r+a+ a+z+ s+a+y+t+ a+c+l+y+ aMn+
+ ftp://ftp.PostgreSQL.org/pub m+y+t+w+a+n+y+d+ b+gfy+r+y+d+. d+r+
+ c+f+hkh+ a+c+l+y+ s+a+y+t+ l+y+s+t+ s+a+y+r+ aMd+r+s+h+a+y+y+ k+h+
+ m+y+t+w+a+n+y+d+ PostgreSQL r+a+ a+z+ aMn+h+a+ b+gfy+r+y+d+ aMm+d+h+
+ a+s+t+.
+
+ 1.6) a+z+ k+g+a+ x+d+m+a+t+ p+snt+y+b+a+n+y+ b+gfy+r+m+?+
+
+ gfr+w+h+ p+s+t+y+ a+c+l+y+ [email protected] m+y+b+a+snd+.
+ a+y+n+ gfr+w+h+ b+r+a+y+ b+hktk d+r+ m+w+r+d+ m+w+ddw+e+a+t+
+ m+x+t+l+f+ d+r+ z+m+y+n+h+ PostgreSQL a+s+t+. b+r+a+y+ e+ddw+ snd+n+
+ d+r+ a+y+n+ gfr+w+h+ p+s+t+y+ y+k+ n+a+m+h+ a+l+k+t+r+w+n+y+k+y+ b+h+
+ aMd+r+s+ gfr+w+h+ b+a+ m+hkt+w+y+a+t+ی k+h+ d+r+ a+d+a+m+h+
+ aMm+d+h+ a+s+t+ a+r+s+a+l+ k+n+y+d+. d+r+ q+s+m+t+ Subject tcy+z+y+
+ n+n+w+y+s+y+d+.
+
subscribe
end
-آدرس گروه: [email protected]
-همچنين يك گروه پستي هم به صورت ارسال چكيده پيامها وجود دارد. براي عضو شدن در اين
-گروه يك نامه با محتويات زير به این آدرس ارسال كنيد.
+
+ aMd+r+s+ gfr+w+h+: [email protected]
+
+ h+m+tcn+y+n+ y+k+ gfr+w+h+ p+s+t+y+ h+m+ b+h+ c+w+r+t+ a+r+s+a+l+
+ tck+y+d+h+ p+y+a+m+h+a+ w+g+w+d+ d+a+r+d+. b+r+a+y+ e+ddw+ snd+n+ d+r+
+ a+y+n+ gfr+w+h+ y+k+ n+a+m+h+ b+a+ m+hkt+w+y+a+t+ z+y+r+ b+h+
+ a+یn+ aMd+r+s+ a+r+s+a+l+ k+n+y+d+.
+
subscribe
end
-در اين گروه هر موقع حجم نامه‌ها به 30 كيلوبايت رسيد براي تمام اعضاء ارسال
-مي‌شود.
-گروه پستي بررسي اِشكالات هم وجود دارد. براي عضو شدن در اين گروه يك نامه با
-محتويات زير به [email protected] ارسال كنيد.
+
+ d+r+ a+y+n+ gfr+w+h+ h+r+ m+w+q+e+ hkg+m+ n+a+m+h+h+a+ b+h+ 30
+ k+y+l+w+b+a+y+t+ r+s+y+d+ b+r+a+y+ t+m+a+m+ a+e+dda+H' a+r+s+a+l+ m+y+
+ snw+d+.
+
+ gfr+w+h+ p+s+t+y+ b+r+r+s+y+ a+1+snk+a+l+a+t+ h+m+ w+g+w+d+ d+a+r+d+.
+ b+r+a+y+ e+ddw+ snd+n+ d+r+ a+y+n+ gfr+w+h+ y+k+ n+a+m+h+ b+a+
+ m+hkt+w+y+a+t+ z+y+r+ b+h+ [email protected]
+ a+r+s+a+l+ k+n+y+d+.
+
subscribe
end
-گروه پستي مخصوص توسعه دهندگان (برنامه‌نويسان) نيز وجوددارد. براي عضويت در اين
-گروه يك نامه به آدرس زير با محتويات مشخص شده ارسال كنيد.
+
+ gfr+w+h+ p+s+t+y+ m+x+c+w+c+ t+w+s+e+h+ d+h+n+d+gfa+n+ (b+r+n+a+m+h+
+ n+w+y+s+a+n+) n+y+z+ w+g+w+d+d+a+r+d+. b+r+a+y+ e+ddw+y+t+ d+r+ a+y+n+
+ gfr+w+h+ y+k+ n+a+m+h+ b+h+ aMd+r+s+ z+y+r+ b+a+ m+hkt+w+y+a+t+
+ m+snx+c+ snd+h+ a+r+s+a+l+ k+n+y+d+.
+
subscribe
end
-گروههاي پستي ديگري نيز در زمينه PostgreSQL‌ وجود دارد كه مي‌توانيد در سايت
-http://www.postgresql.org ببينيد.
-همچنين يك كانال IRC روي Freenode و EFNet بنام PostgreSQL# وجود دارد. شما
-مي‌توانيد از فرمان يونيكسي irc -c '#PostgreSQL' "$USER" irc.phoenix.net. يا irc
--c '#PostgreSQL' "$USER" irc.freenode.net استفاده كنيد.
-ليست شركتهايي كه از طريق آنها مي‌توانيد خدمات پشتيباني تجاري در زمينه PostgreSQL
-دريافت كنيد در اين آدرس http://techdocs.postgresql.org/companies.php موجود است.
-1.7) آخرين نسخه اعلام شده چيست؟
-آخرين نسخه PostgreSQL‌ كه وجود دارد 7.4.3 است.
-هدف ما آن است كه هر 6 ماه تا 8 ماه يك نسخه جديد ارائه شود.
-1.8) چه مستندات و راهنمائيهايي وجود دارند؟
-چندين كتابچه و صفحات راهنما و مثالهاي كوچك همراه با متن اصلي PostgreSQL‌ در شاخه
-doc وجود دارد. براي ديدن صفحات راهنما مي‌توانيد به سايت
-http://www.PostgreSQL.org/docs نيز مراجعه نماييد.
-دو كتاب در زمينه PostgreSQL‌ در آدرس‌هاي
-http://www.PostgreSQL.org/docs/awbook.htm و http://www.commandprompt.com/ppbook
-وجود دارد. ليستي از كتابهايي كه قابل خريد است در آدرس
-http://techdocs.PostgreSQL.org/techdocs/bookreviews.php وجود دارد. همچنين ليستي
-از مقالات فني در مورد PostgreSQL در آدرس http://techdocs.PostgreSQL.org وجود
-دارد.
-برنامه psql يك دستور d\ دارد كه اطلاعاتي در مورد انواع داده‌هاي قابل تعريف و
-عملگر‌ها و توابع و ... به ما نشان مي‌دهد. در سايت اصلي ما اطلاعات بيشتري را
-مي‌توانيد پيدا كنيد.
-1.9) چگونه مي‌توانم ازاشكالات شناخته شده و يا امكاناتي كه در اين پايگاه داده
-وجود ندارد مطلع شوم؟
-PostgreSQL يك زير مجموعه پيشرفته از SQL-92 را پشتيباني مي‌كند. در ليست TODO
-اِشكالات شناخته شده يا امكاناتي كه وجود ندارد و يا برنامه‌‌هاي آينده آمده است.
-1.10) چگونه مي‌توانم زبان SQL را ياد بگيرم؟
-كتاب PostgreSQL در آدرس SQL http://www.PostgreSQL.org/docs/awbook.html ‌را آموزش
-مي‌دهد. همچنين يك كتاب در آدرس http://www.commandprompt.com/ppbook وجود دارد. يك
-راهنماي خيلي خوب هم در سايت‌هاي
-http://www.intermedia.net/support/sql/sqltut.shtm و
-http://ourworld.compuserve.com/homepages/graeme_birchall/HTM_COOK.HTM و
-http://sqlcourse.com در مورد SQL وجود دارد.
-كتاب ديگري كه مي‌توان براي يادگيري SQL از آن استفاده كرد كتاب "SQL را در 21 روز
-ياد بگيريد،‌ ويرايش دوم" در سايت http://members.tripod.com/er4ebus/sql/index.htm
-مي‌باشد.
-تعداد زيادي از كاربران كتاب The Practical SQL را ترجيح مي‌دهند. كتاب ديگر The
-Complete Refrence SQL انتشارات McGraw-Hill مي‌باشد.
-1.11) آيا PostgreSQL مشكل Y2K‌ دارد يا خير؟
-خير،‌PostgreSQL‌ با تاريخ‌هاي قبل و بعد از 2000 مشكلي ندارد.
-1.12) چگونه مي‌توانم به تيم برنامه نويس PostgreSQL ملحق شوم؟
-ابتدا،‌آخرين سورس را دونلود كرده و مستندات مربوط به برنامه‌نويسي PostgreSQL را
-در سايت مطالعه كنيد. سپس به گروههاي پستي ‌ pgsql-patches و pgsql-hackers عضو
-شويد. در مرحله آخر وصله‌هاي با كيفيت بالا را به pgsql-patches ارسال كنيد.
-تعداد زيادي از برنامه‌نويسان وجود دارند كه امتياز انجام تغييرات در cvs‌ را
-دارند. هر كدام از آنها تعداد زيادي وصله‌‌ با كيفيت بالا به گروه ارسال كرده‌اند
-كه اعتماد گردانندگان PostgreSQL را به دست آورده‌اند.
-1.13) چگونه مي‌توانم يك اِشكال را به گروه برنامه نويس اعلام كنم؟
-لطفاً صفحه مربوط به اِشكالات PostgreSQL را در سايت
-http://www.PostgreSQL.org/bugs/bugs.php مشاهده‌ كنيد. در اين سايت نحوه گزارش و
-ارسال يك اشكال توضيح داده شده است.
- همچنين براي ديدن نسخه‌هاي جديدتر PostgreSQL و يا وجود يك وصله جديد از سايت
-ftp://ftp.PostgreSQL.org/pub بازديد كنيد.
-1.14) وضعيت PostgreSQL‌ در مقايسه با ساير DBMSها به چه صورت است؟
-راههاي مختلفي براي اندازه‌گيري و مقايسه نرم‌افزارها وجود دارد كه عبارتند از
-امكانات، كارايي، قابليت اعتماد، پشتيباني و قيمت
- امكانات
- PostgreSQL بيشتر امكانات موجود در سيستم‌هاي پايگاه داده تجاري بزرگ نظير
- transactions, subselets, triggers, views, foreign key referential integrity
- و sophisticated locking‌ را دارد. در PostgreSQL‌‌ امكاناتي وجود دارد كه
- پايگاههاي داده ديگر آن را ندارند نظير user-defined types‌و Inheritance‌و
- rules‌و multi-version concurrency control
-
- كارايي
- كارايي PostgreSQL در حد بقيه سيستم‌هاي تجاري و متن باز است. در بعضي
- موارد سريعتر و در بعضي موارد از آنها كندتر است. در مقايسه با MySQL براي
- كاربران بيشتر و درخواست‌هاي پيچيده و بار زياد خواندن/نوشتن سريعتر است. در
- درخواست‌هاي ساده SELECT‌ از MySQL كندتر است. البته MySQL خيلي از امكانات
- PostgreSQL كه در بالا به آن اشاره شد را ندارد. هدف اصلي ما امكانات و قابليت
- اعتماد بالاست در ضمن آنكه تلاش مي‌كنيم تا كارايي آن نيز بهبود يابد. در آدرس
- http://openacs.org/philosophy/why-not-mysql.html يك مقايسه جالب بين MySQL و
- PostgreSQL وجود دارد. از طرف ديگر MySQL‌ يك شركت است كه محصول خود را به صورت
- متن باز ارائه مي‌كند ولي براي نرم‌افزار غير متن باز خود احتياج به ليسانس تجاري
- دارد بر خلاف PostgreSQL كه يك گروه كاملاً متن باز هستند.
-
- قابليت اطمينان
- ما فكر مي‌كنيم كه يك سيستم پايگاه داده‌اي كه مطمئن نباشد ارزشي ندارد. ما
- تمام تلاشمان را براي ارائه كدهاي پايداري كه به خوبي تست شده باشند و كمترين
- اِشكالات را داشته باشند مي‌كنيم. هر نسخه جديدي كه ارائه مي‌شود حداقل يك ماه
- را در مرحله تست بتا مي‌گذراند. ما بر اين باور هستيم كه قابليت اطمينان
- PostgreSQL‌ در مقايسه با ساير سيستم‌هاي پايگاه داده قابل توجه است و
- نسخه‌هايي كه تاكنون ارائه شده است نشان مي‌دهد كه ما توانايي ارائه يك سيستم
- قوي و محكم و مطمئن را كه آماده بهره‌برداري است داريم.
- پشتيباني
- گروههاي پستي ما امكان ارتباط و تماس به گروه بزرگي از برنامه نويسان و كاربران
- را مي‌دهد كه مي‌توانند در حل مشكلات به ديگران كمك كنند. دسترسي مستقيم به
- برنامه‌نويسان و گروههاي كاربران و راهنماها و كداصلي باعث مي‌شود كه پشتيباني
- PostgreSQL نسبت به ساير پايگاههاي داده به نحو بهتري انجام شود. همچنين امكان
- ارائه خدمات پشتيباني به صورت تجاري نيز وجود دارد. براي ديدن اطلاعات بيشتر به
- FAQ section 1.6 مراجعه كنيد.
- قيمت
- هم براي استفاده تجاري و هم غير تجاري هيچ هزينه‌اي نبايد پرداخت شود. هيچ
- محدوديتي براي انجام تغييرات در PostgreSQL توسط استفاده كنندگان وجود ندارد به
- جز مواردي كه در ليسانس BSD به آن اشاره شده است.
-1.15) من چگونه مي‌توانم از نظر مالي به PostgreSQL كمك كنم؟
-PostgreSQL داراي يك ساختار تشكيلاتي درجه اول است كه آن را مديون Marc Fournier‌
-است كه اين ساختار را ايجاد كرده است.
-كيفيت يك ساختار براي يك پروژه متن باز بسيار اهميت دارد. يك ساختار خوب مي‌تواند
-مانع از حوادثي شود كه در حركت روبه‌جلوي پروژه خللي وارد مي‌كنند.
-البته اين ساختار تشكيلاتي ارزان نيست. هزينه‌هاي ثابت ماهانه و روزمره براي
-نگهداري و حفظ اين ساختار مورد نياز است. اگر شما يا شركت شما مايل است كه از نظر
-مالي به اين حركت كمك كند لطفاً به سايت http://store.pgsql.com/shopping مراجعه
-كرده و كمك خود را اهدا كنيد.
-هر چند در صفحه اصلي عبارت PostgreSQL,Inc‌ ذكر شده است ولي مشاركت عمدتاً براي
-پشتيباني از پروژه PostgreSQL‌ مي باشد و نه براي يك شركت مشخص. اگر ترجيح مي‌دهيد
-مي‌توانيد يك چك به آدرس مشخص شده ارسال كنيد.
-اگر يك استفاده موفق از PostgreSQL سراغ داريد لطفاً آن را به سايت
-http://advocacy.postgresql.org گزارش دهيد.
-
-
-سوالات مربوط به استفاده از پايگاه داده
-2.1) آيا هيچ درايور ODBC‌ براي PostgreSQL وجود دارد؟
-دو درايور ODBC بنامهاي psqlODBC‌ و OpenLink براي PostgreSQL‌ وجود دارد.
-براي گرفتن psqlODBC به سايت
-http://gborg.postgresql.org/project/psqlodbc/projdisplay.php مراجعه كنيد.
-OpenLlink را از اين سايت http://www.openlinksw.com مي‌توانيد بگيريد. اين درايور
-با نرم‌افزارهاي مختلف ODBC كار مي‌كند بنابراين شما قادر خواهيد بود با استفاده از
-OpenLink روي اكثر سكو‌هايي كه نرم‌افزارODBC‌دارند بدون مشكل به PostgreSQL نيز
-متصل شويد.
-اين محصول به كساني كه احتياج به خدمات پشتيباني تجاري دارند فروخته مي‌شود. ولي
-نسخه آزاد اين نرم‌افزار هميشه در درسترس مي‌باشد. براي كسب اطلاعات بيشتر سوالات
-خود را به آدرس [email protected] ‌ارسال نماييد.
-2.2) چه ابزارهايي براي استفاده از PostgreSQL‌ با صفحات وب وجود دارد؟
-در سايت http://www.webreview.com براي استفاده از PostgreSQL‌ در صفحات وب
-راهنماييهاي خوبي وجود دارد.
-براي تركيب و استفاده در صفحات وب زبان PHP‌ يك واسط بسيار مناسب است. اطلاعات
-بيشتر راجع به PHP‌در سايت http://www.php.net وجود دارد.
-مثالهايي نيز با استفاده از Perl‌ و CGI.pm و mod_perl وجود دارد.
-2.3) آيا PostgreSQL‌ يك واسط كاربري گرافيكي دارد؟
-چند نرم افزار گرافيكي براي PostgreSQL‌ وجود دارد كه شامل pgAccess درسايت
-http://www.pgaccess.org و pgAdmin III در سايت http://www.pgadmin.org و RHDB
-Admin در سايت http://sources.redhat.com/rhdb و Rekall در سايت
-http://www.thekompany.com/products/rekall مي‌باشد. همچنين يك phpPgAdmin هم در
-سايت http://phppgadmin.sourceforge.net وجود دارد كه يك واسط وبي براي مديريت
-PostgreSQL مي‌باشد.
-براي ديدن اطلاعات بيشتر راجع به نرم‌افزارهاي گرافيكي براي PostgreSQL به آدرس
-http://techdocs.postgresql.org/guides/GUITools مراجعه كنيد.
-2.4) با چه زبانهاي برنامه‌نويسي مي‌توان با PostgreSQL‌ ارتباط برقرار كرد؟
-بيشتر زبانهاي برنامه‌نويسي مي‌توانند با PostgreSQL‌ ارتباط برقرار كنند. به همراه
- سورس PostgreSQL تعدادي از واسطهاي مورد نياز براي ارتباط با پايگاه داده از طريق
-زبانهاي مختلف آمده است كه در زير ليست آنها را مشاهده مي‌كنيد.
- C (libpq)
- Embedded C (ecpg)
- Java (jdbc)
- Python (PyGreSQL)
- TCL (libpgtcl)
-واسطهاي ديگر در سايت http://gborg.postgresql.org در قسمت Drivers/Interfaces وجود
-دارد.
-
-
-
-سوالات مديريتي
-3.1) چگونه مي‌توانم PostgreSQL‌ را در شاخه‌اي غير از /usr/local/pgsql/ نصب كنم؟
-موقع اجراي دستور configure از گزينه prefix-- استفاده كنيد.
-3.2) چرا موقعي كه من برنامه postmaster‌ را اجرا مي كنم پيام Bad system call‌ و
-يا core dump ‌مي‌گيرم؟
-به دلايل مختلف ممكن است اين اتفاق بيفتد. اما در قدم اول شما مطمئن شويد كه كه
-امكانات اضافه System V‌ در كرنل شما نصب شده باشد. PostgreSQL براي اجرا شدن نياز
-به استفاده از امكانات حافظه مشترك و سمافورها دارد.
-3.3) چرا موقعي كه من سعي مي‌كنم برنامه postmaster‌ را اجرا كنم خطاي
-IpcMemoryCreate مي‌گيرم؟
-احتمالاً‌ قسمت ايجاد حافظه مشترك در كرنل به درستي تنظيم نشده است و يا اينكه بايد
-فضاي حافظه اشتراكي در كرنل را زياد كرد. ميزان دقيق حافظه مشترك مورد نياز بسته به
-معماري و نحوه استفاده از بافرها توسط برنامه postmaster دارد. براي بيشتر سيستم‌ها
-كه با تنظيمات پيش‌فرض كار مي‌كنند مقدار اين حافظه حدود 1 مگابايت است. براي ديدن
-اطلاعات بيشتر راجع به حافظه مشترك و سمافور به PostgreSQL Administrator's Guide
-مراجعه كنيد.
-3.4) چرا موقعي كه من سعي مي‌كنم برنامه postmaster‌ را اجرا كنم خطاي
-IpcSemaphoreCreate مي‌گيرم؟
-اگر پيغام خطا (‌pcSemaphoreCreate: semget failed (No space left on device باشد
-به اين معني است كه تعداد سمافورهاي تنظيم شده در كرنل كافي نيست. PostgreSQL‌ براي
-هر فرايندي كه در backend اجرا مي‌شود به يك سمافور نياز دارد. يك راه حل موقت براي
-اين مسئله آن است كه postmaster را با اعمال محدوديت روي تعداد فرايندهايي كه
-مي‌تواند ايجاد كند اجرا كنيم. براي اينكار از گزينه N- و يك عدد كمتر از 32
-استفاده كنيد. راه حل دائمي اين مشكل آن است كه پارامترهاي SEMMNS, SEMMNI كرنل را
-افزايش دهيم.
-در زمان دسترسي خيلي زياد به پايگاه داده، ‌ سمافورهاي نامعتبر مي‌توانند باعث
-crash‌ كردن سيستم شوند.
-اگر پيغام خطا چيز ديگري باشد احتمالاً به دليل آن است كه كرنل از سمافورها
-پشتيباني نمي‌كند. براي ديدن اطلاعات بيشتر راهنماي مديريتي PostgreSQL را مطالعه
-كنيد.
-3.5) چگونه مي‌توانم اتصالات ساير ماشينها را كنترل كنم؟
-به صورت پيش فرض فقط از ماشيني كه PostgreSQL روي آن در حال اجراست مي‌توان با
-استفاده از سوكت‌هاي يونيكسي به آن متصل شد. ساير ماشين‌ها قادر نيستند به
-PostgreSQL متصل شوند مگر آنكه گزينه tcp_sockets در فايل postgresql.conf فعال شده
-و همچنين با اصلاح فايل PGDATA/ph_hba.conf هويت‌شناسي مبتني بر ميزبان نيز فعال
-شود. با اين كار مي‌توان اتصالات TCP/IP به PostgreSQL‌ ايجاد كرد.
-3.6) براي كارايي بالاتر و بهتر پايگاه داده من چه تنظيماتي را بايد انجام دهم؟
-به طور حتم استفاده از انديس‌ها باعث بالا رفتن سرعت پاسخ‌گويي به درخواست‌ها خواهد
-شد. دستور EXPLAIN ANALYZE به شما امكان ديدن نحوه پردازش يك دستور توسط PostgreSQL
-را مي‌دهد.
-اگر شما تعداد زيادي INSERT‌ داريد سعي كنيد آنها را با قرار دادن در يك فايل با
-دستور COPY‌ اجرا كنيد. اين دستور به مراتب از INSERT سريعتر است. حتي‌الامكان سعي
-كنيد از تراكنشها استفاده نكنيد. تراكنشها مجموعه دستوراتي هستند كه بيند BEGIN و
-‍COMMIT مي‌آيند. اگر يك دستور به صورت عادي اجرا شود PostgreSQL خود آن دستور را
-به صورت يك تراكنش مستقل نگاه كرده و اجرا مي‌كند. موقعی كه تغييرات زيادي در
-پايگاه داده انجام مي‌شود انديسهاي قبلي را حذف و مجدداً‌ ايجاد كنيد.
-استفاده از گزينه o -F- در فرمان postmaster باعث غير فعال كردن ()fsync مي‌شود.
-اين دستور بعد از هر تراكنش اطلاعات را روي هاردديسك منتقل مي‌كند.
-براي افزايش تعداد بافرهاي حافظه اشتراكي از گزينه B- به همراه فرمان postmaster
-استفاده كنيد. توجه كنيد كه اگر اين عدد خيلي بزرگ باشد ممكن است postmaster اصلاً‌
-اجرا نشود. هر بافر 8 كيلو بايت حافظه نياز دارد و تعداد بافرها به طور پيش فرض 64
-است.
-همچنين مي‌توان با گزينه S- ميزان حافظه‌اي كه براي مرتب‌سازي‌هاي موقت توسط
-PostgreSQL استفاده مي‌شود را افزايش داد. مقدار پيش فرض 512 كيلو بايت است.
-استفاده از دستور CLUSTER نيز براي بالا بردن كارايي موثر ا ست. دستور راهنماي
-CLUSTER اطلاعات بيشتري در اين زمينه به شما مي‌دهد.
-3.7) چه امكاناتي براي پيدا كردن اشكال‌ وجود دارد؟
-PostgerSQL‌ امكانات مختلفي براي گزارش دادن وضعيت خود دارد كه براي اشكال زدايي
-مي‌توان از آنها استفاده كرد.
-با استفاده از گزينه enable-assert-- تعداد زيادي ()assert براي مونيتور كردن و
-توقف برنامه در صورت بروز خطاهاي ناخواسته فعال مي‌شود.
-هم Postmaster و هم postgres گزينه‌هاي زيادي براي اشكال زدايي دارند. موقعي كه
-postmaster را اجرا مي‌كنيد خروجي استاندارد و خطا را سمت فايل log ارسال كنيد.
+ gfr+w+h+h+a+y+ p+s+t+y+ d+y+gfr+y+ n+y+z+ d+r+ z+m+y+n+h+ PostgreSQL
+ w+g+w+d+ d+a+r+d+ k+h+ m+y+t+w+a+n+y+d+ d+r+ s+a+y+t+
+ http://www.postgresql.org b+b+y+n+y+d+.
+
+ h+m+tcn+y+n+ y+k+ k+a+n+a+l+ IRC r+w+y+ Freenode w+ EFNet b+n+a+m+
+ PostgreSQL# w+g+w+d+ d+a+r+d+. snm+a+ m+y+t+w+a+n+y+d+ a+z+ f+r+m+a+n+
+ y+w+n+y+k+s+y+ irc -c '#PostgreSQL' "$USER" irc.phoenix.net. y+a+ irc
+ -c '#PostgreSQL' "$USER" irc.freenode.net a+s+t+f+a+d+h+ k+n+y+d+.
+
+ l+y+s+t+ snr+k+t+h+a+y+y+ k+h+ a+z+ tjr+y+q+ aMn+h+a+ m+y+t+w+a+n+y+d+
+ x+d+m+a+t+ p+snt+y+b+a+n+y+ t+g+a+r+y+ d+r+ z+m+y+n+h+ PostgreSQL
+ d+r+y+a+f+t+ k+n+y+d+ d+r+ a+y+n+ aMd+r+s+
+ http://techdocs.postgresql.org/companies.php m+w+g+w+d+ a+s+t+.
+
+ 1.7) aMx+r+y+n+ n+s+x+h+ a+e+l+a+m+ snd+h+ tcy+s+t+?+
+
+ aMx+r+y+n+ n+s+x+h+ PostgreSQL k+h+ w+g+w+d+ d+a+r+d+ 7.4.3 a+s+t+.
+
+ h+d+f+ m+a+ aMn+ a+s+t+ k+h+ h+r+ 6 m+a+h+ t+a+ 8 m+a+h+ y+k+ n+s+x+h+
+ g+d+y+d+ a+r+a+yHh+ snw+d+.
+
+ 1.8) tch+ m+s+t+n+d+a+t+ w+ r+a+h+n+m+a+yHy+h+a+y+y+ w+g+w+d+ d+a+r+n+d+?+
+
+ tcn+d+y+n+ k+t+a+b+tch+ w+ c+f+hka+t+ r+a+h+n+m+a+ w+ m+tka+l+h+a+y+
+ k+w+tck+ h+m+r+a+h+ b+a+ m+t+n+ a+c+l+y+ PostgreSQL d+r+ sna+x+h+ doc
+ w+g+w+d+ d+a+r+d+. b+r+a+y+ d+y+d+n+ c+f+hka+t+ r+a+h+n+m+a+ m+y+
+ t+w+a+n+y+d+ b+h+ s+a+y+t+ http://www.PostgreSQL.org/docs n+y+z+
+ m+r+a+g+e+h+ n+m+a+y+y+d+.
+
+ d+w+ k+t+a+b+ d+r+ z+m+y+n+h+ PostgreSQL d+r+ aMd+r+s+h+a+y+
+ http://www.PostgreSQL.org/docs/awbook.htm w+
+ http://www.commandprompt.com/ppbook w+g+w+d+ d+a+r+d+. l+y+s+t+y+ a+z+
+ k+t+a+b+h+a+y+y+ k+h+ q+a+b+l+ x+r+y+d+ a+s+t+ d+r+ aMd+r+s+
+ http://techdocs.PostgreSQL.org/techdocs/bookreviews.php w+g+w+d+
+ d+a+r+d+. h+m+tcn+y+n+ l+y+s+t+y+ a+z+ m+q+a+l+a+t+ f+n+y+ d+r+
+ m+w+r+d+ PostgreSQL d+r+ aMd+r+s+ http://techdocs.PostgreSQL.org
+ w+g+w+d+ d+a+r+d+.
+
+ b+r+n+a+m+h+ psql y+k+ d+s+t+w+r+ d\ d+a+r+d+ k+h+ a+tjl+a+e+a+t+y+
+ d+r+ m+w+r+d+ a+n+w+a+e+ d+a+d+h+h+a+y+ q+a+b+l+ t+e+r+y+f+ w+
+ e+m+l+gfr+h+a+ w+ t+w+a+b+e+ w+ ... b+h+ m+a+ n+sna+n+ m+y+d+h+d+.
+ d+r+ s+a+y+t+ a+c+l+y+ m+a+ a+tjl+a+e+a+t+ b+y+snt+r+y+ r+a+ m+y+
+ t+w+a+n+y+d+ p+y+d+a+ k+n+y+d+.
+
+ 1.9) tcgfw+n+h+ m+y+t+w+a+n+m+ a+z+a+snk+a+l+a+t+ snn+a+x+t+h+ snd+h+ w+
+ y+a+ a+m+k+a+n+a+t+y+ k+h+ d+r+ a+y+n+ p+a+y+gfa+h+ d+a+d+h+ w+g+w+d+
+ n+d+a+r+d+ m+tjl+e+ snw+m+?+
+
+ PostgreSQL y+k+ z+y+r+ m+g+m+w+e+h+ p+y+snr+f+t+h+ a+z+ SQL-92 r+a+
+ p+snt+y+b+a+n+y+ m+y+k+n+d+. d+r+ l+y+s+t+ TODO a+1+snk+a+l+a+t+
+ snn+a+x+t+h+ snd+h+ y+a+ a+m+k+a+n+a+t+y+ k+h+ w+g+w+d+ n+d+a+r+d+ w+
+ y+a+ b+r+n+a+m+h+h+a+y+ aMy+n+d+h+ aMm+d+h+ a+s+t+.
+
+ 1.10) tcgfw+n+h+ m+y+t+w+a+n+m+ z+b+a+n+ SQL r+a+ y+a+d+ b+gfy+r+m+?+
+
+ k+t+a+b+ PostgreSQL d+r+ aMd+r+s+ SQL
+ http://www.PostgreSQL.org/docs/awbook.html r+a+ aMm+w+z+sn m+y+d+h+d+.
+ h+m+tcn+y+n+ y+k+ k+t+a+b+ d+r+ aMd+r+s+
+ http://www.commandprompt.com/ppbook w+g+w+d+ d+a+r+d+. y+k+
+ r+a+h+n+m+a+y+ x+y+l+y+ x+w+b+ h+m+ d+r+ s+a+y+t+h+a+y+
+ http://www.intermedia.net/support/sql/sqltut.shtm w+
+ http://ourworld.compuserve.com/homepages/graeme_birchall/HTM_COOK.HTM
+ w+ http://sqlcourse.com d+r+ m+w+r+d+ SQL w+g+w+d+ d+a+r+d+.
+
+ k+t+a+b+ d+y+gfr+y+ k+h+ m+y+t+w+a+n+ b+r+a+y+ y+a+d+gfy+r+y+ SQL a+z+
+ aMn+ a+s+t+f+a+d+h+ k+r+d+ k+t+a+b+ "SQL r+a+ d+r+ 21 r+w+z+ y+a+d+
+ b+gfy+r+y+d+,+ w+y+r+a+y+sn d+w+m+" d+r+ s+a+y+t+
+ http://members.tripod.com/er4ebus/sql/index.htm m+y+b+a+snd+.
+
+ t+e+d+a+d+ z+y+a+d+y+ a+z+ k+a+r+b+r+a+n+ k+t+a+b+ The Practical SQL
+ r+a+ t+r+g+y+hk m+y+d+h+n+d+. k+t+a+b+ d+y+gfr+ The Complete Refrence
+ SQL a+n+t+sna+r+a+t+ McGraw-Hill m+y+b+a+snd+.
+
+ 1.11) aMy+a+ PostgreSQL m+snk+l+ Y2K d+a+r+d+ y+a+ x+y+r+?+
+
+ x+y+r+,+PostgreSQL b+a+ t+a+r+y+x+h+a+y+ q+b+l+ w+ b+e+d+ a+z+ 2000
+ m+snk+l+y+ n+d+a+r+d+.
+
+ 1.12) tcgfw+n+h+ m+y+t+w+a+n+m+ b+h+ t+y+m+ b+r+n+a+m+h+ n+w+y+s+
+ PostgreSQL m+l+hkq+ snw+m+?+
+
+ a+b+t+d+a+,+aMx+r+y+n+ s+w+r+s+ r+a+ d+w+n+l+w+d+ k+r+d+h+ w+
+ m+s+t+n+d+a+t+ m+r+b+w+tj b+h+ b+r+n+a+m+h+n+w+y+s+y+ PostgreSQL r+a+
+ d+r+ s+a+y+t+ m+tja+l+e+h+ k+n+y+d+. s+p+s+ b+h+ gfr+w+h+h+a+y+
+ p+s+t+y+ pgsql-patches w+ pgsql-hackers e+ddw+ snw+y+d+. d+r+
+ m+r+hkl+h+ aMx+r+ w+c+l+h+h+a+y+ b+a+ k+y+f+y+t+ b+a+l+a+ r+a+ b+h+
+ pgsql-patches a+r+s+a+l+ k+n+y+d+.
+
+ t+e+d+a+d+ z+y+a+d+y+ a+z+ b+r+n+a+m+h+n+w+y+s+a+n+ w+g+w+d+
+ d+a+r+n+d+ k+h+ a+m+t+y+a+z+ a+n+g+a+m+ t+i+y+y+r+a+t+ d+r+ cvs r+a+
+ d+a+r+n+d+. h+r+ k+d+a+m+ a+z+ aMn+h+a+ t+e+d+a+d+ z+y+a+d+y+ w+c+l+h+
+ b+a+ k+y+f+y+t+ b+a+l+a+ b+h+ gfr+w+h+ a+r+s+a+l+ k+r+d+h+a+n+d+ k+h+
+ a+e+t+m+a+d+ gfr+d+a+n+n+d+gfa+n+ PostgreSQL r+a+ b+h+ d+s+t+
+ aMw+r+d+h+a+n+d+.
+
+ 1.13) tcgfw+n+h+ m+y+t+w+a+n+m+ y+k+ a+1+snk+a+l+ r+a+ b+h+ gfr+w+h+
+ b+r+n+a+m+h+ n+w+y+s+ a+e+l+a+m+ k+n+m+?+
+
+ l+tjf+a+:+ c+f+hkh+ m+r+b+w+tj b+h+ a+1+snk+a+l+a+t+ PostgreSQL r+a+
+ d+r+ s+a+y+t+ http://www.PostgreSQL.org/bugs/bugs.php m+sna+h+d+h+
+ k+n+y+d+. d+r+ a+y+n+ s+a+y+t+ n+hkw+h+ gfz+a+r+sn w+ a+r+s+a+l+ y+k+
+ a+snk+a+l+ t+w+ddy+hk d+a+d+h+ snd+h+ a+s+t+.
+
+ h+m+tcn+y+n+ b+r+a+y+ d+y+d+n+ n+s+x+h+h+a+y+ g+d+y+d+t+r+ PostgreSQL
+ w+ y+a+ w+g+w+d+ y+k+ w+c+l+h+ g+d+y+d+ a+z+ s+a+y+t+
+ ftp://ftp.PostgreSQL.org/pub b+a+z+d+y+d+ k+n+y+d+.
+
+ 1.14) w+dde+y+t+ PostgreSQL d+r+ m+q+a+y+s+h+ b+a+ s+a+y+r+ DBMSh+a+ b+h+
+ tch+ c+w+r+t+ a+s+t+?+
+
+ r+a+h+h+a+y+ m+x+t+l+f+y+ b+r+a+y+ a+n+d+a+z+h+gfy+r+y+ w+
+ m+q+a+y+s+h+ n+r+m+a+f+z+a+r+h+a+ w+g+w+d+ d+a+r+d+ k+h+
+ e+b+a+r+t+n+d+ a+z+ a+m+k+a+n+a+t+,+ k+a+r+a+y+y+,+ q+a+b+l+y+t+
+ a+e+t+m+a+d+,+ p+snt+y+b+a+n+y+ w+ q+y+m+t+
+
+ a+m+k+a+n+a+t+
+ PostgreSQL b+y+snt+r+ a+m+k+a+n+a+t+ m+w+g+w+d+ d+r+
+ s+y+s+t+m+h+a+y+ p+a+y+gfa+h+ d+a+d+h+ t+g+a+r+y+
+ b+z+r+gf n+zHy+r+ transactions, subselets, triggers,
+ views, foreign key referential integrity w+ sophisticated
+ locking r+a+ d+a+r+d+. d+r+ PostgreSQL a+m+k+a+n+a+t+y+
+ w+g+w+d+ d+a+r+d+ k+h+ p+a+y+gfa+h+h+a+y+ d+a+d+h+
+ d+y+gfr+ aMn+ r+a+ n+d+a+r+n+d+ n+zHy+r+ user-defined
+ typesw+ Inheritancew+ rulesw+ multi-version concurrency
+ control
+
+
+
+ k+a+r+a+y+y+
+
+ k+a+r+a+y+y+ PostgreSQL d+r+ hkd+ b+q+y+h+ s+y+s+t+m+
+ h+a+y+ t+g+a+r+y+ w+ m+t+n+ b+a+z+ a+s+t+. d+r+ b+e+ddy+
+ m+w+a+r+d+ s+r+y+e+t+r+ w+ d+r+ b+e+ddy+ m+w+a+r+d+ a+z+
+ aMn+h+a+ k+n+d+t+r+ a+s+t+. d+r+ m+q+a+y+s+h+ b+a+ MySQL
+ b+r+a+y+ k+a+r+b+r+a+n+ b+y+snt+r+ w+ d+r+x+w+a+s+t+h+a+y+
+ p+y+tcy+d+h+ w+ b+a+r+ z+y+a+d+ x+w+a+n+d+n+/n+w+snt+n+
+ s+r+y+e+t+r+ a+s+t+. d+r+ d+r+x+w+a+s+t+h+a+y+ s+a+d+h+ SELECT
+ a+z+ MySQL k+n+d+t+r+ a+s+t+. a+l+b+t+h+ MySQL x+y+l+y+ a+z+
+ a+m+k+a+n+a+t+ PostgreSQL k+h+ d+r+ b+a+l+a+ b+h+ aMn+
+ a+sna+r+h+ snd+ r+a+ n+d+a+r+d+. h+d+f+ a+c+l+y+ m+a+
+ a+m+k+a+n+a+t+ w+ q+a+b+l+y+t+ a+e+t+m+a+d+ b+a+l+a+s+t+ d+r+
+ ddm+n+ aMn+k+h+ t+l+a+sn m+y+k+n+y+m+ t+a+ k+a+r+a+y+y+ aMn+
+ n+y+z+ b+h+b+w+d+ y+a+b+d+. d+r+ aMd+r+s+
+ http://openacs.org/philosophy/why-not-mysql.html y+k+
+ m+q+a+y+s+h+ g+a+l+b+ b+y+n+ MySQL w+ PostgreSQL w+g+w+d+
+ d+a+r+d+. a+z+ tjr+f+ d+y+gfr+ MySQL y+k+ snr+k+t+ a+s+t+ k+h+
+ m+hkc+w+l+ x+w+d+ r+a+ b+h+ c+w+r+t+ m+t+n+ b+a+z+ a+r+a+yHh+
+ m+y+k+n+d+ w+l+y+ b+r+a+y+ n+r+m+a+f+z+a+r+ i+y+r+ m+t+n+
+ b+a+z+ x+w+d+ a+hkt+y+a+g+ b+h+ l+y+s+a+n+s+ t+g+a+r+y+
+ d+a+r+d+ b+r+ x+l+a+f+ PostgreSQL k+h+ y+k+ gfr+w+h+
+ k+a+m+l+a+:+ m+t+n+ b+a+z+ h+s+t+n+d+.
+
+
+
+ q+a+b+l+y+t+ a+tjm+y+n+a+n+
+ m+a+ f+k+r+ m+y+k+n+y+m+ k+h+ y+k+ s+y+s+t+m+
+ p+a+y+gfa+h+ d+a+d+h+a+y+ k+h+ m+tjm+yHn+ n+b+a+snd+
+ a+r+z+sny+ n+d+a+r+d+. m+a+ t+m+a+m+ t+l+a+snm+a+n+ r+a+
+ b+r+a+y+ a+r+a+yHh+ k+d+h+a+y+ p+a+y+d+a+r+y+ k+h+ b+h+
+ x+w+b+y+ t+s+t+ snd+h+ b+a+snn+d+ w+ k+m+t+r+y+n+
+ a+1+snk+a+l+a+t+ r+a+ d+a+snt+h+ b+a+snn+d+ m+y+k+n+y+m+.
+ h+r+ n+s+x+h+ g+d+y+d+y+ k+h+ a+r+a+yHh+ m+y+snw+d+
+ hkd+a+q+l+ y+k+ m+a+h+ r+a+ d+r+ m+r+hkl+h+ t+s+t+ b+t+a+
+ m+y+gfdkr+a+n+d+. m+a+ b+r+ a+y+n+ b+a+w+r+ h+s+t+y+m+
+ k+h+ q+a+b+l+y+t+ a+tjm+y+n+a+n+ PostgreSQL d+r+
+ m+q+a+y+s+h+ b+a+ s+a+y+r+ s+y+s+t+m+h+a+y+ p+a+y+gfa+h+
+ d+a+d+h+ q+a+b+l+ t+w+g+h+ a+s+t+ w+ n+s+x+h+h+a+y+y+
+ k+h+ t+a+k+n+w+n+ a+r+a+yHh+ snd+h+ a+s+t+ n+sna+n+ m+y+
+ d+h+d+ k+h+ m+a+ t+w+a+n+a+y+y+ a+r+a+yHh+ y+k+
+ s+y+s+t+m+ q+w+y+ w+ m+hkk+m+ w+ m+tjm+yHn+ r+a+ k+h+
+ aMm+a+d+h+ b+h+r+h+b+r+d+a+r+y+ a+s+t+ d+a+r+y+m+.
+
+ p+snt+y+b+a+n+y+
+ gfr+w+h+h+a+y+ p+s+t+y+ m+a+ a+m+k+a+n+ a+r+t+b+a+tj w+
+ t+m+a+s+ b+h+ gfr+w+h+ b+z+r+gfy+ a+z+ b+r+n+a+m+h+
+ n+w+y+s+a+n+ w+ k+a+r+b+r+a+n+ r+a+ m+y+d+h+d+ k+h+ m+y+
+ t+w+a+n+n+d+ d+r+ hkl+ m+snk+l+a+t+ b+h+ d+y+gfr+a+n+
+ k+m+k+ k+n+n+d+. d+s+t+r+s+y+ m+s+t+q+y+m+ b+h+
+ b+r+n+a+m+h+n+w+y+s+a+n+ w+ gfr+w+h+h+a+y+ k+a+r+b+r+a+n+
+ w+ r+a+h+n+m+a+h+a+ w+ k+d+a+c+l+y+ b+a+e+tk m+y+snw+d+
+ k+h+ p+snt+y+b+a+n+y+ PostgreSQL n+s+b+t+ b+h+ s+a+y+r+
+ p+a+y+gfa+h+h+a+y+ d+a+d+h+ b+h+ n+hkw+ b+h+t+r+y+
+ a+n+g+a+m+ snw+d+. h+m+tcn+y+n+ a+m+k+a+n+ a+r+a+yHh+
+ x+d+m+a+t+ p+snt+y+b+a+n+y+ b+h+ c+w+r+t+ t+g+a+r+y+
+ n+y+z+ w+g+w+d+ d+a+r+d+. b+r+a+y+ d+y+d+n+
+ a+tjl+a+e+a+t+ b+y+snt+r+ b+h+ FAQ section 1.6
+ m+r+a+g+e+h+ k+n+y+d+.
+
+ q+y+m+t+
+ h+m+ b+r+a+y+ a+s+t+f+a+d+h+ t+g+a+r+y+ w+ h+m+ i+y+r+
+ t+g+a+r+y+ h+y+tc h+z+y+n+h+a+y+ n+b+a+y+d+ p+r+d+a+x+t+
+ snw+d+. h+y+tc m+hkd+w+d+y+t+y+ b+r+a+y+ a+n+g+a+m+
+ t+i+y+y+r+a+t+ d+r+ PostgreSQL t+w+s+tj a+s+t+f+a+d+h+
+ k+n+n+d+gfa+n+ w+g+w+d+ n+d+a+r+d+ b+h+ g+z+ m+w+a+r+d+y+
+ k+h+ d+r+ l+y+s+a+n+s+ BSD b+h+ aMn+ a+sna+r+h+ snd+h+
+ a+s+t+.
+
+ 1.15) m+n+ tcgfw+n+h+ m+y+t+w+a+n+m+ a+z+ n+zHr+ m+a+l+y+ b+h+ PostgreSQL
+ k+m+k+ k+n+m+?+
+
+ PostgreSQL d+a+r+a+y+ y+k+ s+a+x+t+a+r+ t+snk+y+l+a+t+y+ d+r+g+h+
+ a+w+l+ a+s+t+ k+h+ aMn+ r+a+ m+d+y+w+n+ Marc Fournier a+s+t+ k+h+
+ a+y+n+ s+a+x+t+a+r+ r+a+ a+y+g+a+d+ k+r+d+h+ a+s+t+.
+
+ k+y+f+y+t+ y+k+ s+a+x+t+a+r+ b+r+a+y+ y+k+ p+r+w+zjh+ m+t+n+ b+a+z+
+ b+s+y+a+r+ a+h+m+y+t+ d+a+r+d+. y+k+ s+a+x+t+a+r+ x+w+b+ m+y+
+ t+w+a+n+d+ m+a+n+e+ a+z+ hkw+a+d+tky+ snw+d+ k+h+ d+r+ hkr+k+t+
+ r+w+b+h+g+l+w+y+ p+r+w+zjh+ x+l+l+y+ w+a+r+d+ m+y+k+n+n+d+.
+
+ a+l+b+t+h+ a+y+n+ s+a+x+t+a+r+ t+snk+y+l+a+t+y+ a+r+z+a+n+ n+y+s+t+.
+ h+z+y+n+h+h+a+y+ tka+b+t+ m+a+h+a+n+h+ w+ r+w+z+m+r+h+ b+r+a+y+
+ n+gfh+d+a+r+y+ w+ hkf+zH a+y+n+ s+a+x+t+a+r+ m+w+r+d+ n+y+a+z+ a+s+t+.
+ a+gfr+ snm+a+ y+a+ snr+k+t+ snm+a+ m+a+y+l+ a+s+t+ k+h+ a+z+ n+zHr+
+ m+a+l+y+ b+h+ a+y+n+ hkr+k+t+ k+m+k+ k+n+d+ l+tjf+a+:+ b+h+ s+a+y+t+
+ http://store.pgsql.com/shopping m+r+a+g+e+h+ k+r+d+h+ w+ k+m+k+ x+w+d+
+ r+a+ a+h+d+a+ k+n+y+d+.
+
+ h+r+ tcn+d+ d+r+ c+f+hkh+ a+c+l+y+ e+b+a+r+t+ PostgreSQL,Inc dkk+r+
+ snd+h+ a+s+t+ w+l+y+ m+sna+r+k+t+ e+m+d+t+a+:+ b+r+a+y+
+ p+snt+y+b+a+n+y+ a+z+ p+r+w+zjh+ PostgreSQL m+y+ b+a+snd+ w+ n+h+
+ b+r+a+y+ y+k+ snr+k+t+ m+snx+c+. a+gfr+ t+r+g+y+hk m+y+d+h+y+d+ m+y+
+ t+w+a+n+y+d+ y+k+ tck+ b+h+ aMd+r+s+ m+snx+c+ snd+h+ a+r+s+a+l+
+ k+n+y+d+.
+
+ a+gfr+ y+k+ a+s+t+f+a+d+h+ m+w+f+q+ a+z+ PostgreSQL s+r+a+i+
+ d+a+r+y+d+ l+tjf+a+:+ aMn+ r+a+ b+h+ s+a+y+t+
+ http://advocacy.postgresql.org gfz+a+r+sn d+h+y+d+.
+ _________________________________________________________________
+
+ s+w+a+l+a+t+ m+r+b+w+tj b+h+ a+s+t+f+a+d+h+ a+z+ p+a+y+gfa+h+ d+a+d+h+
+
+ 2.1) aMy+a+ h+y+tc d+r+a+y+w+r+ ODBC b+r+a+y+ PostgreSQL w+g+w+d+
+ d+a+r+d+?+
+
+ d+w+ d+r+a+y+w+r+ ODBC b+n+a+m+h+a+y+ psqlODBC w+ OpenLink b+r+a+y+
+ PostgreSQL w+g+w+d+ d+a+r+d+.
+
+ b+r+a+y+ gfr+f+t+n+ psqlODBC b+h+ s+a+y+t+
+ http://gborg.postgresql.org/project/psqlodbc/projdisplay.php
+ m+r+a+g+e+h+ k+n+y+d+.
+
+ OpenLlink r+a+ a+z+ a+y+n+ s+a+y+t+ http://www.openlinksw.com m+y+
+ t+w+a+n+y+d+ b+gfy+r+y+d+. a+y+n+ d+r+a+y+w+r+ b+a+ n+r+m+
+ a+f+z+a+r+h+a+y+ m+x+t+l+f+ ODBC k+a+r+ m+y+k+n+d+ b+n+a+b+r+a+y+n+
+ snm+a+ q+a+d+r+ x+w+a+h+y+d+ b+w+d+ b+a+ a+s+t+f+a+d+h+ a+z+ OpenLink
+ r+w+y+ a+k+tkr+ s+k+w+h+a+y+y+ k+h+ n+r+m+a+f+z+a+r+ODBCd+a+r+n+d+
+ b+d+w+n+ m+snk+l+ b+h+ PostgreSQL n+y+z+ m+t+c+l+ snw+y+d+.
+
+ a+y+n+ m+hkc+w+l+ b+h+ k+s+a+n+y+ k+h+ a+hkt+y+a+g+ b+h+ x+d+m+a+t+
+ p+snt+y+b+a+n+y+ t+g+a+r+y+ d+a+r+n+d+ f+r+w+x+t+h+ m+y+snw+d+. w+l+y+
+ n+s+x+h+ aMz+a+d+ a+y+n+ n+r+m+a+f+z+a+r+ h+m+y+snh+ d+r+ d+r+s+t+r+s+
+ m+y+b+a+snd+. b+r+a+y+ k+s+b+ a+tjl+a+e+a+t+ b+y+snt+r+ s+w+a+l+a+t+
+ x+w+d+ r+a+ b+h+ aMd+r+s+ [email protected] a+r+s+a+l+
+ n+m+a+y+y+d+.
+
+ 2.2) tch+ a+b+z+a+r+h+a+y+y+ b+r+a+y+ a+s+t+f+a+d+h+ a+z+ PostgreSQL b+a+
+ c+f+hka+t+ w+b+ w+g+w+d+ d+a+r+d+?+
+
+ d+r+ s+a+y+t+ http://www.webreview.com b+r+a+y+ a+s+t+f+a+d+h+ a+z+
+ PostgreSQL d+r+ c+f+hka+t+ w+b+ r+a+h+n+m+a+y+y+h+a+y+ x+w+b+y+
+ w+g+w+d+ d+a+r+d+.
+
+ b+r+a+y+ t+r+k+y+b+ w+ a+s+t+f+a+d+h+ d+r+ c+f+hka+t+ w+b+ z+b+a+n+
+ PHP y+k+ w+a+s+tj b+s+y+a+r+ m+n+a+s+b+ a+s+t+. a+tjl+a+e+a+t+
+ b+y+snt+r+ r+a+g+e+ b+h+ PHPd+r+ s+a+y+t+ http://www.php.net w+g+w+d+
+ d+a+r+d+.
+
+ m+tka+l+h+a+y+y+ n+y+z+ b+a+ a+s+t+f+a+d+h+ a+z+ Perl w+ CGI.pm w+
+ mod_perl w+g+w+d+ d+a+r+d+.
+
+ 2.3) aMy+a+ PostgreSQL y+k+ w+a+s+tj k+a+r+b+r+y+ gfr+a+f+y+k+y+ d+a+r+d+?+
+
+ tcn+d+ n+r+m+ a+f+z+a+r+ gfr+a+f+y+k+y+ b+r+a+y+ PostgreSQL w+g+w+d+
+ d+a+r+d+ k+h+ sna+m+l+ pgAccess d+r+s+a+y+t+ http://www.pgaccess.org
+ w+ pgAdmin III d+r+ s+a+y+t+ http://www.pgadmin.org w+ RHDB Admin d+r+
+ s+a+y+t+ http://sources.redhat.com/rhdb w+ Rekall d+r+ s+a+y+t+
+ http://www.thekompany.com/products/rekall m+y+b+a+snd+. h+m+tcn+y+n+
+ y+k+ phpPgAdmin h+m+ d+r+ s+a+y+t+ http://phppgadmin.sourceforge.net
+ w+g+w+d+ d+a+r+d+ k+h+ y+k+ w+a+s+tj w+b+y+ b+r+a+y+ m+d+y+r+y+t+
+ PostgreSQL m+y+b+a+snd+.
+
+ b+r+a+y+ d+y+d+n+ a+tjl+a+e+a+t+ b+y+snt+r+ r+a+g+e+ b+h+ n+r+m+
+ a+f+z+a+r+h+a+y+ gfr+a+f+y+k+y+ b+r+a+y+ PostgreSQL b+h+ aMd+r+s+
+ http://techdocs.postgresql.org/guides/GUITools m+r+a+g+e+h+ k+n+y+d+.
+
+ 2.4) b+a+ tch+ z+b+a+n+h+a+y+ b+r+n+a+m+h+n+w+y+s+y+ m+y+t+w+a+n+ b+a+
+ PostgreSQL a+r+t+b+a+tj b+r+q+r+a+r+ k+r+d+?+
+
+ b+y+snt+r+ z+b+a+n+h+a+y+ b+r+n+a+m+h+n+w+y+s+y+ m+y+t+w+a+n+n+d+ b+a+
+ PostgreSQL a+r+t+b+a+tj b+r+q+r+a+r+ k+n+n+d+. b+h+ h+m+r+a+h+
+ s+w+r+s+ PostgreSQL t+e+d+a+d+y+ a+z+ w+a+s+tjh+a+y+ m+w+r+d+ n+y+a+z+
+ b+r+a+y+ a+r+t+b+a+tj b+a+ p+a+y+gfa+h+ d+a+d+h+ a+z+ tjr+y+q+
+ z+b+a+n+h+a+y+ m+x+t+l+f+ aMm+d+h+ a+s+t+ k+h+ d+r+ z+y+r+ l+y+s+t+
+ aMn+h+a+ r+a+ m+sna+h+d+h+ m+y+k+n+y+d+.
+ * C (libpq)
+ * Embedded C (ecpg)
+ * Java (jdbc)
+ * Python (PyGreSQL)
+ * TCL (libpgtcl)
+
+ w+a+s+tjh+a+y+ d+y+gfr+ d+r+ s+a+y+t+ http://gborg.postgresql.org d+r+
+ q+s+m+t+ Drivers/Interfaces w+g+w+d+ d+a+r+d+.
+ _________________________________________________________________
+
+ s+w+a+l+a+t+ m+d+y+r+y+t+y+
+
+ 3.1) tcgfw+n+h+ m+y+t+w+a+n+m+ PostgreSQL r+a+ d+r+ sna+x+h+a+y+ i+y+r+
+ a+z+ /usr/local/pgsql/ n+c+b+ k+n+m+?+
+
+ m+w+q+e+ a+g+r+a+y+ d+s+t+w+r+ configure a+z+ gfz+y+n+h+ prefix--
+ a+s+t+f+a+d+h+ k+n+y+d+.
+
+ 3.2) tcr+a+ m+w+q+e+y+ k+h+ m+n+ b+r+n+a+m+h+ postmaster r+a+ a+g+r+a+ m+y+
+ k+n+m+ p+y+a+m+ Bad system call w+ y+a+ core dump m+y+gfy+r+m+?+
+
+ b+h+ d+l+a+y+l+ m+x+t+l+f+ m+m+k+n+ a+s+t+ a+y+n+ a+t+f+a+q+
+ b+y+f+t+d+. a+m+a+ d+r+ q+d+m+ a+w+l+ snm+a+ m+tjm+yHn+ snw+y+d+ k+h+
+ k+h+ a+m+k+a+n+a+t+ a+dda+f+h+ System V d+r+ k+r+n+l+ snm+a+ n+c+b+
+ snd+h+ b+a+snd+. PostgreSQL b+r+a+y+ a+g+r+a+ snd+n+ n+y+a+z+ b+h+
+ a+s+t+f+a+d+h+ a+z+ a+m+k+a+n+a+t+ hka+f+zHh+ m+snt+r+k+ w+
+ s+m+a+f+w+r+h+a+ d+a+r+d+.
+
+ 3.3) tcr+a+ m+w+q+e+y+ k+h+ m+n+ s+e+y+ m+y+k+n+m+ b+r+n+a+m+h+ postmaster
+ r+a+ a+g+r+a+ k+n+m+ x+tja+y+ IpcMemoryCreate m+y+gfy+r+m+?+
+
+ a+hkt+m+a+l+a+:+ q+s+m+t+ a+y+g+a+d+ hka+f+zHh+ m+snt+r+k+ d+r+
+ k+r+n+l+ b+h+ d+r+s+t+y+ t+n+zHy+m+ n+snd+h+ a+s+t+ w+ y+a+ a+y+n+k+h+
+ b+a+y+d+ f+dda+y+ hka+f+zHh+ a+snt+r+a+k+y+ d+r+ k+r+n+l+ r+a+
+ z+y+a+d+ k+r+d+. m+y+z+a+n+ d+q+y+q+ hka+f+zHh+ m+snt+r+k+ m+w+r+d+
+ n+y+a+z+ b+s+t+h+ b+h+ m+e+m+a+r+y+ w+ n+hkw+h+ a+s+t+f+a+d+h+ a+z+
+ b+a+f+r+h+a+ t+w+s+tj b+r+n+a+m+h+ postmaster d+a+r+d+. b+r+a+y+
+ b+y+snt+r+ s+y+s+t+m+h+a+ k+h+ b+a+ t+n+zHy+m+a+t+ p+y+snf+r+dd k+a+r+
+ m+y+k+n+n+d+ m+q+d+a+r+ a+y+n+ hka+f+zHh+ hkd+w+d+ 1 m+gfa+b+a+y+t+
+ a+s+t+. b+r+a+y+ d+y+d+n+ a+tjl+a+e+a+t+ b+y+snt+r+ r+a+g+e+ b+h+
+ hka+f+zHh+ m+snt+r+k+ w+ s+m+a+f+w+r+ b+h+ PostgreSQL Administrator's
+ Guide m+r+a+g+e+h+ k+n+y+d+.
+
+ 3.4) tcr+a+ m+w+q+e+y+ k+h+ m+n+ s+e+y+ m+y+k+n+m+ b+r+n+a+m+h+ postmaster
+ r+a+ a+g+r+a+ k+n+m+ x+tja+y+ IpcSemaphoreCreate m+y+gfy+r+m+?+
+
+ a+gfr+ p+y+i+a+m+ x+tja+ (pcSemaphoreCreate: semget failed (No space
+ left on device b+a+snd+ b+h+ a+y+n+ m+e+n+y+ a+s+t+ k+h+ t+e+d+a+d+
+ s+m+a+f+w+r+h+a+y+ t+n+zHy+m+ snd+h+ d+r+ k+r+n+l+ k+a+f+y+ n+y+s+t+.
+ PostgreSQL b+r+a+y+ h+r+ f+r+a+y+n+d+y+ k+h+ d+r+ backend a+g+r+a+
+ m+y+snw+d+ b+h+ y+k+ s+m+a+f+w+r+ n+y+a+z+ d+a+r+d+. y+k+ r+a+h+ hkl+
+ m+w+q+t+ b+r+a+y+ a+y+n+ m+s+yHl+h+ aMn+ a+s+t+ k+h+ postmaster r+a+
+ b+a+ a+e+m+a+l+ m+hkd+w+d+y+t+ r+w+y+ t+e+d+a+d+ f+r+a+y+n+d+h+a+y+y+
+ k+h+ m+y+t+w+a+n+d+ a+y+g+a+d+ k+n+d+ a+g+r+a+ k+n+y+m+. b+r+a+y+
+ a+y+n+k+a+r+ a+z+ gfz+y+n+h+ N- w+ y+k+ e+d+d+ k+m+t+r+ a+z+ 32
+ a+s+t+f+a+d+h+ k+n+y+d+. r+a+h+ hkl+ d+a+yHm+y+ a+y+n+ m+snk+l+ aMn+
+ a+s+t+ k+h+ p+a+r+a+m+t+r+h+a+y+ SEMMNS, SEMMNI k+r+n+l+ r+a+
+ a+f+z+a+y+sn d+h+y+m+.
+
+ d+r+ z+m+a+n+ d+s+t+r+s+y+ x+y+l+y+ z+y+a+d+ b+h+ p+a+y+gfa+h+
+ d+a+d+h+,+ s+m+a+f+w+r+h+a+y+ n+a+m+e+t+b+r+ m+y+t+w+a+n+n+d+ b+a+e+tk
+ crash k+r+d+n+ s+y+s+t+m+ snw+n+d+.
+
+ a+gfr+ p+y+i+a+m+ x+tja+ tcy+z+ d+y+gfr+y+ b+a+snd+ a+hkt+m+a+l+a+:+
+ b+h+ d+l+y+l+ aMn+ a+s+t+ k+h+ k+r+n+l+ a+z+ s+m+a+f+w+r+h+a+
+ p+snt+y+b+a+n+y+ n+m+y+k+n+d+. b+r+a+y+ d+y+d+n+ a+tjl+a+e+a+t+
+ b+y+snt+r+ r+a+h+n+m+a+y+ m+d+y+r+y+t+y+ PostgreSQL r+a+ m+tja+l+e+h+
+ k+n+y+d+.
+
+ 3.5) tcgfw+n+h+ m+y+t+w+a+n+m+ a+t+c+a+l+a+t+ s+a+y+r+ m+a+sny+n+h+a+ r+a+
+ k+n+t+r+l+ k+n+m+?+
+
+ b+h+ c+w+r+t+ p+y+sn f+r+dd f+q+tj a+z+ m+a+sny+n+y+ k+h+ PostgreSQL
+ r+w+y+ aMn+ d+r+ hka+l+ a+g+r+a+s+t+ m+y+t+w+a+n+ b+a+ a+s+t+f+a+d+h+
+ a+z+ s+w+k+t+h+a+y+ y+w+n+y+k+s+y+ b+h+ aMn+ m+t+c+l+ snd+. s+a+y+r+
+ m+a+sny+n+h+a+ q+a+d+r+ n+y+s+t+n+d+ b+h+ PostgreSQL m+t+c+l+ snw+n+d+
+ m+gfr+ aMn+k+h+ gfz+y+n+h+ tcp_sockets d+r+ f+a+y+l+ postgresql.conf
+ f+e+a+l+ snd+h+ w+ h+m+tcn+y+n+ b+a+ a+c+l+a+hk f+a+y+l+
+ PGDATA/ph_hba.conf h+w+y+t+snn+a+s+y+ m+b+t+n+y+ b+r+ m+y+z+b+a+n+
+ n+y+z+ f+e+a+l+ snw+d+. b+a+ a+y+n+ k+a+r+ m+y+t+w+a+n+ a+t+c+a+l+a+t+
+ TCP/IP b+h+ PostgreSQL a+y+g+a+d+ k+r+d+.
+
+ 3.6) b+r+a+y+ k+a+r+a+y+y+ b+a+l+a+t+r+ w+ b+h+t+r+ p+a+y+gfa+h+ d+a+d+h+
+ m+n+ tch+ t+n+zHy+m+a+t+y+ r+a+ b+a+y+d+ a+n+g+a+m+ d+h+m+?+
+
+ b+h+ tjw+r+ hkt+m+ a+s+t+f+a+d+h+ a+z+ a+n+d+y+s+h+a+ b+a+e+tk
+ b+a+l+a+ r+f+t+n+ s+r+e+t+ p+a+s+x+gfw+y+y+ b+h+ d+r+x+w+a+s+t+h+a+
+ x+w+a+h+d+ snd+. d+s+t+w+r+ EXPLAIN ANALYZE b+h+ snm+a+ a+m+k+a+n+
+ d+y+d+n+ n+hkw+h+ p+r+d+a+z+sn y+k+ d+s+t+w+r+ t+w+s+tj PostgreSQL
+ r+a+ m+y+d+h+d+.
+
+ a+gfr+ snm+a+ t+e+d+a+d+ z+y+a+d+y+ INSERT d+a+r+y+d+ s+e+y+ k+n+y+d+
+ aMn+h+a+ r+a+ b+a+ q+r+a+r+ d+a+d+n+ d+r+ y+k+ f+a+y+l+ b+a+
+ d+s+t+w+r+ COPY a+g+r+a+ k+n+y+d+. a+y+n+ d+s+t+w+r+ b+h+ m+r+a+t+b+
+ a+z+ INSERT s+r+y+e+t+r+ a+s+t+. hkt+y+a+l+a+m+k+a+n+ s+e+y+ k+n+y+d+
+ a+z+ t+r+a+k+n+snh+a+ a+s+t+f+a+d+h+ n+k+n+y+d+. t+r+a+k+n+snh+a+
+ m+g+m+w+e+h+ d+s+t+w+r+a+t+y+ h+s+t+n+d+ k+h+ b+y+n+d+ BEGIN w+ COMMIT
+ m+y+aMy+n+d+. a+gfr+ y+k+ d+s+t+w+r+ b+h+ c+w+r+t+ e+a+d+y+ a+g+r+a+
+ snw+d+ PostgreSQL x+w+d+ aMn+ d+s+t+w+r+ r+a+ b+h+ c+w+r+t+ y+k+
+ t+r+a+k+n+sn m+s+t+q+l+ n+gfa+h+ k+r+d+h+ w+ a+g+r+a+ m+y+k+n+d+.
+ m+w+q+e+ی k+h+ t+i+y+y+r+a+t+ z+y+a+d+y+ d+r+ p+a+y+gfa+h+
+ d+a+d+h+ a+n+g+a+m+ m+y+snw+d+ a+n+d+y+s+h+a+y+ q+b+l+y+ r+a+ hkdkf+
+ w+ m+g+d+d+a+:+ a+y+g+a+d+ k+n+y+d+.
+
+ a+s+t+f+a+d+h+ a+z+ gfz+y+n+h+ o -F- d+r+ f+r+m+a+n+ postmaster
+ b+a+e+tk i+y+r+ f+e+a+l+ k+r+d+n+ ()fsync m+y+snw+d+. a+y+n+
+ d+s+t+w+r+ b+e+d+ a+z+ h+r+ t+r+a+k+n+sn a+tjl+a+e+a+t+ r+a+ r+w+y+
+ h+a+r+d+d+y+s+k+ m+n+t+q+l+ m+y+k+n+d+.
+
+ b+r+a+y+ a+f+z+a+y+sn t+e+d+a+d+ b+a+f+r+h+a+y+ hka+f+zHh+
+ a+snt+r+a+k+y+ a+z+ gfz+y+n+h+ B- b+h+ h+m+r+a+h+ f+r+m+a+n+
+ postmaster a+s+t+f+a+d+h+ k+n+y+d+. t+w+g+h+ k+n+y+d+ k+h+ a+gfr+
+ a+y+n+ e+d+d+ x+y+l+y+ b+z+r+gf b+a+snd+ m+m+k+n+ a+s+t+ postmaster
+ a+c+l+a+:+ a+g+r+a+ n+snw+d+. h+r+ b+a+f+r+ 8 k+y+l+w+ b+a+y+t+
+ hka+f+zHh+ n+y+a+z+ d+a+r+d+ w+ t+e+d+a+d+ b+a+f+r+h+a+ b+h+ tjw+r+
+ p+y+sn f+r+dd 64 a+s+t+.
+
+ h+m+tcn+y+n+ m+y+t+w+a+n+ b+a+ gfz+y+n+h+ S- m+y+z+a+n+ hka+f+zHh+
+ a+y+ k+h+ b+r+a+y+ m+r+t+b+s+a+z+y+h+a+y+ m+w+q+t+ t+w+s+tj PostgreSQL
+ a+s+t+f+a+d+h+ m+y+snw+d+ r+a+ a+f+z+a+y+sn d+a+d+. m+q+d+a+r+ p+y+sn
+ f+r+dd 512 k+y+l+w+ b+a+y+t+ a+s+t+.
+
+ a+s+t+f+a+d+h+ a+z+ d+s+t+w+r+ CLUSTER n+y+z+ b+r+a+y+ b+a+l+a+
+ b+r+d+n+ k+a+r+a+y+y+ m+w+tkr+ a+ s+t+. d+s+t+w+r+ r+a+h+n+m+a+y+
+ CLUSTER a+tjl+a+e+a+t+ b+y+snt+r+y+ d+r+ a+y+n+ z+m+y+n+h+ b+h+ snm+a+
+ m+y+d+h+d+.
+
+ 3.7) tch+ a+m+k+a+n+a+t+y+ b+r+a+y+ p+y+d+a+ k+r+d+n+ a+snk+a+l+ w+g+w+d+
+ d+a+r+d+?+
+
+ PostgerSQL a+m+k+a+n+a+t+ m+x+t+l+f+y+ b+r+a+y+ gfz+a+r+sn d+a+d+n+
+ w+dde+y+t+ x+w+d+ d+a+r+d+ k+h+ b+r+a+y+ a+snk+a+l+ z+d+a+y+y+ m+y+
+ t+w+a+n+ a+z+ aMn+h+a+ a+s+t+f+a+d+h+ k+r+d+.
+
+ b+a+ a+s+t+f+a+d+h+ a+z+ gfz+y+n+h+ enable-assert-- t+e+d+a+d+
+ z+y+a+d+y+ ()assert b+r+a+y+ m+w+n+y+t+w+r+ k+r+d+n+ w+ t+w+q+f+
+ b+r+n+a+m+h+ d+r+ c+w+r+t+ b+r+w+z+ x+tja+h+a+y+ n+a+x+w+a+s+t+h+
+ f+e+a+l+ m+y+snw+d+.
+
+ h+m+ Postmaster w+ h+m+ postgres gfz+y+n+h+h+a+y+ z+y+a+d+y+ b+r+a+y+
+ a+snk+a+l+ z+d+a+y+y+ d+a+r+n+d+. m+w+q+e+y+ k+h+ postmaster r+a+
+ a+g+r+a+ m+y+k+n+y+d+ x+r+w+g+y+ a+s+t+a+n+d+a+r+d+ w+ x+tja+ r+a+
+ s+m+t+ f+a+y+l+ log a+r+s+a+l+ k+n+y+d+.
+
cd /usr/local/pgsql
./bin/postmaster >server.log 2>&1 &
-اين كار يك فايل log در بالاترين شاخه PostgreSQL‌ ايجاد مي‌كند. اين فايل حاوي
-اطلاعات مفيدي در مورد مسائل و خطاهايي است كه براي سرور اتفاق افتاده است. براي
-ديدن جزئيات بيشتر مي‌توان از d- به همراه فرمان postmaster‌ استفاده كرد. گزينه
-d- همچنين يك عدد مي‌گيرد كه نشان دهنده سطح جزئياتي است كه در Log‌فايل نوشته
-مي‌شود. با بالابردن اين عدد حجم اطلاعات توليد شده در Logفايل نيز افزايش مي‌يابد.
-اگر postmaster در حال اجرا نباشد، مي‌توانيم postgres را به طور مستقيم از خط
-فرمان اجرا كرده و دستورات SQL را به آن بدهيم. اين كار فقط براي اشكال‌يابي توصيه
-مي‌شود. توجه كنيد كه در اين حالت يك دستور با كاراكتر newline خاتمه پيدا مي‌كند و
-نه با ;. اگر postmaster را با امكانات اشكال‌يابي كامپيل كرده باشيد مي‌توانيد با
-استفاده از يك برنامه اشكال‌ياب اجراي برنامه را مونيتور كنيد.
-اگر postmaster در حال اجرا باشد با دستور psql مي‌توان به postgres متصل شد. با
-پيدا كردن PID فرايند postgres كه psql به آن متصل شده است مي‌توان آن را مونيتور
-كرد. براي اينكار بايد يك برنامه اشكال‌ياب را به آن pid متصل كرد. اگر بخواهيم
-بالا آمدن postgres را مونيتور كنيم كافي است "PGOPTIONS="-W n و psql را اجرا
-كنيم. اين كار باعث مي‌شود كه postgres با n ثانيه تاخير اجرا شود و در اين فاصله
-شما مي‌توانيد برنامه اشكال‌ياب را به آن متصل كرده و با قرار دادن يك نقطه توقف
-روند اجراي آن را مونيتور كنيد.
-postgres گزينه‌هاي s-‌ و A- و t-‌ دارد كه براي پيدا كردن اشكالات بسيار مناسب
-هستند.
-شما مي‌توانيد postgreSQL را با امكانات profiling كامپيل كنيد. اين كار باعث
-مي‌شود كه زمان اجراي دقيق هر تابع در برنامه مشخص شود. خروجي‌هاي توليد شده در اين
-حالت در فايل DLINUX_PROFILE. ريخته مي‌شود.
-3.8) چرا موقعي كه من مي‌خواهم به پايگاه داده وصل شوم پيام "Sorry, too many
-clients" ‌مي‌گيرم؟
-شما بايد حداكثر تعداد فرايندهاي همزمان postmaster را افزايش دهيد. مقدار پيش فرض
-32 است. براي افزايش آن مي‌توان از گزينه N- استفاده كرد و يا فايل postgresql.conf
-را اصلاح نمود
-توجه كنيد كه اگر N- مقداري بيشتر از 32 داشته باشد بايد مقدار B- را نيز افزايش
-دهيم. اين مقدار بايد حداقل دو برابر مقدار N-‌ باشد. براي اعداد خيلي بالا بايد
-بعضي از پارامترهاي كرنل را نيز اصلاح كرد. پارامترهايي نظير حداكثر اندازه حافظه
-اشتراكي SHMMAX ، حداكثر تعداد سمافورها SEMMNI‌ و SEMMNS ، حداكثر تعداد فرايندها
-NPROC، حداكثر فرايندهاي يك كاربر MAXUPRC و حداكثر فايلهاي باز NFILE و NINODE.
-يكي از دلايلي كه تعداد اتصالات همزمان postgreSQL محدود است آن است كه نيازهاي
-PostgreSQL بيش از منابع موجود سيستم نباشد.
-3.9) در شاخه pgsql_tmp چه چيزي قرار دارد؟
-دراين شاخه فايلهاي موقتي قرار دارد كه با اجراي درخواستها به وجود آمده است. به
-عنوان مثال اگر براي اجراي دستور order by نياز به انجام مرتب سازي باشد و در صورتي
-كه حافظه مشخص شده با گزينه S- براي اينكار كافي نباشد سيستم يك فايل موقت در اين
-شاخه ايجاد مي‌كند تا عمل مرتب سازي را انجام دهد.
-فايلهاي موقت معمولاً به صورت اتوماتيك پاك مي‌شود اما اگر postgreSQL در حين مرتب
-سازي crash‌ كند آن فايلها باقي مي‌مانند. با stop و start كردن برنامه postmaster
-اين فايلها پاك مي‌شوند.
-3.10) چرا براي به روز كردن نسخه پايگاه داده من بايد كل داده ها را dump‌ و مجدداً
-restore كنم؟
-تيم برنامه نويس postgreSQL در نسخه‌هاي ارائه شده كه فقط minor آنها متفاوت است
-فقط تغييرات كوچكي اعمال مي‌كنند؛ بنابراين براي به روز كردن از نسخه 7.2‌به 7.2.1
-نيازي به dump و restore نيست. اما در نسخه‌هايي كه major آنها تغيير مي‌كند غالباً
-ساختار داخلي جداول و فايلهاي داده تغيير مي‌كند. اين تغييرات معمولاً‌ پيچيده
-هستند. براي انتقال داده‌هاي موجود در پايگاه داده در اين حالت بايد ‌از dump و
-restore استفاده كرد.
-در نسخه‌هايي كه ساختار روي ديسك تغييري نمي‌كند مي توان از برنامه pg_upgrade براي
-به روز كردن پايگاه داده استفاده كرد بدون اينكه نيازي به استفاده از dump و
-restore باشد. در يادداشتي كه به همراه هر توزيع مي‌آيد ذكر شده است كه آيا برنامه
-pg_upgrade براي اين توزيع وجود دارد يا خير.
-3.11) از چه سخت افزاري بايد استفاده كنم؟
-
-چون اكثر سخت‌افزارهاي PC سازگار هستند مردم فكر مي‌كنند كه كيفيت آنها نيز يكسان
-است. در حاليكه اينطور نيست. استفاده از هاردهاي SCSI و حافظه‌هاي ECC و مادربردهاي
-با كيفيت بالا نسبت به سخت افزارهاي ارزانتر نتايج بهتري از نظر كارايي و پايداري
-سيستم بهمراه خواهد داشت. PostgreSQL روي بيشتر سخت افزارها اجرا مي‌شود اما اگر
-كارايي و اطمينان فاكتورهاي مهمي هستند بايد سخت افزار مناسب استفاده شود. در
-گروههاي پستي در مورد سخت افزار مناسب و انتخاب آن بحث شده است.
-
-
-سوالات عملياتي
-4.1) تفاوت بين binary cursors و Normal cursors چيست؟
-راهنماي دستور DECLARE‌ را مطالعه كنيد.
-4.2) من چگونه مي‌توانم فقط روي چند رديف اول يا يك رديف تصادفي درخواست SELECT‌
-بزنم؟
-راهنماي دستور FETCH يا SELECT...LIMIT را ببينيد.
-در واقع كل درخواست بايد بررسي و ارزيابي شود حتي اگر شما فقط چند رديف اول را
-بخواهيد. براي مثال درخواست ORDER BY را در نظر بگيريد. اگر انديس يا نمايه‌اي براي
-ORDER BY وجود داشته باشد،‌postgreSQL‌ ممكن است بتواند فقط چند سطر اول درخواستي
-را ارزيابي كند و يا اينكه كل درخواست پردازش شود تا تعداد رديف‌هاي درخواستي توليد
-شود.
-براي انتخاب يك سطر تصادفي به روش زير عمل مي‌كنيم:
+ a+y+n+ k+a+r+ y+k+ f+a+y+l+ log d+r+ b+a+l+a+t+r+y+n+ sna+x+h+
+ PostgreSQL a+y+g+a+d+ m+y+k+n+d+. a+y+n+ f+a+y+l+ hka+w+y+
+ a+tjl+a+e+a+t+ m+f+y+d+y+ d+r+ m+w+r+d+ m+s+a+yHl+ w+ x+tja+h+a+y+y+
+ a+s+t+ k+h+ b+r+a+y+ s+r+w+r+ a+t+f+a+q+ a+f+t+a+d+h+ a+s+t+. b+r+a+y+
+ d+y+d+n+ g+z+yHy+a+t+ b+y+snt+r+ m+y+t+w+a+n+ a+z+ d- b+h+ h+m+r+a+h+
+ f+r+m+a+n+ postmaster a+s+t+f+a+d+h+ k+r+d+. gfz+y+n+h+ d-
+ h+m+tcn+y+n+ y+k+ e+d+d+ m+y+gfy+r+d+ k+h+ n+sna+n+ d+h+n+d+h+ s+tjhk
+ g+z+yHy+a+t+y+ a+s+t+ k+h+ d+r+ Logf+a+y+l+ n+w+snt+h+ m+y+snw+d+.
+ b+a+ b+a+l+a+b+r+d+n+ a+y+n+ e+d+d+ hkg+m+ a+tjl+a+e+a+t+ t+w+l+y+d+
+ snd+h+ d+r+ Logf+a+y+l+ n+y+z+ a+f+z+a+y+sn m+y+y+a+b+d+.
+
+ a+gfr+ postmaster d+r+ hka+l+ a+g+r+a+ n+b+a+snd+,+ m+y+t+w+a+n+y+m+
+ postgres r+a+ b+h+ tjw+r+ m+s+t+q+y+m+ a+z+ x+tj f+r+m+a+n+ a+g+r+a+
+ k+r+d+h+ w+ d+s+t+w+r+a+t+ SQL r+a+ b+h+ aMn+ b+d+h+y+m+. a+y+n+
+ k+a+r+ f+q+tj b+r+a+y+ a+snk+a+l+y+a+b+y+ t+w+c+y+h+ m+y+snw+d+.
+ t+w+g+h+ k+n+y+d+ k+h+ d+r+ a+y+n+ hka+l+t+ y+k+ d+s+t+w+r+ b+a+
+ k+a+r+a+k+t+r+ newline x+a+t+m+h+ p+y+d+a+ m+y+k+n+d+ w+ n+h+ b+a+ ;.
+ a+gfr+ postmaster r+a+ b+a+ a+m+k+a+n+a+t+ a+snk+a+l+y+a+b+y+
+ k+a+m+p+y+l+ k+r+d+h+ b+a+sny+d+ m+y+t+w+a+n+y+d+ b+a+ a+s+t+f+a+d+h+
+ a+z+ y+k+ b+r+n+a+m+h+ a+snk+a+l+y+a+b+ a+g+r+a+y+ b+r+n+a+m+h+ r+a+
+ m+w+n+y+t+w+r+ k+n+y+d+.
+
+ a+gfr+ postmaster d+r+ hka+l+ a+g+r+a+ b+a+snd+ b+a+ d+s+t+w+r+ psql
+ m+y+t+w+a+n+ b+h+ postgres m+t+c+l+ snd+. b+a+ p+y+d+a+ k+r+d+n+ PID
+ f+r+a+y+n+d+ postgres k+h+ psql b+h+ aMn+ m+t+c+l+ snd+h+ a+s+t+ m+y+
+ t+w+a+n+ aMn+ r+a+ m+w+n+y+t+w+r+ k+r+d+. b+r+a+y+ a+y+n+k+a+r+
+ b+a+y+d+ y+k+ b+r+n+a+m+h+ a+snk+a+l+y+a+b+ r+a+ b+h+ aMn+ pid
+ m+t+c+l+ k+r+d+. a+gfr+ b+x+w+a+h+y+m+ b+a+l+a+ aMm+d+n+ postgres r+a+
+ m+w+n+y+t+w+r+ k+n+y+m+ k+a+f+y+ a+s+t+ "PGOPTIONS="-W n w+ psql r+a+
+ a+g+r+a+ k+n+y+m+. a+y+n+ k+a+r+ b+a+e+tk m+y+snw+d+ k+h+ postgres
+ b+a+ n tka+n+y+h+ t+a+x+y+r+ a+g+r+a+ snw+d+ w+ d+r+ a+y+n+ f+a+c+l+h+
+ snm+a+ m+y+t+w+a+n+y+d+ b+r+n+a+m+h+ a+snk+a+l+y+a+b+ r+a+ b+h+ aMn+
+ m+t+c+l+ k+r+d+h+ w+ b+a+ q+r+a+r+ d+a+d+n+ y+k+ n+q+tjh+ t+w+q+f+
+ r+w+n+d+ a+g+r+a+y+ aMn+ r+a+ m+w+n+y+t+w+r+ k+n+y+d+.
+
+ postgres gfz+y+n+h+h+a+y+ s- w+ A- w+ t- d+a+r+d+ k+h+ b+r+a+y+
+ p+y+d+a+ k+r+d+n+ a+snk+a+l+a+t+ b+s+y+a+r+ m+n+a+s+b+ h+s+t+n+d+.
+
+ snm+a+ m+y+t+w+a+n+y+d+ postgreSQL r+a+ b+a+ a+m+k+a+n+a+t+ profiling
+ k+a+m+p+y+l+ k+n+y+d+. a+y+n+ k+a+r+ b+a+e+tk m+y+snw+d+ k+h+ z+m+a+n+
+ a+g+r+a+y+ d+q+y+q+ h+r+ t+a+b+e+ d+r+ b+r+n+a+m+h+ m+snx+c+ snw+d+.
+ x+r+w+g+y+h+a+y+ t+w+l+y+d+ snd+h+ d+r+ a+y+n+ hka+l+t+ d+r+ f+a+y+l+
+ DLINUX_PROFILE. r+y+x+t+h+ m+y+snw+d+.
+
+ 3.8) tcr+a+ m+w+q+e+y+ k+h+ m+n+ m+y+x+w+a+h+m+ b+h+ p+a+y+gfa+h+ d+a+d+h+
+ w+c+l+ snw+m+ p+y+a+m+ "Sorry, too many clients" m+y+gfy+r+m+?+
+
+ snm+a+ b+a+y+d+ hkd+a+k+tkr+ t+e+d+a+d+ f+r+a+y+n+d+h+a+y+
+ h+m+z+m+a+n+ postmaster r+a+ a+f+z+a+y+sn d+h+y+d+. m+q+d+a+r+ p+y+sn
+ f+r+dd 32 a+s+t+. b+r+a+y+ a+f+z+a+y+sn aMn+ m+y+t+w+a+n+ a+z+
+ gfz+y+n+h+ N- a+s+t+f+a+d+h+ k+r+d+ w+ y+a+ f+a+y+l+ postgresql.conf
+ r+a+ a+c+l+a+hk n+m+w+d+
+
+ t+w+g+h+ k+n+y+d+ k+h+ a+gfr+ N- m+q+d+a+r+y+ b+y+snt+r+ a+z+ 32
+ d+a+snt+h+ b+a+snd+ b+a+y+d+ m+q+d+a+r+ B- r+a+ n+y+z+ a+f+z+a+y+sn
+ d+h+y+m+. a+y+n+ m+q+d+a+r+ b+a+y+d+ hkd+a+q+l+ d+w+ b+r+a+b+r+
+ m+q+d+a+r+ N- b+a+snd+. b+r+a+y+ a+e+d+a+d+ x+y+l+y+ b+a+l+a+ b+a+y+d+
+ b+e+ddy+ a+z+ p+a+r+a+m+t+r+h+a+y+ k+r+n+l+ r+a+ n+y+z+ a+c+l+a+hk
+ k+r+d+. p+a+r+a+m+t+r+h+a+y+y+ n+zHy+r+ hkd+a+k+tkr+ a+n+d+a+z+h+
+ hka+f+zHh+ a+snt+r+a+k+y+ SHMMAX ,+ hkd+a+k+tkr+ t+e+d+a+d+
+ s+m+a+f+w+r+h+a+ SEMMNI w+ SEMMNS ,+ hkd+a+k+tkr+ t+e+d+a+d+
+ f+r+a+y+n+d+h+a+ NPROC,+ hkd+a+k+tkr+ f+r+a+y+n+d+h+a+y+ y+k+
+ k+a+r+b+r+ MAXUPRC w+ hkd+a+k+tkr+ f+a+y+l+h+a+y+ b+a+z+ NFILE w+
+ NINODE. y+k+y+ a+z+ d+l+a+y+l+y+ k+h+ t+e+d+a+d+ a+t+c+a+l+a+t+
+ h+m+z+m+a+n+ postgreSQL m+hkd+w+d+ a+s+t+ aMn+ a+s+t+ k+h+
+ n+y+a+z+h+a+y+ PostgreSQL b+y+sn a+z+ m+n+a+b+e+ m+w+g+w+d+ s+y+s+t+m+
+ n+b+a+snd+.
+
+ 3.9) d+r+ sna+x+h+ pgsql_tmp tch+ tcy+z+y+ q+r+a+r+ d+a+r+d+?+
+
+ d+r+a+y+n+ sna+x+h+ f+a+y+l+h+a+y+ m+w+q+t+y+ q+r+a+r+ d+a+r+d+ k+h+
+ b+a+ a+g+r+a+y+ d+r+x+w+a+s+t+h+a+ b+h+ w+g+w+d+ aMm+d+h+ a+s+t+. b+h+
+ e+n+w+a+n+ m+tka+l+ a+gfr+ b+r+a+y+ a+g+r+a+y+ d+s+t+w+r+ order by
+ n+y+a+z+ b+h+ a+n+g+a+m+ m+r+t+b+ s+a+z+y+ b+a+snd+ w+ d+r+ c+w+r+t+y+
+ k+h+ hka+f+zHh+ m+snx+c+ snd+h+ b+a+ gfz+y+n+h+ S- b+r+a+y+
+ a+y+n+k+a+r+ k+a+f+y+ n+b+a+snd+ s+y+s+t+m+ y+k+ f+a+y+l+ m+w+q+t+
+ d+r+ a+y+n+ sna+x+h+ a+y+g+a+d+ m+y+k+n+d+ t+a+ e+m+l+ m+r+t+b+
+ s+a+z+y+ r+a+ a+n+g+a+m+ d+h+d+.
+
+ f+a+y+l+h+a+y+ m+w+q+t+ m+e+m+w+l+a+:+ b+h+ c+w+r+t+ a+t+w+m+a+t+y+k+
+ p+a+k+ m+y+snw+d+ a+m+a+ a+gfr+ postgreSQL d+r+ hky+n+ m+r+t+b+
+ s+a+z+y+ crash k+n+d+ aMn+ f+a+y+l+h+a+ b+a+q+y+ m+y+m+a+n+n+d+. b+a+
+ stop w+ start k+r+d+n+ b+r+n+a+m+h+ postmaster a+y+n+ f+a+y+l+h+a+
+ p+a+k+ m+y+snw+n+d+.
+
+ 3.10) tcr+a+ b+r+a+y+ b+h+ r+w+z+ k+r+d+n+ n+s+x+h+ p+a+y+gfa+h+ d+a+d+h+
+ m+n+ b+a+y+d+ k+l+ d+a+d+h+ h+a+ r+a+ dump w+ m+g+d+d+a+:+ restore k+n+m+?+
+
+ t+y+m+ b+r+n+a+m+h+ n+w+y+s+ postgreSQL d+r+ n+s+x+h+h+a+y+ a+r+a+yHh+
+ snd+h+ k+h+ f+q+tj minor aMn+h+a+ m+t+f+a+w+t+ a+s+t+ f+q+tj
+ t+i+y+y+r+a+t+ k+w+tck+y+ a+e+m+a+l+ m+y+k+n+n+d+;+ b+n+a+b+r+a+y+n+
+ b+r+a+y+ b+h+ r+w+z+ k+r+d+n+ a+z+ n+s+x+h+ 7.2b+h+ 7.2.1 n+y+a+z+y+
+ b+h+ dump w+ restore n+y+s+t+. a+m+a+ d+r+ n+s+x+h+h+a+y+y+ k+h+ major
+ aMn+h+a+ t+i+y+y+r+ m+y+k+n+d+ i+a+l+b+a+:+ s+a+x+t+a+r+ d+a+x+l+y+
+ g+d+a+w+l+ w+ f+a+y+l+h+a+y+ d+a+d+h+ t+i+y+y+r+ m+y+k+n+d+. a+y+n+
+ t+i+y+y+r+a+t+ m+e+m+w+l+a+:+ p+y+tcy+d+h+ h+s+t+n+d+. b+r+a+y+
+ a+n+t+q+a+l+ d+a+d+h+h+a+y+ m+w+g+w+d+ d+r+ p+a+y+gfa+h+ d+a+d+h+ d+r+
+ a+y+n+ hka+l+t+ b+a+y+d+ a+z+ dump w+ restore a+s+t+f+a+d+h+ k+r+d+.
+
+ d+r+ n+s+x+h+h+a+y+y+ k+h+ s+a+x+t+a+r+ r+w+y+ d+y+s+k+ t+i+y+y+r+y+
+ n+m+y+k+n+d+ m+y+ t+w+a+n+ a+z+ b+r+n+a+m+h+ pg_upgrade b+r+a+y+ b+h+
+ r+w+z+ k+r+d+n+ p+a+y+gfa+h+ d+a+d+h+ a+s+t+f+a+d+h+ k+r+d+ b+d+w+n+
+ a+y+n+k+h+ n+y+a+z+y+ b+h+ a+s+t+f+a+d+h+ a+z+ dump w+ restore
+ b+a+snd+. d+r+ y+a+d+d+a+snt+y+ k+h+ b+h+ h+m+r+a+h+ h+r+ t+w+z+y+e+
+ m+y+aMy+d+ dkk+r+ snd+h+ a+s+t+ k+h+ aMy+a+ b+r+n+a+m+h+ pg_upgrade
+ b+r+a+y+ a+y+n+ t+w+z+y+e+ w+g+w+d+ d+a+r+d+ y+a+ x+y+r+.
+
+ 3.11) a+z+ tch+ s+x+t+ a+f+z+a+r+y+ b+a+y+d+ a+s+t+f+a+d+h+ k+n+m+?+
+
+ tcw+n+ a+k+tkr+ s+x+t+a+f+z+a+r+h+a+y+ PC s+a+z+gfa+r+ h+s+t+n+d+
+ m+r+d+m+ f+k+r+ m+y+k+n+n+d+ k+h+ k+y+f+y+t+ aMn+h+a+ n+y+z+
+ y+k+s+a+n+ a+s+t+. d+r+ hka+l+y+k+h+ a+y+n+tjw+r+ n+y+s+t+.
+ a+s+t+f+a+d+h+ a+z+ h+a+r+d+h+a+y+ SCSI w+ hka+f+zHh+h+a+y+ ECC w+
+ m+a+d+r+b+r+d+h+a+y+ b+a+ k+y+f+y+t+ b+a+l+a+ n+s+b+t+ b+h+ s+x+t+
+ a+f+z+a+r+h+a+y+ a+r+z+a+n+t+r+ n+t+a+y+g+ b+h+t+r+y+ a+z+ n+zHr+
+ k+a+r+a+y+y+ w+ p+a+y+d+a+r+y+ s+y+s+t+m+ b+h+m+r+a+h+ x+w+a+h+d+
+ d+a+snt+. PostgreSQL r+w+y+ b+y+snt+r+ s+x+t+ a+f+z+a+r+h+a+ a+g+r+a+
+ m+y+snw+d+ a+m+a+ a+gfr+ k+a+r+a+y+y+ w+ a+tjm+y+n+a+n+
+ f+a+k+t+w+r+h+a+y+ m+h+m+y+ h+s+t+n+d+ b+a+y+d+ s+x+t+ a+f+z+a+r+
+ m+n+a+s+b+ a+s+t+f+a+d+h+ snw+d+. d+r+ gfr+w+h+h+a+y+ p+s+t+y+ d+r+
+ m+w+r+d+ s+x+t+ a+f+z+a+r+ m+n+a+s+b+ w+ a+n+t+x+a+b+ aMn+ b+hktk
+ snd+h+ a+s+t+.
+ _________________________________________________________________
+
+ s+w+a+l+a+t+ e+m+l+y+a+t+y+
+
+ 4.1) t+f+a+w+t+ b+y+n+ binary cursors w+ Normal cursors tcy+s+t+?+
+
+ r+a+h+n+m+a+y+ d+s+t+w+r+ DECLARE r+a+ m+tja+l+e+h+ k+n+y+d+.
+
+ 4.2) m+n+ tcgfw+n+h+ m+y+t+w+a+n+m+ f+q+tj r+w+y+ tcn+d+ r+d+y+f+ a+w+l+
+ y+a+ y+k+ r+d+y+f+ t+c+a+d+f+y+ d+r+x+w+a+s+t+ SELECT b+z+n+m+?+
+
+ r+a+h+n+m+a+y+ d+s+t+w+r+ FETCH y+a+ SELECT...LIMIT r+a+
+ b+b+y+n+y+d+.
+
+ d+r+ w+a+q+e+ k+l+ d+r+x+w+a+s+t+ b+a+y+d+ b+r+r+s+y+ w+
+ a+r+z+y+a+b+y+ snw+d+ hkt+y+ a+gfr+ snm+a+ f+q+tj tcn+d+ r+d+y+f+
+ a+w+l+ r+a+ b+x+w+a+h+y+d+. b+r+a+y+ m+tka+l+ d+r+x+w+a+s+t+ ORDER BY
+ r+a+ d+r+ n+zHr+ b+gfy+r+y+d+. a+gfr+ a+n+d+y+s+ y+a+ n+m+a+y+h+a+y+
+ b+r+a+y+ ORDER BY w+g+w+d+ d+a+snt+h+ b+a+snd+,+postgreSQL m+m+k+n+
+ a+s+t+ b+t+w+a+n+d+ f+q+tj tcn+d+ s+tjr+ a+w+l+ d+r+x+w+a+s+t+y+ r+a+
+ a+r+z+y+a+b+y+ k+n+d+ w+ y+a+ a+y+n+k+h+ k+l+ d+r+x+w+a+s+t+
+ p+r+d+a+z+sn snw+d+ t+a+ t+e+d+a+d+ r+d+y+f+h+a+y+ d+r+x+w+a+s+t+y+
+ t+w+l+y+d+ snw+d+.
+
+ b+r+a+y+ a+n+t+x+a+b+ y+k+ s+tjr+ t+c+a+d+f+y+ b+h+ r+w+sn z+y+r+
+ e+m+l+ m+y+k+n+y+m+:
+
SELECT col
FROM tab
ORDER BY random()
LIMIT 1;
-4.3) من چگونه مي‌توانم ليستي از جداول يا ساير چيزهايي كه در psql‌ وجود دارد را
-ببينم؟
-براي ديدن ليست جداول دستور dt\ را در برنامه psql‌ استفاده كنيد. براي ديدن ليست
-كامل فرمانها ?\ را اجرا كنيد. راه ديگر خواندن متن برنامه psql‌ است كه در شاخه
-pgsql/src/bin/psql/describe.c ‌قرار دارد. اين فايل حاوي فرامين SQLيي است كه
-خروجي را براي دستوراتي كه با \‌در psql شروع مي‌شوند توليد مي‌كنند. راه ديگر
-اجراي psql با گزينه E-‌است. اينكار باعث مي‌شود كه psql قبل از اجرا هر دستور
-SQL‌متناظر آن را نشان دهد. PostgreSQL‌همچنين يك برنامه SQLi دارد كه مي‌توان با
-استفاده از آن اطلاعات داخلي پايگاه داده را استخراج كرد.
-4.4) چگونه يك ستون جدول را حذف مي‌كنيد؟ چگونه نوع داده آن را عوض كنيم؟
-حذف يك ستون در توزيع 7.3 با استفاده از دستور ALTER TABLE DROP COLUMN اضافه شده
-است. در نسخه‌هاي قبلي به روش زير عمل كنيد:
+
+ 4.3) m+n+ tcgfw+n+h+ m+y+t+w+a+n+m+ l+y+s+t+y+ a+z+ g+d+a+w+l+ y+a+
+ s+a+y+r+ tcy+z+h+a+y+y+ k+h+ d+r+ psql w+g+w+d+ d+a+r+d+ r+a+ b+b+y+n+m+?+
+
+ b+r+a+y+ d+y+d+n+ l+y+s+t+ g+d+a+w+l+ d+s+t+w+r+ dt\ r+a+ d+r+
+ b+r+n+a+m+h+ psql a+s+t+f+a+d+h+ k+n+y+d+. b+r+a+y+ d+y+d+n+ l+y+s+t+
+ k+a+m+l+ f+r+m+a+n+h+a+ ?\ r+a+ a+g+r+a+ k+n+y+d+. r+a+h+ d+y+gfr+
+ x+w+a+n+d+n+ m+t+n+ b+r+n+a+m+h+ psql a+s+t+ k+h+ d+r+ sna+x+h+
+ pgsql/src/bin/psql/describe.c q+r+a+r+ d+a+r+d+. a+y+n+ f+a+y+l+
+ hka+w+y+ f+r+a+m+y+n+ SQLy+y+ a+s+t+ k+h+ x+r+w+g+y+ r+a+ b+r+a+y+
+ d+s+t+w+r+a+t+y+ k+h+ b+a+ \d+r+ psql snr+w+e+ m+y+snw+n+d+ t+w+l+y+d+
+ m+y+k+n+n+d+. r+a+h+ d+y+gfr+ a+g+r+a+y+ psql b+a+ gfz+y+n+h+ E-
+ a+s+t+. a+y+n+k+a+r+ b+a+e+tk m+y+snw+d+ k+h+ psql q+b+l+ a+z+
+ a+g+r+a+ h+r+ d+s+t+w+r+ SQLm+t+n+a+zHr+ aMn+ r+a+ n+sna+n+ d+h+d+.
+ PostgreSQLh+m+tcn+y+n+ y+k+ b+r+n+a+m+h+ SQLi d+a+r+d+ k+h+ m+y+
+ t+w+a+n+ b+a+ a+s+t+f+a+d+h+ a+z+ aMn+ a+tjl+a+e+a+t+ d+a+x+l+y+
+ p+a+y+gfa+h+ d+a+d+h+ r+a+ a+s+t+x+r+a+g+ k+r+d+.
+
+ 4.4) tcgfw+n+h+ y+k+ s+t+w+n+ g+d+w+l+ r+a+ hkdkf+ m+y+k+n+y+d+?+
+ tcgfw+n+h+ n+w+e+ d+a+d+h+ aMn+ r+a+ e+w+dd k+n+y+m+?+
+
+ hkdkf+ y+k+ s+t+w+n+ d+r+ t+w+z+y+e+ 7.3 b+a+ a+s+t+f+a+d+h+ a+z+
+ d+s+t+w+r+ ALTER TABLE DROP COLUMN a+dda+f+h+ snd+h+ a+s+t+. d+r+
+ n+s+x+h+h+a+y+ q+b+l+y+ b+h+ r+w+sn z+y+r+ e+m+l+ k+n+y+d+:
+
BEGIN;
LOCK TABLE old_table;
- SELECT ... -- تمام ستونها غير از ستوني كه مي‌خواهيد آن را حذف كنيد را در اينجا بياوريد
+ SELECT ... -- t+m+a+m+ s+t+w+n+h+a+ i+y+r+ a+z+ s+t+w+n+y+ k+h+ m+y+x+w+a+h+y+d+ aMn+ r+a+ hkdkf+ k+n+y+d+ r+a+ d+r+ a+y+n+g+a+ b+y+a+w+r+y+d+
INTO TABLE new_table
FROM old_table;
DROP TABLE old_table;
ALTER TABLE new_table RENAME TO old_table;
COMMIT;
-براي عوض كردن نوع داده يك ستون به روش زير عمل كنيد:
+
+ b+r+a+y+ e+w+dd k+r+d+n+ n+w+e+ d+a+d+h+ y+k+ s+t+w+n+ b+h+ r+w+sn
+ z+y+r+ e+m+l+ k+n+y+d+:
+
BEGIN;
ALTER TABLE tab ADD COLUMN new_col new_data_type;
UPDATE tab SET new_col = CAST(old_col AS new_data_type);
ALTER TABLE tab DROP COLUMN old_col;
COMMIT;
-4.5) حداكثر اندازه يك رديف،‌ جدول و خود پايگاه داده چقدر است؟
-محدوديتها عبارتند از:
- حداكثر اندازه پايگاه داده نامحدود (تا 32 ترابايت وجود دارد)
- حداكثر اندازه يك جدول 32 ترابايت
- حداكثر ا ندازه يك رديف 1.6 ترابايت
- حداكثر اندازه يك فيلد 1 گيگا بايت
- حداكثر اندازه رديفهاي يك جدول نا محدود
- حداكثر ستونهاي يك جدول بسته به نوع جدول بين 250 تا 6000
- حداكثر انديسهاي يك جدول نا محدود
-البته در حالت نامحدود نيز ما محدود به حجم هاردديسك و فضاي حافظه خواهيم بود. در
-صورتي که مقادير مشخص شده به عنوان نامحدود به صورت غير معمولي بزرك شوند كارايي
-سيستم كاهش خواهد يافت.
-براي ذخيره كردن جداول با اندازه خيلي بزرگ نيازي نيست كه سيستم عامل امكان ايجاد
-فايلهاي بزرگ را داشته باشد. بلكه جداول خيلي بزرگ به صورت فايلهايي به حجم يك گيگا
-بايت نگاهداري مي‌شوند.
-اگر اندازه بلوكهاي داده را برابر 32 كيلو بايت قرار دهيم حداكثر اندازه جدول و
-حداكثر تعداد ستونها 4 برابر خواهد شد.
-4.6) چقدر فضاي ديسك سخت براي ذخيره كردن داده‌‌هاي يك فايل متني مورد نياز است؟
-يك پايگاه داده PostgreSQL‌ تا 5 برابر فضايي روي هاردديسك براي نگاهداري يك فايل
-متني نياز دارد.
-به عنوان مثال يك فايل با 100000 خط را در نظر بگيريد كه در هر خط يك عدد صحيح و يك
-توضيح متني آمده است. فرض كنيد كه رشته متني به طور متوسط 20 بايت باشد. اندازه
-فايل برابر 2.8 مگا بايت خواهد بود ولي PostgreSQL براي نگاهداري اين فايل به 6.4
-مگا بايت اطلاعات نياز خواهد داشت.
- 32 bytes: اندازه سرايند هر خط به طور تقريبي
- 24 bytes: يك عدد صحيح و يك رشته 24 بايتي
- + 4 bytes: اشاره گر روي صفحه به يك چندتايي
+
+ 4.5) hkd+a+k+tkr+ a+n+d+a+z+h+ y+k+ r+d+y+f+,+ g+d+w+l+ w+ x+w+d+
+ p+a+y+gfa+h+ d+a+d+h+ tcq+d+r+ a+s+t+?+
+
+ m+hkd+w+d+y+t+h+a+ e+b+a+r+t+n+d+ a+z+:
+
+ hkd+a+k+tkr+ a+n+d+a+z+h+ p+a+y+gfa+h+ d+a+d+h+ n+a+m+hkd+w+d+(t+a+ 32 t+r+a+b+a+y+t+ w+g+w+d+ d+a+r+d+)
+ hkd+a+k+tkr+ a+n+d+a+z+h+ y+k+ g+d+w+l+ 32 t+r+a+b+a+y+t+
+ hkd+a+k+tkr+ a+ n+d+a+z+h+ y+k+ r+d+y+f+ 1.6 t+r+a+b+a+y+t+
+ hkd+a+k+tkr+ a+n+d+a+z+h+ y+k+ f+y+l+d+ 1 gfy+gfa+ b+a+y+t+
+ hkd+a+k+tkr+ a+n+d+a+z+h+ r+d+y+f+h+a+y+ y+k+ g+d+w+l+ n+a+ m+hkd+w+d+
+ hkd+a+k+tkr+ s+t+w+n+h+a+y+ y+k+ g+d+w+l+ b+s+t+h+ b+h+ n+w+e+ g+d+w+l+ b+y+n+ 250 t+a+ 6000
+ hkd+a+k+tkr+ a+n+d+y+s+h+a+y+ y+k+ g+d+w+l+ n+a+ m+hkd+w+d+
+
+ a+l+b+t+h+ d+r+ hka+l+t+ n+a+m+hkd+w+d+ n+y+z+ m+a+ m+hkd+w+d+ b+h+
+ hkg+m+ h+a+r+d+d+y+s+k+ w+ f+dda+y+ hka+f+zHh+ x+w+a+h+y+m+ b+w+d+.
+ d+r+ c+w+r+t+y+ کh+ m+q+a+d+y+r+ m+snx+c+ snd+h+ b+h+ e+n+w+a+n+
+ n+a+m+hkd+w+d+ b+h+ c+w+r+t+ i+y+r+ m+e+m+w+l+y+ b+z+r+k+ snw+n+d+
+ k+a+r+a+y+y+ s+y+s+t+m+ k+a+h+sn x+w+a+h+d+ y+a+f+t+.
+
+ b+r+a+y+ dkx+y+r+h+ k+r+d+n+ g+d+a+w+l+ b+a+ a+n+d+a+z+h+ x+y+l+y+
+ b+z+r+gf n+y+a+z+y+ n+y+s+t+ k+h+ s+y+s+t+m+ e+a+m+l+ a+m+k+a+n+
+ a+y+g+a+d+ f+a+y+l+h+a+y+ b+z+r+gf r+a+ d+a+snt+h+ b+a+snd+. b+l+k+h+
+ g+d+a+w+l+ x+y+l+y+ b+z+r+gf b+h+ c+w+r+t+ f+a+y+l+h+a+y+y+ b+h+
+ hkg+m+ y+k+ gfy+gfa+ b+a+y+t+ n+gfa+h+d+a+r+y+ m+y+snw+n+d+.
+
+ a+gfr+ a+n+d+a+z+h+ b+l+w+k+h+a+y+ d+a+d+h+ r+a+ b+r+a+b+r+ 32
+ k+y+l+w+ b+a+y+t+ q+r+a+r+ d+h+y+m+ hkd+a+k+tkr+ a+n+d+a+z+h+ g+d+w+l+
+ w+ hkd+a+k+tkr+ t+e+d+a+d+ s+t+w+n+h+a+ 4 b+r+a+b+r+ x+w+a+h+d+ snd+.
+
+ 4.6) tcq+d+r+ f+dda+y+ d+y+s+k+ s+x+t+ b+r+a+y+ dkx+y+r+h+ k+r+d+n+
+ d+a+d+h+h+a+y+ y+k+ f+a+y+l+ m+t+n+y+ m+w+r+d+ n+y+a+z+ a+s+t+?+
+
+ y+k+ p+a+y+gfa+h+ d+a+d+h+ PostgreSQL t+a+ 5 b+r+a+b+r+ f+dda+y+y+
+ r+w+y+ h+a+r+d+d+y+s+k+ b+r+a+y+ n+gfa+h+d+a+r+y+ y+k+ f+a+y+l+
+ m+t+n+y+ n+y+a+z+ d+a+r+d+.
+
+ b+h+ e+n+w+a+n+ m+tka+l+ y+k+ f+a+y+l+ b+a+ 100000 x+tj r+a+ d+r+
+ n+zHr+ b+gfy+r+y+d+ k+h+ d+r+ h+r+ x+tj y+k+ e+d+d+ c+hky+hk w+ y+k+
+ t+w+ddy+hk m+t+n+y+ aMm+d+h+ a+s+t+. f+r+dd k+n+y+d+ k+h+ r+snt+h+
+ m+t+n+y+ b+h+ tjw+r+ m+t+w+s+tj 20 b+a+y+t+ b+a+snd+. a+n+d+a+z+h+
+ f+a+y+l+ b+r+a+b+r+ 2.8 m+gfa+ b+a+y+t+ x+w+a+h+d+ b+w+d+ w+l+y+
+ PostgreSQL b+r+a+y+ n+gfa+h+d+a+r+y+ a+y+n+ f+a+y+l+ b+h+ 6.4 m+gfa+
+ b+a+y+t+ a+tjl+a+e+a+t+ n+y+a+z+ x+w+a+h+d+ d+a+snt+.
+
+ 32 bytes: a+n+d+a+z+h+ s+r+a+y+n+d+ h+r+ x+tj b+h+ tjw+r+ t+q+r+y+b+y+
+ 24 bytes: y+k+ e+d+d+ c+hky+hk w+ y+k+ r+snt+h+ 24 b+a+y+t+y+
+ + 4 bytes: a+sna+r+h+ gfr+ r+w+y+ c+f+hkh+ b+h+ y+k+ tcn+d+t+a+y+y+
----------------------------------------
- 60 bytes در هر رديف
+ 60 bytes d+r+ h+r+ r+d+y+f+
-اندازه صفحات داده در PostgreSQL برابر با 8 كيلو بايت است
- 8192 تعداد بايت‌ها در هر صفحه
- ------------------- = 136 تعداد رديف‌ها در يك صفحه پايگاه داده
- 60 تعداد بايت‌هاي هر رديف
+a+n+d+a+z+h+ c+f+hka+t+ d+a+d+h+ d+r+ PostgreSQL b+r+a+b+r+ b+a+ 8 k+y+l+w+ b+a+y+t+ a+s+t+
+ 8192 t+e+d+a+d+ b+a+y+t+h+a+ d+r+ h+r+ c+f+hkh+
+ ------------------- = 136 t+e+d+a+d+ r+d+y+f+h+a+ d+r+ y+k+ c+f+hkh+ p+a+y+gfa+h+ d+a+d+h+
+ 60 t+e+d+a+d+ b+a+y+t+h+a+y+ h+r+ r+d+y+f+
- 100000 تعداد رديفها
- -------------------- = تعدادصفحات پايگاه داده
- 128 تعداد رديفها در هر صفحه
+ 100000 t+e+d+a+d+ r+d+y+f+h+a+
+ -------------------- = t+e+d+a+d+c+f+hka+t+ p+a+y+gfa+h+ d+a+d+h+
+ 128 t+e+d+a+d+ r+d+y+f+h+a+ d+r+ h+r+ c+f+hkh+
-735 تعداد صفحات * 8192 تعداد بايت‌هاي هر صفحه = 6,021,120 مگا بايت
-سربار انديسها يا نمايه‌ها از اين مقدار كمتر است ولي چون شامل خود داده‌ها هم هست
-ممکن است اندازه آنها هم بزرگ شود.
-NULLها به صورت bitmap ذخيره مي‌شوند و از اينرو فضاي بسيار كمي را اشغال مي‌كنند.
-4.7) چگونه مي‌توانم بفهمم كه چه كاربران،‌ پايگاه داده،‌ نمايه و جداولي در سيستم
-تعريف شده است؟
-psql تعداد زيادي دستور دارد كه با \ شروع مي‌شوند و اين اطلاعات را در اختيار ما
-قرار مي‌دهند. براي ديدن آنها دستور ?\ را اجرا كنيد. همچنين جداول سيستمي كه نام
-آنها با pg_ ‌شروع مي‌شود نيز اين اطلاعات را در خود دارند. اجراي برنامه psql با
-گزينه l- نيز باعث نشان دادن ليست تمام پايگاههاي داده مي‌شود.
-همچنين فايل pgsql/src/tutorial/syscat.source نيز فرمانهاي SELECT كه با استفاده
-از آن مي‌توان اطلاعات پايگاه داده را استخراج كرد شرح داده است.
-4.8) چرا درخواستهاي من كند اجرا مي‌شوند يا چرا از نمايه ها استفاده نمي‌كنند؟
-به طور معمول براي درخواستها از نمايه‌ها استفاده نمي‌شود. تنها در صورتي از
-نمايه‌ها استفاده مي‌شود كه اندازه جدول از يك اندازه حداقل بزرگتر باشد و درخواست
-هم فقط قسمتي از رديف‌هاي جدول را انتخاب كرده باشد. دليل اين كار آن است كه
-دسترسي‌هاي تصادفي به هاردديسك كه به خاطر نمايه‌ها ايجاد مي‌شود ممكن است از
-خواندن مستقيم جدول يا خواندن ترتيبي ركوردها كندتر باشد.
-براي تعيين اينكه از نمايه استفاده شود يا خير، PostgreSQL بايد اطلاعات آماري را
-در مورد يك جدول بداند. اين اطلاعات توسط دستور ANALYZE و VACUUM ANALYZE به دست
-مي‌آيد. با استفاده از اين اطلاعات،‌ بهينه ساز از تعداد رديف‌هاي يك جدول اطلاع
-پيدا مي‌كند و بهتر مي‌تواند تعيين كند كه آيا از نمايه استفاده شود يا خير.
-اطلاعات آماري همچنين براي تعيين ترتيب الحاق و روشهاي الحاق به صورت بهينه نيز
-كاربرد دارد. جمع آوري اطلاعات آماري بايد به صورت دوره‌اي همزمان با تغيير
-داده‌هاي جدول انجام شود.
-نمايه‌ها به طور معمول همراه با دستور ORDER BY به كار برده نمي‌شوند. براي يك جدول
-بزرگ يك پيمايش ترتيبي همراه با دستور مرتب سازي از به كار بردن نمايه‌ها سريعتر
-خواهد بود.
-اما اگر همراه با ORDER BY‌ از LIMIT استفاده شود اغلب از نمايه‌ها استفاده مي‌شود
-چون فقط قسمتي از جدول برگردانده مي‌شود. در حقيقت هر چند توابع ()MIN‌ و ()MAX از
-نمايه‌ها استفاده نمي‌كنند ولي مي‌توانيم با استفاده از دستور زير با استفاده از
-نمايه‌ها و دستور ORDER BY و LIMIT‌ ، آنها را به دست آوريم.
+735 t+e+d+a+d+ c+f+hka+t+ * 8192 t+e+d+a+d+ b+a+y+t+h+a+y+ h+r+ c+f+hkh+ = 6,021,120 m+gfa+ b+a+y+t+
+
+ s+r+b+a+r+ a+n+d+y+s+h+a+ y+a+ n+m+a+y+h+h+a+ a+z+ a+y+n+ m+q+d+a+r+
+ k+m+t+r+ a+s+t+ w+l+y+ tcw+n+ sna+m+l+ x+w+d+ d+a+d+h+h+a+ h+m+ h+s+t+
+ m+m+کn+ a+s+t+ a+n+d+a+z+h+ aMn+h+a+ h+m+ b+z+r+gf snw+d+.
+
+ NULLh+a+ b+h+ c+w+r+t+ bitmap dkx+y+r+h+ m+y+snw+n+d+ w+ a+z+
+ a+y+n+r+w+ f+dda+y+ b+s+y+a+r+ k+m+y+ r+a+ a+sni+a+l+ m+y+k+n+n+d+.
+
+ 4.7) tcgfw+n+h+ m+y+t+w+a+n+m+ b+f+h+m+m+ k+h+ tch+ k+a+r+b+r+a+n+,+
+ p+a+y+gfa+h+ d+a+d+h+,+ n+m+a+y+h+ w+ g+d+a+w+l+y+ d+r+ s+y+s+t+m+
+ t+e+r+y+f+ snd+h+ a+s+t+?+
+
+ psql t+e+d+a+d+ z+y+a+d+y+ d+s+t+w+r+ d+a+r+d+ k+h+ b+a+ \ snr+w+e+
+ m+y+snw+n+d+ w+ a+y+n+ a+tjl+a+e+a+t+ r+a+ d+r+ a+x+t+y+a+r+ m+a+
+ q+r+a+r+ m+y+d+h+n+d+. b+r+a+y+ d+y+d+n+ aMn+h+a+ d+s+t+w+r+ ?\ r+a+
+ a+g+r+a+ k+n+y+d+. h+m+tcn+y+n+ g+d+a+w+l+ s+y+s+t+m+y+ k+h+ n+a+m+
+ aMn+h+a+ b+a+ pg_ snr+w+e+ m+y+snw+d+ n+y+z+ a+y+n+ a+tjl+a+e+a+t+
+ r+a+ d+r+ x+w+d+ d+a+r+n+d+. a+g+r+a+y+ b+r+n+a+m+h+ psql b+a+
+ gfz+y+n+h+ l- n+y+z+ b+a+e+tk n+sna+n+ d+a+d+n+ l+y+s+t+ t+m+a+m+
+ p+a+y+gfa+h+h+a+y+ d+a+d+h+ m+y+snw+d+.
+
+ h+m+tcn+y+n+ f+a+y+l+ pgsql/src/tutorial/syscat.source n+y+z+
+ f+r+m+a+n+h+a+y+ SELECT k+h+ b+a+ a+s+t+f+a+d+h+ a+z+ aMn+ m+y+
+ t+w+a+n+ a+tjl+a+e+a+t+ p+a+y+gfa+h+ d+a+d+h+ r+a+ a+s+t+x+r+a+g+
+ k+r+d+ snr+hk d+a+d+h+ a+s+t+.
+
+ 4.8) tcr+a+ d+r+x+w+a+s+t+h+a+y+ m+n+ k+n+d+ a+g+r+a+ m+y+snw+n+d+ y+a+
+ tcr+a+ a+z+ n+m+a+y+h+ h+a+ a+s+t+f+a+d+h+ n+m+y+k+n+n+d+?+
+
+ b+h+ tjw+r+ m+e+m+w+l+ b+r+a+y+ d+r+x+w+a+s+t+h+a+ a+z+ n+m+a+y+h+h+a+
+ a+s+t+f+a+d+h+ n+m+y+snw+d+. t+n+h+a+ d+r+ c+w+r+t+y+ a+z+ n+m+a+y+h+
+ h+a+ a+s+t+f+a+d+h+ m+y+snw+d+ k+h+ a+n+d+a+z+h+ g+d+w+l+ a+z+ y+k+
+ a+n+d+a+z+h+ hkd+a+q+l+ b+z+r+gft+r+ b+a+snd+ w+ d+r+x+w+a+s+t+ h+m+
+ f+q+tj q+s+m+t+y+ a+z+ r+d+y+f+h+a+y+ g+d+w+l+ r+a+ a+n+t+x+a+b+
+ k+r+d+h+ b+a+snd+. d+l+y+l+ a+y+n+ k+a+r+ aMn+ a+s+t+ k+h+
+ d+s+t+r+s+y+h+a+y+ t+c+a+d+f+y+ b+h+ h+a+r+d+d+y+s+k+ k+h+ b+h+
+ x+a+tjr+ n+m+a+y+h+h+a+ a+y+g+a+d+ m+y+snw+d+ m+m+k+n+ a+s+t+ a+z+
+ x+w+a+n+d+n+ m+s+t+q+y+m+ g+d+w+l+ y+a+ x+w+a+n+d+n+ t+r+t+y+b+y+
+ r+k+w+r+d+h+a+ k+n+d+t+r+ b+a+snd+.
+
+ b+r+a+y+ t+e+y+y+n+ a+y+n+k+h+ a+z+ n+m+a+y+h+ a+s+t+f+a+d+h+ snw+d+
+ y+a+ x+y+r+,+ PostgreSQL b+a+y+d+ a+tjl+a+e+a+t+ aMm+a+r+y+ r+a+ d+r+
+ m+w+r+d+ y+k+ g+d+w+l+ b+d+a+n+d+. a+y+n+ a+tjl+a+e+a+t+ t+w+s+tj
+ d+s+t+w+r+ ANALYZE w+ VACUUM ANALYZE b+h+ d+s+t+ m+y+aMy+d+. b+a+
+ a+s+t+f+a+d+h+ a+z+ a+y+n+ a+tjl+a+e+a+t+,+ b+h+y+n+h+ s+a+z+ a+z+
+ t+e+d+a+d+ r+d+y+f+h+a+y+ y+k+ g+d+w+l+ a+tjl+a+e+ p+y+d+a+ m+y+k+n+d+
+ w+ b+h+t+r+ m+y+t+w+a+n+d+ t+e+y+y+n+ k+n+d+ k+h+ aMy+a+ a+z+
+ n+m+a+y+h+ a+s+t+f+a+d+h+ snw+d+ y+a+ x+y+r+. a+tjl+a+e+a+t+
+ aMm+a+r+y+ h+m+tcn+y+n+ b+r+a+y+ t+e+y+y+n+ t+r+t+y+b+ a+l+hka+q+ w+
+ r+w+snh+a+y+ a+l+hka+q+ b+h+ c+w+r+t+ b+h+y+n+h+ n+y+z+ k+a+r+b+r+d+
+ d+a+r+d+. g+m+e+ aMw+r+y+ a+tjl+a+e+a+t+ aMm+a+r+y+ b+a+y+d+ b+h+
+ c+w+r+t+ d+w+r+h+a+y+ h+m+z+m+a+n+ b+a+ t+i+y+y+r+ d+a+d+h+h+a+y+
+ g+d+w+l+ a+n+g+a+m+ snw+d+.
+
+ n+m+a+y+h+h+a+ b+h+ tjw+r+ m+e+m+w+l+ h+m+r+a+h+ b+a+ d+s+t+w+r+ ORDER
+ BY b+h+ k+a+r+ b+r+d+h+ n+m+y+snw+n+d+. b+r+a+y+ y+k+ g+d+w+l+
+ b+z+r+gf y+k+ p+y+m+a+y+sn t+r+t+y+b+y+ h+m+r+a+h+ b+a+ d+s+t+w+r+
+ m+r+t+b+ s+a+z+y+ a+z+ b+h+ k+a+r+ b+r+d+n+ n+m+a+y+h+h+a+
+ s+r+y+e+t+r+ x+w+a+h+d+ b+w+d+.
+
+ a+m+a+ a+gfr+ h+m+r+a+h+ b+a+ ORDER BY a+z+ LIMIT a+s+t+f+a+d+h+
+ snw+d+ a+i+l+b+ a+z+ n+m+a+y+h+h+a+ a+s+t+f+a+d+h+ m+y+snw+d+ tcw+n+
+ f+q+tj q+s+m+t+y+ a+z+ g+d+w+l+ b+r+gfr+d+a+n+d+h+ m+y+snw+d+. d+r+
+ hkq+y+q+t+ h+r+ tcn+d+ t+w+a+b+e+ ()MIN w+ ()MAX a+z+ n+m+a+y+h+h+a+
+ a+s+t+f+a+d+h+ n+m+y+k+n+n+d+ w+l+y+ m+y+t+w+a+n+y+m+ b+a+
+ a+s+t+f+a+d+h+ a+z+ d+s+t+w+r+ z+y+r+ b+a+ a+s+t+f+a+d+h+ a+z+
+ n+m+a+y+h+h+a+ w+ d+s+t+w+r+ ORDER BY w+ LIMIT ,+ aMn+h+a+ r+a+ b+h+
+ d+s+t+ aMw+r+y+m+.
+
SELECT col
FROM tab
ORDER BY col [ DESC ]
LIMIT 1;
-اگر شما فكر مي‌كنيد كه بهينه ساز سيستم در انتخاب پيمايش ترتيبي اشتباه كرده است
-با دستور 'SET enable_seqscan TO 'off' مي‌توانيد ببينيد آيا استفاده از نمايه‌ها
-باعث افزايش سرعت درخواست‌ها خواهد شد يا خير.
-استفاده از نمايه‌ها هنگامي كه از علائم ويژه نظير LIKE و ~ استفاده مي‌كنيد فقط در
-بعضي شرايط خاص كه در اينجا ذكر شده است ممكن است:
- ابتداي رشته جستجو بايد به طور صريح مشخص باشد براي مثال:
-- دستورات LIKE نبايد با علامت % شروع شوند
-- الگوهاي منظمي كه با ~ مي‌آيد حتماً بايد با علامت ^ شروع شود
- رشته جستجو نبايد با يك مجموعه از كاراكتر‌ها مثل [a-e] شروع شود
- جستجوهاي غيرحساس به متن مثل ILIKE‌ و *~ از نمايه‌ها استفاده نمي‌كنند. در عوض
- از توابع نمايه‌اي كه در قسمت 4.12 توضيح داده شد استفاده مي‌كنند.
- مقدار پيش فرض locale‌ بايد در initdb استفاده شود.
-4.9) چگونه مي‌توانم نحوه بررسي درخواست را توسط بهينه‌ساز درخواستها مشاهده كنم؟
-راهنماي دستور EXPLAIN را نگاه كنيد.
-4.10) نمايه R-tree‌ چيست؟
-از نمايه R-Tree براي انديس كردن داده‌هاي فاصله‌اي استفاده مي‌شود. يك نمايه hash
-نمي‌تواند جستجوهاي محدوده‌اي را انجام دهد. نمايه "B-tree" نيز براي انجام جستجوي
-محدوده‌اي در يك جهت قابل استفاده است. اما R-Tree مي‌تواند داده‌هاي چند بعدي را
-نيز پشتيباني كند. براي مثال اگر از نمايه R-tree‌ براي گونه Point استفاده شود
-سرعت درخواست‌هايي نظير "select all points within a bounding rectangle" به مراتب
-افزايش مي‌يابد.
-مقاله‌اي كه طراحي R-tree را توضيح داده است
-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.
-R-tree‌ مي‌تواند چندضلعيها و چند وجهي را پشتيباني كند. در تئوري، R-tree مي‌تواند
-تعداد بعدهاي بالاتري را نيز پشتيباني كند. در عمل توسعه R-tree‌ نياز به كار
-بيشتري دارد.
-4.11) بهينه ساز تكويني درخواست چيست؟ (Genetic Query Optimizer)
-استفاده از GEQO سرعت بهينه سازي درخواست را هنگاميكه تعداد زيادي جدول را با
-استفاده از الگوريتم ژنتيك الحاق مي‌كنيم افزايش مي‌دهد.
-4.12) چگونه از عبارات منظم براي جستجو استفاده كنم؟ چگونه جستجويي انجام دهم كه
-حساس به متن نباشد؟ چگونه براي يك جستجوي غير حساس به متن از نمايه استفاده كنم؟
-براي جستجوي عبارت منظم از عملگر ~‌ استفاده مي‌كنيم. براي جستجوي غير حساس به متن
-از عملگر *~ و يا ILIKE‌ استفاده مي‌كنيم.
-روش ديگر انجام جستجوي غير حساس به متن در زير نشان داده شده است.
+
+ a+gfr+ snm+a+ f+k+r+ m+y+k+n+y+d+ k+h+ b+h+y+n+h+ s+a+z+ s+y+s+t+m+
+ d+r+ a+n+t+x+a+b+ p+y+m+a+y+sn t+r+t+y+b+y+ a+snt+b+a+h+ k+r+d+h+
+ a+s+t+ b+a+ d+s+t+w+r+ 'SET enable_seqscan TO 'off' m+y+t+w+a+n+y+d+
+ b+b+y+n+y+d+ aMy+a+ a+s+t+f+a+d+h+ a+z+ n+m+a+y+h+h+a+ b+a+e+tk
+ a+f+z+a+y+sn s+r+e+t+ d+r+x+w+a+s+t+h+a+ x+w+a+h+d+ snd+ y+a+ x+y+r+.
+
+ a+s+t+f+a+d+h+ a+z+ n+m+a+y+h+h+a+ h+n+gfa+m+y+ k+h+ a+z+ e+l+a+yHm+
+ w+y+zjh+ n+zHy+r+ LIKE w+ ~ a+s+t+f+a+d+h+ m+y+k+n+y+d+ f+q+tj d+r+
+ b+e+ddy+ snr+a+y+tj x+a+c+ k+h+ d+r+ a+y+n+g+a+ dkk+r+ snd+h+ a+s+t+
+ m+m+k+n+ a+s+t+:
+ * a+b+t+d+a+y+ r+snt+h+ g+s+t+g+w+ b+a+y+d+ b+h+ tjw+r+ c+r+y+hk
+ m+snx+c+ b+a+snd+ b+r+a+y+ m+tka+l+:
+
+ - d+s+t+w+r+a+t+ LIKE n+b+a+y+d+ b+a+ e+l+a+m+t+ % snr+w+e+ snw+n+d+
+
+ - a+l+gfw+h+a+y+ m+n+zHm+y+ k+h+ b+a+ ~ m+y+aMy+d+ hkt+m+a+:+ b+a+y+d+
+ b+a+ e+l+a+m+t+ ^ snr+w+e+ snw+d+
+ * r+snt+h+ g+s+t+g+w+ n+b+a+y+d+ b+a+ y+k+ m+g+m+w+e+h+ a+z+
+ k+a+r+a+k+t+r+h+a+ m+tkl+ [a-e] snr+w+e+ snw+d+
+ * g+s+t+g+w+h+a+y+ i+y+r+hks+a+s+ b+h+ m+t+n+ m+tkl+ ILIKE w+ *~
+ a+z+ n+m+a+y+h+h+a+ a+s+t+f+a+d+h+ n+m+y+k+n+n+d+. d+r+ e+w+dd
+ a+z+ t+w+a+b+e+ n+m+a+y+h+a+y+ k+h+ d+r+ q+s+m+t+ 4.12 t+w+ddy+hk
+ d+a+d+h+ snd+ a+s+t+f+a+d+h+ m+y+k+n+n+d+.
+ * m+q+d+a+r+ p+y+sn f+r+dd locale b+a+y+d+ d+r+ initdb
+ a+s+t+f+a+d+h+ snw+d+.
+
+ 4.9) tcgfw+n+h+ m+y+t+w+a+n+m+ n+hkw+h+ b+r+r+s+y+ d+r+x+w+a+s+t+ r+a+
+ t+w+s+tj b+h+y+n+h+s+a+z+ d+r+x+w+a+s+t+h+a+ m+sna+h+d+h+ k+n+m+?+
+
+ r+a+h+n+m+a+y+ d+s+t+w+r+ EXPLAIN r+a+ n+gfa+h+ k+n+y+d+.
+
+ 4.10) n+m+a+y+h+ R-tree tcy+s+t+?+
+
+ a+z+ n+m+a+y+h+ R-Tree b+r+a+y+ a+n+d+y+s+ k+r+d+n+ d+a+d+h+h+a+y+
+ f+a+c+l+h+a+y+ a+s+t+f+a+d+h+ m+y+snw+d+. y+k+ n+m+a+y+h+ hash n+m+y+
+ t+w+a+n+d+ g+s+t+g+w+h+a+y+ m+hkd+w+d+h+a+y+ r+a+ a+n+g+a+m+ d+h+d+.
+ n+m+a+y+h+ "B-tree" n+y+z+ b+r+a+y+ a+n+g+a+m+ g+s+t+g+w+y+
+ m+hkd+w+d+h+a+y+ d+r+ y+k+ g+h+t+ q+a+b+l+ a+s+t+f+a+d+h+ a+s+t+.
+ a+m+a+ R-Tree m+y+t+w+a+n+d+ d+a+d+h+h+a+y+ tcn+d+ b+e+d+y+ r+a+
+ n+y+z+ p+snt+y+b+a+n+y+ k+n+d+. b+r+a+y+ m+tka+l+ a+gfr+ a+z+
+ n+m+a+y+h+ R-tree b+r+a+y+ gfw+n+h+ Point a+s+t+f+a+d+h+ snw+d+
+ s+r+e+t+ d+r+x+w+a+s+t+h+a+y+y+ n+zHy+r+ "select all points within a
+ bounding rectangle" b+h+ m+r+a+t+b+ a+f+z+a+y+sn m+y+y+a+b+d+.
+
+ m+q+a+l+h+a+y+ k+h+ tjr+a+hky+ R-tree r+a+ t+w+ddy+hk d+a+d+h+ a+s+t+
+
+ 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.
+
+ R-tree m+y+t+w+a+n+d+ tcn+d+ddl+e+y+h+a+ w+ tcn+d+ w+g+h+y+ r+a+
+ p+snt+y+b+a+n+y+ k+n+d+. d+r+ t+yHw+r+y+,+ R-tree m+y+t+w+a+n+d+
+ t+e+d+a+d+ b+e+d+h+a+y+ b+a+l+a+t+r+y+ r+a+ n+y+z+ p+snt+y+b+a+n+y+
+ k+n+d+. d+r+ e+m+l+ t+w+s+e+h+ R-tree n+y+a+z+ b+h+ k+a+r+
+ b+y+snt+r+y+ d+a+r+d+.
+
+ 4.11) b+h+y+n+h+ s+a+z+ t+k+w+y+n+y+ d+r+x+w+a+s+t+ tcy+s+t+?+ (Genetic
+ Query Optimizer)
+
+ a+s+t+f+a+d+h+ a+z+ GEQO s+r+e+t+ b+h+y+n+h+ s+a+z+y+ d+r+x+w+a+s+t+
+ r+a+ h+n+gfa+m+y+k+h+ t+e+d+a+d+ z+y+a+d+y+ g+d+w+l+ r+a+ b+a+
+ a+s+t+f+a+d+h+ a+z+ a+l+gfw+r+y+t+m+ zjn+t+y+k+ a+l+hka+q+ m+y+
+ k+n+y+m+ a+f+z+a+y+sn m+y+d+h+d+.
+
+ 4.12) tcgfw+n+h+ a+z+ e+b+a+r+a+t+ m+n+zHm+ b+r+a+y+ g+s+t+g+w+
+ a+s+t+f+a+d+h+ k+n+m+?+ tcgfw+n+h+ g+s+t+g+w+y+y+ a+n+g+a+m+ d+h+m+ k+h+
+ hks+a+s+ b+h+ m+t+n+ n+b+a+snd+?+ tcgfw+n+h+ b+r+a+y+ y+k+ g+s+t+g+w+y+
+ i+y+r+ hks+a+s+ b+h+ m+t+n+ a+z+ n+m+a+y+h+ a+s+t+f+a+d+h+ k+n+m+?+
+
+ b+r+a+y+ g+s+t+g+w+y+ e+b+a+r+t+ m+n+zHm+ a+z+ e+m+l+gfr+ ~
+ a+s+t+f+a+d+h+ m+y+k+n+y+m+. b+r+a+y+ g+s+t+g+w+y+ i+y+r+ hks+a+s+
+ b+h+ m+t+n+ a+z+ e+m+l+gfr+ *~ w+ y+a+ ILIKE a+s+t+f+a+d+h+ m+y+
+ k+n+y+m+.
+
+ r+w+sn d+y+gfr+ a+n+g+a+m+ g+s+t+g+w+y+ i+y+r+ hks+a+s+ b+h+ m+t+n+
+ d+r+ z+y+r+ n+sna+n+ d+a+d+h+ snd+h+ a+s+t+.
SELECT *
FROM tab
WHERE lower(col) = 'abc';
-اين از نمايه‌هاي استاندارد استفاده نمي‌كند. ولي شما مي توانيد با دستور زير يك
-نمايه ايجاد كنيد و از آن استفاده كنيد.
+
+ a+y+n+ a+z+ n+m+a+y+h+h+a+y+ a+s+t+a+n+d+a+r+d+ a+s+t+f+a+d+h+ n+m+y+
+ k+n+d+. w+l+y+ snm+a+ m+y+ t+w+a+n+y+d+ b+a+ d+s+t+w+r+ z+y+r+ y+k+
+ n+m+a+y+h+ a+y+g+a+d+ k+n+y+d+ w+ a+z+ aMn+ a+s+t+f+a+d+h+ k+n+y+d+.
CREATE INDEX tabindex ON tab (lower(col));
-4.13) چگونه مي‌توانم در يك درخواست تشخيص دهم كه يك فيلد NULL‌ است؟
-با استفاده از توابع IS NULL و IS NOT NULL مي‌توانيم NULL بودن يك فيلد را تست
-كنيم.
-4.14) تفاوت بين گونه‌هاي مختلف character چيست؟
+
+ 4.13) tcgfw+n+h+ m+y+t+w+a+n+m+ d+r+ y+k+ d+r+x+w+a+s+t+ t+snx+y+c+ d+h+m+
+ k+h+ y+k+ f+y+l+d+ NULL a+s+t+?+
+
+ b+a+ a+s+t+f+a+d+h+ a+z+ t+w+a+b+e+ IS NULL w+ IS NOT NULL m+y+
+ t+w+a+n+y+m+ NULL b+w+d+n+ y+k+ f+y+l+d+ r+a+ t+s+t+ k+n+y+m+.
+
+ 4.14) t+f+a+w+t+ b+y+n+ gfw+n+h+h+a+y+ m+x+t+l+f+ character tcy+s+t+?+
+
Type Internal Name Notes
--------------------------------------------------
-VARCHAR(n) varchar اندازه، حداكثر طول را نشان مي دهد بدون اضافه شدن كاراكتر اضافه
-CHAR(n) bpchar كاراكترهاي بلانك براي پر شدن طول مشخص شده استفاده مي‌شود
-TEXT text حداكثر طول را مشخص نمي‌كند
-BYTEA bytea آرايه‌اي از بايت با طول متغير
-"char" char يك كاراكتر
-نام داخلي گونه‌ها را در system catalogue ‌و بعضي از پيغامهاي خطا مي‌توان ديد.
-چهار گونه اول همگي از نوع varlena هستند (4 بايت اول روي ديسك طول را مشخص مي‌كند
-كه به دنبال آن داده‌ها قرار دارند.)‌بنابراين فضاي واقعي استفاده شده روي ديسك از
-اندازه تعريف شده بيشتر است. اما اين گونه‌ها را مي‌توان فشرده كرد كه اينكار باعث
-مي‌شود فضاي كمتري روي ديسك اشغال كنند.
-براي ذخيره رشته‌هاي با طول متغير(VARCHAR(n‌ بهترين انتخاب است. در اين گونه
-حداكثر طول رشته محدود است بر خلاف text كه هيچ محدوديتي روي حداكثر اندازه رشته
-نمي‌گذارد.(در اين گونه حداكثر طول يك رشته يك گيگا بايت خواهد بود)
-گونه (CHAR(n براي ذخيره داده‌هاي با طول يكسان است.يك گونه‌ي (CHAR(n با
-كاراكترهاي بلانك (خالي) پر مي‌شود تا به طول مشخص شده برسد در حاليكه گونه VARCHAR
-كاراكترها را به همان صورت كه هستند ذخيره مي‌كند. گونه BYTEA براي ذخيره داده‌هاي
-باينري است به خصوص داده‌هاي باينري كه شامل بايت‌هاي NULL هستند. از نظر كارايي
-تمام اين گونه‌ها يكسان هستند.
-4.15.1) چگونه مي‌توانم يك فيلد سريال يا افزايشي ايجاد كنم؟
-PostgreSQL از داده‌هاي سريال پشتيباني مي‌كند. براي ايجاد يك فيلد سريال (براي
-داشتن يك فيلد منحصر به فرد براي هر رديف )به روش زير عمل كنيد:
- CREATE TABLE person (
- id SERIAL,
- name TEXT
+VARCHAR(n) varchar a+n+d+a+z+h+,+ hkd+a+k+tkr+ tjw+l+ r+a+ n+sna+n+ m+y+ d+h+d+ b+d+w+n+ a+dda+f+h+ snd+n+ k+a+r+a+k+t+r+ a+dda+f+h+
+CHAR(n) bpchar k+a+r+a+k+t+r+h+a+y+ b+l+a+n+k+ b+r+a+y+ p+r+ snd+n+ tjw+l+ m+snx+c+ snd+h+ a+s+t+f+a+d+h+ m+y+snw+d+
+TEXT text hkd+a+k+tkr+ tjw+l+ r+a+ m+snx+c+ n+m+y+k+n+d+
+BYTEA bytea aMr+a+y+h+a+y+ a+z+ b+a+y+t+ b+a+ tjw+l+ m+t+i+y+r+
+"char" char y+k+ k+a+r+a+k+t+r+
+
+ n+a+m+ d+a+x+l+y+ gfw+n+h+h+a+ r+a+ d+r+ system catalogue w+ b+e+ddy+
+ a+z+ p+y+i+a+m+h+a+y+ x+tja+ m+y+t+w+a+n+ d+y+d+.
+
+ tch+a+r+ gfw+n+h+ a+w+l+ h+m+gfy+ a+z+ n+w+e+ varlena h+s+t+n+d+ (4
+ b+a+y+t+ a+w+l+ r+w+y+ d+y+s+k+ tjw+l+ r+a+ m+snx+c+ m+y+k+n+d+ k+h+
+ b+h+ d+n+b+a+l+ aMn+ d+a+d+h+h+a+ q+r+a+r+ d+a+r+n+d+.)
+ b+n+a+b+r+a+y+n+ f+dda+y+ w+a+q+e+y+ a+s+t+f+a+d+h+ snd+h+ r+w+y+
+ d+y+s+k+ a+z+ a+n+d+a+z+h+ t+e+r+y+f+ snd+h+ b+y+snt+r+ a+s+t+. a+m+a+
+ a+y+n+ gfw+n+h+h+a+ r+a+ m+y+t+w+a+n+ f+snr+d+h+ k+r+d+ k+h+
+ a+y+n+k+a+r+ b+a+e+tk m+y+snw+d+ f+dda+y+ k+m+t+r+y+ r+w+y+ d+y+s+k+
+ a+sni+a+l+ k+n+n+d+.
+
+ b+r+a+y+ dkx+y+r+h+ r+snt+h+h+a+y+ b+a+ tjw+l+ m+t+i+y+r+(VARCHAR(n
+ b+h+t+r+y+n+ a+n+t+x+a+b+ a+s+t+. d+r+ a+y+n+ gfw+n+h+ hkd+a+k+tkr+
+ tjw+l+ r+snt+h+ m+hkd+w+d+ a+s+t+ b+r+ x+l+a+f+ text k+h+ h+y+tc
+ m+hkd+w+d+y+t+y+ r+w+y+ hkd+a+k+tkr+ a+n+d+a+z+h+ r+snt+h+ n+m+y+
+ gfdka+r+d+.(d+r+ a+y+n+ gfw+n+h+ hkd+a+k+tkr+ tjw+l+ y+k+ r+snt+h+
+ y+k+ gfy+gfa+ b+a+y+t+ x+w+a+h+d+ b+w+d+)
+
+ gfw+n+h+ (CHAR(n b+r+a+y+ dkx+y+r+h+ d+a+d+h+h+a+y+ b+a+ tjw+l+
+ y+k+s+a+n+ a+s+t+.y+k+ gfw+n+h+y+ (CHAR(n b+a+ k+a+r+a+k+t+r+h+a+y+
+ b+l+a+n+k+ (x+a+l+y+) p+r+ m+y+snw+d+ t+a+ b+h+ tjw+l+ m+snx+c+ snd+h+
+ b+r+s+d+ d+r+ hka+l+y+k+h+ gfw+n+h+ VARCHAR k+a+r+a+k+t+r+h+a+ r+a+
+ b+h+ h+m+a+n+ c+w+r+t+ k+h+ h+s+t+n+d+ dkx+y+r+h+ m+y+k+n+d+. gfw+n+h+
+ BYTEA b+r+a+y+ dkx+y+r+h+ d+a+d+h+h+a+y+ b+a+y+n+r+y+ a+s+t+ b+h+
+ x+c+w+c+ d+a+d+h+h+a+y+ b+a+y+n+r+y+ k+h+ sna+m+l+ b+a+y+t+h+a+y+ NULL
+ h+s+t+n+d+. a+z+ n+zHr+ k+a+r+a+y+y+ t+m+a+m+ a+y+n+ gfw+n+h+h+a+
+ y+k+s+a+n+ h+s+t+n+d+.
+
+ 4.15.1) tcgfw+n+h+ m+y+t+w+a+n+m+ y+k+ f+y+l+d+ s+r+y+a+l+ y+a+
+ a+f+z+a+y+sny+ a+y+g+a+d+ k+n+m+?+
+
+ PostgreSQL a+z+ d+a+d+h+h+a+y+ s+r+y+a+l+ p+snt+y+b+a+n+y+ m+y+k+n+d+.
+ b+r+a+y+ a+y+g+a+d+ y+k+ f+y+l+d+ s+r+y+a+l+ (b+r+a+y+ d+a+snt+n+ y+k+
+ f+y+l+d+ m+n+hkc+r+ b+h+ f+r+d+ b+r+a+y+ h+r+ r+d+y+f+ )b+h+ r+w+sn
+ z+y+r+ e+m+l+ k+n+y+d+:
+ CREATE TABLE person (
+ id SERIAL,
+ name TEXT
);
-دستور بالا به طور اتوماتيک به دستور زير تبديل مي‌شود:
+
+ d+s+t+w+r+ b+a+l+a+ b+h+ tjw+r+ a+t+w+m+a+t+y+ک b+h+ d+s+t+w+r+
+ z+y+r+ t+b+d+y+l+ m+y+snw+d+:
CREATE SEQUENCE person_id_seq;
- CREATE TABLE person (
+ CREATE TABLE person (
id INT4 NOT NULL DEFAULT nextval('person_id_seq'),
- name TEXT
+ name TEXT
);
-براي ديدن اطلاعات بيشتر به راهنماي دستور create_sequence مراجعه كنيد. همچنين
-مي‌توان از OID‌هر رديف به عنوان يك مقدار منحصر به فرد استفاده كرد. اما در اين
-حالت براي dump كردن و reload‌كردن پايگاه داده بايد دستور pg_dumps‌ را با گزينه
-o-‌ اجرا كنيد.
-4.15.2) چگونه مي‌توانم مقدار يك درج سريالي را بدانم؟
-يك روش براي گرفتن مقدار بعدي يك فيلد سريال استفاده از تابع ()nextval است. در شبه
-كُدي كه در ادامه آمده است روش انجام اين كار نشان داده شده است:
+
+ b+r+a+y+ d+y+d+n+ a+tjl+a+e+a+t+ b+y+snt+r+ b+h+ r+a+h+n+m+a+y+
+ d+s+t+w+r+ create_sequence m+r+a+g+e+h+ k+n+y+d+. h+m+tcn+y+n+ m+y+
+ t+w+a+n+ a+z+ OIDh+r+ r+d+y+f+ b+h+ e+n+w+a+n+ y+k+ m+q+d+a+r+
+ m+n+hkc+r+ b+h+ f+r+d+ a+s+t+f+a+d+h+ k+r+d+. a+m+a+ d+r+ a+y+n+
+ hka+l+t+ b+r+a+y+ dump k+r+d+n+ w+ reloadk+r+d+n+ p+a+y+gfa+h+
+ d+a+d+h+ b+a+y+d+ d+s+t+w+r+ pg_dumps r+a+ b+a+ gfz+y+n+h+ o- a+g+r+a+
+ k+n+y+d+.
+
+ 4.15.2) tcgfw+n+h+ m+y+t+w+a+n+m+ m+q+d+a+r+ y+k+ d+r+g+ s+r+y+a+l+y+ r+a+
+ b+d+a+n+m+?+
+
+ y+k+ r+w+sn b+r+a+y+ gfr+f+t+n+ m+q+d+a+r+ b+e+d+y+ y+k+ f+y+l+d+
+ s+r+y+a+l+ a+s+t+f+a+d+h+ a+z+ t+a+b+e+ ()nextval a+s+t+. d+r+ snb+h+
+ k+'+d+y+ k+h+ d+r+ a+d+a+m+h+ aMm+d+h+ a+s+t+ r+w+sn a+n+g+a+m+ a+y+n+
+ k+a+r+ n+sna+n+ d+a+d+h+ snd+h+ a+s+t+:
new_id = execute("SELECT nextval('person_id_seq')");
execute("INSERT INTO person (id, name) VALUES (new_id, 'Blaise Pascal')");
-با اجراي دستور فوق مقدار جديد را در متغير new_id نيز خواهيدداشت كه مي‌توانيد آن
-را در بقيه درخواست‌ها نيز استفاده كنيد. توجه داشته باشيد كه نام SEQUENCEيي كه به
-طور اتوماتيك ايجاد شده است به صورت table_serialcolumn_seq‌ خواهد بود. كه در آن
-table‌ نام جدول و serialcolumn نام فيلد سريال جدول مي‌باشد.
-براي ديدن مقدار نسبت داده شده به فيلد سريال نيز مي‌توان از تابع () currval به
-صورت زير استفاده كرد.
+
+ b+a+ a+g+r+a+y+ d+s+t+w+r+ f+w+q+ m+q+d+a+r+ g+d+y+d+ r+a+ d+r+
+ m+t+i+y+r+ new_id n+y+z+ x+w+a+h+y+d+d+a+snt+ k+h+ m+y+t+w+a+n+y+d+
+ aMn+ r+a+ d+r+ b+q+y+h+ d+r+x+w+a+s+t+h+a+ n+y+z+ a+s+t+f+a+d+h+
+ k+n+y+d+. t+w+g+h+ d+a+snt+h+ b+a+sny+d+ k+h+ n+a+m+ SEQUENCEy+y+ k+h+
+ b+h+ tjw+r+ a+t+w+m+a+t+y+k+ a+y+g+a+d+ snd+h+ a+s+t+ b+h+ c+w+r+t+
+ table_serialcolumn_seq x+w+a+h+d+ b+w+d+. k+h+ d+r+ aMn+ table n+a+m+
+ g+d+w+l+ w+ serialcolumn n+a+m+ f+y+l+d+ s+r+y+a+l+ g+d+w+l+ m+y+
+ b+a+snd+.
+
+ b+r+a+y+ d+y+d+n+ m+q+d+a+r+ n+s+b+t+ d+a+d+h+ snd+h+ b+h+ f+y+l+d+
+ s+r+y+a+l+ n+y+z+ m+y+t+w+a+n+ a+z+ t+a+b+e+ () currval b+h+ c+w+r+t+
+ z+y+r+ a+s+t+f+a+d+h+ k+r+d+.
execute("INSERT INTO person (name) VALUES ('Blaise Pascal')");
new_id = execute("SELECT currval('person_id_seq')");
-و سرانجام شما مي‌توانيد از مقدار OID كه خروجي دستور INSERT است براي ديدن مقدار
-پيش فرض استفاده كنيد. هر چند اين روش در همه پلتفرمها قابل استفاده نيست و ضمن
-اينكه فيلد oid‌ بعد از عدد 4 ميليارد دوباره صفر مي‌شود. در زبان perl با استفاده
-از DBI و DBD::Pg مقدار oid‌را مي‌توانيد به اين شكل استخراج كنيد: بعد از اجراي
-()st->execute$ مقدار oid‌ در متغير sth->pg_oid_status$ ذخيره خواهد شد.
-4.15.3) آیا توابع ()nextval و ()currval منجر به ایجاد شرایط race برای سایر
-کاربران می شوند؟
-خیر، استفاده از این توابع شرایط race را به وجود نمی آورد.
-4.15.4) چرا اعداد سریالی مربوط به تراکنشهای abort شده مجدداً استفاده نمی شود؟
-چرا بین اعداد سریالی یک فاصله خالی ایجاد می شود؟
-برای بالا بردن امکان اجرای همزمان تراکنشها، اعداد سریالی به محض اجرای تراکنش به
-آنها تخصیص می یابد در این حالت اگر بعضی از تراکنشها abort شوند بین اعداد سریالی
-استفاده شده یک فاصله خالی به وجود می آید.
-4.16) OID و TID چه هستند؟
-OID راه حل PostgreSQL برای داشتن یک شناسه منحصر به فرد برای هر ردیف است. هر ردیف
-جدیدی که ایجاد می شود یک OID منحصر به فرد به آن اختصاص می یابد. تمام OIDهایی که
-در حین initdb ایجاد می شوند از 16384 کمتر هستند و OIDهایی بعداً تولید می شود از
-این عدد بزرگتر خواهد بود. نکته مهم آن است که OIDها نه تنها در یک جدول شبیه
-نیستند بلکه در کل پایگاه داده هیچ دو ردیفی دارای OID یکسان نخواهد بود.
-PostgreSQL از OID در سیستم داخلی خود برای ایجاد ارتباط بین ردیفهای جداول مختلف
-استفاده می کند. توصیه می شود که یک ستون از نوع OID برای ذخیره این فیلد در جدول
-ایجاد کنید. ساختن یک نمایه برای این فیلد باعث دسترسی سریعتر به آن خواهد شد.
-تمام پایگاههای داده در PostgreSQL برای گرفتن OID جدید از یک ناحیه مرکزی استفاده
-می کند. ولی اگر بخواهیم OID را به روش دیگری بگیریم و یا اینکه در حین کپی کردن یک
-جدول بخواهیم OIDهای اصلی آن تغییر نکند به روش زیر می توانیم عمل کنیم:
+ w+ s+r+a+n+g+a+m+ snm+a+ m+y+t+w+a+n+y+d+ a+z+ m+q+d+a+r+ OID k+h+
+ x+r+w+g+y+ d+s+t+w+r+ INSERT a+s+t+ b+r+a+y+ d+y+d+n+ m+q+d+a+r+
+ p+y+sn f+r+dd a+s+t+f+a+d+h+ k+n+y+d+. h+r+ tcn+d+ a+y+n+ r+w+sn d+r+
+ h+m+h+ p+l+t+f+r+m+h+a+ q+a+b+l+ a+s+t+f+a+d+h+ n+y+s+t+ w+ ddm+n+
+ a+y+n+k+h+ f+y+l+d+ oid b+e+d+ a+z+ e+d+d+ 4 m+y+l+y+a+r+d+
+ d+w+b+a+r+h+ c+f+r+ m+y+snw+d+. d+r+ z+b+a+n+ perl b+a+ a+s+t+f+a+d+h+
+ a+z+ DBI w+ DBD::Pg m+q+d+a+r+ oidr+a+ m+y+t+w+a+n+y+d+ b+h+ a+y+n+
+ snk+l+ a+s+t+x+r+a+g+ k+n+y+d+: b+e+d+ a+z+ a+g+r+a+y+ ()st->execute$
+ m+q+d+a+r+ oid d+r+ m+t+i+y+r+ sth->pg_oid_status$ dkx+y+r+h+
+ x+w+a+h+d+ snd+.
+
+ 4.15.3) aMیa+ t+w+a+b+e+ ()nextval w+ ()currval m+n+g+r+ b+h+
+ a+یg+a+d+ snr+a+یtj race b+r+a+ی s+a+یr+
+ کa+r+b+r+a+n+ m+ی snw+n+d+?+
+
+ x+یr+,+ a+s+t+f+a+d+h+ a+z+ a+یn+ t+w+a+b+e+
+ snr+a+یtj race r+a+ b+h+ w+g+w+d+ n+m+ی aMw+r+d+.
+
+ 4.15.4) tcr+a+ a+e+d+a+d+ s+r+یa+l+ی m+r+b+w+tj b+h+
+ t+r+a+کn+snh+a+ی abort snd+h+ m+g+d+d+a+:+ a+s+t+f+a+d+h+
+ n+m+ی snw+d+?+ tcr+a+ b+یn+ a+e+d+a+d+ s+r+یa+l+ی
+ یک f+a+c+l+h+ x+a+l+ی a+یg+a+d+ m+ی snw+d+?+
+
+ b+r+a+ی b+a+l+a+ b+r+d+n+ a+m+کa+n+ a+g+r+a+ی
+ h+m+z+m+a+n+ t+r+a+کn+snh+a+,+ a+e+d+a+d+ s+r+یa+l+ی
+ b+h+ m+hkdd a+g+r+a+ی t+r+a+کn+sn b+h+ aMn+h+a+
+ t+x+c+یc+ m+ی یa+b+d+ d+r+ a+یn+ hka+l+t+
+ a+gfr+ b+e+ddی a+z+ t+r+a+کn+snh+a+ abort snw+n+d+
+ b+یn+ a+e+d+a+d+ s+r+یa+l+ی a+s+t+f+a+d+h+ snd+h+
+ یک f+a+c+l+h+ x+a+l+ی b+h+ w+g+w+d+ m+ی
+ aMیd+.
+
+ 4.16) OID w+ TID tch+ h+s+t+n+d+?+
+
+ OID r+a+h+ hkl+ PostgreSQL b+r+a+ی d+a+snt+n+ یک
+ snn+a+s+h+ m+n+hkc+r+ b+h+ f+r+d+ b+r+a+ی h+r+ r+d+یf+
+ a+s+t+. h+r+ r+d+یf+ g+d+یd+ی کh+
+ a+یg+a+d+ m+ی snw+d+ یک OID m+n+hkc+r+ b+h+
+ f+r+d+ b+h+ aMn+ a+x+t+c+a+c+ m+ی یa+b+d+. t+m+a+m+
+ OIDh+a+یی کh+ d+r+ hkیn+ initdb
+ a+یg+a+d+ m+ی snw+n+d+ a+z+ 16384 کm+t+r+ h+s+t+n+d+
+ w+ OIDh+a+یی b+e+d+a+:+ t+w+l+یd+ m+ی snw+d+
+ a+z+ a+یn+ e+d+d+ b+z+r+gft+r+ x+w+a+h+d+ b+w+d+. n+کt+h+
+ m+h+m+ aMn+ a+s+t+ کh+ OIDh+a+ n+h+ t+n+h+a+ d+r+ یک
+ g+d+w+l+ snb+یh+ n+یs+t+n+d+ b+l+کh+ d+r+ کl+
+ p+a+یgfa+h+ d+a+d+h+ h+یtc d+w+ r+d+یf+ی
+ d+a+r+a+ی OID یکs+a+n+ n+x+w+a+h+d+ b+w+d+.
+
+ PostgreSQL a+z+ OID d+r+ s+یs+t+m+ d+a+x+l+ی x+w+d+
+ b+r+a+ی a+یg+a+d+ a+r+t+b+a+tj b+یn+
+ r+d+یf+h+a+ی g+d+a+w+l+ m+x+t+l+f+ a+s+t+f+a+d+h+
+ m+ی کn+d+. t+w+c+یh+ m+ی snw+d+ کh+
+ یک s+t+w+n+ a+z+ n+w+e+ OID b+r+a+ی dkx+یr+h+
+ a+یn+ f+یl+d+ d+r+ g+d+w+l+ a+یg+a+d+
+ کn+یd+. s+a+x+t+n+ یک n+m+a+یh+
+ b+r+a+ی a+یn+ f+یl+d+ b+a+e+tk d+s+t+r+s+ی
+ s+r+یe+t+r+ b+h+ aMn+ x+w+a+h+d+ snd+.
+
+ t+m+a+m+ p+a+یgfa+h+h+a+ی d+a+d+h+ d+r+ PostgreSQL
+ b+r+a+ی gfr+f+t+n+ OID g+d+یd+ a+z+ یک
+ n+a+hkیh+ m+r+کz+ی a+s+t+f+a+d+h+ m+ی
+ کn+d+. w+l+ی a+gfr+ b+x+w+a+h+یm+ OID r+a+ b+h+
+ r+w+sn d+یgfr+ی b+gfیr+یm+ w+ یa+
+ a+یn+کh+ d+r+ hkیn+ کp+ی کr+d+n+
+ یک g+d+w+l+ b+x+w+a+h+یm+ OIDh+a+ی
+ a+c+l+ی aMn+ t+i+ییr+ n+کn+d+ b+h+ r+w+sn
+ z+یr+ m+ی t+w+a+n+یm+ e+m+l+ کn+یm+:
+
+
CREATE TABLE new_table(mycol int);
SELECT oid AS old_oid, mycol INTO tmp_table FROM old_table;
COPY tmp_table TO '/tmp/pgtable';
COPY new_table WITH OIDS FROM '/tmp/pgtable';
DROP TABLE tmp_table;
-OID یک عدد صحیح 4 بایتی است و بنابراین حداکثر مقدار آن 4 میلیارد خواهد بود و بعد
-از آن مقدار آن سرریز خواهد شد. البته تا کنون برای کسی این اتفاق نیفتاده است و
-تصمیم گرداندگان PostgreSQL آن است که قبل از آنکه این اتفاق رخ دهد این مشکل را
-برطرف کنند.
-TIDها برای شناسایی محل فیزیکی یک ردیف بر اساس بلوک و آفست می باشد. TIDها بعد از
-تغییر پیدا کردن یک ردیف و یا بازخوانی آن عوض می شوند. TIDها توسط نمایه ها
-استفاده می شوند.
-4.17) معني بعضي از ترمها و كلماتي كه در PostgreSQL‌ استفاده مي‌شود چيست؟
-لیست برخی از ترمها و کلماتی که استفاده می شوند:
- 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
-یک لیست عمومی از ترمهای مورد استفاده در پایگاه داده در آدرس
-http://hea-www.harvard.edu/MST/simul/software/docs/pkgs/pgsql/glossary/glossary.htm
-وجود دارد.
-4.18) چرا من خطاي "ERROR: Memory exhausted in AllocSetAlloc" مي‌گيرم؟
-این خطا احتمالاً یا به خاطر تمام شدن حافظه مجازی سیستم شماست و یا اینکه کرنل
-برای برنامه ها در مورد میزان استفاده از حافظه مجازی محدودیت اعمال کرده است. قبل
-از اجرای برنامه اصلی یکی از دستورات زیر را اجرا کنید.
+
+ OID یک e+d+d+ c+hkیhk 4 b+a+یt+ی a+s+t+
+ w+ b+n+a+b+r+a+یn+ hkd+a+کtkr+ m+q+d+a+r+ aMn+ 4
+ m+یl+یa+r+d+ x+w+a+h+d+ b+w+d+ w+ b+e+d+ a+z+ aMn+
+ m+q+d+a+r+ aMn+ s+r+r+یz+ x+w+a+h+d+ snd+. a+l+b+t+h+ t+a+
+ کn+w+n+ b+r+a+ی کs+ی a+یn+ a+t+f+a+q+
+ n+یf+t+a+d+h+ a+s+t+ w+ t+c+m+یm+ gfr+d+a+n+d+gfa+n+
+ PostgreSQL aMn+ a+s+t+ کh+ q+b+l+ a+z+ aMn+کh+ a+یn+
+ a+t+f+a+q+ r+x+ d+h+d+ a+یn+ m+snکl+ r+a+ b+r+tjr+f+
+ کn+n+d+.
+
+ TIDh+a+ b+r+a+ی snn+a+s+a+یی m+hkl+
+ f+یz+یکی یک r+d+یf+ b+r+
+ a+s+a+s+ b+l+w+ک w+ aMf+s+t+ m+ی b+a+snd+. TIDh+a+ b+e+d+
+ a+z+ t+i+ییr+ p+یd+a+ کr+d+n+ یک
+ r+d+یf+ w+ یa+ b+a+z+x+w+a+n+ی aMn+ e+w+dd
+ m+ی snw+n+d+. TIDh+a+ t+w+s+tj n+m+a+یh+ h+a+
+ a+s+t+f+a+d+h+ m+ی snw+n+d+.
+
+ 4.17) m+e+n+y+ b+e+ddy+ a+z+ t+r+m+h+a+ w+ k+l+m+a+t+y+ k+h+ d+r+
+ PostgreSQL a+s+t+f+a+d+h+ m+y+snw+d+ tcy+s+t+?+
+
+ l+یs+t+ b+r+x+ی a+z+ t+r+m+h+a+ w+ کl+m+a+t+ی
+ کh+ a+s+t+f+a+d+h+ m+ی snw+n+d+:
+ * table, relation, class :کl+a+s+,+ r+a+b+tjh+,+ g+d+w+l+
+ * row, record, tuple tcn+d+t+a+یی,+ r+کw+r+d+,+
+ r+d+یf+
+ * column, field, attribute c+f+t+,+ f+یl+d+,+ s+t+w+n+
+ * retrieve, select a+n+t+x+a+b+,+ x+w+a+n+d+n+
+ * replace, updateb+h+ r+w+z+ کr+d+n+,+
+ g+a+یgfz+یn+ی
+ * append, insert d+r+g+,+ a+dda+f+h+ کr+d+n+
+ * OID, serial value m+q+d+a+r+ s+r+یa+l+
+ * portal, cursor
+ * range variable, table name, table alias
+
+ یک l+یs+t+ e+m+w+m+ی a+z+ t+r+m+h+a+ی
+ m+w+r+d+ a+s+t+f+a+d+h+ d+r+ p+a+یgfa+h+ d+a+d+h+ d+r+ aMd+r+s+
+ http://hea-www.harvard.edu/MST/simul/software/docs/pkgs/pgsql/glossary
+ /glossary.htm w+g+w+d+ d+a+r+d+.
+
+ 4.18) tcr+a+ m+n+ x+tja+y+ "ERROR: Memory exhausted in AllocSetAlloc" m+y+
+ gfy+r+m+?+
+
+ a+یn+ x+tja+ a+hkt+m+a+l+a+:+ یa+ b+h+ x+a+tjr+ t+m+a+m+
+ snd+n+ hka+f+zHh+ m+g+a+z+ی s+یs+t+m+ snm+a+s+t+ w+
+ یa+ a+یn+کh+ کr+n+l+ b+r+a+ی
+ b+r+n+a+m+h+ h+a+ d+r+ m+w+r+d+ m+یz+a+n+ a+s+t+f+a+d+h+ a+z+
+ hka+f+zHh+ m+g+a+z+ی m+hkd+w+d+یt+ a+e+m+a+l+
+ کr+d+h+ a+s+t+. q+b+l+ a+z+ a+g+r+a+ی b+r+n+a+m+h+
+ a+c+l+ی یکی a+z+ d+s+t+w+r+a+t+ z+یr+
+ r+a+ a+g+r+a+ کn+یd+.
+
ulimit -d 262144
limit datasize 256m
-بسته به نوع شل یکی از این دستورات ممکن است با موفقیت اجرا شود. با اجرای آن دستور
-محدودیت حافظه مجازی برای برنامه ها برداشته شده و با این کار احتمالاً درخواستی که
-قبلاً خطا می داده است اجرا خواهد شد.
-4.19) از كجا تشخيص دهم كه ويرايش يا نسخه PostgreSQLيي كه من استفاده مي‌كنم چيست؟
-با اجرای دستور ()SELECT version
-4.20) چرا حین اجرای عملیات روی large-objectها خطای "invalid large obj
-descriptor"به وجود می آید؟
-شما باید قبل از شروع دستوراتی که با large-objectها کار می کنند BEGIN و بعد از
-آنها هم یک END بگذارید. در حال حاضر PostgreSQL هندل large-objectها را در زمان
-نهایی شدن تراکنش (commitشدن) می بندد. به همین دلیل اولین تلاش برای انجام هر کاری
-با هندل منجر به خطای invalid large obj descriptor خواهد شد. برای جلوگیری از این
-خطا حتماً باید از یک تراکنش استفاده کنید. این کار همانطور که قبلاً گفته شد با
-استفاده از قرار دادن BEGIN و END در ابتدا و انتهای دستورات انجام می شود.
-اگر این خطا را در حین استفاده از یک درایور ODBC دریافت کردید احتمالاً باید این
-دستور را اجرا کنید: set auto-commit off
-4.21) چگونه يك ستون ايجاد كنم كه مقدار زمان جاري را به عنوان مقدار پيش‌فرض داشته
-باشد؟
-از CURRENT_TIMESTAMP استفاده کنید در مثال زیر نحوه انجام این کار نشان داده شده
-است:
+
+ b+s+t+h+ b+h+ n+w+e+ snl+ یکی a+z+ a+یn+
+ d+s+t+w+r+a+t+ m+m+کn+ a+s+t+ b+a+ m+w+f+q+یt+ a+g+r+a+
+ snw+d+. b+a+ a+g+r+a+ی aMn+ d+s+t+w+r+ m+hkd+w+d+یt+
+ hka+f+zHh+ m+g+a+z+ی b+r+a+ی b+r+n+a+m+h+ h+a+
+ b+r+d+a+snt+h+ snd+h+ w+ b+a+ a+یn+ کa+r+ a+hkt+m+a+l+a+:+
+ d+r+x+w+a+s+t+ی کh+ q+b+l+a+:+ x+tja+ m+ی d+a+d+h+
+ a+s+t+ a+g+r+a+ x+w+a+h+d+ snd+.
+
+ 4.19) a+z+ k+g+a+ t+snx+y+c+ d+h+m+ k+h+ w+y+r+a+y+sn y+a+ n+s+x+h+
+ PostgreSQLy+y+ k+h+ m+n+ a+s+t+f+a+d+h+ m+y+k+n+m+ tcy+s+t+?+
+
+ b+a+ a+g+r+a+ی d+s+t+w+r+ ()SELECT version
+
+ 4.20) tcr+a+ hkیn+ a+g+r+a+ی e+m+l+یa+t+ r+w+ی
+ large-objecth+a+ x+tja+ی "invalid large obj descriptor"b+h+ w+g+w+d+
+ m+ی aMیd+?+
+
+ snm+a+ b+a+یd+ q+b+l+ a+z+ snr+w+e+ d+s+t+w+r+a+t+ی
+ کh+ b+a+ large-objecth+a+ کa+r+ m+ی کn+n+d+
+ BEGIN w+ b+e+d+ a+z+ aMn+h+a+ h+m+ یک END
+ b+gfdka+r+یd+. d+r+ hka+l+ hka+ddr+ PostgreSQL h+n+d+l+
+ large-objecth+a+ r+a+ d+r+ z+m+a+n+ n+h+a+یی snd+n+
+ t+r+a+کn+sn (commitsnd+n+) m+ی b+n+d+d+. b+h+
+ h+m+یn+ d+l+یl+ a+w+l+یn+ t+l+a+sn b+r+a+ی
+ a+n+g+a+m+ h+r+ کa+r+ی b+a+ h+n+d+l+ m+n+g+r+ b+h+
+ x+tja+ی invalid large obj descriptor x+w+a+h+d+ snd+.
+ b+r+a+ی g+l+w+gfیr+ی a+z+ a+یn+ x+tja+
+ hkt+m+a+:+ b+a+یd+ a+z+ یک t+r+a+کn+sn
+ a+s+t+f+a+d+h+ کn+یd+. a+یn+ کa+r+
+ h+m+a+n+tjw+r+ کh+ q+b+l+a+:+ gff+t+h+ snd+ b+a+ a+s+t+f+a+d+h+
+ a+z+ q+r+a+r+ d+a+d+n+ BEGIN w+ END d+r+ a+b+t+d+a+ w+
+ a+n+t+h+a+ی d+s+t+w+r+a+t+ a+n+g+a+m+ m+ی snw+d+.
+
+ a+gfr+ a+یn+ x+tja+ r+a+ d+r+ hkیn+ a+s+t+f+a+d+h+ a+z+
+ یک d+r+a+یw+r+ ODBC d+r+یa+f+t+
+ کr+d+یd+ a+hkt+m+a+l+a+:+ b+a+یd+ a+یn+
+ d+s+t+w+r+ r+a+ a+g+r+a+ کn+یd+: set auto-commit off
+
+ 4.21) tcgfw+n+h+ y+k+ s+t+w+n+ a+y+g+a+d+ k+n+m+ k+h+ m+q+d+a+r+ z+m+a+n+
+ g+a+r+y+ r+a+ b+h+ e+n+w+a+n+ m+q+d+a+r+ p+y+snf+r+dd d+a+snt+h+ b+a+snd+?+
+
+ a+z+ CURRENT_TIMESTAMP a+s+t+f+a+d+h+ کn+یd+ d+r+
+ m+tka+l+ z+یr+ n+hkw+h+ a+n+g+a+m+ a+یn+ کa+r+
+ n+sna+n+ d+a+d+h+ snd+h+ a+s+t+:
+
CREATE TABLE test (x int, modtime timestamp DEFAULT CURRENT_TIMESTAMP );
-4.22) چرا "زير درخواستهايي" كه از IN استفاده مي‌كنند كند هستند؟
-در نسخه های قبل از 7.4 عمل الحاق زیر درخواست و درخواست اصلی به این صورت انجام می
-شود که نتایج به دست آمده از زیر درخواست به صورت ترتیبی برای هر ردیف اعمال می
-شود. اگر زیردرخواست ردیف های کمی را به عنوان خروجی برگرداند و درخواست بیرونی
-ردیف های زیادی را شامل شود استفاده از IN بهترین روش است در غیر اینصورت بهتر است
-از EXISTS استفاده شود
+ 4.22) tcr+a+ "z+y+r+ d+r+x+w+a+s+t+h+a+y+y+" k+h+ a+z+ IN a+s+t+f+a+d+h+
+ m+y+k+n+n+d+ k+n+d+ h+s+t+n+d+?+
+
+ d+r+ n+s+x+h+ h+a+ی q+b+l+ a+z+ 7.4 e+m+l+ a+l+hka+q+
+ z+یr+ d+r+x+w+a+s+t+ w+ d+r+x+w+a+s+t+ a+c+l+ی b+h+
+ a+یn+ c+w+r+t+ a+n+g+a+m+ m+ی snw+d+ کh+
+ n+t+a+یg+ b+h+ d+s+t+ aMm+d+h+ a+z+ z+یr+ d+r+x+w+a+s+t+
+ b+h+ c+w+r+t+ t+r+t+یb+ی b+r+a+ی h+r+ r+d+یf+
+ a+e+m+a+l+ m+ی snw+d+. a+gfr+ z+یr+d+r+x+w+a+s+t+
+ r+d+یf+ h+a+ی کm+ی r+a+ b+h+ e+n+w+a+n+
+ x+r+w+g+ی b+r+gfr+d+a+n+d+ w+ d+r+x+w+a+s+t+
+ b+یr+w+n+ی r+d+یf+ h+a+ی z+یa+d+ی
+ r+a+ sna+m+l+ snw+d+ a+s+t+f+a+d+h+ a+z+ IN b+h+t+r+یn+ r+w+sn
+ a+s+t+ d+r+ i+یr+ a+یn+c+w+r+t+ b+h+t+r+ a+s+t+ a+z+
+ EXISTS a+s+t+f+a+d+h+ snw+d+
+
SELECT *
FROM tab
WHERE col IN (SELECT subcol FROM subtab);
-به:
+
+ b+h+:
+
SELECT *
FROM tab
WHERE EXISTS (SELECT subcol FROM subtab WHERE subcol = col);
-برای اجرای سریع این درخواست باید برای ستون subcol نمایه ایجاد شده باشد.
-در نسخه های بعد از 7.4 IN برای الحاق از همان تکنیک پیچیده مورد استفاده در
-دستورات معمولی استفاده می کند و بنابراین استفاده از آن نسبت به EXISTS ارجحیت
-دارد.
-4.23) چگونه مي‌توانم يك الحاق خارجي (outer join) انجام دهم؟
-برای انجام الحاق خارجی به روش زیر عمل کنید:
+
+ b+r+a+ی a+g+r+a+ی s+r+یe+ a+یn+ d+r+x+w+a+s+t+
+ b+a+یd+ b+r+a+ی s+t+w+n+ subcol n+m+a+یh+
+ a+یg+a+d+ snd+h+ b+a+snd+.
+
+ d+r+ n+s+x+h+ h+a+ی b+e+d+ a+z+ 7.4 IN b+r+a+ی a+l+hka+q+
+ a+z+ h+m+a+n+ t+کn+یک p+یtcیd+h+
+ m+w+r+d+ a+s+t+f+a+d+h+ d+r+ d+s+t+w+r+a+t+ m+e+m+w+l+ی
+ a+s+t+f+a+d+h+ m+ی کn+d+ w+ b+n+a+b+r+a+یn+
+ a+s+t+f+a+d+h+ a+z+ aMn+ n+s+b+t+ b+h+ EXISTS a+r+g+hkیt+
+ d+a+r+d+.
+
+ 4.23) tcgfw+n+h+ m+y+t+w+a+n+m+ y+k+ a+l+hka+q+ x+a+r+g+y+ (outer join)
+ a+n+g+a+m+ d+h+m+?+
+
+ b+r+a+ی a+n+g+a+m+ a+l+hka+q+ x+a+r+g+ی b+h+ r+w+sn
+ z+یr+ e+m+l+ کn+یd+:
+
SELECT *
FROM t1 LEFT OUTER JOIN t2 ON (t1.col = t2.col);
-یا
+
+ یa+
+
SELECT *
FROM t1 LEFT OUTER JOIN t2 USING (col);
-درخواستهای بالا t1.col , t2.col را به هم الحاق می کند و همچنین ردیفهای t1 که
-نظیر آنها در t2 نبوده است را نیز برمی گرداند. اگر از RIGHT استفاده شود نتیجه بر
-عکس است. یعنی ردیفهای t2 که نظیر آنها در t1 نباشد را نشان می دهد و اگر از FULL
-استفاده شود نتیجه هم شامل ردیفهای t1 است و هم شامل ردیفهای t2. استفاده از کلمه
-OUTER اختیاری است چرا که این کلمه به طور ضمنی در دستورهای LEFT, RIGHT, FULL وجود
-دارد.
-در نسخه های قبلی پایگاه داده می توانیم الحاق خارجی را به کمک دستورهای UNION, NOT
-IN شبیه سازی کنیم. این کار در مثال زیر نشان داده شده است:
+ d+r+x+w+a+s+t+h+a+ی b+a+l+a+ t1.col , t2.col r+a+ b+h+ h+m+
+ a+l+hka+q+ m+ی کn+d+ w+ h+m+tcn+یn+
+ r+d+یf+h+a+ی t1 کh+ n+zHیr+ aMn+h+a+ d+r+ t2
+ n+b+w+d+h+ a+s+t+ r+a+ n+یz+ b+r+m+ی gfr+d+a+n+d+. a+gfr+
+ a+z+ RIGHT a+s+t+f+a+d+h+ snw+d+ n+t+یg+h+ b+r+ e+کs+
+ a+s+t+. یe+n+ی r+d+یf+h+a+ی t2 کh+
+ n+zHیr+ aMn+h+a+ d+r+ t1 n+b+a+snd+ r+a+ n+sna+n+ m+ی
+ d+h+d+ w+ a+gfr+ a+z+ FULL a+s+t+f+a+d+h+ snw+d+ n+t+یg+h+ h+m+
+ sna+m+l+ r+d+یf+h+a+ی t1 a+s+t+ w+ h+m+ sna+m+l+
+ r+d+یf+h+a+ی t2. a+s+t+f+a+d+h+ a+z+ کl+m+h+ OUTER
+ a+x+t+یa+r+ی a+s+t+ tcr+a+ کh+ a+یn+
+ کl+m+h+ b+h+ tjw+r+ ddm+n+ی d+r+ d+s+t+w+r+h+a+ی
+ LEFT, RIGHT, FULL w+g+w+d+ d+a+r+d+.
+
+ d+r+ n+s+x+h+ h+a+ی q+b+l+ی p+a+یgfa+h+ d+a+d+h+
+ m+ی t+w+a+n+یm+ a+l+hka+q+ x+a+r+g+ی r+a+ b+h+
+ کm+ک d+s+t+w+r+h+a+ی UNION, NOT IN snb+یh+
+ s+a+z+ی کn+یm+. a+یn+ کa+r+ d+r+
+ m+tka+l+ z+یr+ n+sna+n+ d+a+d+h+ snd+h+ a+s+t+:
+
SELECT tab1.col1, tab2.col2
FROM tab1, tab2
WHERE tab1.col1 = tab2.col1
@@ -819,59 +1569,125 @@ IN شبیه سازی کنیم. این کار در مثال زیر نشان دا�
FROM tab1
WHERE tab1.col1 NOT IN (SELECT tab2.col1 FROM tab2)
ORDER BY col1
-4.24) چگونه مي‌توان درخواستهايي از چند پايگاه داده توليد كرد؟
-در حال حاضر این کار امکان پذیر نیست. PostgreSQL فقط امکان درخواست از پایگاه داده
-ای را می دهد که در حال حاضر به آن متصل باشید و نمی‌توان به طور همزمان از دو
-پایگاه داده استفاده کرد. البته یک برنامه کاربردی خود می تواند به طور همزمان دو
-پایگاه داده را مورد استفاده قرار داده و نتایج را با هم ترکیب کند ولی نمی تواند
-در یک درخواست به هر دو پایگاه داده رجوع کند.
-4.25) چگونه خروجي يك تابع مي‌تواند چند رديف يا ستون باشد؟
-در نسخه 7.3 خروجی یک تابع می تواند چند ردیف یا چند ستون باشد. برای دیدن اطلاعات
-بیشتر به سایت زیر مراجعه
-کنید:http://techdocs.postgresql.org/guides/SetReturningFunctions
-4.26) در توابع PL/PgSQL چرا نمي‌توان با اطمينان جداول موقت را ايجاد يا حذف كرد؟
-PL/PgSQL محتوای توابع را ذخیره (cache) می کند. یک اثر بد جانبی این کار آن است که
-اگر در تابع از یک جدول موقت استفاده شود و بعداً آن جدول حذف و یک جدول جدید به
-جای آن ایجاد شود، در فراخوانی مجدد آن تابع، محتوای ذخیره شده تابع هنوز به جدول
-قدیمی اشاره می کند و بنابراین اجرای تابع با اشکال مواجه می شود. راه حل این مشکل
-آن است که برای جداول موقت از دستور EXECUTE استفاده شود که این کار سبب می شود که
-درخواست برای هر بار اجرا مجدداً پیمایش و تفسیر شود.
-4.27) چه گزينه‌هايي براي تكرار (replication) وجود دارد؟
-There are several master/slave replication options available. These allow only
-the master to make database changes and the slave can only do database reads.
-The bottom of http://gborg.PostgreSQL.org/genpage?replication_research lists
-them. A multi-master replication solution is being worked on at
-http://gborg.PostgreSQL.org/project/pgreplication/projdisplay.php.
-4.28) چه گزينه‌هايي براي رمزنگاري وجود دارد؟
- contrib/pgcrypto شامل توابع رمزنگاری زیادی است که می توان از آنها در دستورات
- SQL استفاده کرد.
- برای رمز کردن ارتباط بین client و server پایگاه داده حتماً گزینه SSL را بر
- روی پایگاه داده فعال کنیم.
- در نسخه 7.3 به بعد کلمات عبور کاربران به طور اتوماتیک به صورت رمز شده ذخیره می
- شود ولی در نسخه های قبلی باید گزینه PASSWORD_ENCRYPTION را در
- فایلpostgresql.conf فعال کنیم.
- می توان پایگاههای داده را روی یک فایل سیستم رمزشده نگاهداری کرد
-
-
-Extending PostgreSQL
-5.1) من يك تابع نوشته‌ام. چگونه آن را در psql اجرا كنم؟ چرا با اجراي آن core
-dump مي‌گيرم؟
-دلایل مختلفی می تواند باعث بروز این مشکل شود. اما قبل از همه، تابع خود را به
-صورت جدا تست کنید.
-5.2) چگونه مي‌توانم در توليد نوع‌ها و توابع جديد و جالب براي PostgreSQL‌ همكاري
-و مشاركت داشته باشم؟
-کد خود را به گروه پستی pgsql-hackers ارسال کنید.
-5.3) چگونه مي‌توانم يك تابع به زبان C بنويسم كه خروجي آن يك ‌tuple (چند تايي)
-باشد؟
-در نسخه های 7.3 به بعد یک تابع می تواند یک جدول را به عنوان خروجی برگرداند. این
-ویژگی در توابعی که به زبانهای C و PL/PgSQL نوشته می‌شوند به طور کامل وجود دارد.
-راهنما برنامه نویسان را مطالعه کنید. یک مثال از نحوه برگرداندن یک جدول به عنوان
-خروجی در contrib/tablefunc آمده است.
-5.4) من يك فايل منبع را عوض كرده ام چرا در عمليات كامپيل مجدد آن، تغيير ديده
-نمي‌شود؟
-Makefile برای فایلهای include شده وابستگیها را به درستی نشان نمی دهد. برای
-اطمینان از اینکه فایلی که عوض کرده اید حتماً دوباره کامپیل می‌شود دستور make
-clean را اجرا کنید. اگر از کامپیلر gcc استفاده می کنید می توانید از گزینه
-enable-depend-- در موقع اجرای برنامه configure استفاده کنید این گزینه باعث می
-شود که وابستگیها به طور اتوماتیک تولید شود. \ No newline at end of file
+ 4.24) tcgfw+n+h+ m+y+t+w+a+n+ d+r+x+w+a+s+t+h+a+y+y+ a+z+ tcn+d+
+ p+a+y+gfa+h+ d+a+d+h+ t+w+l+y+d+ k+r+d+?+
+
+ d+r+ hka+l+ hka+ddr+ a+یn+ کa+r+ a+m+کa+n+
+ p+dkیr+ n+یs+t+. PostgreSQL f+q+tj a+m+کa+n+
+ d+r+x+w+a+s+t+ a+z+ p+a+یgfa+h+ d+a+d+h+ a+ی r+a+
+ m+ی d+h+d+ کh+ d+r+ hka+l+ hka+ddr+ b+h+ aMn+ m+t+c+l+
+ b+a+snیd+ w+ n+m+یt+w+a+n+ b+h+ tjw+r+ h+m+z+m+a+n+ a+z+
+ d+w+ p+a+یgfa+h+ d+a+d+h+ a+s+t+f+a+d+h+ کr+d+. a+l+b+t+h+
+ یک b+r+n+a+m+h+ کa+r+b+r+d+ی x+w+d+ m+ی
+ t+w+a+n+d+ b+h+ tjw+r+ h+m+z+m+a+n+ d+w+ p+a+یgfa+h+ d+a+d+h+
+ r+a+ m+w+r+d+ a+s+t+f+a+d+h+ q+r+a+r+ d+a+d+h+ w+ n+t+a+یg+ r+a+
+ b+a+ h+m+ t+r+کیb+ کn+d+ w+l+ی n+m+ی
+ t+w+a+n+d+ d+r+ یک d+r+x+w+a+s+t+ b+h+ h+r+ d+w+
+ p+a+یgfa+h+ d+a+d+h+ r+g+w+e+ کn+d+.
+
+ 4.25) tcgfw+n+h+ x+r+w+g+y+ y+k+ t+a+b+e+ m+y+t+w+a+n+d+ tcn+d+ r+d+y+f+
+ y+a+ s+t+w+n+ b+a+snd+?+
+
+ d+r+ n+s+x+h+ 7.3 x+r+w+g+ی یک t+a+b+e+ m+ی
+ t+w+a+n+d+ tcn+d+ r+d+یf+ یa+ tcn+d+ s+t+w+n+ b+a+snd+.
+ b+r+a+ی d+یd+n+ a+tjl+a+e+a+t+ b+یsnt+r+ b+h+
+ s+a+یt+ z+یr+ m+r+a+g+e+h+
+ کn+یd+:http://techdocs.postgresql.org/guides/SetReturningF
+ unctions
+
+ 4.26) d+r+ t+w+a+b+e+ PL/PgSQL tcr+a+ n+m+y+t+w+a+n+ b+a+ a+tjm+y+n+a+n+
+ g+d+a+w+l+ m+w+q+t+ r+a+ a+y+g+a+d+ y+a+ hkdkf+ k+r+d+?+
+
+ PL/PgSQL m+hkt+w+a+ی t+w+a+b+e+ r+a+ dkx+یr+h+ (cache)
+ m+ی کn+d+. یک a+tkr+ b+d+ g+a+n+b+ی
+ a+یn+ کa+r+ aMn+ a+s+t+ کh+ a+gfr+ d+r+ t+a+b+e+
+ a+z+ یک g+d+w+l+ m+w+q+t+ a+s+t+f+a+d+h+ snw+d+ w+
+ b+e+d+a+:+ aMn+ g+d+w+l+ hkdkf+ w+ یک g+d+w+l+
+ g+d+یd+ b+h+ g+a+ی aMn+ a+یg+a+d+ snw+d+,+ d+r+
+ f+r+a+x+w+a+n+ی m+g+d+d+ aMn+ t+a+b+e+,+ m+hkt+w+a+ی
+ dkx+یr+h+ snd+h+ t+a+b+e+ h+n+w+z+ b+h+ g+d+w+l+
+ q+d+یm+ی a+sna+r+h+ m+ی کn+d+ w+
+ b+n+a+b+r+a+یn+ a+g+r+a+ی t+a+b+e+ b+a+ a+snکa+l+
+ m+w+a+g+h+ m+ی snw+d+. r+a+h+ hkl+ a+یn+ m+snکl+
+ aMn+ a+s+t+ کh+ b+r+a+ی g+d+a+w+l+ m+w+q+t+ a+z+
+ d+s+t+w+r+ EXECUTE a+s+t+f+a+d+h+ snw+d+ کh+ a+یn+
+ کa+r+ s+b+b+ m+ی snw+d+ کh+ d+r+x+w+a+s+t+
+ b+r+a+ی h+r+ b+a+r+ a+g+r+a+ m+g+d+d+a+:+ p+یm+a+یsn
+ w+ t+f+s+یr+ snw+d+.
+
+ 4.27) tch+ gfz+y+n+h+h+a+y+y+ b+r+a+y+ t+k+r+a+r+ (replication) w+g+w+d+
+ d+a+r+d+?+
+
+ There are several master/slave replication options available. These
+ allow only the master to make database changes and the slave can only
+ do database reads. The bottom of
+ http://gborg.PostgreSQL.org/genpage?replication_research lists them. A
+ multi-master replication solution is being worked on at
+ http://gborg.PostgreSQL.org/project/pgreplication/projdisplay.php.
+
+ 4.28) tch+ gfz+y+n+h+h+a+y+y+ b+r+a+y+ r+m+z+n+gfa+r+y+ w+g+w+d+ d+a+r+d+?+
+
+ * contrib/pgcrypto sna+m+l+ t+w+a+b+e+ r+m+z+n+gfa+r+ی
+ z+یa+d+ی a+s+t+ کh+ m+ی t+w+a+n+ a+z+
+ aMn+h+a+ d+r+ d+s+t+w+r+a+t+ SQL a+s+t+f+a+d+h+ کr+d+.
+ * b+r+a+ی r+m+z+ کr+d+n+ a+r+t+b+a+tj b+یn+ client
+ w+ server p+a+یgfa+h+ d+a+d+h+ hkt+m+a+:+ gfz+یn+h+
+ SSL r+a+ b+r+ r+w+ی p+a+یgfa+h+ d+a+d+h+ f+e+a+l+
+ کn+یm+.
+ * d+r+ n+s+x+h+ 7.3 b+h+ b+e+d+ کl+m+a+t+ e+b+w+r+
+ کa+r+b+r+a+n+ b+h+ tjw+r+ a+t+w+m+a+t+یک b+h+
+ c+w+r+t+ r+m+z+ snd+h+ dkx+یr+h+ m+ی snw+d+
+ w+l+ی d+r+ n+s+x+h+ h+a+ی q+b+l+ی b+a+یd+
+ gfz+یn+h+ PASSWORD_ENCRYPTION r+a+ d+r+
+ f+a+یl+postgresql.conf f+e+a+l+ کn+یm+.
+ * m+ی t+w+a+n+ p+a+یgfa+h+h+a+ی d+a+d+h+ r+a+
+ r+w+ی یک f+a+یl+ s+یs+t+m+
+ r+m+z+snd+h+ n+gfa+h+d+a+r+ی کr+d+
+ _________________________________________________________________
+
+ Extending PostgreSQL
+
+ 5.1) m+n+ y+k+ t+a+b+e+ n+w+snt+h+a+m+. tcgfw+n+h+ aMn+ r+a+ d+r+ psql
+ a+g+r+a+ k+n+m+?+ tcr+a+ b+a+ a+g+r+a+y+ aMn+ core dump m+y+gfy+r+m+?+
+
+ d+l+a+یl+ m+x+t+l+f+ی m+ی t+w+a+n+d+ b+a+e+tk
+ b+r+w+z+ a+یn+ m+snکl+ snw+d+. a+m+a+ q+b+l+ a+z+ h+m+h+,+
+ t+a+b+e+ x+w+d+ r+a+ b+h+ c+w+r+t+ g+d+a+ t+s+t+ کn+یd+.
+
+ 5.2) tcgfw+n+h+ m+y+t+w+a+n+m+ d+r+ t+w+l+y+d+ n+w+e+h+a+ w+ t+w+a+b+e+
+ g+d+y+d+ w+ g+a+l+b+ b+r+a+y+ PostgreSQL h+m+k+a+r+y+ w+ m+sna+r+k+t+
+ d+a+snt+h+ b+a+snm+?+
+
+ کd+ x+w+d+ r+a+ b+h+ gfr+w+h+ p+s+t+ی pgsql-hackers
+ a+r+s+a+l+ کn+یd+.
+
+ 5.3) tcgfw+n+h+ m+y+t+w+a+n+m+ y+k+ t+a+b+e+ b+h+ z+b+a+n+ C b+n+w+y+s+m+
+ k+h+ x+r+w+g+y+ aMn+ y+k+ tuple (tcn+d+ t+a+y+y+) b+a+snd+?+
+
+ d+r+ n+s+x+h+ h+a+ی 7.3 b+h+ b+e+d+ یک t+a+b+e+
+ m+ی t+w+a+n+d+ یک g+d+w+l+ r+a+ b+h+ e+n+w+a+n+
+ x+r+w+g+ی b+r+gfr+d+a+n+d+. a+یn+ w+یzjgfی
+ d+r+ t+w+a+b+e+ی کh+ b+h+ z+b+a+n+h+a+ی C w+
+ PL/PgSQL n+w+snt+h+ m+یsnw+n+d+ b+h+ tjw+r+ کa+m+l+
+ w+g+w+d+ d+a+r+d+. r+a+h+n+m+a+ b+r+n+a+m+h+ n+w+یs+a+n+ r+a+
+ m+tja+l+e+h+ کn+یd+. یک m+tka+l+ a+z+ n+hkw+h+
+ b+r+gfr+d+a+n+d+n+ یک g+d+w+l+ b+h+ e+n+w+a+n+
+ x+r+w+g+ی d+r+ contrib/tablefunc aMm+d+h+ a+s+t+.
+
+ 5.4) m+n+ y+k+ f+a+y+l+ m+n+b+e+ r+a+ e+w+dd k+r+d+h+ a+m+ tcr+a+ d+r+
+ e+m+l+y+a+t+ k+a+m+p+y+l+ m+g+d+d+ aMn+,+ t+i+y+y+r+ d+y+d+h+ n+m+y+
+ snw+d+?+
+
+ Makefile b+r+a+ی f+a+یl+h+a+ی include snd+h+
+ w+a+b+s+t+gfیh+a+ r+a+ b+h+ d+r+s+t+ی n+sna+n+ n+m+ی
+ d+h+d+. b+r+a+ی a+tjm+یn+a+n+ a+z+ a+یn+کh+
+ f+a+یl+ی کh+ e+w+dd کr+d+h+ a+یd+
+ hkt+m+a+:+ d+w+b+a+r+h+ کa+m+p+یl+ m+یsnw+d+
+ d+s+t+w+r+ make clean r+a+ a+g+r+a+ کn+یd+. a+gfr+ a+z+
+ کa+m+p+یl+r+ gcc a+s+t+f+a+d+h+ m+ی
+ کn+یd+ m+ی t+w+a+n+یd+ a+z+ gfz+یn+h+
+ enable-depend-- d+r+ m+w+q+e+ a+g+r+a+ی b+r+n+a+m+h+ configure
+ a+s+t+f+a+d+h+ کn+یd+ a+یn+ gfz+یn+h+ b+a+e+tk
+ m+ی snw+d+ کh+ w+a+b+s+t+gfیh+a+ b+h+ tjw+r+
+ a+t+w+m+a+t+یک t+w+l+یd+ snw+d+.
diff --git a/doc/FAQ_french b/doc/FAQ_french
index 1423aee9b03..1b224e877ca 100644
--- a/doc/FAQ_french
+++ b/doc/FAQ_french
@@ -171,7 +171,7 @@
PostgreSQL Data Base Management System
- Portions copyright (c) 1996-2004, PostgreSQL Global Development Group
+ 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
@@ -760,8 +760,7 @@
Pour changer le type de donn�es d'une colonne, faites :
BEGIN;
ALTER TABLE table ADD COLUMN nouvelle_colonne nouveau_type_de_donnees;
- UPDATE table SET nouvelle_colonne = CAST(ancienne_colonne AS nouveau_type_d
-e_donnees);
+ UPDATE table SET nouvelle_colonne = CAST(ancienne_colonne AS nouveau_type_de_donnees);
ALTER TABLE table DROP COLUMN ancienne_colonne;
COMMIT;
@@ -772,14 +771,12 @@ e_donnees);
donn�es ?
Les limites sont :
- Taille maximum pour une base de donn�es illimit�e (il existe des bases
-de 32 To)
+ Taille maximum pour une base de donn�es illimit�e (il existe des basesde 32 To)
Taille maximum pour une table 32 To
Taille maximum pour une ligne 1,6 To
Taille maximum pour un champ 1 Go
Nombre maximum de lignes dans une table illimit�
- Nombre maximum de colonnes dans une table 250-1600, selon le type de colo
-nnes
+ Nombre maximum de colonnes dans une table 250-1600, selon le type de colonnes
Nombre maximum d'index sur une table illimit�
Bien s�r, ces valeurs ne sont pas vraiment illimit�e, elles sont
@@ -813,21 +810,17 @@ nnes
----------------------------------------
60 octets par ligne
- La taille des pages de donn�es dans PostgreSQL est de 8192 octets (8 KO), do
-nc :
+ La taille des pages de donn�es dans PostgreSQL est de 8192 octets (8 KO), donc :
8192 octets par page
- ---------------------- = 136 lignes par page de base de donn�es (arrondi �
- l'entier inf�rieur)
+ ---------------------- = 136 lignes par page de base de donn�es (arrondi � l'entier inf�rieur)
60 octets par ligne
100000 lignes de donn�es
- ------------------------- = 735 pages de base de donn�es (arrondi � l'enti
-er sup�rieur)
+ ------------------------- = 735 pages de base de donn�es (arrondi � l'entier sup�rieur)
128 lignes par page
-735 pages de base de donn�es * 8192 octets par page = 6 021 120 octets (6,4 M
-o)
+735 pages de base de donn�es * 8192 octets par page = 6 021 120 octets (6,4 Mo)
Les index utilisent moins d'espace, mais ils contiennent les donn�es
index�es, ils peuvent donc �galement �tre grands.
@@ -1025,8 +1018,7 @@ BYTEA bytea tableau d'octets (accepte les octets nuls)
table d'exemple de la section 4.15.1, un exemple dans un
pseudo-langage ressemblerait � ceci :
nouvelle_id = execute("SELECT nextval('personne_id_seq')");
- execute("INSERT INTO personne (id, nom) VALUES (nouvelle_id, 'Blaise Pascal
-')");
+ execute("INSERT INTO personne (id, nom) VALUES (nouvelle_id, 'Blaise Pascal')");
Vous pourriez ensuite utiliser la nouvelle valeur stock�e dans
nouvelle_id avec d'autres requ�tes (c'est-�-dire en tant que cl�
@@ -1085,8 +1077,7 @@ BYTEA bytea tableau d'octets (accepte les octets nuls)
en quelque chose d'autre ou si vous voulez faire une copie de la table
avec les OID originaux, il n'y a pas de raisons pour ne pas le faire :
CREATE TABLE nouvelle_table (macolonne int);
- SELECT oid AS ancienne_oid, macolonne INTO table_temporaire FROM ancienne_t
-able;
+ SELECT oid AS ancienne_oid, macolonne INTO table_temporaire FROM ancienne_table;
COPY table_temporaire FROM '/tmp/tablepg';
COPY nouvelle_table WITH OIDS FROM '/tmp/tablepg';
DROP TABLE table_temporaire;
@@ -1178,8 +1169,7 @@ CREATE TABLE test (x int, heuremodif timestamp DEFAULT CURRENT_TIMESTAMP );
to:
SELECT *
FROM table
- WHERE EXISTS (SELECT souscolonne FROM soustable WHERE souscolonne = colonne
-);
+ WHERE EXISTS (SELECT souscolonne FROM soustable WHERE souscolonne = colonne);
Pour que ceci soit rapide, souscolonne doit �tre une colonne index�e.
diff --git a/doc/FAQ_german b/doc/FAQ_german
index 49375224b4a..dcb38cec778 100644
--- a/doc/FAQ_german
+++ b/doc/FAQ_german
@@ -643,14 +643,12 @@
Wenn der postmaster hingegen l�uft, f�hren Sie psql in einem Fenster
aus, ermitteln Sie die Prozessnummer (PID) des postgres-Prozesses, der
- von psql verwendet wird (mit
-SELECT pg_backend_pid()
-
- ). Binden Sie einen Debugger an diese PID und f�hren Sie Abfragen von
- psql aus. Wenn Sie den postgres-Serverstart analysieren wollen, setzen
- Sie die Umgebungsvariable PGOPTIONS="-W n", und starten Sie dann psql.
- Dies verz�gert den Start um n Sekunden, damit Sie einen Debugger an
- den Prozess binden und ggf. Breakpoints setzen k�nnen, bevor die
+ von psql verwendet wird (mit SELECT pg_backend_pid()). Binden Sie
+ einen Debugger an diese PID und f�hren Sie Abfragen von psql aus. Wenn
+ Sie den postgres-Serverstart analysieren wollen, setzen Sie die
+ Umgebungsvariable PGOPTIONS="-W n", und starten Sie dann psql. Dies
+ verz�gert den Start um n Sekunden, damit Sie einen Debugger an den
+ Prozess binden und ggf. Breakpoints setzen k�nnen, bevor die
Startsequenz begonnen wird.
Es gibt verschiedene Einstellungen (die log_*-Gruppe), die diverse
diff --git a/doc/FAQ_japanese b/doc/FAQ_japanese
index 609f8198f03..b271d650976 100644
--- a/doc/FAQ_japanese
+++ b/doc/FAQ_japanese
@@ -1,22 +1,20 @@
-PostgreSQL(�ݥ��ȥ��쥹�����塼������)�ˤĤ��Ƥ褯�������Ȥ��β���(FAQ)
-��ʸ�ǽ�������: Sun Jan 9 14:44:04 EST 2005
-
-���ߤΰݻ�������: Bruce Momjian ([email protected])
-Maintainer of Japanese Translation: Jun Kuwamura (juk at PostgreSQL.jp)
-
-����ʸ��κǿ��Ǥ� "http://www.postgresql.org/files/documentation/faqs/
-FAQ.html"> http://www.postgresql.org/files/documentation/faqs/FAQ.html
-
-�Ǹ��뤳�Ȥ��Ǥ��ޤ���
-
-�ץ�åȥۡ������ͭ�μ���ˤĤ��Ƥ�: "http://www.postgresql.org/docs/faq/">
-http://www.postgresql.org/docs/faq/
-
-
-�˲���������ޤ���
-
-(�ʲ������Ԥˤ������� [������ �� ] �ȤǰϤ�ǵ����ޤ���)
+ PostgreSQL(�ݥ��ȥ��쥹����塼������)�ˤĤ��Ƥ褯�������Ȥ��β���(FAQ)
+
+ ��ʸ�ǽ�������: Sun Jan 9 14:44:04 EST 2005
+
+ ���ߤΰݻ�������: Bruce Momjian ([email protected])
+ Maintainer of Japanese Translation: Jun Kuwamura (juk at
+ PostgreSQL.jp)
+
+ ����ʸ��κǿ��Ǥ�
+ http://www.postgresql.org/files/documentation/faqs/FAQ.html
+ �Ǹ��뤳�Ȥ��Ǥ�ޤ���
+
+ �ץ�åȥۡ������ͤμ���ˤĤ��Ƥ�:
+ http://www.postgresql.org/docs/faq/
+ �˲���������ޤ���
+(�ʲ������Ԥˤ������� [������ �� ] �ȤǰϤ�ǵ���ޤ���)
[������
���ܸ�������ˤĤ��ƤΥ��ϺǸ����ذ�ư���ޤ�����
@@ -27,180 +25,201 @@ http://www.postgresql.org/docs/faq/
http://www.rccm.co.jp/~juk/pgsql/
http://www.linux.or.jp/JF/
- ���������ˤĤ��Ƥ����Ť�������(juk at PostgreSQL.jp)�ޤǥ᡼��Ǥ��󤻲�������
+ ���������ˤĤ��Ƥ����Ť������(juk at PostgreSQL.jp)�ޤǥ᡼��Ǥ��󤻲�������
2005ǯ01��12�� ��¼ ��
]
-
-������������������������������������������������������������������������������
-
- ����Ū�ʼ���
-
-1.1) PostgreSQL�Ȥϲ��Ǥ����������ɤߤޤ�����
-1.2) PostgreSQL������Ϥɤ��ʤäƤޤ�����
-1.3) PostgreSQL��ư���Unix�ץ�åȥۡ���ϡ�
-1.4) Unix�ʳ��ΰܿ��ǤǻȤ����Τϡ�
-1.5) PostgreSQL�Ϥɤ���������Ǥ��ޤ�����
-1.6) ���ݡ��ȤϤɤ��Ǽ������ޤ�����
-1.7) �ǿ��ǤϤɤ�Ǥ���
-1.8) �ɤΤ褦��ʸ�񤬤���ޤ�����
-1.9) ���ΤΥХ���̤��̵����ǽ�Ϥɤ���äƸ��Ĥ��ޤ�����
-1.10) SQL�Ϥɤ�����гؤ٤ޤ�����
-1.11) PostgreSQL������2000ǯ����(Y2K)���б����Ƥ��ޤ�����
-1.12) ��ȯ������ˤϤɤΤ褦�˻��ä��ޤ�����
-1.13) �Х���ݡ��ȤϤɤΤ褦��ȯ�����ޤ�����
-1.14) ¾��DBMS����٤�PostgreSQL�Ϥɤ��ʤΤǤ�����
-1.15) PostgreSQL�����̤DZ������ˤϤɤ�����Ф褤�Ǥ�����
-
- �桼���������饤����Ȥμ���
-
-2.1) PostgreSQL �� ODBC �ɥ饤�С��Ϥ���ޤ�����
-2.2) PostgreSQL �� Web �ڡ�����Ϣ�Ȥ�����ˤϤɤ�ʥġ��뤬����ޤ�����
-2.3) PostgreSQL �˥���ե����롦�桼�����󥿡��ե������Ϥ���ޤ�����
-2.4) �ɤΤ褦�ʸ���� PostgreSQL ���̿��Ǥ�������
-
- ��������
-
-3.1) �ɤΤ褦�ˤ���� /usr/local/pgsql �ʳ��ξ��˥��󥹥ȡ���Ǥ��ޤ�����
-3.2) postmaster �����餻��ȡ� Bad System Call �Ȥ�����������פ����ȤΥ�å���
-�����Фޤ����ʤ��Ǥ�����
-3.3) postmaster �����餻�褦�Ȥ���ȡ� IpcMemoryCreate ���顼���Фޤ����ʤ��Ǥ�
-����
-3.4) postmaster�����餻�褦�Ȥ���ȡ� IpcSemaphoreCreate ���顼���Фޤ����ʤ���
-������
-3.5) ¾�Υۥ��Ȥ������³�ϤɤΤ褦�����椷�ޤ�����
-3.6) ����ɤ���ǽ�����뤿��ˤϡ��ǡ����١��������󥸥��ɤΤ褦��Ĵ���������
-���Ǥ�����
-3.7) �ɤΤ褦�ʥǥХ���ǽ���Ȥ��ޤ�����
-3.8) ��³���褦�Ȥ���Ȥ��� 'Sorry, too many clients' ���Ф�ΤϤʤ��Ǥ�����
-3.9) pgsql_tmp �ǥ��쥯�ȥ����ˤϲ�������ޤ�����
-3.10) PostgreSQL�Υ᥸�㡼��꡼���򥢥åץǡ��Ȥ���Τ˥���פȥꥹ�ȥ��򤷤�
-���ƤϤʤ�ʤ��ΤϤʤ��Ǥ�����
-3.11) �ϡ��ɥ������ˤϤɤ�ʥ���ԥ塼����Ȥ��Ф褤�Ǥ�����
-
- ������
-
-4.1) �Х��ʥꡦ����������̾參������Ȥΰ㤤�ϲ��Ǥ�����
-4.2) �ǽ�ο������Τߤ� select ����ˤϤɤ����ޤ�����������ʥ�����
-4.3) �ơ��֥�䤽��¾�ξ���Υꥹ�Ȥ� psql �Ǹ���ˤϤɤ����ޤ�����
-4.4) �ơ��֥뤫�饫���κ�������뤤�ϡ��ǡ��������ѹ�����ˤϤɤ����ޤ�����
-4.5) �������ơ��֥롢�ǡ����١����κ��祵�����ϡ�
-4.6) ����Ū�ʥƥ����ȥե����뤫��ǡ�������¸����ˤϡ��ǡ����١����Υǥ�������
-�̤ϤɤΤ��餤ɬ�פǤ�����
-4.7) ������줿�ơ��֥롢����ǥå������ǡ����١���������ӡ��桼����ɤΤ褦��
-���Ƹ��Ĥ��Ф��ޤ�����
-4.8) �䤤��碌���٤�����������ǥå�����ȤäƤ����ͻҤ�����ޤ��󡣤ʤ��Ǥ���
-��
-4.9) �䤤��碌���֥ƥ��ޥ������ɤΤ褦���䤤��碌��ɾ�����뤫�򸫤�ˤϤɤ���
-�ޤ�����
-4.10) R-tree ����ǥå����Ȥϲ��Ǥ�����
-4.11) ����Ū�䤤��碌��Ŭ���Ȥϲ��Ǥ�����
-4.12) ����ɽ���Ǥθ�������ʸ���Ⱦ�ʸ���Ȥ���̤��ʤ�����ɽ�������ϤɤΤ褦�˼�
-�����ޤ�������ʸ���Ⱦ�ʸ���Ȥ���̤��ʤ������Τ���Υ���ǥå����ϤɤΤ褦�˻�
-���ޤ�����
-4.13) �䤤��碌����ǡ��ե�����ɤ� NULL �Ǥ��뤳�Ȥ򸡽Ф���ˤϤɤ����ޤ���
-��
-4.14) ������ʸ�����Τ��줾��ΰ㤤�ϲ��Ǥ�����
-4.15.1) ����(serial)����ư��ʬ�ե�����ɤϤɤΤ褦�ˤĤ���ޤ�����
-4.15.2) SERIAL�ǡ�����������������ͤϡ��ɤ�����������ޤ�����
-4.15.3) currval() ��¾�Υ桼���Ȥζ�����֤˴٤뤳�ȤϤʤ��Ǥ�����
-4.15.4) �ȥ�󥶥���������Ǥ����Ȥ��ˤ⤦�����ɥ��������ֹ椬�Ȥ��ʤ���
-�Ϥʤ��Ǥ������������󥹡�SERIAL�����˶���������ΤϤʤ��Ǥ�����
-4.16) OID �Ȥϲ��Ǥ����� TID �Ȥϲ��Ǥ�����
-4.17) PostgreSQL �ǻȤ��뤤���Ĥ����Ѹ�ΰ�̣�ϲ��Ǥ�����
-4.18) ���顼��å����� "ERROR: Memory exhausted in AllocSetAlloc()"���Ф�ΤϤ�
-���Ǥ�����
-4.19) �ɤΥС������� PostgreSQL �����餻�Ƥ���Τ���Ĵ�٤�ˤϤɤ����ޤ�����
-4.20) �顼�����֥������Ȥ����ǡ�invalid large obj descriptor�ȽФ�ΤϤʤ���
-������
-4.21) ���ߤλ��郎�ǥե���ȤȤʤ�褦�ʥ����ϤɤΤ褦�ˤĤ���ޤ�����
-4.22) �ʤ���IN��Ȥ����䤤��碌���ȤƤ��٤��ΤǤ�����
-4.23) �������(outer join)�ϤɤΤ褦�˼¸����ޤ���?
-4.24) ʣ���Υǡ����١�����Ȥ��䤤��碌�ϤɤΤ褦�ˤ���ФǤ��ޤ�����
-4.25) �ؿ���ʣ���Υ����ޤ��ϥ������֤��ˤϤɤ����ޤ�����
-4.26) �ʤ���PL/PgSQL �ؿ����椫�����ơ��֥��μ¤� create/drop ���뤳�Ȥ���
-���ʤ��ΤǤ��礦����
-4.27) �ɤΤ褦�ʰŹ沽���ץ��������ѤǤ��ޤ���?
-
- PostgreSQL�γ�ĥ�ˤĤ��Ƥμ���
-
-5.1) ��ʬ�ǽ񤤤��桼������ؿ��� psql ����Ǽ¹Ԥ���ȥ���������פ��Ƥ��ޤ���
-�Ϥʤ��Ǥ�����
-5.2) PostgreSQL �Ѥ˽񤤤�����ä���Ũ�ʿ���������ؿ����󶡤��ƥץ��������Ȥ�
-�׸��������ΤǤ�����
-5.3) ���ץ���֤� C����δؿ��ϤɤΤ褦�˽񤭤ޤ�����
-5.4) ���������ե�������ѹ����ޤ������ƥ���ѥ��뤷�Ƥ��Ѳ��������ʤ��ΤϤʤ�
-�Ǥ�����
-
-������������������������������������������������������������������������������
-
- ����Ū�ʼ���
-
-1.1) PostgreSQL �Ȥϲ��Ǥ����������ɤߤޤ�����
-
-PostgreSQL��Post-Gres-Q-L(�ݥ��� - ���쥹 - ���塼 - ����) ��ȯ�����ޤ���
-
-PostgreSQL �ϼ����� DBMS �����ѤΥץ��ȥ����פǤ��ä� POSTGRES �ǡ����١�������
-�����ƥ�β����ǤǤ��ʤ��Τ��ᡢ���Ǥ�Ȥ��ɤ� "Postgres" �ȸƤФ�뤳�Ȥ�����
-�ޤ��ˡ�PostgreSQL �� POSTGRES �ζ��Ϥʥǡ�������ǥ��˭�٤ʥǡ�����������(��)
-���ݻ����ʤ��顢POSTGRES �ǻȤ�줿 PostQuel �䤤��碌����򡢳�ĥ���� SQL ��
-���֥��åȤ��֤������Ƥ��ޤ���PostgreSQL ��̵���Ǵ����ʥ����������ѤǤ��ޤ���
-
-PostgreSQL �γ�ȯ�ϡ�PostgreSQL ��ȯ�᡼��󥰥ꥹ�Ȥ˻��ä��Ƥ��볫ȯ��ã�Υ�
-����Ǥ��٤ƹԤʤ��Ƥ��ޤ������ߤκ�Ĺ�� Marc G. Fournier (
[email protected] )�Ǥ���(������1.6��˻��äλ���������ޤ���)���ߡ����Υ�
-���ब PostgreSQL ��ȯ�Τ��٤Ƥ����ݤ�ߤƤ��ޤ������Υ�����ϥ��ߥ�˥ƥ��ץ�
-�������ȤǤ��ꡢ�����ʤ��Ȥˤ�äƤ����������ޤ��󡣻��ä�������С� http:/
-/www.postgresql.org/files/documentation/faqs/FAQ_DEV.html �ˤ��볫ȯ�Ը�����FAQ
-�򸫤Ƥ���������
-
-Postgres95-1.01 ���濴Ū�ʳ�ȯ�Ԥ� Andrew Yu �� Jolly Chen �Ǥ�����������¾����
-�ο͡������Υ����ɤΰܿ����ƥ��ȡ��ǥХ�������ӡ����ɤ˻��ä��ޤ�����
-PostgreSQL �������������ɤǤ��� Postgres �ϥ���ե���˥���إС����쥤���ˤ���
-�ơ� Michael Stonebraker �����λش��Τ�ȡ�¿���γ�����´�������ܿ��Υץ������
-���������Ϥˤ�����ޤ�����
-
-�С����쥤�ˤ����뤳�Υ��եȥ������Τ�Ȥ�̾���� Postgres �Ǥ�������SQL �ε�ǽ
-���ɲä��줿 1995 ǯ�ˤ���̾���� Postgres95 ���ѹ����졢1996 ǯ�ν���ˤ���̾��
-�� PostgreSQL ���ѹ�����ޤ�����
-
-1.2) PostgreSQL ������Ϥɤ��ʤäƤޤ�����
-
-PostgreSQL �ϲ���������˽����ޤ���
-
+ _________________________________________________________________
+
+ ����Ū�ʼ���
+
+ 1.1) PostgreSQL�Ȥϲ��Ǥ����� �����ɤߤޤ�����
+ 1.2) PostgreSQL������Ϥɤ��ʤäƤޤ�����
+ 1.3) PostgreSQL��ư���Unix�ץ�åȥۡ���ϡ�
+ 1.4) Unix�ʳ��ΰܿ��ǤǻȤ����Τϡ�
+ 1.5) PostgreSQL�Ϥɤ���������Ǥ�ޤ�����
+ 1.6) ���ݡ��ȤϤɤ��Ǽ������ޤ�����
+ 1.7) �ǿ��ǤϤɤ�Ǥ���
+ 1.8) �ɤΤ褦��ʸ�񤬤���ޤ�����
+ 1.9) ���ΤΥХ���̤��̵����ǽ�Ϥɤ���äƸ��Ĥ��ޤ�����
+ 1.10) SQL�Ϥɤ�����гؤ٤ޤ�����
+ 1.11) PostgreSQL������2000ǯ����(Y2K)���б����Ƥ��ޤ�����
+ 1.12) ��ȯ������ˤϤɤΤ褦�˻��ä��ޤ�����
+ 1.13) �Х���ݡ��ȤϤɤΤ褦��ȯ�����ޤ�����
+ 1.14) ¾��DBMS����٤�PostgreSQL�Ϥɤ��ʤΤǤ�����
+ 1.15) PostgreSQL�����̤DZ������ˤϤɤ�����Ф褤�Ǥ�����
+
+ �桼���������饤����Ȥμ���
+
+ 2.1) PostgreSQL �� ODBC �ɥ饤�С��Ϥ���ޤ�����
+ 2.2) PostgreSQL �� Web
+ �ڡ�����Ϣ�Ȥ�����ˤϤɤ�ʥġ��뤬����ޤ�����
+ 2.3) PostgreSQL �˥���ե����롦�桼�����󥿡��ե������Ϥ���ޤ�����
+ 2.4) �ɤΤ褦�ʸ���� PostgreSQL ���̿��Ǥ������
+
+ ��������
+
+ 3.1) �ɤΤ褦�ˤ���� /usr/local/pgsql �ʳ��ξ��˥��󥹥ȡ���Ǥ�
+ �ޤ�����
+ 3.2) postmaster �����餻��ȡ� Bad System Call
+ �Ȥ�����������פ����ȤΥ�å��������Фޤ����ʤ��Ǥ�����
+ 3.3) postmaster �����餻�褦�Ȥ���ȡ� IpcMemoryCreate
+ ���顼���Фޤ����ʤ��Ǥ�����
+ 3.4) postmaster�����餻�褦�Ȥ���ȡ� IpcSemaphoreCreate
+ ���顼���Фޤ����ʤ��Ǥ�����
+ 3.5) ¾�Υۥ��Ȥ������³�ϤɤΤ褦�����椷�ޤ�����
+ 3.6) ����ɤ���
+ ǽ�����뤿��ˤϡ��ǡ����١��������󥸥��ɤΤ褦��Ĵ��������ɤ��Ǥ�
+ ����
+ 3.7) �ɤΤ褦�ʥǥХ���ǽ���Ȥ��ޤ�����
+ 3.8) ��³���褦�Ȥ���Ȥ�� 'Sorry, too many clients'
+ ���Ф�ΤϤʤ��Ǥ�����
+ 3.9) pgsql_tmp �ǥ��쥯�ȥ����ˤϲ�������ޤ�����
+ 3.10)
+ PostgreSQL�Υ᥸�㡼��꡼���򥢥åץǡ��Ȥ���Τ˥���פȥꥹ�ȥ���
+ �ʤ��ƤϤʤ�ʤ��ΤϤʤ��Ǥ�����
+ 3.11) �ϡ��ɥ������ˤϤɤ�ʥ���ԥ塼����Ȥ��Ф褤�Ǥ�����
+
+ ������
+
+ 4.1) �Х��ʥꡦ����������̾參������Ȥΰ㤤�ϲ��Ǥ�����
+ 4.2) �ǽ�ο������Τߤ� select ����ˤϤɤ����ޤ����� ������ʥ�����
+ 4.3) �ơ��֥�䤽��¾�ξ���Υꥹ�Ȥ� psql �Ǹ���ˤϤɤ����ޤ�����
+ 4.4)
+ �ơ��֥뤫�饫���κ�������뤤�ϡ��ǡ��������ѹ�����ˤϤɤ����ޤ���
+ ��
+ 4.5) �������ơ��֥롢�ǡ����١����κ��祵�����ϡ�
+ 4.6) ����Ū�ʥƥ�
+ ���ȥե����뤫��ǡ�������¸����ˤϡ��ǡ����١����Υǥ��������̤Ϥɤ�
+ ���餤ɬ�פǤ�����
+ 4.7)
+ ������줿�ơ��֥롢����ǥå������ǡ����١���������ӡ��桼����ɤΤ�
+ ���ˤ��Ƹ��Ĥ��Ф��ޤ�����
+ 4.8)
+ �䤤��碌���٤�����������ǥå�����ȤäƤ����ͻҤ�����ޤ��󡣤ʤ���
+ ������
+ 4.9)
+ �䤤��碌���֥ƥ��ޥ������ɤΤ褦���䤤��碌��ɾ�����뤫�򸫤�ˤϤ�
+ �����ޤ�����
+ 4.10) R-tree ����ǥå����Ȥϲ��Ǥ�����
+ 4.11) ����Ū�䤤��碌��Ŭ���Ȥϲ��Ǥ�����
+ 4.12)
+ ����ɽ���Ǥθ�������ʸ���Ⱦ�ʸ���Ȥ���̤��ʤ�����ɽ�������ϤɤΤ褦��
+ �¸����ޤ�������ʸ���Ⱦ�ʸ���Ȥ���̤��ʤ������Τ���Υ���ǥå����Ϥ�
+ �Τ褦�˻Ȥ��ޤ�����
+ 4.13) �䤤��碌����ǡ��ե�����ɤ� NULL
+ �Ǥ��뤳�Ȥ򸡽Ф���ˤϤɤ����ޤ�����
+ 4.14) ������ʸ�����Τ��줾��ΰ㤤�ϲ��Ǥ�����
+ 4.15.1) ����(serial)����ư��ʬ�ե�����ɤϤɤΤ褦�ˤĤ���ޤ�����
+ 4.15.2) SERIAL�ǡ�����������������ͤϡ��ɤ�����������ޤ�����
+ 4.15.3) currval() ��¾�Υ桼���Ȥζ�����֤˴٤뤳�ȤϤʤ��Ǥ�����
+ 4.15.4) �ȥ�󥶥���������Ǥ����Ȥ�
+ �ˤ⤦�����ɥ��������ֹ椬�Ȥ��ʤ��ΤϤʤ��Ǥ������������󥹡�SERI
+ AL�����˶��������ΤϤʤ��Ǥ�����
+ 4.16) OID �Ȥϲ��Ǥ����� TID �Ȥϲ��Ǥ�����
+ 4.17) PostgreSQL �ǻȤ��뤤���Ĥ����Ѹ�ΰ�̣�ϲ��Ǥ�����
+ 4.18) ���顼��å����� "ERROR: Memory exhausted in
+ AllocSetAlloc()"���Ф�ΤϤʤ��Ǥ�����
+ 4.19) �ɤΥС������� PostgreSQL
+ �����餻�Ƥ���Τ���Ĵ�٤�ˤϤɤ����ޤ�����
+ 4.20) �顼�����֥������Ȥ����ǡ�invalid large obj
+ descriptor�ȽФ�ΤϤʤ��Ǥ�����
+ 4.21)
+ ���ߤλ��郎�ǥե���ȤȤʤ�褦�ʥ����ϤɤΤ褦�ˤĤ���ޤ�����
+ 4.22) �ʤ���IN��Ȥ����䤤��碌���ȤƤ��٤��ΤǤ�����
+ 4.23) �������(outer join)�ϤɤΤ褦�˼¸����ޤ���?
+ 4.24) ʣ���Υǡ����١�����Ȥ��䤤��碌�ϤɤΤ褦�ˤ���ФǤ�ޤ�����
+ 4.25) �ؿ���ʣ���Υ����ޤ��ϥ������֤��ˤϤɤ����ޤ�����
+ 4.26) �ʤ���PL/PgSQL �ؿ����椫�����ơ��֥��μ¤� create/drop
+ ���뤳�Ȥ��Ǥ�ʤ��ΤǤ��礦����
+ 4.27) �ɤΤ褦�ʰŹ沽���ץ��������ѤǤ�ޤ���?
+
+ PostgreSQL�γ�ĥ�ˤĤ��Ƥμ���
+
+ 5.1) ��ʬ�ǽ񤤤��桼������ؿ��� psql
+ ����Ǽ¹Ԥ���ȥ���������פ��Ƥ��ޤ��ΤϤʤ��Ǥ�����
+ 5.2) PostgreSQL
+ �Ѥ˽񤤤�����ä���Ũ�ʿ���������ؿ����󶡤��ƥץ��������Ȥ˹׸�����
+ ���ΤǤ�����
+ 5.3) ���ץ���֤� C����δؿ��ϤɤΤ褦�˽�ޤ�����
+ 5.4)
+ ���������ե�������ѹ����ޤ������ƥ���ѥ��뤷�Ƥ��Ѳ��������ʤ��Τ�
+ �ʤ��Ǥ�����
+ _________________________________________________________________
+
+ ����Ū�ʼ���
+
+ 1.1) PostgreSQL �Ȥϲ��Ǥ����� �����ɤߤޤ�����
+
+ PostgreSQL��Post-Gres-Q-L(�ݥ��� - ���쥹 - ��塼 - ����)
+ ��ȯ�����ޤ���
+
+ PostgreSQL �ϼ����� DBMS �����ѤΥץ��ȥ����פǤ��ä� POSTGRES
+ �ǡ����١������������ƥ�β����ǤǤ��ʤ��Τ��ᡢ���Ǥ�Ȥ�ɤ�
+ "Postgres" �ȸƤФ�뤳�Ȥ�����ޤ��ˡ�PostgreSQL �� POSTGRES
+ �ζ��Ϥʥǡ�������ǥ��˭
+ �٤ʥǡ�����������(��)���ݻ����ʤ��顢POSTGRES �ǻȤ�줿 PostQuel
+ �䤤��碌����򡢳�ĥ���� SQL �Υ��֥��åȤ��֤�
+ �����Ƥ��ޤ���PostgreSQL ��̵���Ǵ����ʥ����������ѤǤ�ޤ���
+
+ PostgreSQL �γ�ȯ�ϡ�PostgreSQL
+ ��ȯ�᡼��󥰥ꥹ�Ȥ˻��ä��Ƥ��볫ȯ��ã�Υ�����Ǥ��٤ƹԤʤ��Ƥ�
+ �ޤ������ߤκ�Ĺ�� Marc G. Fournier ([email protected]
+ )�Ǥ���(�����1.6��˻��äλ���������ޤ���)���ߡ����Υ����ब
+ PostgreSQL
+ ��ȯ�Τ��٤Ƥ����ݤ�ߤƤ��ޤ������Υ�����ϥ��ߥ�˥ƥ��ץ��������Ȥ�
+ ���ꡢ�����ʤ��Ȥˤ�äƤ����������ޤ��󡣻��ä�������С�
+ http://www.postgresql.org/files/documentation/faqs/FAQ_DEV.html
+ �ˤ��볫ȯ�Ը�����FAQ�򸫤Ƥ���������
+
+ Postgres95-1.01 ���濴Ū�ʳ�ȯ�Ԥ� Andrew Yu �� Jolly Chen
+ �Ǥ�����������¾�����ο͡������Υ����ɤΰܿ����ƥ��ȡ��ǥХ�������ӡ�
+ ���ɤ˻��ä��ޤ�����PostgreSQL �������������ɤǤ��� Postgres
+ �ϥ���ե���˥���إС����쥤���ˤ����ơ� Michael Stonebraker
+ �����λش��Τ�ȡ�¿���γ�����´�������ܿ��Υץ�����ޤ��������Ϥˤ��
+ ����ޤ�����
+
+ �С����쥤�ˤ����뤳�Υ��եȥ������Τ�Ȥ�̾���� Postgres
+ �Ǥ�������SQL �ε�ǽ���ɲä��줿 1995 ǯ�ˤ���̾���� Postgres95
+ ���ѹ����졢1996 ǯ�ν���ˤ���̾���� PostgreSQL ���ѹ�����ޤ�����
+
+ 1.2) PostgreSQL ������Ϥɤ��ʤäƤޤ�����
+
+ PostgreSQL �ϲ��������˽����ޤ���
[������
- ��ʸ�ϱѸ�Ǥ������ͤȤ��ơ���ʸ��ʻ���Ǻܤ��ޤ���
+ ��ʸ�ϱѸ�Ǥ������ͤȤ��ơ���ʸ��ʻ��Ǻܤ��ޤ���
]
-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.
-
+ 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.
POSTGRESQL �ǡ����١������������ƥ�
��ʬŪ��� (c) 1996-2004, PostgreSQL��ݳ�ȯ������
��ʬŪ��� (c) 1994-6 ����ե���˥�����ܹ�
- �ܥ��եȥ���������Ӥ���ʸ��켰�Ͼ嵭�����ɽ���ȡ�����ʸ��
+ �ܥ��եȥ���������Ӥ���ʸ��켰�Ͼ嵤����ɽ���ȡ�����ʸ��
����Ӥ����³����Ĥ�������Ƥ�ʣ����ź�դ���Ƥ���¤�ˤ���
�ơ����ѡ�ʣ����������������դε��Ĥ򡢤����ʤ���Ū�Ǥ��äƤ⡢
̵���Ǥ���Ʊ�ս�̵���˹Ԥʤ��뤳�Ȥ򤳤���ǧ��ޤ���
@@ -211,49 +230,50 @@ SUPPORT, UPDATES, ENHANCEMENTS, OR MODIFICATIONS.
������Ƥ����Ȥ��Ƥ⡢���ڤ���Ǥ���餤�ޤ���
����ե���˥���ؤϡ�������Ū�ˤ�������ۤ��ݾڤȡ�������Ū��
- ��Ŭ�����˴ؤ��ƤϤ�Ȥ�ꡢ�����˸¤餺�������ʤ��ݾڤ�������
+ ��Ŭ����˴ؤ��ƤϤ�Ȥ�ꡢ�����˸¤餺�������ʤ��ݾڤ�������
�뤳�Ȥ��������ޤ����ʲ����Ѱդ��줿���եȥ������ϡ֤��Τޤޡפ�
���ܸ����Ȥ�������ե���˥���ؤϤ����ݻ����ٱ硢���������ɤ�
�뤤�Ͻ��������̳���餤�ޤ���
[������
- ����˴ؤ�����ʸ�Ͼ嵭�αѸ�ˤ��ɽ���Ǥ������ܸ����Ϥ����ޤ�
+ ����˴ؤ�����ʸ�Ͼ嵤αѸ�ˤ��ɽ��Ǥ������ܸ����Ϥ����ޤ�
���ͤǤ���
]
-�嵭��BSD�饤���󥹤ǸŤ������ץ󥽡����Υ饤���󥹤Ǥ��������������ɤ��ɤΤ褦
-�˻Ȥ��褦�Ȥ����¤��ޤ��󡣹��ޤ������ȤʤΤǡ��桹�⤽����Ѥ���Ĥ��Ϥ�
-��ޤ���
-
-1.3) PostgreSQL ��ư��Ķ��ϡ�
-
-����Ū�ˡ��Ƕ��Unix�ߴ��ץ�åȥۡ���Ǥ����PostgreSQL���Ư��������Ϥ���
-������꡼���λ����Ǽºݤ˥ƥ��Ȥ�Ԥʤä����Ȥ���𤬤ʤ��줿�ץ�åȥۡ����
-�Ĥ��Ƥϥ��󥹥ȡ����������󤷤Ƥ���ޤ���
-
-1.4) Unix�ʳ��ΰܿ��ǤǻȤ����Τϡ�
-
-�С������8.0�ˤʤꡢPostgreSQL �ϡ�Win2000, WinXP, Win2003�ʤɤ� Microsoft
-Windows NT�١����Υ��ڥ졼�ƥ��󥰥����ƥ�ǥͥ��ƥ��֤�����褦�ˤʤ�ޤ�����
-�ѥå������ˤʤä����󥹥ȡ��餬��http://pgfoundry.org/projects/pginstaller����
-����Ǥ��ޤ��� Windows (Win95, Win98, WinMe)�ʤɡ�MSDOS�١����ΥС������Ǥϡ�
-Cygwin ��Ȥä�PostgreSQL�����餻�뤳�Ȥ��Ǥ��ޤ���
-
+ �嵤�BSD�饤���󥹤ǸŤ�����ץ󥽡����Υ饤���󥹤Ǥ���������������
+ ���ɤΤ褦�˻Ȥ��褦�Ȥ����¤��ޤ��󡣹��ޤ������ȤʤΤǡ��桹�⤽��
+ �� �Ѥ���Ĥ��Ϥ���ޤ���
+
+ 1.3) PostgreSQL ��ư��Ķ�ϡ�
+
+ ����Ū�ˡ��Ƕ��Unix�ߴ��ץ�åȥۡ���Ǥ����PostgreSQL���Ư�������
+ ��Ϥ��Ǥ�����꡼���λ����Ǽºݤ˥ƥ��Ȥ�Ԥʤä����Ȥ���𤬤ʤ��줿
+ �ץ�åȥۡ���ˤĤ��Ƥϥ��󥹥ȡ����������󤷤Ƥ���ޤ���
+
+ 1.4) Unix�ʳ��ΰܿ��ǤǻȤ����Τϡ�
+
+ �С������8.0�ˤʤꡢPostgreSQL �ϡ�Win2000, WinXP, Win2003�ʤɤ�
+ Microsoft Windows
+ NT�١����Υ��ڥ졼�ƥ��󥰥����ƥ�ǥͥ��ƥ��֤�����褦�ˤʤ�ޤ�����
+ �ѥå������ˤʤä����󥹥ȡ��餬��http://pgfoundry.org/projects/pginst
+ aller��������Ǥ�ޤ��� Windows (Win95, Win98,
+ WinMe)�ʤɡ�MSDOS�١����ΥС������Ǥϡ�Cygwin
+ ��Ȥä�PostgreSQL�����餻�뤳�Ȥ��Ǥ�ޤ���
[����
pgInstaller �������FTP�ߥ顼�����Ȥ� win32 �ǥ��쥯�ȥ꤫����ǽ�Ǥ���
http://www.postgresql.org/mirrors-ftp.html
]
-���Υ����Ȥ� Novell Netware 6 �ؤΰܿ��⤢��ޤ��� http://forge.novell.com �ޤ�
-��OS/2 (eComStation) �С������ϡ� http://hobbes.nmsu.edu/cgi-bin/h-search?sh=
-1&button=Search&key=postgreSQL&stype=all&sort=type&dir=%2F�ˤ���ޤ���
-
-
-1.5) PostgreSQL �Ϥɤ���������Ǥ��ޤ�����
-
-PostgreSQL ���縵�� anonymous ftp �����Ȥ� ftp://ftp.PostgreSQL.org/pub/ �Ǥ���
-�ߥ顼�����ȤˤĤ��Ƥϡ��桹�Υᥤ�� Web �ڡ���������������
-
+ ���Υ����Ȥ� Novell Netware 6 �ؤΰܿ��⤢��ޤ���
+ http://forge.novell.com �ޤ���OS/2 (eComStation) �С������ϡ�
+ http://hobbes.nmsu.edu/cgi-bin/h-search?sh=1&button=Search&key=postgre
+ SQL&stype=all&sort=type&dir=%2F�ˤ���ޤ���
+
+ 1.5) PostgreSQL �Ϥɤ���������Ǥ�ޤ�����
+
+ PostgreSQL ���縵�� anonymous ftp �����Ȥ�
+ ftp://ftp.PostgreSQL.org/pub/ �Ǥ���
+ �ߥ顼�����ȤˤĤ��Ƥϡ��桹�Υᥤ�� Web �ڡ���������������
[����:
�ʲ������ܤΥߥ顼�����ȤǤ�:
@@ -272,54 +292,58 @@ PostgreSQL ���縵�� anonymous ftp �����Ȥ� ftp://ftp.PostgreSQL.org/pub/ �Ǥ���
Japan: ftp://ring.aist.go.jp/pub/misc/db/PostgreSQL/
]
-1.6) ���ݡ��ȤϤɤ��Ǽ������ޤ�����
-
-���פʥ᡼��󥰡��ꥹ�Ȥ�: [email protected]�Ǥ���PostgreSQL �˴ؤ�
-�뤳�ȤǤ���е������Ǥ��ޤ������Υꥹ�Ȥؤλ��äϡ��Żҥ᡼�����ʸ(Subject ��
-�ǤϤ���ޤ���)�˼��Σ��Ԥ�񤤤ơ�
-
+ 1.6) ���ݡ��ȤϤɤ��Ǽ������ޤ�����
+
+ ���פʥ᡼��󥰡��ꥹ�Ȥ�:
+ [email protected]�Ǥ���PostgreSQL
+ �˴ؤ��뤳�ȤǤ���е������Ǥ�
+ �ޤ������Υꥹ�Ȥؤλ��äϡ��Żҥ᡼�����ʸ(Subject
+ �ԤǤϤ���ޤ���)�˼��Σ��Ԥ�񤤤ơ�
subscribe
end
[email protected] �����äƲ�������
-
-�������������ǤΥ᡼��󥰡��ꥹ�Ȥ⤢��ޤ������Υꥹ�Ȥؤλ��ä� "��ʸ"�ˡ�
-
+ [email protected] �����äƲ�������
+
+ �������������ǤΥ᡼��󥰡��ꥹ�Ȥ⤢��ޤ������Υꥹ�Ȥؤλ��ä�
+ "��ʸ"�ˡ�
subscribe
end
-�Ƚ񤤤� [email protected] ���Żҥ᡼������äƲ�����
-��
-
-�������������Ǥϡ��ᥤ��ꥹ�ȤǼ��������å������� 30k ����ί����˥���������
-���ǥꥹ�ȤΥ��С������դ���ޤ���
-
-�Х���ݡ����ѤΥ᡼��󥰥ꥹ�Ȥ⤢��ޤ������Υꥹ�Ȥؤλ��ä� "��ʸ" �ˡ�
-
+ �Ƚ񤤤� [email protected]
+ ���Żҥ᡼������äƲ�������
+
+ �������������Ǥϡ��ᥤ��ꥹ�ȤǼ��������å������� 30k
+ ����ί����˥������������ǥꥹ�ȤΥ��С������դ���ޤ���
+
+ �Х���ݡ����ѤΥ᡼��󥰥ꥹ�Ȥ⤢��ޤ������Υꥹ�Ȥؤλ��ä�
+ "��ʸ" �ˡ�
subscribe
end
-�Ƚ񤤤�[email protected] ���Żҥ᡼������äƲ�������
-
-��ȯ�Ԥε����Τ���Υ᡼��󥰥ꥹ�Ȥ����ѤǤ��ޤ������Υꥹ�Ȥؤλ��ä��Żҥ�
-�������ʸ�ˡ�
-
+ �Ƚ񤤤�[email protected] ���Żҥ᡼������äƲ�������
+
+ ��ȯ�Ԥε����Τ���Υ᡼��󥰥ꥹ�Ȥ����ѤǤ�
+ �ޤ������Υꥹ�Ȥؤλ��ä��Żҥ᡼�����ʸ�ˡ�
subscribe
end
-�Ƚ񤤤ơ�[email protected]���Żҥ᡼������äƲ�������
-
-http://www.PostgreSQL.org
-
-�᥸�㡼��IRC �����ͥ�ϡ�Freenode (irc.freenode.net)�� #PostgreSQL �Ȥ�����
-���ͥ�Ǥ��� UNIX ���ޥ�ɤǡ� irc -c '#PostgreSQL' "$USER" irc.freenode.net.
-��Ȥäƻ��äǤ��ޤ���Ʊ���ͥåȥ���ˡ����ڥ����Υ����ͥ�(#
-postgresql-es)�⤢�ꡢ�ե�󥹸�Υ����ͥ�(#postgresqlfr)�⤢��ޤ��� EFNet��
-��PostgreSQL�����ͥ뤬����ޤ���
-
+ �Ƚ񤤤ơ�[email protected]���Żҥ᡼������äƲ���
+ ����
+
+ PostgreSQL �ˤĤ��Ƥ�äȾܤ����Τꤿ����С����� PostgreSQL
+ WWW�ۡ���ڡ������餿�ɤ�ޤ���
+
+ http://www.PostgreSQL.org
+
+ �᥸�㡼��IRC �����ͥ�ϡ�Freenode (irc.freenode.net)�� #PostgreSQL
+ �Ȥ��������ͥ�Ǥ��� UNIX ���ޥ�ɤǡ� irc -c '#PostgreSQL' "$USER"
+ irc.freenode.net. ��Ȥäƻ��äǤ�ޤ���
+ Ʊ���ͥåȥ���ˡ����ڥ����Υ����ͥ�(#postgresql-es)�⤢
+ �ꡢ�ե�󥹸�Υ����ͥ�(#postgresqlfr)�⤢��ޤ���
+ EFNet�ˤ�PostgreSQL�����ͥ뤬����ޤ���
[����:
1999ǯ7��23�������ܥݥ��ȥ��쥹�桼������ά��JPUG����Ω����ޤ�����
- JPUG ��������ȿ��ǡ�PostgreSQL�����Ѥ����ã����߶��Ϥξ�ȤʤäƤ��ޤ���
+ JPUG ��������ȿ��ǡ�PostgreSQL�����Ѥ����ã����߶��Ϥξ�ȤʤäƤ��ޤ���
(2003ǯ5��17����������PostgreSQL�桼����פ�̾�Τ����ޤ�����)
������β����̵���Ǥ�������������β���Ȳ�����Ѷ�Ū�ʹ׸�����α��Ĥ�����Ƥ��ޤ���
�ܤ����ϡ�JPUG ��Web ������:
@@ -328,76 +352,77 @@ postgresql-es)�⤢�ꡢ�ե�󥹸�Υ����ͥ�(#postgresqlfr)�⤢��ޤ��� EFNet��
���ܸ��IRC�����ͥ� '#PostgreSQL*jp' ��¸�ߤ��ޤ���
-���ѥ��ݡ��Ȳ�ҤΥꥹ�Ȥ�http://techdocs.postgresql.org/companies.php�ˤ����
-����
-
-1.7) �ǿ��ǤϤɤ�Ǥ���
-
-PostgreSQL �κǿ��ǤϥС������ 7.4.6 �Ǥ���
-
-�桹�ϡ�6��8������˥᥸�㡼��꡼����Ԥʤ����Ȥ�ײ褷�Ƥ��ޤ���
-
-1.8) �ɤΤ褦��ʸ�񤬤���ޤ�����
-
-���դ���ˡ������Ĥ��Υޥ˥奢��ȥ���饤�󡦥ޥ˥奢��(�ޥ˥奢�롦�ڡ���)��
-��Ӥ����Ĥ��ξ����ʥƥ������꤬�ޤޤ�ޤ���/doc �ǥ��쥯�ȥ�������������ޤ�
-���ޥ˥奢��ϡ�http://www.ca.PostgreSQL.org/docs/�ǥ���饤��Ǥ�����Ǥ��ޤ�
-��
-
+ ���ѥ��ݡ��Ȳ�ҤΥꥹ�Ȥ�http://techdocs.postgresql.org/companies.php
+ �ˤ���ޤ���
+
+ 1.7) �ǿ��ǤϤɤ�Ǥ���
+
+ PostgreSQL �κǿ��ǤϥС������ 7.4.6 �Ǥ���
+
+ �桹�ϡ�6��8������˥᥸�㡼��꡼����Ԥʤ����Ȥ�ײ褷�Ƥ��ޤ���
+
+ 1.8) �ɤΤ褦��ʸ�񤬤���ޤ�����
+
+ ���դ���ˡ������Ĥ��Υޥ˥奢��ȥ���饤�󡦥ޥ˥奢��(�ޥ˥奢�롦�
+ ڡ���)����Ӥ����Ĥ��ξ����ʥƥ������꤬�ޤޤ�ޤ���/doc
+ �ǥ��쥯�ȥ�������������ޤ����ޥ˥奢��ϡ�http://www.ca.PostgreSQL
+ .org/docs/�ǥ���饤��Ǥ�����Ǥ�ޤ���
[����:
�ʳ���SRA������PostgreSQL�桼������������졢
��PostgreSQL ���ե������ޥ˥奢���
�Ȥ��ƽ��Ǥ���Ƥ��ޤ���
]
-����饤��ǻ��ȤǤ��� PostgreSQL ���ܤ�2������ޤ���http://www.PostgreSQL.org/
-docs/awbook.html
-
+ ����饤��ǻ��ȤǤ�� PostgreSQL
+ ���ܤ�2������ޤ���http://www.PostgreSQL.org/docs/awbook.html
[����:
���ܥݥ��ȥ��쥹�桼������� ��PostgreSQL Book����ʬ�ʲ��
�ˤ���������ޤ�����
]
-����ӡ� http://www.commandprompt.com/ppbook/ �Ǥ���������ǽ�ʽ��Ҥ���Ͽ�ϡ�
-http://techdocs.PostgreSQL.org/techdocs/bookreviews.php �ˤ���ޤ��� PostgreSQL
-���Ѿ��󵭻��⡢http://techdocs.PostgreSQL.org/ �ˤ���ޤ���
-
-[����: ����ʸ��ϡ����ܥݥ��ȥ��쥹�桼�������http://www.postgresql.jp/
-document/ �򤴤�󲼤����� ]
-
-���ޥ�ɥ饤��Υ��饤����ȥץ������psql �⡢�����黻�ҡ��ؿ������󡢤���¾��
-����򤪸������롢�����Ĥ��������餷�� \d ���ޥ�ɤ�����ޤ��� - \? ��Ȥ�����
-�Ѳ�ǽ�ʥ��ޥ�ɤ�ɽ������ޤ���
-
-�桹�� Web �����Ȥˤϡ���ä�������ʸ�񤬤���ޤ���
-
-1.9) ���ΤΥХ���̤��̵����ǽ�Ϥɤ���äƸ��Ĥ��ޤ�����
-
-PostgreSQL�ϳ�ĥ���줿SQL-92�Υ��֥��åȤ򥵥ݡ��Ȥ��ޤ����桹�Υڡ����� TODO
-�ꥹ�Ȥˡ����ΤΥХ�����ǽ�侭��ײ�ˤĤ��Ƥε��Ҥ�����ޤ���
-
-1.10) SQL �Ϥɤ�����гؤ٤ޤ�����
-
-http://www.PostgreSQL.org/docs/awbook.html �ˤ���PostgreSQL�ܤ� SQL �򶵤��Ƥ�
-�ޤ���
-
+ ����ӡ� http://www.commandprompt.com/ppbook/ �Ǥ���
+ ������ǽ�ʽ��Ҥ���Ͽ�ϡ�http://techdocs.PostgreSQL.org/techdocs/bookre
+ views.php �ˤ���ޤ��� PostgreSQL ���Ѿ���
+ ���⡢http://techdocs.PostgreSQL.org/ �ˤ���ޤ���
+
+ [����:
+ ����ʸ��ϡ����ܥݥ��ȥ��쥹�桼�������http://www.postgresql.jp/docum
+ ent/ �򤴤�󲼤����� ]
+
+ ���ޥ�ɥ饤��Υ��饤����ȥץ������psql
+ �⡢�����黻�ҡ��ؿ������󡢤���¾�ξ���򤪸������롢�����Ĥ���������
+ ���� \d ���ޥ�ɤ�����ޤ��� - \?
+ ��Ȥ������Ѳ�ǽ�ʥ��ޥ�ɤ�ɽ������ޤ���
+
+ �桹�� Web �����Ȥˤϡ���ä�������ʸ�񤬤���ޤ���
+
+ 1.9) ���ΤΥХ���̤��̵����ǽ�Ϥɤ���äƸ��Ĥ��ޤ�����
+
+ PostgreSQL�ϳ�ĥ���줿SQL-92�Υ��֥��åȤ򥵥ݡ��Ȥ��ޤ���
+ �桹�Υڡ����� TODO �ꥹ�Ȥˡ����ΤΥХ�����ǽ�侭
+ ��ײ�ˤĤ��Ƥε�Ҥ�����ޤ���
+
+ 1.10) SQL �Ϥɤ�����гؤ٤ޤ�����
+
+ http://www.PostgreSQL.org/docs/awbook.html �ˤ���PostgreSQL�ܤ� SQL
+ �򶵤��Ƥ��ޤ���
[����:
���ܥݥ��ȥ��쥹�桼������� ��PostgreSQL Book����ʬ�ʲ��
�ˤ�����������Ǥ���Ƥ��ޤ���
]
-����¾�ˤ� PostgreSQL�ܤȤ��ơ�http://www.commandprompt.com/ppbook ������ޤ���
-�����餷�������ϡ�http://www.intermedia.net/support/sql/sqltut.shtm, http://
-ourworld.compuserve.com/homepages/graeme_birchall/HTM_COOK.HTM, �����ơ�http://
-sqlcourse.com �ˤ���ޤ���
-
-����¾�Ǥϡ� "Teach Yourself SQL in 21 Days, Second Edition" �� http://
-members.tripod.com/er4ebus/sql/index.htm�ˤ���ޤ���
-
-¿���Υ桼���ˡ� The Practical SQL Handbook, Bowman Judith S. et al.,
-Addison-Wesley ����ɾ�Ǥ�������¾�ˡ�The Complete Reference SQL, Groff et al.,
-McGraw-Hill �Τ褦�ʤΤ⤢��ޤ���
-
+ ����¾�ˤ� PostgreSQL�ܤȤ��ơ�http://www.commandprompt.com/ppbook
+ ������ޤ���
+ �����餷�������ϡ�http://www.intermedia.net/support/sql/sqltut.shtm,
+ http://ourworld.compuserve.com/homepages/graeme_birchall/HTM_COOK.HTM,
+ �����ơ�http://sqlcourse.com �ˤ���ޤ���
+
+ ����¾�Ǥϡ� "Teach Yourself SQL in 21 Days, Second Edition" ��
+ http://members.tripod.com/er4ebus/sql/index.htm�ˤ���ޤ���
+
+ ¿���Υ桼���ˡ� The Practical SQL Handbook, Bowman Judith S. et al.,
+ Addison-Wesley ����ɾ�Ǥ��� ����¾�ˡ�The Complete Reference SQL,
+ Groff et al., McGraw-Hill �Τ褦�ʤΤ⤢��ޤ���
[����:
�а�ã�׻�ˤ�����ܸ�λ���ʸ���ξҲ�ڡ���
http://www.SRA.co.jp/people/t-ishii/PostgreSQL/doc-jp/index.html
@@ -407,138 +432,158 @@ McGraw-Hill �Τ褦�ʤΤ⤢��ޤ���
������ޤ�(���Ť�2000ǯ��)��
�����ѱѻ�Ρ�PostgreSQL���ܸ�ޥ˥奢���
http://www.net-newbie.com/
- �Ǥϥ���饤��ޥ˥奢��θ������Ǥ��ޤ���
+ �Ǥϥ���饤��ޥ˥奢��θ������Ǥ�ޤ���
�ݻ������׻��UNIX �ǡ����١�������
http://www.wakhok.ac.jp/DB/DB.html
- �⥪��饤����ɤळ�Ȥ��Ǥ��ޤ���
+ �⥪��饤����ɤळ�Ȥ��Ǥ�ޤ���
]
-1.11) PostgreSQL������2000ǯ����(Y2K)���б����Ƥ��ޤ�����
-
-�б����Ƥޤ�������2000ǯ��������դ⡢������2000ǯ����������դ⡢��ñ�˰���
-�ޤ���
-
-1.12) ��ȯ������ˤϤɤΤ褦�˻��ä��ޤ�����
-
-�ޤ��ǽ�(������)�ˡ��ǿ��Υ����������������ɤ����桹�� Web �����Ȥ����ۤ˴ޤ�
-��Ƥ���PostgreSQL Developers��ʸ����ɤߤޤ��������ܤˡ�pgsql-hackers ��
-pgsql-patches �᡼��󥰡��ꥹ�Ȥ����(subscribe)���ޤ��������ܤˡ����ʼ��Υѥ�
-����pgsql-patches��ȯ�����ޤ���
-
-���褽���ͤ���äȤο�ã����PostgreSQL CVS���������֤˥��ߥåȤ��븢�¤���ä�
-���ޤ������Τ��줾��ο�ã�������ι��ʼ��ʥѥå���ȯ������Τǡ����ߥ��ߥå���
-�ȤʤäƤ����ã�Ϥ�����ɤ��դ��Τ����ѤǤ������桹����餬���ߥåȤ����ѥå�
-�Ϲ��ʼ��Ǥ���ȳο����Ƥ��ޤ���
-
-1.13) �Х���ݡ��ȤϤɤΤ褦��ȯ�����ޤ�����
-
-http://www.postgresql.org/support/submitbug ��PostgreSQL �Х��ե������ˬ��Ʋ�
-�������Х���ݡ��Ȥ���Ф�������ˤĤ��Ƥμ���Ȼؿˤ�����ޤ���
-
-�����Ʊ���� ftp ������ ftp://ftp.PostgreSQL.org/pub/�ǡ���äȿ������С������
-�� PostgreSQL ���뤤�ϥѥå��򤵤����ƤߤƲ�������
-
-1.14) ¾��DBMS����٤�PostgreSQL�Ϥɤ��ʤΤǤ�����
-
-���եȥ�������פ���ˡ�ˤϤ����Ĥ�����ޤ�����ǽ����ǽ�ȿ������ȥ��ݡ��ȤȲ���
-�Ǥ���
-
-��ǽ(Features)
- PostgreSQL�ϡ��ȥ�󥶥���������䤤��碌���ȥꥬ�����ӥ塼������������
- �������ȡ�����ӡ��������줿���å������ʤɡ��絬�Ͼ���DBMS�����ĵ�ǽ��ۤ�
- ��ɻ��äƤ��ޤ�������� PostgreSQL�ϡ��桼����������Ѿ����롼�롢���줫��
- �����å������̾�����ޥ���С������Ʊ��������ʤɡ�����DBMS�������碌
- �ʤ��褦�ʵ�ǽ�򤤤��Ĥ�������碌�Ƥ��ޤ���
-��ǽ(Performance)
- PostgreSQL��¾�ξ��Ѥ��뤤�ϥ����ץ󥽡����Υǡ����١����ȸ߳Ѥ���ǽ�����
- �ޤ��������̤ǤϤ���ᤫ�ä��ꡢ�ۤ����̤ǤϤ���٤��ä��ꤷ�ޤ���MySQL�ʤ�
- ���ò����ǡ����١����������ƥ�ˤ���٤ơ�PostgreSQL ��ʣ���桼����ʣ������
- ����碌���ޤ��� read/write �䤤��碌�Υ����ɤ�����®�Ǥ���MySQL�Ͼ��ʤ�
- �桼���Ǥ�ñ��� SELECT �䤤��碌�ǤϹ�®�Ǥ����������MySQL�ˤϾ嵭��
- Features����˼����褦�ʵ�ǽ�ϤۤȤ�ɤ���ޤ��󡣲桹�ϡ�PostgreSQL�˽���
- ���ȵ�ǽ�����Ȥ߹��ߤʤ���⡢�䤨����ǽ�β�����³���Ƥ��ޤ���
-������(Reliability)
- �桹�ϡ�DBMS�ο��������⤯�ʤ��ƤϤ��β��ͤ�̵�����Ȥ����򤷤Ƥޤ�����ʬ��
- ���Ȥ��ơ����ꤷ�������ɤ�Х���Ǿ��ˤ��Ƥ����꡼������褦���ؤ�Ƥޤ�
- �����줾��Υ�꡼���Ͼ��ʤ��Ȥ�1����ʾ�Υ١������ƥ��Ȥ�Ԥʤ�������ޤ�
- �Υ�꡼�������򤬡������ǤȤ��ư��ꤷ�����Ǥʥ�꡼���Ǥ��뤳�Ȥ�ʪ��ä�
- ���ޤ�������ʬ��Ǥϡ�¾�Υǡ����١�������٤Ƥ�½�����ʤ����Ȥ˼��������
- �Ƥ��ޤ���
-���ݡ���(Support)
- �桹�Υ᡼��󥰥ꥹ�Ȥϡ��������뤤���ʤ�����ˤĤ��Ƥ���ؤμ������
- �Ƥ���롢��ȯ�Ԥ�桼�����礭�ʽ��ޤ�ؤ��������󶡤��Ƥ��ޤ����桹������
- �β����ݾڤ��뤳�ȤϤǤ��ޤ��󤬡����ѥǡ����١����Ǥ��äƤ��˲�褵��
- ��櫓�ǤϤ���ޤ��󡣳�ȯ�Ԥ䡢�桼�������ߥ�˥ƥ����ޥ˥奢���ࡢ�����
- �������������ɤʤɤ�ľ�ܥ��������Ǥ��뤳�Ȥˤ�äơ�PostgreSQL�Υ��ݡ��Ȥ�
- ��¾��DBMS���ݡ��Ȥ���ͥ�줿��ΤȤʤäƤ��ޤ�������˾�������ơ��������
- ���ѥ��ݡ��Ȥʤɤ⤢��ޤ���FAQ1.6������������ˡ�
-����(Price)
- PostgreSQL�����Ѥϡ����ѤǤ����ѤǤ⡢���٤�̵���Ǥ����嵭�˼����Ƥ���BSD
- ��������λ��ѵ����˳���ʤ��¤ꡢPostgreSQL�Υ����ɤ�����̵���Ǿ��ʤ��Ȥ�
- ���ळ�Ȥ��Ǥ��ޤ���
-
-1.15) PostgreSQL�����̤DZ������ˤϤɤ�����Ф褤�Ǥ�����
-
-PostgreSQL�ϡ��桹���Ϥ᤿ 1996ǯ���衢�ǹ⥯�饹�ξ�����פ���äƤ��ޤ�������
-�Ϥ��٤ơ�Marc Fournie����Τ������ǡ���Ϥ��δ��פ��Ϥ�Ф�����ǯ�ˤ�錄�ä�
-�������Ƥ��ޤ�����
-
-�����ɤ����פϡ������ץ󥽡������ץ��������ȤˤȤäƤϤȤƤ����ڤʤ�Τǡ��ץ�
-�������Ȥ����ʤ��������򼺤ä�ʬ������Τ���򤷤ޤ���
-
-������󡢤��δ��פϰ¤���ΤǤϤ���ޤ��󡣰ݻ���³���뤿��ˤ����뤤�ϰ�
-��Ū�˷��񤬤�����ޤ����⤷�����ʤ��䤢�ʤ��β�Ҥˡ������������ϤΤ���λ��
-�α����ܤ����Ȥ��Ǥ���褦�Ǥ����顢http://store.pgsql.com/shopping/�������
-�򤪴ꤤ���ޤ���
-
-�ޤ���Web�ڡ����ˤ� PostgreSQL,Inc �Ȥ���ޤ����������� "�׸�(contributions)"��
-�������ܤϡ� PostgreSQL �ץ��������Ȥ�ٱ礹������Τ���ǡ��褷������β�Ҥ�
-����λ��ǤϤ���ޤ��󡣤⤷�����ڼ�(check)�������Թ�褱���Ϣ����ν���ؤ�
-���겼������
-
-����ˡ�PostgreSQL��Ȥä���������򤪻����Ǥ���С����ҡ������λ���Ҳ��
-���� [email protected] �ؤ����꤯��������
-
-������������������������������������������������������������������������������
-
- �桼���������饤����Ȥμ���
-
-2.1) PostgreSQL �Τ���� ODBC �ɥ饤�С��Ϥ���ޤ�����
-
-PsqlODBC �� OpenLink ODBC ����Ĥ� ODBC �ɥ饤�С������Ѳ�ǽ�Ǥ���
-
-PsqlODBC �ϼ��ξ�꤫�����������ɤǤ��ޤ��� http://gborg.postgresql.org/
-project/psqlodbc/projdisplay.php
-
-OpenLink ODBC �� http://www.openlinksw.com/��������Ǥ��ޤ���ɸ��Ū�� ODBC ����
-������ȡ����եȥ������ǻȤ��ޤ��Τǡ��ٱ礷�Ƥ��뤹�٤ƤΥץ�åȥۡ���(Win,
-Mac, Unix, VMS)���� PostgreSQL �� ODBC �����ѤǤ��ޤ���
-
-���֤����ϡ������ʼ��Υ��ݡ��Ȥ�ɬ�פʿ͡�����äƤ���Ȼפ��ޤ������ե꡼��
-�����ǤϤ��ĤǤ������ǽ�Τ褦�Ǥ�������ϡ�[email protected] �����ä�
-��������
-
-Programmer's Guide �� ODBC �ξϤ⤴������������
-
-2.2) PostgreSQL �� Web �ڡ�����Ϣ�Ȥ�����ˤϤɤ�ʥġ��뤬����ޤ�����
-
-�ǡ����١�����΢�˻��� Web �ڡ����ˤĤ��Ƥ������餷���Ҳ𤬡�
-http://www.webreview.com�ˤ���ޤ���
-
-Web �ؤγ�ĥ�Τ���ˤϡ�PHP ����ۤ������󥿡��ե������ȤʤäƤ��ޤ���http://
-www.php.net/�ˤ���ޤ���
-
+ 1.11) PostgreSQL������2000ǯ����(Y2K)���б����Ƥ��ޤ�����
+
+ �б����Ƥޤ�������2000ǯ��������դ⡢������2000ǯ����������դ⡢��
+ ñ�˰����ޤ���
+
+ 1.12) ��ȯ������ˤϤɤΤ褦�˻��ä��ޤ�����
+
+ �ޤ��ǽ�(������)�ˡ��ǿ��Υ����������������ɤ����桹�� Web
+ �����Ȥ����ۤ˴ޤޤ�Ƥ���PostgreSQL Developers��ʸ����ɤߤޤ���
+ �����ܤˡ�pgsql-hackers �� pgsql-patches
+ �᡼��󥰡��ꥹ�Ȥ����(subscribe)���ޤ���
+ �����ܤˡ����ʼ��Υѥå���pgsql-patches��ȯ�����ޤ���
+
+ ���褽���ͤ���äȤο�ã����PostgreSQL
+ CVS���������֤˥��ߥåȤ��븢�¤���äƤ��ޤ���
+ ���Τ��줾��ο�ã�������ι��ʼ��ʥѥå���ȯ������Τǡ����ߥ��ߥå���
+ �ȤʤäƤ����ã�Ϥ�����ɤ��դ��Τ����ѤǤ������桹����餬���ߥåȤ�
+ ���ѥå��Ϲ��ʼ��Ǥ���ȳο����Ƥ��ޤ���
+
+ 1.13) �Х���ݡ��ȤϤɤΤ褦��ȯ�����ޤ�����
+
+ http://www.postgresql.org/support/submitbug ��PostgreSQL
+ �Х��ե������ˬ��Ʋ�������
+ �Х���ݡ��Ȥ���Ф�������ˤĤ��Ƥμ���Ȼؿˤ�����ޤ���
+
+ �����Ʊ���� ftp ������
+ ftp://ftp.PostgreSQL.org/pub/�ǡ���äȿ������С������� PostgreSQL
+ ���뤤�ϥѥå��򤵤����ƤߤƲ�������
+
+ 1.14) ¾��DBMS����٤�PostgreSQL�Ϥɤ��ʤΤǤ�����
+
+ ���եȥ�������פ���ˡ�ˤϤ����Ĥ�����ޤ�����ǽ���ǽ�ȿ�����
+ �ȥ��ݡ��ȤȲ��ʤǤ���
+
+ ��ǽ(Features)
+ PostgreSQL�ϡ��ȥ�󥶥���������䤤��碌���ȥꥬ�����ӥ塼�
+ ��������������
+ ���ȡ�����ӡ��������줿���å������ʤɡ��絬�Ͼ���DBMS�����ĵ��
+ ���ۤȤ�ɻ��äƤ��ޤ��������
+ PostgreSQL�ϡ��桼����������Ѿ����롼�롢���줫�顢���å�����
+ �̾�����ޥ���С������Ʊ����
+ ����ʤɡ�����DBMS�������碌�ʤ��褦�ʵ�ǽ�򤤤��Ĥ��������
+ ��Ƥ��ޤ���
+
+ �ǽ(Performance)
+ PostgreSQL��¾�ξ��Ѥ��뤤�ϥ����ץ󥽡����Υǡ����١����ȸ߳Ѥ
+ ���
+ ǽ������ޤ��������̤ǤϤ���ᤫ�ä��ꡢ�ۤ����̤ǤϤ���٤��ä
+ ��ꤷ�ޤ���MySQL�ʤɤ��ò����ǡ����١����������ƥ�ˤ���٤ơ�P
+ ostgreSQL ��ʣ���桼����ʣ�����䤤��碌���ޤ��� read/write
+ �䤤��碌�Υ����ɤ�����®�Ǥ���MySQL�Ͼ��ʤ��桼���Ǥ�ñ���
+ SELECT �䤤��碌�ǤϹ�®�Ǥ����������MySQL�ˤϾ嵭
+ ��Features����˼����褦�ʵ�ǽ�ϤۤȤ�ɤ���ޤ��󡣲桹�ϡ�Pos
+ tgreSQL�˽�����ȵ�ǽ����Ȥ߹��ߤʤ���⡢�䤨����
+ ǽ�β�����³���Ƥ��ޤ���
+
+ �����(Reliability)
+ �桹�ϡ�DBMS�ο�����
+ ���⤯�ʤ��ƤϤ��β��ͤ�̵�����Ȥ����򤷤Ƥޤ�����ʬ�ƥ��Ȥ��ơ
+ ����ꤷ�������ɤ�Х���Ǿ��ˤ��Ƥ����꡼������褦���ؤ�Ƥ�
+ �������줾��Υ�꡼���Ͼ��ʤ��Ȥ�1����ʾ�Υ١������ƥ��Ȥ��
+ �ʤ�������ޤǤΥ�꡼�������򤬡������ǤȤ��ư��ꤷ�����Ǥʥ�
+ ꡼���Ǥ��뤳�Ȥ�ʪ��äƤ��ޤ�������ʬ��Ǥϡ�¾�Υǡ����١���
+ ����٤Ƥ�½�����ʤ����Ȥ˼�������äƤ��ޤ���
+
+ ���ݡ���(Support)
+ �桹�Υ᡼��󥰥ꥹ�Ȥϡ��������뤤���ʤ�����ˤĤ��Ƥ���ؤ
+ μ�����򤷤Ƥ���롢��ȯ�Ԥ�桼�����礭
+ �ʽ��ޤ�ؤ��������󶡤��Ƥ��ޤ����桹������β����ݾڤ��뤳�
+ ȤϤǤ�
+ �ޤ��󤬡����ѥǡ����١����Ǥ��äƤ��˲�褵���櫓�ǤϤ���
+ ޤ��󡣳�ȯ�Ԥ䡢�桼�������ߥ�˥ƥ����ޥ˥奢���ࡢ����ˡ���
+ ���������ɤʤɤ�ľ�ܥ��������Ǥ�
+ �뤳�Ȥˤ�äơ�PostgreSQL�Υ��ݡ��Ȥϡ�¾��DBMS���ݡ��Ȥ����
+ ��줿��ΤȤʤäƤ��ޤ�������˾�������ơ�������ξ��ѥ��ݡ��Ȥ�
+ �ɤ⤢��ޤ���FAQ1.6������������ˡ�
+
+ ����(Price)
+ PostgreSQL�����Ѥϡ����ѤǤ����ѤǤ⡢���٤�̵���Ǥ����嵭
+ �˼����Ƥ���BSD��������λ��ѵ����˳���ʤ��¤ꡢPostgreSQL�Υ�
+ ���ɤ�����̵���Ǿ��ʤ��Ȥ߹��ळ�Ȥ��Ǥ�ޤ���
+
+ 1.15) PostgreSQL�����̤DZ������ˤϤɤ�����Ф褤�Ǥ�����
+
+ PostgreSQL�ϡ��桹���Ϥ᤿ 1996ǯ���衢�ǹ⥯�饹�ξ�����פ���äƤ�
+ �ޤ�������Ϥ��٤ơ�Marc
+ Fournie����Τ������ǡ���Ϥ��δ��פ��Ϥ�Ф�����ǯ�ˤ�錄�äƴ������
+ Ƥ�ޤ�����
+
+ �����ɤ����פϡ������ץ󥽡������ץ��������ȤˤȤäƤϤȤƤ����ڤʤ��
+ �ǡ��ץ��������Ȥ����ʤ��������򼺤ä�ʬ������Τ���򤷤ޤ���
+
+ ������󡢤��δ��פϰ¤���ΤǤϤ���ޤ��󡣰ݻ���³���뤿��ˤ���
+ �뤤�ϰ��Ū�˷��񤬤�����ޤ����⤷�����ʤ��䤢�ʤ��β�Ҥˡ���������
+ ���ϤΤ���λ��α����ܤ����Ȥ��Ǥ�
+ ��褦�Ǥ����顢http://store.pgsql.com/shopping/������դ򤪴ꤤ���ޤ�
+ ��
+
+ �ޤ���Web�ڡ����ˤ� PostgreSQL,Inc �Ȥ���ޤ�����������
+ "�׸�(contributions)"�Ȥ������ܤϡ� PostgreSQL
+ �ץ��������Ȥ�ٱ礹������Τ���ǡ��褷������β�ҤΤ���λ��ǤϤ�
+ ��ޤ��󡣤⤷�����ڼ�(check)�������Թ�褱���Ϣ����ν���ؤ����겼�
+ �����
+
+ ����ˡ�PostgreSQL��Ȥä���������򤪻����Ǥ���С����ҡ�������
+ ����Ҳ�ꥹ�� [email protected] �ؤ����꤯��������
+ _________________________________________________________________
+
+ �桼���������饤����Ȥμ���
+
+ 2.1) PostgreSQL �Τ���� ODBC �ɥ饤�С��Ϥ���ޤ�����
+
+ PsqlODBC �� OpenLink ODBC ����Ĥ� ODBC �ɥ饤�С������Ѳ�ǽ�Ǥ���
+
+ PsqlODBC �ϼ��ξ�꤫�����������ɤǤ�ޤ���
+ http://gborg.postgresql.org/project/psqlodbc/projdisplay.php
+
+ OpenLink ODBC �� http://www.openlinksw.com/��������Ǥ�ޤ���ɸ��Ū��
+ ODBC
+ ���饤����ȡ����եȥ������ǻȤ��ޤ��Τǡ��ٱ礷�Ƥ��뤹�٤ƤΥץ�å�
+ �ۡ���(Win, Mac, Unix, VMS)���� PostgreSQL �� ODBC �����ѤǤ�ޤ���
+
+ ���֤����ϡ������ʼ��Υ��ݡ��Ȥ�ɬ�פʿ͡�����äƤ���Ȼפ��ޤ�����
+ �ե꡼�������ǤϤ��ĤǤ������ǽ�Τ褦�Ǥ�������ϡ�postgres95@openlin
+ k.co.uk �����äƲ�������
+
+ Programmer's Guide �� ODBC �ξϤ⤴������������
+
+ 2.2) PostgreSQL �� Web �ڡ�����Ϣ�Ȥ�����ˤϤɤ�ʥġ��뤬����ޤ�����
+
+ �ǡ����١�����΢�˻��� Web �ڡ����ˤĤ��Ƥ������餷���Ҳ𤬡�
+ http://www.webreview.com�ˤ���ޤ���
+
+ Web �ؤγ�ĥ�Τ���ˤϡ�PHP
+ ����ۤ������󥿡��ե������ȤʤäƤ��ޤ���http://www.php.net/�ˤ���ޤ
+ ���
[����:
- PHP�˴ؤ������ܸ�ξ���ϡ�2000ǯ4��19����ȯ­��������PHP�桼����Υ�����
+ PHP�˴ؤ������ܸ�ξ���ϡ�2000ǯ4��19����ȯ¤�������PHP�桼����Υ�����
http://www.php.gr.jp/
���뤤�ϡ�ע�� �व��Υ�����
http://www.geocities.jp/rui_hirokawa/php/
�ˤ��ʤ�ޤȤ���Ƥ��ޤ���
]
-������ʣ���ʾ�硢¿���οͤ� Perl ���󥿡��ե������� CGI.pm �� mod_perl ��Ȥ�
-�ޤ���
-
+ ������ʣ���ʾ�硢¿���οͤ� Perl ���󥿡��ե������� CGI.pm ��
+ mod_perl ��Ȥ��ޤ���
[����:
WDB �ϡ�Web ���� DataBase �ؤ� Perl �� Interface �Ǥ���
wdb-p95 �ؤΥ�󥯤��ڤ�Ƥ��ޤäƤ��ޤ��������餯��Perl DBI ��ͳ�� DBD::Pg �����Ѥ���ǽ�Ȼפ��ޤ���
@@ -549,286 +594,317 @@ www.php.net/�ˤ���ޤ���
�Ȥ�����ޤ������ηаޤϤ褯�狼��ޤ���
]
-2.3) PostgreSQL �˥���ե����롦�桼�����󥿡��ե������Ϥ���ޤ�����
-
-�������PostgreSQL �ؤΥ���ե����륤�󥿡��ե������������Ĥ�����ޤ���������
-��PgAccess http://www.pgaccess.org ��ޤޤ�ޤ��� PgAdmin III (http://
-www.pgadmin.org)�⤢��ޤ��� RHDB Admin (http://sources.redhat.com/rhdb/ )��
-TORA (http://www.globecom.net/tora/ (��ʬŪ�˾���)) ����ӡ� Rekall ( http://
-www.thekompany.com/products/rekall/, proprietary)�⤢��ޤ��� PhpPgAdmin (
-http://phppgadmin.sourceforge.net/ ) ��PostgreSQL�ؤ�Web�١����Υ��󥿡��ե���
-�����󶡤��ޤ���
-
-���ܺ٤ʥꥹ�ȤˤĤ��Ƥϡ�http://techdocs.postgresql.org/guides/GUITools ��
-������������
-
-2.4) �ɤΤ褦�ʸ���� PostgreSQL ���̿��Ǥ�������
-
-�͵��Τ���ۤȤ�ɤθ����PostgreSQL�ؤΥ��󥿡��ե���������äƤ��ޤ������ʤ�
-���Ȥ��ץ�����ߥ󥰸���γ�ĥ�⥸�塼��Υꥹ�Ȥ������ƤߤƤ���������
-
-�ʲ��Υ��󥿡��ե�������PostgreSQL�����ۤ˴ޤޤ�Ƥ��ޤ���
-
- �� C (libpq)
- �� ������C (ecpg)
- �� Java (jdbc)
- �� Python (PyGreSQL)
- �� TCL (libpgtcl)
-
-����¾�����Ѳ�ǽ�ʥ��󥿡��ե������� http://gborg.postgresql.org ��Drivers/
-Interfaces�Υ��������ˤ���ޤ���
-
+ 2.3) PostgreSQL �˥���ե����롦�桼�����󥿡��ե������Ϥ���ޤ�����
+
+ �������PostgreSQL
+ �ؤΥ���ե����륤�󥿡��ե������������Ĥ�����ޤ��� �������PgAccess
+ http://www.pgaccess.org ��ޤޤ�ޤ��� PgAdmin III
+ (http://www.pgadmin.org)�⤢��ޤ��� RHDB Admin
+ (http://sources.redhat.com/rhdb/ )��TORA
+ (http://www.globecom.net/tora/ (��ʬŪ�˾���)) ����ӡ� Rekall (
+ http://www.thekompany.com/products/rekall/, proprietary)�⤢��� ����
+ PhpPgAdmin ( http://phppgadmin.sourceforge.net/ )
+ ��PostgreSQL�ؤ�Web�١����� ���󥿡��ե��������󶡤��ޤ���
+
+ ���ܺ٤ʥꥹ�ȤˤĤ��Ƥϡ�http://techdocs.postgresql.org/guides/GUIT
+ ools ��������������
+
+ 2.4) �ɤΤ褦�ʸ���� PostgreSQL ���̿��Ǥ������
+
+ �͵��Τ���ۤȤ�ɤθ����PostgreSQL�ؤΥ��󥿡��ե���������äƤ��ޤ�
+ ��
+ ���ʤ����Ȥ��ץ�����ߥ󥰸���γ�ĥ�⥸�塼��Υꥹ�Ȥ������ƤߤƤ���
+ ������
+
+ �ʲ��Υ��󥿡��ե�������PostgreSQL�����ۤ˴ޤޤ�Ƥ��ޤ���
+ * C (libpq)
+ * ������C (ecpg)
+ * Java (jdbc)
+ * Python (PyGreSQL)
+ * TCL (libpgtcl)
+
+ ����¾�����Ѳ�ǽ�ʥ��󥿡��ե������� http://gborg.postgresql.org
+ ��Drivers/Interfaces�Υ��������ˤ���ޤ���
[������
�ʰ¸�ˤ���� Palm �Ǥ� libpq ��ȯ����ޤ�����
http://www.snaga.org/libpq/
]
-
-������������������������������������������������������������������������������
-
- ��������
-
-3.1) �ɤΤ褦�ˤ���� /usr/local/pgsql �ʳ��ξ��˥��󥹥ȡ���Ǥ��ޤ�����
-
-��ñ����ˡ�ϡ� configure �����餻��Ȥ��� --prefix ���ץ�������ꤹ�뤳�ȤǤ�
-��
-
-3.2) postmaster �����餻��ȡ�Bad System Call �Ȥ�����������פ����ȤΥ�å���
-�����Фޤ����ʤ��Ǥ�����
-
-���ޤ��ޤ����꤬�ͤ����ޤ������ޤ��ǽ�ˤ��ʤ��Υ����ͥ�� System V IPC �γ�
-ĥ�����󥹥ȡ��뤵��Ƥ��뤫���ǧ���Ƹ��Ƥ���������PostgreSQL �ϥ����ͥ�ˤ��
-��ͭ���꡼�ȥ��ޥե��Υ��ݡ��Ȥ�ɬ�פȤ��ޤ���
-
-3.3) postmaster �����餻�褦�Ȥ���ȡ�IpcMemoryCreate ���顼���Фޤ����ʤ��Ǥ�
-����
-
-�����ͥ뤬��ͭ���꡼���������ˤʤäƤ��ʤ��ä������Ǥʤ���С������ͥ����
-���ƻȤ��붦ͭ���꡼���礭�����礭�����ꤹ��ɬ�פ�����ޤ�������Ū���礭����
-���ȤäƤ��륢�����ƥ������postmaster �����餻��Ȥ������ꤹ��Хåե��ο��ȥ�
-�å�����ɥץ������˰�¸���ޤ����ۤȤ�ɤΥ����ƥ�Ǥϡ������ͤΥХåե�������
-�Τޤޤǡ����ʤ��Ȥ���1MB��ɬ�פǤ��� PostgreSQL Administrator's Guide/Server
-Run-time Environment/Managing Kernel Resources �˶�ͭ���꡼�ȥ��ޥե��ˤĤ���
-�ξ���ξܺ٤�����ޤ��ΤǤ�������������
-
-3.4) postmaster�����餻�褦�Ȥ���ȡ�IpcSemaphoreCreate ���顼���Фޤ����ʤ���
-������
-
-�⤷���顼��å�������IpcSemaphoreCreate: semget failed (No space left on
-device)�Ǥ���С������ͥ뤬��ʬ�ʥ��ޥե���Ȥ���褦�˹�������Ƥ��ޤ���
-Postgres������Ū�ʥХå�����ɥץ�������˰�ĤΥ��ޥե���ɬ�פȤ��ޤ����Ȥꤢ
-�����β�����postmaster��ư����Ȥ��ˡ��Хå�����ɥץ������ο����꾯�ʤ�
-���¤򤹤뤳�ȤǤ��������ͤ�32��꾮���ʿ��Υѥ�᡼����-N�ǻȤ��ޤ�����깱��
-Ū�ʲ����ϡ������ͥ��SEMMNS �� SEMMNI �ѥ�᡼�������䤹���ȤǤ���
-
-�����ǽ�Υ��ޥե�����٤ʥǡ����١������������δ֤˥���å���򵯤�����ǽ����
-����ޤ���
-
-�⤷�����顼��å��������ʤˤ�¾�Τ�ΤǤ���С������ͥ�ι����Ǥޤä������ޥ�
-���Υ��ݡ��Ȥ򤷤Ƥ��ʤ����⤷��ޤ��� PostgreSQL Administrator's Guide �˶�
-ͭ���꡼�ȥ��ޥե��ˤĤ��Ƥξ���ξܺ٤�����ޤ���
-
-3.5) ¾�Υۥ��Ȥ������³�ϤɤΤ褦�����椷�ޤ�����
-
-�����ͤǤϡ�PostgreSQL �� Unix �ɥᥤ�󥽥��åȡ��ޤ��ϡ�TCP/IP��³�Υ��������
-���󤫤����³���������ޤ���postgresql.conf ����� listen_addresses ������
-�����ġ�$PGDATA/pg_hba.conf �ե������Ŭ�ڤ�ľ���ơ��ۥ��ȼ�Ƴ��ǧ�ڤ�ͭ���ˤ�
-�ʤ�������ϡ�¾�Υޥ��󤫤����³�Ǥ��ʤ��Ǥ��礦��
-
-3.6) ����ɤ���ǽ�����뤿��ˤϡ��ǡ����١��������󥸥��ɤΤ褦��Ĵ���������
-���Ǥ�����
-
-�Τ��˥���ǥå������䤤��碌��®�٤������ޤ���EXPLAIN ANALYZE���ޥ�ɤ�
-PostgreSQL ���ɤΤ褦�ˤ��ʤ����䤤��碌���������Ƥ��뤫�򸫤뤳�Ȥ��Ǥ�������
-�ơ��ɤΥ���ǥå������Ȥ��Ƥ��뤫�򸫤뤳�Ȥ��Ǥ��ޤ���
-
-�⤷ INSERT ��¿�Ѥ��Ƥ�����ϡ�COPY ���ޥ�ɤ�Ȥä��礭�ʥХå������Ǥ����
-�Ԥʤ����Ȥ�Ƥ���Ʋ�����������ϡ�INSERT ���̡��˹Ԥʤ�����äȹ�®�Ǥ�����
-�ˡ�BEGIN WORK/COMMIT �Υȥ�󥶥�����󡦥֥��å������̵��ʸ�ϡ�����鼫�Ȥ�
-���줾��Υȥ�󥶥����������äƤ���ȸ��ʤ���ޤ��������Ĥ���ʸ���ĤΥȥ�
-�󥶥�����󡦥֥��å�����ǹԤʤ����Ȥ�ͤ��Ʋ�����������ˤ��ȥ�󥶥�����
-��Υ����С��إåɤ�����ޤ����ޤ����礭�ʥǡ������ѹ���Ԥʤ��ݤϥ���ǥå���
-����ٳ����ơ����ľ�����Ȥ�ͤ��ƤߤƲ�������
-
-Administration Guide/Server Run-time Environment/Run-time Configuration�ˤϡ���
-�塼�˥󥰤Υ��ץ���󤬤����Ĥ�����ޤ���fsync���ץ�����fsync() ��̵���ˤ���
-���Ȥ��Ǥ��ޤ�������ˤ�äơ��ƥȥ�󥶥��������� fsync() �ǥǥ������򹹿���
-��Τ�ߤᤵ���ޤ���
-
-shared_buffers���ץ�����ȤäƥХå�����ɡ��ץ������ˤ��Ȥ��붦ͭ����
-�����Хåե����礭�����뤳�Ȥ�Ǥ��ޤ����⤷�����Υѥ�᡼����⤯��������ȡ�
-�����ͥ�ζ�ͭ���꡼���֤������ͤ�ۤ��Ƥ��ޤ������ postmaster ������ʤ���
-��Ǥ��礦�������ͤǤϡ����줾��ΥХåե����礭���� 8K �ǡ��Хåե����� 1000
-�Ǥ���
-
-sort_mem (PostgreSQL 8.0�����: work_mem)���ץ�����Ȥäơ����줾��ΥХå���
-��ɡ��ץ����������Ū���¤��ؤ��ˤ�äƻȤ����꡼�κ��祵���������䤹���Ȥ�
-�Ǥ��ޤ��������ͤ� 1024 (���ʤ����1MB)�Ǥ���
-
-�ޤ���CLUSTER ���ޥ�ɤ�Ȥäơ��ơ��֥�Υǡ����򥤥�ǥå����˹�碌�뤿���
-���롼�ײ����뤳�Ȥ�Ǥ��ޤ����ܤ����ϡ�����饤��ޥ˥奢��� CLUSTER �򸫤Ʋ�
-������
-
-3.7) �ɤΤ褦�ʥǥХ���ǽ���Ȥ��ޤ�����
-
-PostgreSQL �ϡ��ǥХ��Τ���˰�̣�Τ��롢���־������𤹤뤤���Ĥ��ε�ǽ�����
-�ޤ���
-
-�ޤ���--enable-cassert ���ץ����� configure �����餻�ޤ����������ƥ���ѥ���
-���뤳�Ȥˤ�ꡢ������ assert() �����Хå�����ɤο�Ľ������ƻ뤷������ͽ����
-�̤��Ȥ�������ȥץ���������ߤ���褦�ˤʤ�ޤ���
-
-postmaster �� postgres ��ξ���Ǥ����Ĥ��ΥǥХ������ץ��������Ѥ��Ǥ��ޤ�����
-�������Τ褦�� postmaster ��ư����Ȥ��Ϥ��ĤǤ⡢ɸ����Ϥȥ��顼���Ϥ����
-���ե����������褦�ˤ��Ƥ��뤳�Ȥ�Τ���Ʋ�������
-
+ _________________________________________________________________
+
+ ��������
+
+ 3.1) �ɤΤ褦�ˤ���� /usr/local/pgsql �ʳ��ξ��˥��󥹥ȡ���Ǥ�ޤ�����
+
+ ��ñ����ˡ�ϡ� configure �����餻��Ȥ�� --prefix
+ ���ץ�������ꤹ�뤳�ȤǤ���
+
+ 3.2) postmaster �����餻��ȡ�Bad System Call
+ �Ȥ�����������פ����ȤΥ�å��������Фޤ����ʤ��Ǥ�����
+
+ ���ޤ��ޤ����꤬�ͤ����ޤ������ޤ��ǽ�ˤ��ʤ��Υ����ͥ�� System V
+ IPC �γ�ĥ�����󥹥ȡ��뤵��Ƥ��뤫���ǧ���Ƹ��Ƥ���������PostgreSQL
+ �ϥ����ͥ�ˤ�붦ͥ��꡼�ȥ��ޥե��Υ��ݡ��Ȥ�ɬ�פȤ��ޤ���
+
+ 3.3) postmaster �����餻�褦�Ȥ���ȡ�IpcMemoryCreate
+ ���顼���Фޤ����ʤ��Ǥ�����
+
+ �����ͥ뤬��ͭ
+ ���꡼���������ˤʤäƤ��ʤ��ä������Ǥʤ���С������ͥ���Ф��ƻ�
+ ���붦ͥ��꡼���礤����礤����ꤹ��ɬ�פ�����ޤ�������Ū���礭
+ ���ϡ��ȤäƤ��륢����ƥ������postmaster �����餻��Ȥ�
+ �����ꤹ��Хåե��ο��ȥХå�����ɥץ������˰�¸���ޤ����ۤȤ�ɤΥ�
+ ���ƥ�Ǥϡ������ͤΥХåե��������Τޤޤǡ����ʤ��Ȥ���1MB��ɬ�פǤ��
+ � PostgreSQL Administrator's Guide/Server Run-time
+ Environment/Managing Kernel Resources �˶�ͭ
+ ���꡼�ȥ��ޥե��ˤĤ��Ƥξ���ξܺ٤�����ޤ��ΤǤ�������������
+
+ 3.4) postmaster�����餻�褦�Ȥ���ȡ�IpcSemaphoreCreate
+ ���顼���Фޤ����ʤ��Ǥ�����
+
+ �⤷���顼��å�������IpcSemaphoreCreate: semget failed (No space left
+ on
+ device)�Ǥ���С������ͥ뤬��ʬ�ʥ��ޥե���Ȥ���褦�˹�������Ƥ��ޤ
+ ���Postgres������Ū�ʥХå�����ɥץ�������˰�ĤΥ��ޥե���ɬ�פȤ
+ ��ޤ����Ȥꤢ�����β�����postmaster��ư����Ȥ�
+ �ˡ��Хå�����ɥץ������ο����꾯�ʤ����¤򤹤뤳�ȤǤ��������ͤ�32
+ ��꾮���ʿ��Υѥ�᡼����-N�ǻȤ��ޤ�����깱��Ū�ʲ����ϡ������ͥ�
+ ��SEMMNS �� SEMMNI �ѥ�᡼�������䤹���ȤǤ���
+
+ �����ǽ�Υ��ޥե�����٤ʥǡ����١������������δ֤˥���å����
+ ��������ǽ�������ޤ���
+
+ �⤷�����顼��å��������ʤˤ�¾�Τ�ΤǤ���С������ͥ�ι����Ǥޤä�
+ �����ޥե��Υ��ݡ��Ȥ򤷤Ƥ��ʤ����⤷��ޤ��� PostgreSQL
+ Administrator's Guide �˶�ͭ
+ ���꡼�ȥ��ޥե��ˤĤ��Ƥξ���ξܺ٤�����ޤ���
+
+ 3.5) ¾�Υۥ��Ȥ������³�ϤɤΤ褦�����椷�ޤ�����
+
+ �����ͤǤϡ�PostgreSQL �� Unix
+ �ɥᥤ�󥽥��åȡ��ޤ��ϡ�TCP/IP��³�Υ�������ޥ��󤫤����³��������
+ �ޤ���postgresql.conf ����� listen_addresses
+ �����������ġ�$PGDATA/pg_hba.conf
+ �ե������Ŭ�ڤ�ľ���ơ��ۥ��ȼ�Ƴ��ǧ�ڤ�ͭ
+ ���ˤ��ʤ�������ϡ�¾�Υޥ��󤫤����³�Ǥ�ʤ��Ǥ��礦��
+
+ 3.6) ����ɤ���
+ ǽ�����뤿��ˤϡ��ǡ����١��������󥸥��ɤΤ褦��Ĵ��������ɤ��Ǥ�����
+
+ �Τ��˥���ǥå������䤤��碌��®�٤������ޤ���EXPLAIN
+ ANALYZE���ޥ�ɤ� PostgreSQL
+ ���ɤΤ褦�ˤ��ʤ����䤤��碌���������Ƥ��뤫�򸫤뤳�Ȥ��Ǥ�
+ �������ơ��ɤΥ���ǥå������Ȥ��Ƥ��뤫�򸫤뤳�Ȥ��Ǥ�ޤ���
+
+ �⤷ INSERT ��¿�Ѥ��Ƥ�����ϡ�COPY ���ޥ�ɤ�Ȥä��礭
+ �ʥХå������Ǥ����Ԥʤ����Ȥ�Ƥ���Ʋ�����������ϡ�INSERT
+ ���̡��˹Ԥʤ�����äȹ�®�Ǥ������ˡ�BEGIN WORK/COMMIT
+ �Υȥ�󥶥�����󡦥֥��å������̵��ʸ�ϡ�����鼫�Ȥ����줾��Υȥ�
+ �󥶥����������äƤ���ȸ��ʤ���ޤ��������Ĥ���ʸ���ĤΥȥ�󥶥�
+ ����󡦥֥��å�����ǹԤʤ����Ȥ�ͤ��Ʋ�����������ˤ��ȥ�󥶥���
+ ���Υ����С��إåɤ�����ޤ����ޤ����礭
+ �ʥǡ������ѹ���Ԥʤ��ݤϥ���ǥå�������ٳ����ơ����ľ�����Ȥ�ͤ�
+ �ƤߤƲ�������
+
+ Administration Guide/Server Run-time Environment/Run-time
+ Configuration�ˤϡ�
+ ���塼�˥󥰤Υ��ץ���󤬤����Ĥ�����ޤ���fsync���ץ�����fsync()
+ ��̵���ˤ��뤳�Ȥ��Ǥ�ޤ�������ˤ�äơ��ƥȥ�󥶥���������
+ fsync() �ǥǥ������򹹿�����Τ�ߤᤵ���ޤ���
+
+ shared_buffers���ץ�����ȤäƥХå�����ɡ��ץ������ˤ��Ȥ��붦
+ ͥ��꡼���Хåե����礤����뤳�Ȥ�Ǥ�
+ �ޤ����⤷�����Υѥ�᡼����⤯��������ȡ������ͥ�ζ�ͭ
+ ���꡼���֤������ͤ�ۤ��Ƥ��ޤ������ postmaster
+ ������ʤ��ʤ�Ǥ��礦�������ͤǤϡ����줾��ΥХåե����礤��� 8K
+ �ǡ��Хåե����� 1000 �Ǥ���
+
+ sort_mem (PostgreSQL 8.0�����:
+ work_mem)���ץ�����Ȥäơ����줾��ΥХå�����ɡ��ץ����������Ū�
+ ��¤��ؤ��ˤ�äƻȤ����꡼�κ��祵���������䤹���Ȥ�Ǥ�ޤ���
+ �����ͤ� 1024 (���ʤ����1MB)�Ǥ���
+
+ �ޤ���CLUSTER
+ ���ޥ�ɤ�Ȥäơ��ơ��֥�Υǡ����򥤥�ǥå����˹�碌�뤿��˥��롼
+ �ײ����뤳�Ȥ�Ǥ�ޤ����ܤ����ϡ�����饤��ޥ˥奢��� CLUSTER
+ �򸫤Ʋ�������
+
+ 3.7) �ɤΤ褦�ʥǥХ���ǽ���Ȥ��ޤ�����
+
+ PostgreSQL
+ �ϡ��ǥХ��Τ���˰�̣�Τ��롢���־������𤹤뤤���Ĥ��ε�ǽ�������
+ ����
+
+ �ޤ���--enable-cassert ���ץ����� configure
+ �����餻�ޤ����������ƥ���ѥ��뤹�뤳�Ȥˤ�ꡢ������ assert()
+ �����Хå�����ɤο�Ľ������ƻ뤷������ͽ�����̤��Ȥ�����
+ ��ȥץ���������ߤ���褦�ˤʤ�ޤ���
+
+ postmaster �� postgres
+ ��ξ���Ǥ����Ĥ��ΥǥХ������ץ��������Ѥ��Ǥ�ޤ����ޤ������Τ褦��
+ postmaster ��ư����Ȥ�
+ �Ϥ��ĤǤ⡢ɸ����Ϥȥ��顼���Ϥ�������ե����������褦�ˤ��Ƥ��뤳
+ �Ȥ�Τ���Ʋ�������
cd /usr/local/pgsql
./bin/postmaster >server.log 2>&1 &
-����ˤ�� PostgreSQL �κǾ����Υǥ��쥯�ȥ�� server.log �ե����뤬�֤���ޤ�
-�����Υե�����ϥ����С���������������䥨�顼�ˤĤ���ͭ�Ѥʾ����ޤߤޤ���
-Postmaster �Ϲ��˾ܺ٤ʾ������𤹤뤿��� -d ���ץ���������ޤ������� -d ��
-�ץ����ϡ��ǥХ�����٥����ꤷ�ޤ����⤤�ǥХ�����٥�Ǥϡ��礭�ʥ����ե�
-������������뤳�Ȥ����դ��ʤ��ƤϤʤ�ޤ���
-
-�⤷��postmaster�����äƤ��ʤ���С�postgres�Хå�����ɤ򥳥ޥ�ɥ饤�󤫤���
-�餻�뤳�Ȥ��Ǥ���ľ��SQLʸ�򥿥��פ��뤳�Ȥ��Ǥ��ޤ������Τ�꤫���ϡ��ǥХ���
-Ū�ΤȤ����������ᤷ�ޤ������ߥ�����ǤϤʤ������Ԥ��䤤��碌�ν���ˤʤ뤳��
-�����դ��Ƥ����������⤷���ǥХ�����ܥ������ƥ���ѥ��뤷�Ƥ���С��ǥХå�
-��ȤäƲ��������Ƥ��뤫�򸫤뤳�Ȥ��Ǥ��ޤ���postmaster ����Хå�����ɤ򳫻�
-�����櫓�ǤϤʤ��Τǡ���Ω�ʴĶ������äƤ���ΤǤϤʤ����å����Хå�����ɤȤ�
-���ä����꤬��ʣ���뤳�ȤϤ���ޤ���
-
-�⤷��postmaster�����äƤ���С����륦����ɥ���psql�򳫻Ϥ���ȡ�
-
-SELECT pg_backend_pid()
-
-��Ȥäơ�psql �ǻȤ��� postgres �ץ�������PID�����Ĥ���ޤ����ǥХå���Ȥ�
-��postgres��PID�˥����å�(attach)���ޤ����ǥХå����椫��֥졼�����ݥ���Ȥ�
-�åȤ���psql �����䤤��碌��ȯ�Ԥ��ޤ����ǥХ��Τ����postgres���ư�������
-��PGOPTIONS="-W n" ������Ǥ������줫�顢psql �򳫻Ϥ��ޤ�������ˤ�ꡢn �ó�
-�Ϥ��٤餻��Ϥ��ʤΤǡ��ǥХå��ǥץ������˥����å����ơ��֥졼���ݥ���Ȥ���
-�ꤷ�����Ϥ������ɤäƸ��Ƥ椯���Ȥ��Ǥ��ޤ���
-
-�����Ĥ���
-
-log_*
-
-�����й����ѿ��ϡ��ǥХå�����ǽ¬��ˤȤƤ����Ω�ĥץ����������פΰ������ǽ
-�ˤ��ޤ���
-
-���Ȥ����ؿ����ɤΤ��餤�¹Ի��֤򿩤äƤ��뤫�򸫤뤿��ˡ��ץ��ե�����󥰡�
-�ץ��ե������դ��ˤǥ���ѥ��뤹�뤳�Ȥ��ǽ�Ǥ������ΥХå�����ɤΥץ��ե���
-�롦�ե������ pgsql/data/base/dbname �ǥ��쥯�ȥ�˳�Ǽ�����Ǥ��礦�����饤
-����ȤΥץ��ե�����ϥ��饤����Ȥθ��ԥǥ��쥯�ȥ���֤����Ǥ��礦��Linux
-�ǤޤȤ�ʥץ��ե�����󥰤�Ԥ��ˤ� -DLINUX_PROFILE �ǥ���ѥ��뤹��ɬ�פ�����
-�ޤ���
-
-3.8) ��³���褦�Ȥ���Ȥ��� 'Sorry, too many clients' ���Ф�ΤϤʤ��Ǥ�����
-
-postmaster��Ʊ����ư�Ǥ���Хå�����ɥץ��������Ф������¿������䤹ɬ�פ�����
-�ޤ���
-
-����κ���ץ�������32�ץ������Ǥ���-N��Ŭ�ڤ��ͤ�����ˤ���postmaster��Ƶ�ư
-���뤫��PostgreSQL.conf �������뤳�Ȥˤ�äơ������ͤ����䤹���Ȥ��Ǥ��ޤ���
-
-�⤷��-N �� 32�����礭������ΤǤ���С�-B������64����礭���ͤ����ä�����
-���ƤϤʤ�ʤ�����-B �Ͼ��ʤ��Ȥ� -N ��2�ܤϤʤ��ƤϤʤ餺�������餯�ǹ���ǽ��
-˾��ʤ�Ф������礭���ͤ�ɬ�פʤϤ��Ǥ����Хå�����ɥץ������򤿤�����ˤ�
-��ȡ�����������Unix�����ͥ빽���ѥ�᡼�������䤹���Ȥ�ɬ�פˤʤ뤫�⤷��ޤ�
-�󡣶�ͭ���꡼���֥��å��κ�����(SHMMAX)�����ޥե��κ����(SEMMNS��SEMMNI)��
-�ץ������κ����(NPROC)���桼����κ���ץ�������(MAXUPRC)�������ե�����κ���
-��(NFILE��NINODE) ���ǧ����˴ޤޤ�ޤ��� PostgreSQL�˵������Хå�����ɤΥ�
-�������������¤���Ƥ���Τϡ������ƥ�Υ꥽������Ȥ��̤��Ƥ��ޤ����Ȥ��򤱤�
-����Ǥ���
-
-3.9) pgsql_tmp �ǥ��쥯�ȥ����ˤϲ�������ޤ�����
-
-�䤤��碌�¹ԥ⥸�塼��ˤ�ä��������줿���Ū�ʥե����뤬�����Υǥ��쥯�ȥ�
-�˴ޤޤ�ޤ����㤨�С��⤷ ORDER BY �������������˥Хå�����ɤ� -S �ѥ�᡼
-���ǵ��Ĥ����ͤ����礭�ʥ��ڡ����������Ȥκݤ�ɬ�פ��Ȥ���ȡ���줿�ǡ�����
-�ݻ����뤿��˰��Ū�ʥե����뤬�����Ĥ���������������ޤ���
-
-���Ū�ʥե�����ϼ�ưŪ�˾ä������Ϥ��Ǥ������⤷�������Ȥ�����ǥХå���
-��ɤ�����å��夷�Ƥ��ޤ��Ȥ����Ϥʤ�ޤ���postmaster����ߤȥꥹ�����ȤǤ�
-���Υե�����ϥǥ��쥯�ȥ꤫��ä������ޤ���
-
+ ����ˤ�� PostgreSQL �κǾ����Υǥ��쥯�ȥ�� server.log
+ �ե����뤬�֤���ޤ������Υե�����ϥ����С���������������䥨�顼�ˤ�
+ ������Ѥʾ����ޤߤޤ���Postmaster �Ϲ��˾ܺ٤ʾ������𤹤뤿���
+ -d ���ץ���������ޤ������� -d
+ ���ץ����ϡ��ǥХ�����٥����ꤷ�ޤ����⤤�ǥХ�����٥�Ǥϡ��礭
+ �ʥ����ե�������������뤳�Ȥ����դ��ʤ��ƤϤʤ�ޤ���
+
+ �⤷��postmaster�����äƤ��ʤ���С�postgres�Хå�����ɤ򥳥ޥ�ɥ饤
+ �󤫤����餻�뤳�Ȥ��Ǥ��ľ��SQLʸ�򥿥��פ��뤳�Ȥ��Ǥ�
+ �ޤ������Τ�꤫���ϡ��ǥХ���Ū�ΤȤ�
+ ���������ᤷ�ޤ������ߥ�����ǤϤʤ������Ԥ��䤤��碌�ν���ˤʤ뤳��
+ �����դ��Ƥ����������⤷���ǥХ�����ܥ������ƥ���ѥ��뤷�Ƥ���С�
+ �ǥХå���ȤäƲ�������Ƥ��뤫�򸫤뤳�Ȥ��Ǥ�ޤ���postmaster
+ ����Хå�����ɤ򳫻Ϥ����櫓�ǤϤʤ��Τǡ���Ω�ʴĶ�
+ �����äƤ���ΤǤϤʤ����å����Хå�����ɤȤ����ä����꤬��ʣ���뤳��
+ �Ϥ���ޤ���
+
+ �⤷��postmaster�����äƤ���С����륦����ɥ���psql�򳫻Ϥ���ȡ�SELE
+ CT pg_backend_pid()��Ȥäơ�psql �ǻȤ��� postgres
+ �ץ�������PID�����Ĥ���ޤ���
+ �ǥХå���Ȥä�postgres��PID�˥����å�(attach)���ޤ����ǥХå����椫�
+ �֥졼�����ݥ���Ȥ򥻥åȤ���psql
+ �����䤤��碌��ȯ�Ԥ��ޤ����ǥХ��Τ����postgres���ư������ϡ�PG
+ OPTIONS="-W n" ������Ǥ�����줫�顢psql �򳫻Ϥ��ޤ�������ˤ�ꡢn
+ �ó��Ϥ��٤餻��Ϥ��ʤΤǡ��ǥХå��ǥץ������˥����å����ơ��֥졼��
+ �ݥ���Ȥ����ꤷ�����Ϥ������ɤäƸ��Ƥ椯���Ȥ��Ǥ�ޤ���
+
+ �����Ĥ���log_*�����й����ѿ��ϡ��ǥХå�����
+ ǽ¬��ˤȤƤ����Ω�ĥץ����������פΰ������ǽ�ˤ��ޤ���
+
+ ���Ȥ����ؿ����ɤΤ��餤�¹Ի��֤򿩤äƤ��뤫�򸫤뤿��ˡ��ץ��ե���
+ ��󥰡ʥץ��ե������դ�
+ �ˤǥ���ѥ��뤹�뤳�Ȥ��ǽ�Ǥ������ΥХå�����ɤΥץ��ե����롦�ե�
+ ����� pgsql/data/base/dbname
+ �ǥ��쥯�ȥ�˳�Ǽ�����Ǥ��礦�����饤����ȤΥץ��ե�����ϥ��饤��
+ ��Ȥθ��ԥǥ��쥯�ȥ���֤����Ǥ��礦��Linux
+ �ǤޤȤ�ʥץ��ե�����󥰤�Ԥ��ˤ� -DLINUX_PROFILE
+ �ǥ���ѥ��뤹��ɬ�פ�����ޤ���
+
+ 3.8) ��³���褦�Ȥ���Ȥ�� 'Sorry, too many clients' ���Ф�ΤϤʤ��Ǥ�����
+
+ postmaster��Ʊ����ư�Ǥ�
+ ��Хå�����ɥץ��������Ф������¿������䤹ɬ�פ�����ޤ���
+
+ ����κ���ץ�������32�ץ������Ǥ���-N��Ŭ�ڤ��ͤ�����ˤ���postmaster
+ ��Ƶ�ư���뤫��PostgreSQL.conf
+ �������뤳�Ȥˤ�äơ������ͤ����䤹���Ȥ��Ǥ�ޤ���
+
+ �⤷��-N �� 32�����礤�����ΤǤ���С�-B������64����礭
+ ���ͤ����ä����ʤ��ƤϤʤ�ʤ�����-B �Ͼ��ʤ��Ȥ� -N
+ ��2�ܤϤʤ��ƤϤʤ餺�������餯�ǹ��ǽ��˾��ʤ�Ф������礭
+ ���ͤ�ɬ�פʤϤ��Ǥ����Хå�����ɥץ������򤿤�����ˤ���ȡ���������
+ ��Unix�����ͥ빽���ѥ�᡼�������䤹���Ȥ�ɬ�פˤʤ뤫�⤷��ޤ���
+ ��ͥ��꡼���֥��å��κ�����(SHMMAX)��
+ ���ޥե��κ����(SEMMNS��SEMMNI)�� �ץ������κ����(NPROC)��
+ �桼����κ���ץ�������(MAXUPRC)��
+ �����ե�����κ����(NFILE��NINODE) ���ǧ����˴ޤޤ�ޤ���
+ PostgreSQL�˵������Хå�����ɤΥץ������������¤���Ƥ���Τϡ�
+ �����ƥ�Υ꥽������Ȥ��̤��Ƥ��ޤ����Ȥ��򤱤뤿��Ǥ���
+
+ 3.9) pgsql_tmp �ǥ��쥯�ȥ����ˤϲ�������ޤ�����
+
+ �䤤��碌�¹ԥ⥸�塼��ˤ�ä��������줿���Ū�ʥե����뤬�����Υǥ�
+ �쥯�ȥ�˴ޤޤ�ޤ����㤨�С��⤷ ORDER BY
+ �������������˥Хå�����ɤ� -S �ѥ�᡼���ǵ��Ĥ����ͤ����礭
+ �ʥ��ڡ����������Ȥκݤ�ɬ�פ��Ȥ���ȡ���줿�ǡ������ݻ����뤿��˰�
+ ��Ū�ʥե����뤬�����Ĥ���������������ޤ���
+
+ ���Ū�ʥե�����ϼ�ưŪ�˾ä������Ϥ��Ǥ������⤷�������Ȥ������
+ �Хå�����ɤ�����å��夷�Ƥ��ޤ��Ȥ����Ϥʤ�ޤ���postmaster�����
+ �ȥꥹ�����ȤǤ����Υե�����ϥǥ��쥯�ȥ꤫��ä������ޤ���
[������
- SYSLOGD ��ͳ�ǥ�������Ϥ���ˤϡ��ޤ���configure �� --enable-syslog
- �դ������餻���塢����ѥ���ȥ��󥹥ȡ����Ԥʤ��ޤ���
- ���ˡ�syslog.conf �� local?.* �� ���������ꤷ(�Ķ��ѿ����ѹ���ǽ)��
- syslogd �� HUP �����ʥ�����äƽ�������Ƥ����ޤ��������ơ�
- $PGDATA/pg_options �� syslog=2 ��ä��ơ� postmaster �� -S
- ���ץ�����դ��ˤƥ����Х⡼�ɤǵ�ư���ޤ���(�С������ 7.1 �����
+ SYSLOGD ��ͳ�ǥ�������Ϥ���ˤϡ��ޤ���configure �� --enable-syslog
+ �դ�����餻���塢����ѥ���ȥ��󥹥ȡ����Ԥʤ��ޤ���
+ ���ˡ�syslog.conf �� local?.* �� ���������ꤷ(�Ķ�ѿ����ѹ���ǽ)��
+ syslogd �� HUP �����ʥ�����äƽ�������Ƥ���ޤ��������ơ�
+ $PGDATA/pg_options �� syslog=2 ��ä��ơ� postmaster �� -S
+ ���ץ�����դ�ˤƥ����Х⡼�ɤǵ�ư���ޤ���(�С������ 7.1 �����
pg_options �� PostgreSQL.conf �ˤʤäƤ��ޤ���)
]
-3.10) PostgreSQL�Υ᥸�㡼��꡼���򥢥åץǡ��Ȥ���Τ˥���פȥꥹ�ȥ��򤷤�
-���ƤϤʤ�ʤ��ΤϤʤ��Ǥ�����
-
-PostgreSQL������ϥޥ��ʡ���꡼���ǤϾ������ѹ������Ԥʤ��ޤ���Τǡ�7.2 ����
-7.2.1 �ؤΥ��åץ��졼�ɤˤϥ���פȥꥹ�ȥ���ɬ�פϤ���ޤ��󡣤��������᥸��
-����꡼��(���Ȥ��С�7.2����7.3�ؤΤ褦��)�Ǥϡ������ƥ�ơ��֥��ǡ����ե���
-��������ե����ޥåȤ��ѹ��򤷤Ф��йԤʤ��ޤ����������ѹ��Ϥ����Ƥ�ʣ���ǡ�
-���Τ���桹�ϥǡ����ե�����Τ���θ����ߴ�����ݻ����뤳�Ȥ��Ǥ��ޤ��󡣥���
-�פ����ѥե����ޥåȤǥǡ�������Ϥ�������򿷤��������ե����ޥåȤ��ɤ߹��ळ
-�Ȥ��Ǥ��ޤ���
-
-�ǥ�������ǤΥե����ޥåȤ��ѹ��Τʤ�Ʊ���꡼���Ǥϡ����åץ��졼�ɤϡ�����
-�ס��ꥹ�ȥ��ǤϤʤ���pg_upgrade ������ץȤ�Ȥ����Ȥ��Ǥ��ޤ�����꡼���Ρ���
-�ˤϡ�pg_upgrade �����Ѳ�ǽ�ʥ�꡼�����ɤ���������Ƥ��ޤ���
-
-3.11) �ϡ��ɥ������ˤϤɤ�ʥ���ԥ塼����Ȥ��Ф褤�Ǥ�����
-
-PC�ϡ��ɥ������ϤۤȤ�ɸߴ���������ޤ��Τǡ��ۤȤ�ɤοͤϡ����٤Ƥ�PC�ϡ���
-��������Ʊ���ʼ����Ȼפ����෹��������ޤ���������������ϴְ㤤�Ǥ���ECC RAM��
-SCSI������ӡ����ʼ��ޥ����ܡ��ɤϡ��¤��ϡ��ɥ���������٤�ȡ���꿮��������
-���������ǽ���ɤ��ΤǤ���PostgreSQL �ϤۤȤ�ɤΥϡ��ɥ������Dz�Ư���ޤ�������
-��������ǽ�����פʾ��ϡ��ϡ��ɥ������Υ��ץ����򸦵椹�뤳�Ȥ������Ǥ�����
-����󥰥ꥹ�ȤǤ�ϡ��ɥ��������ץ����ȥȥ졼�ɥ��դˤĤ��Ƶ������뤳�Ȥ���
-���ޤ���
-
-������������������������������������������������������������������������������
-
- ������
-
-4.1) �Х��ʥꡦ����������̾參������Ȥθ�̩�ʰ㤤�ϲ��Ǥ�����
-
-�ܽҤϡ�����饤��ޥ˥奢��� DECLARE �򸫤Ʋ�������
-
-4.2) �ǽ�ο������Τߤ� SELECT����ˤϤɤ����ޤ�����������ʥ�����
-
-����饤��ޥ˥奢���FETCH�򸫤Ƥ������������뤤�ϡ�SELECT ... LIMIT....��Ȥ�
-�ƤߤƲ�������
-
-���Ȥ����ߤ����ΤϺǽ�ο����������Ǥ⡢���٤Ƥ��䤤��碌��ɾ�����ʤ��ƤϤʤ�
-�ʤ����⤷��ޤ���ORDER BY ����ä��䤤��碌��Ȥ����Ȥ�ͤ��ƤߤƲ���������
-����ORDER BY�˹�ä�����ǥå���������Ȥ���� PostgreSQL���׵ᤵ�줿�ǽ�ο���
-��������ɾ���Ǥ��뤫�⤷��ޤ��󤬡��Ǥʤ�С�PostgreSQL �ϰտޤ���������������
-���ޤǤ��٤ƤΥ�����ɾ�����ʤ���Фʤ�ʤ����⤷��ޤ���
-
-������ʥ�����SELECT����ˤϡ�����ʸ��Ȥ��ޤ���
-
+ 3.10)
+ PostgreSQL�Υ᥸�㡼��꡼���򥢥åץǡ��Ȥ���Τ˥���פȥꥹ�ȥ��򤷤ʤ��
+ ƤϤʤ�ʤ��ΤϤʤ��Ǥ�����
+
+ PostgreSQL������ϥޥ��ʡ���꡼���ǤϾ������ѹ������Ԥʤ��ޤ���Τǡ�
+ 7.2 ���� 7.2.1
+ �ؤΥ��åץ��졼�ɤˤϥ���פȥꥹ�ȥ���ɬ�פϤ���ޤ��󡣤��������᥸
+ �㡼��꡼��(���Ȥ��С�7.2����7.3�ؤΤ褦��)�Ǥϡ������ƥ�ơ��֥���
+ �����ե�����������ե����ޥåȤ��ѹ��򤷤Ф��йԤʤ��ޤ����������ѹ�
+ �Ϥ����Ƥ�ʣ���ǡ����Τ���桹�ϥǡ����ե�����Τ���θ����ߴ���
+ ��ݻ����뤳�Ȥ��Ǥ�
+ �ޤ��󡣥���פ����ѥե����ޥåȤǥǡ�������Ϥ�������򿷤��������ե�
+ ���ޥåȤ��ɤ߹��ळ�Ȥ��Ǥ�ޤ���
+
+ �ǥ�������ǤΥե����ޥåȤ��ѹ��Τʤ�Ʊ���꡼���Ǥϡ����åץ��졼��
+ �ϡ�����ס��ꥹ�ȥ��ǤϤʤ���pg_upgrade ������ץȤ�Ȥ����Ȥ��Ǥ�
+ �ޤ�����꡼���Ρ��Ȥˤϡ�pg_upgrade �����Ѳ�ǽ�ʥ�꡼�����ɤ�����
+ ����Ƥ��ޤ���
+
+ 3.11) �ϡ��ɥ������ˤϤɤ�ʥ���ԥ塼����Ȥ��Ф褤�Ǥ�����
+
+ PC�ϡ��ɥ������ϤۤȤ�ɸߴ���
+ ������ޤ��Τǡ��ۤȤ�ɤοͤϡ����٤Ƥ�PC�ϡ��ɥ�������Ʊ���ʼ����Ȼ�
+ �����෹��������ޤ���������������ϴְ㤤�Ǥ���ECC
+ RAM��SCSI������ӡ����ʼ��ޥ����ܡ��ɤϡ��¤��ϡ��ɥ���������٤�ȡ��
+ �꿮������⤯������ǽ���ɤ��ΤǤ���PostgreSQL
+ �ϤۤȤ�ɤΥϡ��ɥ������Dz�Ư���ޤ��������������
+ ǽ�����פʾ��ϡ��ϡ��ɥ������Υ��ץ����򸦵椹�뤳�Ȥ���
+ ���Ǥ����᡼��󥰥ꥹ�ȤǤ�ϡ��ɥ��������ץ����ȥȥ졼�ɥ��դˤĤ�
+ �Ƶ������뤳�Ȥ��Ǥ�ޤ���
+ _________________________________________________________________
+
+ ������
+
+ 4.1) �Х��ʥꡦ����������̾參������Ȥθ�̩�ʰ㤤�ϲ��Ǥ�����
+
+ �ܽҤϡ�����饤��ޥ˥奢��� DECLARE �򸫤Ʋ�������
+
+ 4.2) �ǽ�ο������Τߤ� SELECT����ˤϤɤ����ޤ�����������ʥ�����
+
+ ����饤��ޥ˥奢���FETCH�򸫤Ƥ������������뤤�ϡ�SELECT ...
+ LIMIT....��ȤäƤߤƲ�������
+
+ ���Ȥ����ߤ����ΤϺǽ�ο����������Ǥ⡢���٤Ƥ��䤤��碌��ɾ�����ʤ�
+ �ƤϤʤ�ʤ����⤷��ޤ���ORDER BY
+ ����ä��䤤��碌��Ȥ����Ȥ�ͤ��ƤߤƲ������� �⤷��ORDER
+ BY�˹�ä�����ǥå���������Ȥ����
+ PostgreSQL���׵ᤵ�줿�ǽ�ο�����������ɾ���Ǥ�
+ �뤫�⤷��ޤ��󤬡��Ǥʤ�С�PostgreSQL
+ �ϰտޤ������������������ޤǤ��٤ƤΥ�����ɾ�����ʤ���Фʤ�ʤ�����
+ ����ޤ���
+
+ ������ʥ�����SELECT����ˤϡ�����ʸ��Ȥ��ޤ���
SELECT col
FROM tab
ORDER BY random()
LIMIT 1;
-4.3) �ơ��֥�䤽��¾�ξ���Υꥹ�Ȥ� psql �Ǹ���ˤϤɤ����ޤ�����
-
-psql����ǡ� \dt ���ޥ�ɤ�Ȥäƥơ��֥�򸫤ޤ���psql ����Υ��ޥ�ɤδ�����
-�ꥹ�Ȥˤ� \? ��Ȥ��ޤ������뤤�ϡ�psql�Υ����������ɤ�pgsql/src/bin/psql/
-describe.c�ե�����򸫤뤳�Ȥ�Ǥ��ơ�������ˤ�psql�ΥХå�����å��女�ޥ��
-�ν��Ϥ���������SQL���ޥ�ɤ��ޤޤ�Ƥ��ޤ����ޤ���psql�� -E ���ץ����Ȱ���
-���Ϥ���ȡ��¹Ԥ��������ޥ�ɤ�¹Ԥ��뤿��˻Ȥ��䤤��碌����Ϥ���褦�ˤ�
-��ޤ���PostgreSQL�Ϥޤ���SQLi�б��� INFORMATION SCHEMA ���󥿡��ե��������Ѱ�
-���Ƥ��ơ��ǡ����١����ˤĤ��Ƥξ�������뤿����䤤��碌��Ȥ����Ȥ��Ǥ��ޤ�
-��
-
-4.4) �ơ��֥뤫�饫���κ�������뤤�ϡ��ǡ��������ѹ�����ˤϤɤ����ޤ�����
-
-DROP COLUMN��ǽ����ALTER TABLE DROP COLUMN �Ȥ��ƥ�꡼��7.3 �˲ä����ޤ�����
-����ޤǤΥС������Ǥϡ���������ˤ������ޤ�:
-
+ 4.3) �ơ��֥�䤽��¾�ξ���Υꥹ�Ȥ� psql �Ǹ���ˤϤɤ����ޤ�����
+
+ psql����ǡ� \dt ���ޥ�ɤ�Ȥäƥơ��֥�򸫤ޤ���psql
+ ����Υ��ޥ�ɤδ����ʥꥹ�Ȥˤ� \?
+ ��Ȥ��ޤ������뤤�ϡ�psql�Υ����������ɤ�pgsql/src/bin/psql/describe.
+ c�ե�����򸫤뤳�Ȥ�Ǥ�
+ �ơ�������ˤ�psql�ΥХå�����å��女�ޥ�ɤν��Ϥ���������SQL���ޥ�
+ ɤ��ޤޤ�Ƥ��ޤ����ޤ���psql�� -E
+ ���ץ����Ȱ��˳��Ϥ���ȡ��¹Ԥ��������ޥ�ɤ�¹Ԥ��뤿��˻Ȥ���
+ ����碌����Ϥ���褦�ˤʤ�ޤ���PostgreSQL�Ϥޤ���SQLi�б���
+ INFORMATION SCHEMA
+ ���󥿡��ե��������Ѱդ��Ƥ��ơ��ǡ����١����ˤĤ��Ƥξ�������뤿���
+ �䤤��碌��Ȥ����Ȥ��Ǥ�ޤ���
+
+ 4.4)
+ �ơ��֥뤫�饫���κ�������뤤�ϡ��ǡ��������ѹ�����ˤϤɤ����ޤ�����
+
+ DROP COLUMN��ǽ����ALTER TABLE DROP COLUMN �Ȥ��ƥ�꡼��7.3
+ �˲ä����ޤ���������ޤǤΥС������Ǥϡ���������ˤ������ޤ�:
BEGIN;
LOCK TABLE old_table;
SELECT ... -- ��������������ʳ��Υ����򤹤٤����򤷤ޤ���
@@ -838,21 +914,20 @@ DROP COLUMN��ǽ����ALTER TABLE DROP COLUMN �Ȥ��ƥ�꡼��7.3 �˲ä����ޤ�����
ALTER TABLE new_table RENAME TO old_table;
COMMIT;
-�����Υǡ��������פϼ���ʸ���Ѥ����ޤ���
-
+ �����Υǡ��������פϼ���ʸ���Ѥ����ޤ���
BEGIN;
ALTER TABLE tab ADD COLUMN new_col new_data_type;
UPDATE tab SET new_col = CAST(old_col AS new_data_type);
ALTER TABLE tab DROP COLUMN old_col;
COMMIT;
-�����Ԥʤä��Ȥ��ϡ����ä��줿�Ԥ��ȤäƤ���ǥ��������֤������뤿���
-VACUUM FULL tab�򤷤��ۤ����ɤ����⤷��ޤ���
-
-4.5) �������ơ��֥롢�ǡ����١����κ��祵�����ϡ�
-
-���¤ϰʲ��ΤȤ���Ǥ���
-
+ �����Ԥʤä��Ȥ�
+ �ϡ����ä��줿�Ԥ��ȤäƤ���ǥ��������֤������뤿���VACUUM FULL
+ tab�򤷤��ۤ����ɤ����⤷��ޤ���
+
+ 4.5) �������ơ��֥롢�ǡ����١����κ��祵�����ϡ�
+
+ ���¤ϰʲ��ΤȤ���Ǥ���
�ǡ����١����κ��祵����? ����̵�� (32 TB �Υǡ����١�����¸�ߤ��ޤ�)
�ơ��֥�κ��祵����? 32TB
�����κ��祵����? 1.6TB
@@ -861,30 +936,32 @@ VACUUM FULL tab�򤷤��ۤ����ɤ����⤷��ޤ���
�ơ��֥���Ǥκ��祫����? �����η��ˤ��250-1600
�ơ��֥���Ǥκ��祤��ǥå�����? ����̵��
-������󡢤����ϼºݤ�̵���¤ǤϤʤ����ǥ��������̤ȥ��꡼�䥹��åץ��ڡ�
-�����礭���ˤ�����¤���ޤ�����ǽ�Ϥ������ͤ����ȤΤۤ��礭�ʻ�����������
-�ޤ���
-
-����ơ��֥륵������32TB�ϥ��ڥ졼�ƥ��󥰥����ƥ�ˤ�����ե�����Υ��ݡ���
-��ɬ�פȤ��ޤ��󡣵���ʥơ��֥��ʣ����1GB�Υե������ʬ������¸����ޤ��Τǡ�
-�ե����륷���ƥ�����¤Ͻ��פǤϤ���ޤ���
-
-�ǥե���ȤΥ֥��å���������32k�ˤ��뤳�Ȥǡ�����ơ��֥륵�����Ⱥ��祫������
-���ܤˤ��뤳�Ȥ��Ǥ��ޤ���
-
-4.6) ����Ū�ʥƥ����ȥե����뤫��ǡ�������¸����ˤϡ��ǡ����١����Υǥ�������
-�̤ϤɤΤ��餤ɬ�פǤ���
-
-���̤Υƥ����ȥե������ PostgreSQL �Υǡ����١�������¸����ˤϡ��������5�ܤ�
-�ǥ��������̤�ɬ�פȤ��ޤ���
-
-����Ȥ��ơ��ƹԤ������ȥƥ����ȵ��Ҥ���� 100,000�ԤΥե������ͤ��Ƥߤޤ���
-�����ƥ����Ȥ�ʸ�����ʿ��Ĺ����20�Х��ȤȲ��ꤹ��ȡ��ե�åȥե�������礭��
-����2.8MB �Ǥ������Υǡ�����ޤ� PostgreSQL �ǡ����١����ե�������礭���ϼ���
-�褦����6.4MB�ȸ��Ѥ�뤳�Ȥ��Ǥ��ޤ���
-
+ ������󡢤����ϼºݤ�̵���¤ǤϤʤ����ǥ��������̤ȥ��꡼�䥹���
+ �ץ��ڡ������礤��ˤ�����¤���ޤ����ǽ�Ϥ������ͤ����ȤΤۤ��礭
+ �ʻ������������ޤ���
+
+ ����ơ��֥륵������32TB�ϥ��ڥ졼�ƥ��󥰥����ƥ�ˤ�����ե������
+ ���ݡ��Ȥ�ɬ�פȤ��ޤ��󡣵���ʥơ��֥��ʣ����1GB�Υե������ʬ�����
+ �¸����ޤ��Τǡ��ե����륷���ƥ�����¤Ͻ��פǤϤ���ޤ���
+
+ �ǥե���ȤΥ֥��å���������32k�ˤ��뤳�Ȥǡ�����ơ��֥륵�����Ⱥ���
+ ������Ȥ��ܤˤ��뤳�Ȥ��Ǥ�ޤ���
+
+ 4.6) ����Ū�ʥƥ�
+ ���ȥե����뤫��ǡ�������¸����ˤϡ��ǡ����١����Υǥ��������̤ϤɤΤ���
+ �ɬ�פǤ���
+
+ ���̤Υƥ���ȥե������ PostgreSQL
+ �Υǡ����١�������¸����ˤϡ��������5�ܤΥǥ��������̤�ɬ�פȤ��ޤ��
+ �
+
+ ����Ȥ��ơ��ƹԤ������ȥƥ���ȵ�Ҥ���� 100,000�ԤΥե������ͤ�
+ �Ƥߤޤ��礦���ƥ�
+ ���Ȥ�ʸ�����ʿ��Ĺ����20�Х��ȤȲ��ꤹ��ȡ��ե�å� �ե�������礭
+ ������2.8MB �Ǥ������Υǡ�����ޤ� PostgreSQL �ǡ����١���
+ �ե�������礤��ϼ��Τ褦����6.4MB�ȸ��Ѥ�뤳�Ȥ��Ǥ�ޤ���
32 bytes: �ƥ����Υإå�(����)
- 24 bytes: ����(int)�ե�����ɤȥƥ�����(text)�ե������
+ 24 bytes: ����(int)�ե�����ɤȥƥ����(text)�ե������
+ 4 bytes: �ڡ�����Υ��åץ�ؤΥݥ���
----------------------------------------
60 bytes per row
@@ -898,198 +975,208 @@ VACUUM FULL tab�򤷤��ۤ����ɤ����⤷��ޤ���
100000 data rows
-------------------- = 782 database pages (�ڤ�夲)
128 rows per page
-
- 735 database pages * 8192 bytes per page = 6,021,120 bytes (6 MB)
-
-����ǥå����ϡ�����ۤɤΥ����Хإåɤ��׵ᤷ�ޤ��󤬡�����ǥå����դ������
-�ǡ�����ޤ�ʾ塢����ʤ���礭���ʤ�ޤ���
-
-NULL�ϥӥåȥޥåפȤ�����¸����Ƥ��ơ�����餬�鷺���˥��ڡ�����Ȥ��ޤ���
-
-4.7) ������줿�ơ��֥롢����ǥå������ǡ����١���������ӡ��桼����ɤΤ褦��
-���Ƹ��Ĥ��Ф��ޤ�����
-
-psql �ˤϤ��������ʥХå�����å��塦���ޥ�ɤ����ꡢ�������������ɽ�����ޤ���
-�Хå�����å��塦���ޥ�ɤμ���򸫤�ˤ� \? ��ȤäƲ��������ޤ���pg_ �ǻϤ�
-�륷���ƥ�ơ��֥�ˤ⵭�Ҥ���Ƥ��ޤ�������ˡ�psql -l �Ϥ��٤ƤΥǡ����١���
-��ꥹ��ɽ�����ޤ���
-
-�ޤ���pgsql/src/tutorial/syscat.source �ե���������餻�ƤߤƲ�����������ϡ���
-���� SELECT ʸ�ˤ��ɬ�פʾ����ǡ����١����Υ����ƥࡦ�ơ��֥뤫����Ф���
-�㼨���Ƥ���ޤ���
-
-4.8) �䤤��碌���٤�����������ǥå�����ȤäƤ����ͻҤ�����ޤ��󡣤ʤ��Ǥ���
-��
-
-����ǥå����ϼ�ưŪ�ˤ��٤Ƥ��䤤��碌�ǻȤ���櫓�ǤϤ���ޤ��󡣥ơ��֥�
-���Ǿ�����������礭�����䤤��碌�Ǥ��Τ鷺���ʥѡ�����ơ����Υ��������򤹤�
-������������ǥå����ϻȤ��ޤ�������ϥ���ǥå����������ˤ�굯��������
-�����ʥǥ��������������ϡ��ơ��֥�򥹥ȥ졼�Ȥ��ɤ�缡���������٤��ʤ뤳
-�Ȥ����뤫��Ǥ���
-
-����ǥå�����Ȥ�������ꤹ�뤿��ˡ�PostgreSQL �ϥơ��֥�ˤĤ��Ƥ����׾����
-�����ʤ���Фʤ�ޤ��󡣤������׾���ϡ�VACUUM ANALYZE�ޤ��ϡ�ñ�� ANALYZE ���
-�äƼ������뤳�Ȥ��Ǥ��ޤ������׾����Ȥäƥ��֥ƥ��ޥ����ϥơ��֥����ˤ���
-���������Τꡢ����ǥå�����Ȥ��٤����η�������������Ǥ��ޤ������׾���Ϻ�
-Ŭ�ʷ��������ˡ������Ǥ⵮�Ťʤ�Τ⤢��ޤ������׾���μ����ϡ��ơ�
-�֥�����Ƥ���������˷��֤��ʤ����٤��Ǥ���
-
-����ǥå����ϡ��̾� ORDER BY �����Ԥʤ�����ˤϻȤ��ޤ��󡣽缡�������
-��³������Ū�����Ȥϡ�����ʥơ��֥�Υ���ǥå����������������̤Ϲ�®�Ǥ�
-��
-��������ORDER BY���Ȥ߹�蘆�줿LIMIT �ϡ��ơ��֥�ξ�������ʬ���֤�����ˤ���
-���ӥ���ǥå�����Ȥ��Ǥ��礦���ºݡ�MAX() �� MIN() ������ǥå�����Ȥ�ʤ���
-���Ƥ⡢���Τ褦���ͤ� ORDER BY �� LIMIT ��Ȥäƥ���ǥå�����ȤäƼ��Ф���
-�Ȥ���ǽ�Ǥ�:
+ 735 database pages * 8192 bytes per page = 6,021,120 bytes (6 MB)
+ ����ǥå����ϡ�����ۤɤΥ����Хإåɤ��׵ᤷ�ޤ��󤬡�����ǥå�����
+ �������ǡ�����ޤ�ʾ塢����ʤ���礤��ʤ�ޤ���
+
+ NULL�ϥӥåȥޥåפȤ�����¸����Ƥ��ơ�����餬�鷺���˥��ڡ�����Ȥ�
+ �ޤ���
+
+ 4.7)
+ ������줿�ơ��֥롢����ǥå������ǡ����١���������ӡ��桼����ɤΤ褦�ˤ
+ ��Ƹ��Ĥ��Ф��ޤ�����
+
+ psql
+ �ˤϤ��������ʥХå�����å��塦���ޥ�ɤ����ꡢ�������������ɽ������
+ �����Хå�����å��塦���ޥ�ɤμ���򸫤�ˤ� \?
+ ��ȤäƲ��������ޤ���pg_ �ǻϤޤ륷���ƥ�ơ��֥�ˤ⵭
+ �Ҥ���Ƥ��ޤ�������ˡ�psql -l
+ �Ϥ��٤ƤΥǡ����١�����ꥹ��ɽ�����ޤ���
+
+ �ޤ���pgsql/src/tutorial/syscat.source
+ �ե���������餻�ƤߤƲ�����������ϡ������� SELECT
+ ʸ�ˤ��ɬ�פʾ����ǡ����١����Υ����ƥࡦ�ơ��֥뤫����Ф����㼨
+ ���Ƥ���ޤ���
+
+ 4.8)
+ �䤤��碌���٤�����������ǥå�����ȤäƤ����ͻҤ�����ޤ��󡣤ʤ��Ǥ����
+ �
+
+ ����ǥå����ϼ�ưŪ�ˤ��٤Ƥ��䤤��碌�ǻȤ���櫓�ǤϤ���ޤ���
+ �ơ� �֥뤬�Ǿ�����������礭
+ �����䤤��碌�Ǥ��Τ鷺���ʥѡ�����ơ����Υ�����
+ ���򤹤������������ǥå����ϻȤ��ޤ�������ϥ���ǥå�������
+ ���ˤ�
+ �굯������������ʥǥ��������������ϡ��ơ��֥�򥹥ȥ졼�Ȥ��ɤ��
+ �� ���������٤��ʤ뤳�Ȥ����뤫��Ǥ���
+
+ ����ǥå�����Ȥ�������ꤹ�뤿��ˡ�PostgreSQL �ϥơ��֥�ˤĤ�
+ �Ƥ����׾��������ʤ���Фʤ�ޤ��󡣤������׾���ϡ�VACUUM
+ ANALYZE�ޤ��ϡ�ñ�� ANALYZE ��ȤäƼ������뤳�� ���Ǥ�
+ �ޤ������׾����Ȥäƥ��֥ƥ��ޥ����ϥơ��֥����ˤ������������
+ �ꡢ����ǥå�����Ȥ��٤���η�������������Ǥ�ޤ������׾���Ϻ�Ŭ
+ �ʷ��������ˡ������Ǥ⵮�Ťʤ�Τ⤢��ޤ������׾���μ�����
+ �� �ơ��֥�����Ƥ���������˷��֤��ʤ����٤�Ǥ���
+
+ ����ǥå����ϡ��̾� ORDER BY �����Ԥ�
+ ������ˤϻȤ��ޤ��󡣽缡����
+ ����³������Ū�����Ȥϡ�����ʥơ��֥� �Υ���ǥå�������
+ ���������̤Ϲ�®�Ǥ���
+
+ ��������ORDER BY���Ȥ߹�蘆�줿LIMIT
+ �ϡ��ơ��֥�ξ�������ʬ���֤�����ˤ��Ӥ��ӥ���ǥå�����Ȥ��Ǥ��礦
+ �� �ºݡ�MAX() �� MIN()
+ ������ǥå�����Ȥ�ʤ��Ȥ��Ƥ⡢���Τ褦���ͤ� ORDER BY �� LIMIT
+ ��Ȥäƥ���ǥå�����ȤäƼ��Ф����Ȥ���ǽ�Ǥ�:
SELECT col
FROM tab
ORDER BY col [ DESC ]
LIMIT 1;
-�⤷�����ץƥ��ޥ������ְ�äƥ������󥷥�륹���������򤷤����Ȥ˵������ʤ�
-��С�SET enable_seqscan TO 'off'��Ȥäƥ���ǥå����������Ǥޤ������ʤ�®��
-�ʤäƤ��뤫��ƥ��Ȥ򤷤ƤߤƤ���������
-
-LIKE ���뤤�� ~ �Τ褦�ʥ磻��ɥ����ɱ黻�Ҥ����̤ʴĶ��Ǥ����Ȥ��ޤ���
-
- �� ����ʸ����ʸ����κǽ�ˤ����ޤ������Ȥ��С�
- �� LIKE �ѥ�����%�ǻϤޤ�ʤ�
- �� ~ (����ɽ��) �ѥ������^�ǻϤޤ�ʤ���Фʤ�ʤ�
- �� ����ʸ�����ʸ�����饹����Ϥ�뤳�ȤϤǤ��ޤ��󡣤��Ȥ��С�[a-e]��
- �� ILIKE �� ~* �Τ褦����ʸ���Ⱦ�ʸ������̤��ʤ������ϻȤ��ޤ��󡣤��Τ����
- ������FAQ��4.12�����������ؿ��Υ���ǥå������Ȥ��ޤ���
- �� initdb �ˤ����Ƥϡ��ǥե���Ȥ�C�������뤬�Ȥ��ʤ��ƤϤʤ�ޤ��󡣤�����
- ͳ�ϡ�C��������ʳ��Ǥϼ����礭��ʸ�����Τ뤳�Ȥ��Ǥ��ʤ�����Ǥ������Τ褦
- �ʾ�硢
+ �⤷�����ץƥ��ޥ������ְ�äƥ������󥷥�륹��
+ �������򤷤����Ȥ˵������ʤ���С�SET enable_seqscan TO
+ 'off'��Ȥäƥ���ǥå�������
+ ���Ǥޤ������ʤ�®���ʤäƤ��뤫��ƥ��Ȥ򤷤ƤߤƤ���������
- LIKE
-
- ����ǥ����󥰤ˤ���Ư���褦�ʡ����̤�
+ LIKE ���뤤�� ~ �Τ褦�ʥ磻��ɥ����ɱ黻 �Ҥ����̤ʴĶ�
+ �Ǥ����Ȥ��ޤ���
+ * ����ʸ����ʸ����κǽ�ˤ��ޤ������Ȥ��С�
+ + LIKE �ѥ�����%�ǻϤޤ�ʤ�
+ + ~ (����ɽ��) �ѥ������^�ǻϤޤ�ʤ���Фʤ�ʤ�
+ * ����ʸ�����ʸ�����饹����Ϥ�뤳�ȤϤǤ�ޤ��󡣤��Ȥ��С�[a-e]��
+ * ILIKE �� ~* �Τ褦����ʸ���Ⱦ�ʸ������̤�
+ �ʤ������ϻȤ��ޤ��󡣤��Τ���ꡢ����FAQ��4.12�����������ؿ��Υ
+ ���ǥå������Ȥ��ޤ���
+ * initdb �ˤ����Ƥϡ��ǥե���Ȥ�C�������뤬�Ȥ���
+ ���ƤϤʤ�ޤ��󡣤�����ͳ�ϡ�C��������ʳ��Ǥϼ����礭
+ ��ʸ�����Τ뤳�� ���Ǥ�
+ �ʤ�����Ǥ������Τ褦�ʾ�硢LIKE����ǥ����󥰤ˤ���
+ Ư���褦�ʡ����̤�text_pattern_ops����ǥå��������
+ ���뤳�Ȥ�Ǥ�ޤ���
+
+ 8.0������Υ�꡼���Ǥϡ�����ǥå����ϡ��ǡ����������礦�ɥ���ǥå��
+ ��Υ����η��Ȱ��פ��ʤ���С��Ȥ��ʤ����Ȥ����Ф��Ф���ޤ����������
+ 餯��int2, int8, ����� numeric ���Υ����Υ���ǥå����������Ǥ���
+ [������ ����Ū�˥���ǥå�����Ȥ��ˤ� SET enable_seqscan = off
+ ��¹Ԥ��ޤ��� ]
- text_pattern_ops
+ 4.9)
+ �䤤��碌���֥ƥ��ޥ������ɤΤ褦���䤤��碌��ɾ������Τ��򸫤�ˤϤɤ��
+ ��ޤ�����
- ����ǥå�����������뤳�Ȥ�Ǥ��ޤ���
-
-8.0������Υ�꡼���Ǥϡ�����ǥå����ϡ��ǡ����������礦�ɥ���ǥå����Υ����
-�η��Ȱ��פ��ʤ���С��Ȥ��ʤ����Ȥ����Ф��Ф���ޤ����������餯��int2, int8,
-����� numeric ���Υ����Υ���ǥå����������Ǥ���
-
-[����������Ū�˥���ǥå�����Ȥ��ˤ� SET enable_seqscan = off ��¹Ԥ��ޤ��� ]
-
-4.9) �䤤��碌���֥ƥ��ޥ������ɤΤ褦���䤤��碌��ɾ������Τ��򸫤�ˤϤɤ�
-���ޤ�����
-
-����饤��ޥ˥奢��� EXPLAIN �򸫤Ʋ�������
-
-4.10) R-tree ����ǥå����Ȥϲ��Ǥ�����
-
-R-tree ����ǥå����϶���Ū�ʥǡ����˥���ǥå������դ��뤿��˻Ȥ��ޤ����ϥ�
-���奤��ǥå����Ǥ��ϰϤθ������Ǥ��ޤ��󡣤ޤ���B-tree ����ǥå����Ǥϡ�����
-���Ǥ����ϰϤθ������Ǥ��ޤ���R-tree ����ǥå����Ǥ����¿�����Υǡ����򰷤�
-�ޤ������Ȥ��С��⤷ R-tree ����ǥå����� point ����°�����դ��뤳�Ȥ��Ǥ����
-����ȥ����ƥ�ϡ���Ĺ�����˰Ϥޤ줿���򤹤٤����򤹤�פȤ����褦���䤤��碌
-�ˡ�����Ψ�ɤ��������ޤ���
-
-R-Tree ���߷פθ�ŵ�Ȥʤ븢�Ҥ�����ʸ��:
-
-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.
-
-������ʸ�ϡ�Stonebraker ������ "Readings in Database Systems" �Ǥ���夲���
-�Ƥ��ޤ���
-
+ ����饤��ޥ˥奢��� EXPLAIN �򸫤Ʋ�������
+
+ 4.10) R-tree ����ǥå����Ȥϲ��Ǥ�����
+
+ R-tree
+ ����ǥå����϶���Ū�ʥǡ����˥���ǥå������դ��뤿��˻Ȥ��ޤ�����
+ �å��奤��ǥå����Ǥ��ϰϤθ������Ǥ�ޤ��󡣤ޤ���B-tree
+ ����ǥå����Ǥϡ��������Ǥ����ϰϤθ������Ǥ�ޤ���R-tree
+ ����ǥå����Ǥ����¿�����Υǡ����򰷤��ޤ������Ȥ��С��⤷ R-tree
+ ����ǥå����� point ����°����դ��뤳�Ȥ��Ǥ�
+ ��Ȥ���ȥ����ƥ�ϡ���Ĺ�����˰Ϥޤ줿���򤹤٤����򤹤�פȤ����褦
+ ���䤤��碌�ˡ�����Ψ�ɤ��������ޤ���
+
+ R-Tree ���߷פθ�ŵ�Ȥʤ븢�Ҥ�����ʸ��:
+
+ 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.
+
+ ������ʸ�ϡ�Stonebraker ������ "Readings in Database Systems"
+ �Ǥ���夲���Ƥ��ޤ���
[������
- ������ü�������¼�������R-Tree�ط���ʸ����Ҳ𤷤�ĺ���ޤ�����
- ���ܸ� Postgres ML �Υ��������֤��� "Subject: [postgres95 801] spatial data structures"
+ ������ü�������¼�������R-Tree�ط���ʸ����Ҳ𤷤�ĺ��ޤ�����
+ ���ܸ� Postgres ML �Υ��������֤��� "Subject: [postgres95 801] spatialdata structures"
http://www.sra.co.jp/people/t-ishii/PostgreSQL/mhonarc/pgsql-jp/1996Oct/msg00007.html
������������
]
-�ȹ��ߤ� R-Tree �ǥݥꥴ���ܥå��������Ǥ��ޤ�������Ū�ˤ�R-Tree �Ϥ�äȹ�
-������������褦�ˤ��ĥ�Ǥ��ޤ����¼�Ū�ˤϡ�R-Tree �γ�ĥ�ˤϤ���äȤ���
-��Ȥ�ɬ�פǤ��ơ����ߡ��桹�Ϥ����ɤΤ褦�ˤ��뤫�ˤĤ��Ƥ�ʸ�����äƤ���
-����
-
+ �ȹ��ߤ� R-Tree �ǥݥꥴ���ܥå��������Ǥ�ޤ�������Ū�ˤ�R-Tree
+ �Ϥ�äȹ⤤����������褦�ˤ��ĥ�Ǥ�ޤ����¼�Ū�ˤϡ�R-Tree
+ �γ�ĥ�ˤϤ���äȤ�����Ȥ�ɬ�פǤ��ơ����ߡ��桹�Ϥ����ɤΤ褦�ˤ�
+ �뤫�ˤĤ��Ƥ�ʸ�����äƤ��ޤ���
[������
R-Tree ����ǥå�����GiST�dz�ȯ����Ƥ��ޤ���
http://www.sai.msu.su/~megera/postgres/gist/
]
-4.11) ����Ū�䤤��碌��Ŭ���Ȥϲ��Ǥ�����
-
-GEQO �⥸�塼��ϡ������Υơ��֥���礹��Ȥ��ˡ�����Ū���르�ꥺ��(GA)�����
-�碌���®�����ޤ�������ˤ�ꡢ����ߤĤ֤���õ����Ԥʤ�ʤ��Ƥ⡢�礭�ʷ��
-(join queries)�򰷤����Ȥ��Ǥ���褦�ˤʤ�ޤ���
-
-4.12) ����ɽ���Ǥθ�������ʸ���Ⱦ�ʸ���Ȥ���̤��ʤ�����ɽ�������ϤɤΤ褦�˼�
-�����ޤ�������ʸ���Ⱦ�ʸ���Ȥ���̤��ʤ������Τ���Υ���ǥå����ϤɤΤ褦�˻�
-���ޤ�����
-
-~�黻�Ҥ�����ɽ���ȹ��Ԥʤ���~* ����ʸ���Ⱦ�ʸ������̤��ʤ�
-(case-insensitive)����ɽ���ȹ��Ԥ��ޤ�����ʸ���Ⱦ�ʸ������̤��ʤ� LIKE �黻
-�Ҥ� ILIKE �Ȥ����ޤ���
-
-��ʸ���Ⱦ�ʸ������̤��ʤ�������Ӥϼ��Τ褦��ɽ���Ǥ��롧
-
+ 4.11) ����Ū�䤤��碌��Ŭ���Ȥϲ��Ǥ�����
+
+ GEQO �⥸�塼��ϡ������Υơ��֥���礹��Ȥ�
+ �ˡ�����Ū���르�ꥺ��(GA)�����碌���®�����ޤ�������ˤ�ꡢ�����
+ �Ĥ֤���õ����Ԥʤ�ʤ��Ƥ⡢�礤ʷ��(join queries)�򰷤����Ȥ��Ǥ�
+ ��褦�ˤʤ�ޤ���
+
+ 4.12)
+ ����ɽ���Ǥθ�������ʸ���Ⱦ�ʸ���Ȥ���̤��ʤ�����ɽ�������ϤɤΤ褦�˼¸��
+ ��ޤ�������ʸ���Ⱦ�ʸ���Ȥ���̤��ʤ������Τ���Υ���ǥå����ϤɤΤ褦�˻�
+ ���ޤ�����
+
+ ~�黻�Ҥ�����ɽ���ȹ��Ԥʤ���~*
+ ����ʸ���Ⱦ�ʸ������̤��ʤ�(case-insensitive)����ɽ���ȹ��Ԥ��ޤ���
+ ��ʸ���Ⱦ�ʸ������̤��ʤ� LIKE �黻�Ҥ� ILIKE �Ȥ����ޤ���
+
+ ��ʸ���Ⱦ�ʸ������̤��ʤ�������Ӥϼ��Τ褦��ɽ���Ǥ�롧
SELECT *
FROM tab
WHERE lower(col) = 'abc';
-ɸ�।��ǥå����ǤϻȤ�줺���������ʤ��顢�⤷�ؿ�����ǥå������ä��ʤ餽
-�줬�Ȥ���Ǥ��礦��
-
+ ɸ�।��ǥå����ǤϻȤ�줺���������ʤ��顢�⤷�ؿ�����ǥå�����
+ ��ä��ʤ餽�줬�Ȥ���Ǥ��礦��
CREATE INDEX tabindex ON tab (lower(col));
-
-
-4.13) �䤤��碌����ǡ��ե�����ɤ� NULL �Ǥ��뤳�Ȥ򸡽Ф���ˤϤɤ����ޤ���
-��
-
-������ IS NULL �� IS NOT NULL �Ȥǻ�Ƥߤޤ���
-4.14) �͡���ʸ�����Τ��줾��ΰ㤤�ϲ��Ǥ�����
+ 4.13) �䤤��碌����ǡ��ե�����ɤ� NULL
+ �Ǥ��뤳�Ȥ򸡽Ф���ˤϤɤ����ޤ�����
+
+ ������ IS NULL �� IS NOT NULL �Ȥǻ�Ƥߤޤ���
+
+ 4.14) �͡���ʸ�����Τ��줾��ΰ㤤�ϲ��Ǥ�����
+
Type Internal Name Notes
--------------------------------------------------
VARCHAR(n) varchar ����Ĺ�Υ���������ꤹ�롢�ͤ�ʪ̵��
CHAR(n) bpchar ���ꤵ�줿����Ĺ�Ȥʤ�褦�˶��򤬵ͤ����
-TEXT text Ĺ���˾�¤�̵���ƥ�����
+TEXT text Ĺ���˾�¤�̵���ƥ����
BYTEA bytea ����Ĺ�ΥХ�������(null-byte safe)
"char" char ��ʸ��
-����̾�ˤ��ܤˤ�����Τϡ������ƥࡦ����������Ĵ�٤�Ȥ��䡢���顼��å�������
-�������Ȥ��Ǥ���
-
-�嵭�η��Τ����ǽ�Σ��Ĥη��� "varlena" ���Ǥ�(���ʤ�����ǥ������κǽ�Σ���
-���Ȥ��ǡ���Ĺ�ǡ�����θ�˼ºݤΥǡ�����³���ޤ�)�����Τ褦�˼ºݤζ��֤����
-���줿�礭�����⾯���礭���ʤ�ޤ����������������Υǡ�������TOAST�ˤ�갵��
-���줿��ʣ���������Ϥä���¸���줿�ꤷ�ơ��ǥ�������ζ��֤ϻפä���꾮������
-��ޤ���
-
-VARCHAR(n) �ϲ���Ĺ��ʸ�������¸����Τ˺�Ŭ�Ǥ�������¸�Ǥ���ʸ�����Ĺ������
-�¤�����ޤ���TEXT ��Ĺ�������¤�̵��ʸ�������¸�Τ���Τ�Τǡ������ 1������
-���ȤǤ��� CHAR(n)�ϡ�VARCHAR(n)��Ϳ����줿ʸ����������¸����Τ��Ф����֥��
-����ͤ����Ǥ��Ĥ�Ʊ��Ĺ����ʸ�������¸����Τ˺�Ŭ�Ǥ���BYTEA�ϡ���ʬŪ��
-NULL �ΥХ��Ȥ�ޤ�Х��ʥ�ǡ�������¸���뤿��Τ�ΤǤ��������Υ����פ�Ʊ��
-���餤����ǽ���������ޤ���
-
-4.15.1) ����(serial)����ư��ʬ�ե�����ɤϤɤΤ褦�ˤĤ���ޤ�����
-
-PostgreSQL �� SERIAL �ǡ������򥵥ݡ��Ȥ��ޤ���������˥������󥹤�ư������
-�ޤ������Ȥ��С�
-
- CREATE TABLE person (
- id SERIAL,
- name TEXT
+ ����̾�ˤ��ܤˤ�����Τϡ������ƥࡦ����������Ĵ�٤�Ȥ�
+ �䡢���顼��å�������������Ȥ�Ǥ���
+
+ �嵤η��Τ����ǽ�Σ��Ĥη��� "varlena"
+ ���Ǥ�(���ʤ�����ǥ������κǽ�Σ��Х��Ȥ��ǡ���Ĺ�ǡ�����θ�˼ºݤ
+ Υǡ�����³��ޤ�)�����Τ褦�˼ºݤζ��֤�������줿�礤����⾯���礭
+ ���ʤ�ޤ����������������Υǡ�������TOAST�ˤ�갵�̤��줿��ʣ�������
+ ��Ϥä���¸���줿�ꤷ�ơ��ǥ�������ζ��֤ϻפä���꾮�����ʤ�ޤ���
+
+ VARCHAR(n) �ϲ���Ĺ��ʸ�������¸����Τ˺�Ŭ�Ǥ�������¸�Ǥ�
+ ��ʸ�����Ĺ�������¤�����ޤ���TEXT
+ ��Ĺ�������¤�̵��ʸ�������¸�Τ���Τ�Τǡ������ 1�����Х��ȤǤ���
+ CHAR(n)�ϡ�VARCHAR(n)��Ϳ����줿ʸ����������¸����Τ��Ф����֥�󥯤
+ �ͤ����Ǥ��Ĥ�Ʊ��Ĺ����ʸ�������¸����Τ˺�Ŭ�Ǥ���BYTEA�ϡ���ʬ
+ ��NULL
+ �ΥХ��Ȥ�ޤ�Х��ʥ�ǡ�������¸���뤿��Τ�ΤǤ��������Υ����פ�
+ Ʊ�����餤���ǽ��������ޤ���
+
+ 4.15.1) ����(serial)����ư��ʬ�ե�����ɤϤɤΤ褦�ˤĤ���ޤ�����
+
+ PostgreSQL �� SERIAL
+ �ǡ������򥵥ݡ��Ȥ��ޤ���������˥������󥹤�ư�������ޤ������Ȥ�
+ �С�
+ CREATE TABLE person (
+ id SERIAL,
+ name TEXT
);
-�ϼ�ưŪ�˼��Τ褦����������ޤ�:
-
+ �ϼ�ưŪ�˼��Τ褦����������ޤ�:
CREATE SEQUENCE person_id_seq;
- CREATE TABLE person (
+ CREATE TABLE person (
id INT4 NOT NULL DEFAULT nextval('person_id_seq'),
- name TEXT
+ name TEXT
);
[������
@@ -1097,186 +1184,203 @@ PostgreSQL �� SERIAL �ǡ������򥵥ݡ��Ȥ��ޤ���������˥������󥹤�ư������
�ϡ� 7.3 ����ϼ�ưŪ�ˤϹԤʤ��ʤ��ʤ�ޤ�����
]
-���֤ˤĤ��ƤΤ�äȾܤ�������ϡ�����饤��ޥ˥奢��� create_sequence ����
-��������
-
-�ޤ����ƥ�����OID�ե�����ɤ����ͤȤ��ƻȤ����Ȥ�Ǥ��ޤ����������ʤ��顢�⤷
-��ǡ����١��������פ��ƥ�����ɤ���ɬ�פ�������ϡ�OID��¸���뤿���
-pg_dump �� -o���ץ�����Ȥ������ޤ��ϡ�COPY WITH OIDS���ץ�����Ȥ�ɬ�פ���
-��ޤ���
-
-4.15.2) SERIAL�ǡ�����������������ͤϡ��ɤ�����������ޤ�����
-
-�ҤȤĤ���ˡ�ϡ�nextval() �ؿ���ȤäƤ����ͤ�����������(before)�� SEQUENCE ��
-�֥������Ȥ��鼡�� SERIAL �ͤ���Ф������줫��ºݤ������򤹤뤳�ȤǤ���
-4.15.1 �Υơ��֥�����Ȥ��Ȥ���ȡ���������ǤϤ��Τ褦�ˤʤ�ޤ���
-
+ ���֤ˤĤ��ƤΤ�äȾܤ�������ϡ�����饤��ޥ˥奢���
+ create_sequence ������������
+
+ �ޤ����ƥ�����OID�ե�����ɤ����ͤȤ��ƻȤ����Ȥ�Ǥ�
+ �ޤ����������ʤ��顢�⤷��ǡ����١��������פ��ƥ�����ɤ���ɬ�פ���
+ ����ϡ�OID��¸���뤿���pg_dump ��
+ -o���ץ�����Ȥ������ޤ��ϡ�COPY WITH
+ OIDS���ץ�����Ȥ�ɬ�פ�����ޤ���
+
+ 4.15.2) SERIAL�ǡ�����������������ͤϡ��ɤ�����������ޤ�����
+
+ �ҤȤĤ���ˡ�ϡ�nextval() �ؿ���ȤäƤ����ͤ�����������(before)��
+ SEQUENCE ���֥������Ȥ��鼡�� SERIAL
+ �ͤ���Ф������줫��ºݤ������򤹤뤳�ȤǤ���4.15.1
+ �Υơ��֥�����Ȥ��Ȥ���ȡ���������ǤϤ��Τ褦�ˤʤ�ޤ���
new_id = execute("SELECT nextval('person_id_seq')");
execute("INSERT INTO person (id, name) VALUES (new_id, 'Blaise Pascal')");
-�������ơ�new_id ����¸�����������ͤ�¾���䤤��碌��(���Ȥ��С�person �ơ��֥�
-���Ф��볰������(foreign key)�Τ褦��)�Ȥ��Ȥ褤�Ǥ��礦����ưŪ�˺��줿
-SEQUENCE���֥������Ȥ�̾���ϡ�<table>_<serialcolumn>_seq �Τ褦�ˤʤꡢ���Τ���
-��table �� serialcolumn �Ϥ��줾��ơ��֥��̾����SERIAL������̾���Ǥ���
-
-���뤤�ϡ�Ϳ����줿SERIAL�ͤ򡢤��줬�����ͤȤ����������줿���(after)��
-currval() �ؿ���ȤäƼ��Ф����Ȥ�Ǥ��ޤ������Ȥ��С�
-
+ �������ơ�new_id ����¸�����������ͤ�¾���䤤��碌��(���Ȥ��С�person
+ �ơ��֥���Ф��볰�����(foreign
+ key)�Τ褦��)�Ȥ��Ȥ褤�Ǥ��礦����ưŪ�˺��줿SEQUENCE���֥������Ȥ
+ �̾���ϡ�<table>_<serialcolumn>_seq �Τ褦�ˤʤꡢ���Τ�����table ��
+ serialcolumn �Ϥ��줾��ơ��֥��̾����SERIAL������̾���Ǥ���
+
+ ���뤤�ϡ�Ϳ����줿SERIAL�ͤ򡢤��줬�����ͤȤ����������줿���(after
+ )�� currval() �ؿ���ȤäƼ��Ф����Ȥ�Ǥ�ޤ������Ȥ��С�
execute("INSERT INTO person (name) VALUES ('Blaise Pascal')");
new_id = execute("SELECT currval('person_id_seq')");
-�Ǹ�ˡ�INSERTʸ�����֤�OID��Ȥäơ������ͤ�ߤĤ��뤳�Ȥ�Ǥ��ޤ�������������
-oid���ͤ�40����ã����Ȥ�Ȥ���äƤ��ޤ����Ǥ�ܿ������㤤������Ȥʤ�Ǥ��礦
-��Perl DBI �� DBD::Pg �⥸�塼���Ȥ��С�$sth->execute() �θ�� $sth->
-{pg_oid_status} ���ͳ���Ƥ��� OID �ͤ�Ȥ���褦�ˤ��뤳�ȤϤǤ��ޤ���
-
-4.15.3) currval() ��¾�Υ桼���Ȥζ�����֤˴٤뤳�ȤϤʤ��Ǥ�����
-
-����Ϥ���ޤ���currval() �ϡ����٤ƤΥ桼���ǤϤ���ޤ��󤬡����ʤ��ΥХå�
-����ɤ�Ϳ����줿���ߤ��ͤ��֤��ޤ���
-
-4.15.4) �ȥ�󥶥���������Ǥ����Ȥ��ˤ⤦�����ɥ��������ֹ椬�Ȥ��ʤ���
-�Ϥʤ��Ǥ������������󥹡�SERIAL�����˶���������ΤϤʤ��Ǥ�����
-
-Ʊ������������뤿��ˡ��¹���Υȥ�󥶥������ˡ�ɬ�פǥȥ�󥶥�����󤬽�
-λ����ޤǥ��å�����ʤ����������ͤ�Ϳ���Ƥ��ޤ������Τ���ȥ�󥶥������
-���Ǥ������ֹ������Ƥ˥���åפ������ޤ���
-
-4.16) OID �Ȥϲ��Ǥ����� TID �Ȥϲ��Ǥ�����
-
-OID �Ȥϰ�դΥ���ID ���Ф��� PostgreSQL �������Ǥ���PostgreSQL ����ǤĤ����
-�뤹�٤ƤΥ����ϰ�դ� OID �����ޤ���initdb ��ȯ������� OID �Ϥ��٤� 16384
-(include/access/transam.h ����)��꾮�����ͤǤ���initdb ��Τ��٤Ƥ� OID (�桼
-������)�Ϥ���ʾ���ͤˤʤ�ޤ�������Ǥϡ�����餹�٤Ƥ� OID�ϰ�ĤΥǡ��֥��
-�ǡ����١������α�ޤ餺��PostgreSQL ���󥹥ȥ졼��������Τ���ǰ�դǤ���
-
-PostgreSQL �ϥơ��֥�֤Υ������ӤĤ��뤿��ˡ����Υ����ƥ�ơ��֥���� OID
-��Ȥ��ޤ������� OID ������Υ桼���Υ������̤��뤿��������ǻȤ��뤳��
-���Ǥ��ޤ���OID ���ͤ���¸���뤿��ˤ� OID ���򥫥��˻Ȥ����Ȥ򾩤�ޤ������
-®�������������뤿��� OID �ե�����ɤ˥���ǥå������뤳�Ȥ��Ǥ��ޤ��� OID
-�ϡ����ƤΥǡ����١����ǻȤ�������ΰ褫�顢���Ƥο����������˳�����Ƥ���
-����OID ��¾�β������Ѥ����������뤤�ϸ��� OID ��ơ��֥�Ȱ��˥��ԡ���������
-�ʤ顢�Ǥ��ʤ��Ϥ���ޤ���
-
+ �Ǹ�ˡ�INSERTʸ�����֤�OID��Ȥäơ������ͤ�ߤĤ��뤳�Ȥ�Ǥ�
+ �ޤ�������������oid���ͤ�40����ã����Ȥ�Ȥ���äƤ��ޤ����Ǥ�ܿ���
+ ���㤤������Ȥʤ�Ǥ��礦��Perl DBI �� DBD::Pg
+ �⥸�塼���Ȥ��С�$sth->execute() �θ�� $sth->{pg_oid_status}
+ ���ͳ���Ƥ��� OID �ͤ�Ȥ���褦�ˤ��뤳�ȤϤǤ�ޤ���
+
+ 4.15.3) currval() ��¾�Υ桼���Ȥζ�����֤˴٤뤳�ȤϤʤ��Ǥ�����
+
+ ����Ϥ���ޤ���currval()
+ �ϡ����٤ƤΥ桼���ǤϤ���ޤ��󤬡����ʤ��ΥХå�����ɤ�Ϳ����줿��
+ �ߤ��ͤ��֤��ޤ���
+
+ 4.15.4) �ȥ�󥶥���������Ǥ����Ȥ�
+ �ˤ⤦�����ɥ��������ֹ椬�Ȥ��ʤ��ΤϤʤ��Ǥ������������󥹡�SERIAL���
+ ��˶��������ΤϤʤ��Ǥ�����
+
+ Ʊ����
+ ��������뤿��ˡ��¹���Υȥ�󥶥������ˡ�ɬ�פǥȥ�󥶥������
+ ��λ����ޤǥ��å�����ʤ����������ͤ�Ϳ���Ƥ��ޤ������Τ���ȥ��
+ ����������Ǥ������ֹ������Ƥ˥���åפ������ޤ���
+
+ 4.16) OID �Ȥϲ��Ǥ����� TID �Ȥϲ��Ǥ�����
+
+ OID �Ȥϰ�դΥ���ID ���Ф��� PostgreSQL �������Ǥ���PostgreSQL
+ ����ǤĤ����뤹�٤ƤΥ����ϰ�դ� OID �����ޤ���initdb ��ȯ�������
+ OID �Ϥ��٤� 16384 (include/access/transam.h
+ ����)��꾮�����ͤǤ���initdb ��Τ��٤Ƥ� OID
+ (�桼������)�Ϥ���ʾ���ͤˤʤ�ޤ��� ����Ǥϡ�����餹�٤Ƥ�
+ OID�ϰ�ĤΥǡ��֥��ǡ����١������α�ޤ餺��PostgreSQL
+ ���󥹥ȥ졼��������Τ���ǰ�դǤ���
+
+ PostgreSQL
+ �ϥơ��֥�֤Υ������ӤĤ��뤿��ˡ����Υ����ƥ�ơ��֥���� OID
+ ��Ȥ��ޤ������� OID
+ ������Υ桼���Υ������̤��뤿��������ǻȤ��뤳�Ȥ��Ǥ�
+ �ޤ���OID ���ͤ���¸���뤿��ˤ� OID
+ ���򥫥��˻Ȥ����Ȥ򾩤�ޤ������®�������������뤿��� OID
+ �ե�����ɤ˥���ǥå������뤳�Ȥ��Ǥ�ޤ��� OID
+ �ϡ����ƤΥǡ����١����ǻȤ�������ΰ褫�顢���Ƥο����������˳����
+ �Ƥ��ޤ���OID ��¾�β������Ѥ����������뤤�ϸ��� OID
+ ��ơ��֥�Ȱ��˥��ԡ��������Τʤ顢�Ǥ�ʤ��Ϥ���ޤ���
CREATE TABLE new_table(mycol int);
SELECT oid AS old_oid, mycol INTO tmp_table FROM old_table;
COPY tmp_table TO '/tmp/pgtable';
COPY new_table WITH OIDS FROM '/tmp/pgtable';
DROP TABLE tmp_table;
-OID �ϡ�4�Х��Ȥ������Ȥ�����¸����Ƥ���Τǡ�40����ۤ���Ȱ��Ƥ��ޤ��Ǥ���
-����ï�⤳�줬����������𤷤Ƥ���ͤϤ��ޤ���Ǥ������������ʤ����ˤ������¤�
-���������Ȥ�ײ褷�Ƥ��ޤ���
-
-TID �������ʪ�������򤽤Υ֥��å��ȥ��ե��å��ͤǼ��̤��뤿��˻Ȥ��ޤ���TID
-�ϥ������������줿��ƥ����ɤ������Ѥ��ޤ��������� TID �ϡ�ʪ��������ؤ�
-����˥���ǥå������ܤǻȤ��ޤ���
-
-4.17) PostgreSQL �ǻȤ��뤤���Ĥ����Ѹ�ΰ�̣�ϲ��Ǥ�����
-
-�����Ĥ��Υ����������ɤ�Ť�ʸ�����ˤϡ����줾������ʬ�����Ǥ�äȰ���Ū��
-�Ȥ��������Ѹ줬�Ȥ��Ƥ��ޤ���
-
- �� �ơ��֥�(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)
-
-����Ū�ʥǡ����١����Ѹ�Υꥹ�Ȥϡ�http://hea-www.harvard.edu/MST/simul/
-software/docs/pkgs/pgsql/glossary/glossary.html �Ǹ��Ĥ����ޤ���
-
-4.18) ���顼��å����� "ERROR: Memory exhausted in AllocSetAlloc()"���Ф�ΤϤ�
-���Ǥ�����
-
-�����餯�������ƥ�β��ۥ��꡼�����ƻȤ��̤����Ƥ��ޤäƤ����ǽ�������뤫��
-�����ͥ뤬����꥽�����ˤĤ��Ƥ�������ͤ��㤹�����ǽ��������ޤ��� postmaster
-���ư�������ˤ�����ƤߤƲ�������
-
+ OID
+ �ϡ�4�Х��Ȥ������Ȥ�����¸����Ƥ���Τǡ�40����ۤ���Ȱ��Ƥ��ޤ��
+ Ǥ��礦��ï�⤳�줬����
+ ������𤷤Ƥ���ͤϤ��ޤ���Ǥ������������ʤ����ˤ������¤��������
+ �Ȥ�ײ褷�Ƥ��ޤ���
+
+ TID
+ �������ʪ�������򤽤Υ֥��å��ȥ��ե��å��ͤǼ��̤��뤿��˻Ȥ��ޤ�
+ ��TID �ϥ������������줿��ƥ����ɤ������Ѥ��ޤ��������� TID
+ �ϡ�ʪ��������ؤ�����˥���ǥå�����ܤǻȤ��ޤ���
+
+ 4.17) PostgreSQL �ǻȤ��뤤���Ĥ����Ѹ�ΰ�̣�ϲ��Ǥ�����
+
+ �����Ĥ��Υ����������ɤ�Ť�ʸ�����ˤϡ����줾������ʬ�����Ǥ�ä�
+ ����Ū�˻Ȥ��������Ѹ줬�Ȥ��Ƥ��ޤ���
+ * �ơ��֥�(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)
+
+ ����Ū�ʥǡ����١����Ѹ�Υꥹ�Ȥϡ�http://hea-www.harvard.edu/MST/sim
+ ul/software/docs/pkgs/pgsql/glossary/glossary.html �Ǹ��Ĥ����ޤ���
+
+ 4.18) ���顼��å����� "ERROR: Memory exhausted in
+ AllocSetAlloc()"���Ф�ΤϤʤ��Ǥ�����
+
+ �����餯�������ƥ�β��ۥ��꡼�����ƻȤ��̤����Ƥ��ޤäƤ����ǽ��
+ �����뤫�������ͥ뤬����꥽�����ˤĤ��Ƥ�������ͤ��㤹�����ǽ��
+ ������ޤ��� postmaster ���ư�������ˤ�����ƤߤƲ�������
ulimit -d 262144
limit datasize 256m
-������ˤ�äơ��ɤ��餫�ҤȤĤ���������Ǥ��礦��������ϥץ������Υǡ�������
-�������¤���⤯���ꤷ�����֤��䤤��碌�����뤹��褦�ˤʤ�Ǥ��礦������
-���ޥ�ɤϸ��ԤΥץ������ȡ����Υ��ޥ�ɤ����餻����˺�������ƤΥ��֥ץ���
-���ˤĤ���Ŭ�Ѥ���ޤ����Хå�����ɤ��ȤƤ�¿���Υǡ������֤������SQL ���饤
-����Ȥ����꤬³���Ƥ���ΤǤ���С����饤����Ȥ򳫻Ϥ������ˤ�����Ƥߤ�
-����������
-
-4.19) �ɤΥС������� PostgreSQL �����餻�Ƥ��뤫��Ĵ�٤�ˤϤɤ����ޤ�����
-
-psql ���� SELECT version(); �򥿥��פ��ޤ���
-
-4.20) �顼�������֥������Ȥ�����invalid large obj descriptor ��������ޤ���
-���ʤ��Ǥ��礦����
-
-�顼�������֥����������򤹤�Ȥ��ϡ������BEGIN WORK��COMMIT���դ���ɬ�פ���
-��ޤ������ʤ����lo_open ... lo_close��Ϥ��߹��ߤޤ���
-
-���ߤϡ�PostgreSQL�Υȥ�󥶥������Υ��ߥåȻ��˥顼�������֥������ȡ��ϥ��
-����Ĥ��뤳�Ȥˤ�ꡢlo_open���ޥ�ɤ���λ����ľ��˶���Ū�˥롼���¹Ԥ��ޤ�
-�����Τ��ᡢ�ǽ�˥ϥ�ɥ���Ф��Ʋ����򤷤褦�Ȥ���ȡ�invalid large obj
-descriptor(�顼�������֥������Ȥε��һҤ�����)�Ȥʤ�ޤ�������ǡ��⤷���ȥ��
-����������Ȥ��Τ�˺���ȡ��ʾ��ʤ��Ȥ�ۤȤ�ɤλ��֡�Ư���Ƥ��������ɤ���
-�顼��å�������Ф��ΤǤ���
-
-�⤷��ODBC�Τ褦�ʥ��饤����ȥ��󥿡��ե������򤪻Ȥ��ʤ顢auto-commit off����
-�ꤹ��ɬ�פ����뤫�⤷��ޤ���
-
-4.21) ���ߤλ��郎�ǥե���ȤȤʤ�褦�ʥ����ϤɤΤ褦�ˤĤ���ޤ�����
-
-CURRENT_TIMESTAMP��Ȥ��ޤ�:
-
+ ������ˤ�äơ��ɤ��餫�ҤȤĤ���������Ǥ��礦��������ϥץ������Υ�
+ ���������������¤���⤯���ꤷ�����֤��䤤��碌�����뤹��褦�ˤ�
+ ��Ǥ��礦�����Υ��ޥ�ɤϸ��ԤΥץ������ȡ����Υ��ޥ�ɤ����餻�����
+ ��������ƤΥ��֥ץ������ˤĤ���Ŭ�Ѥ���ޤ����Хå�����ɤ��ȤƤ�¿
+ ���Υǡ������֤������SQL
+ ���饤����Ȥ����꤬³���Ƥ���ΤǤ���С����饤����Ȥ򳫻Ϥ������ˤ�
+ ����ƤߤƤ���������
+
+ 4.19) �ɤΥС������� PostgreSQL
+ �����餻�Ƥ��뤫��Ĵ�٤�ˤϤɤ����ޤ�����
+
+ psql ���� SELECT version(); �򥿥��פ��ޤ���
+
+ 4.20) �顼�������֥������Ȥ�����invalid large obj descriptor
+ ��������ޤ������ʤ��Ǥ��礦����
+
+ �顼�������֥����������򤹤�Ȥ�ϡ������BEGIN
+ WORK��COMMIT���դ���ɬ�פ�����ޤ������ʤ����lo_open ...
+ lo_close��Ϥ��߹��ߤޤ���
+
+ ���ߤϡ�PostgreSQL�Υȥ�󥶥������Υ��ߥåȻ��˥顼�������֥�������
+ ���ϥ�ɥ���Ĥ��뤳�Ȥˤ�ꡢlo_open���ޥ�ɤ���λ����ľ��˶���Ū�˥
+ 롼���¹Ԥ��ޤ������Τ��ᡢ�ǽ�˥ϥ�ɥ���Ф��Ʋ����򤷤褦�Ȥ���
+ ȡ�invalid large obj descriptor(�顼�������֥������Ȥε�
+ �һҤ�����)�Ȥʤ�ޤ�������ǡ��⤷���ȥ�󥶥�������Ȥ��Τ�˺���
+ ȡ��ʾ��ʤ��Ȥ�ۤȤ�ɤλ��֡�Ư���Ƥ��������ɤ����顼��å�������Ф
+ ��ΤǤ���
+
+ �⤷��ODBC�Τ褦�ʥ��饤����ȥ��󥿡��ե������򤪻Ȥ��ʤ顢auto-commi
+ t off�����ꤹ��ɬ�פ����뤫�⤷��ޤ���
+
+ 4.21) ���ߤλ��郎�ǥե���ȤȤʤ�褦�ʥ����ϤɤΤ褦�ˤĤ���ޤ�����
+
+ CURRENT_TIMESTAMP��Ȥ��ޤ�:
CREATE TABLE test (x int, modtime timestamp DEFAULT CURRENT_TIMESTAMP );
-4.22) �ʤ���IN��Ȥ����䤤��碌���ȤƤ��٤��ΤǤ�����
-
-7.4 ������ΥС������Ǥϡ����䤤��碌�ϡ����䤤��碌�η�̤����䤤��碌
-�γƥ����ˤĤ��ƽ缡�������뤳�Ȥˤ�äơ��������䤤��碌�˷�礵�����롣��
-�䤤��碌���鷺���ʥ��������֤����������䤤��碌�������Υ������֤����ϡ�IN
-���Ǥ��ᤤ�Ǥ���¾���䤤��碌���®������ˤϡ�IN��EXISTS���ִ����ޤ�:
-
+ 4.22) �ʤ���IN��Ȥ����䤤��碌���ȤƤ��٤��ΤǤ�����
+
+ 7.4
+ ������ΥС������Ǥϡ����䤤��碌�ϡ����䤤��碌�η�̤����䤤��
+ �碌�γƥ����ˤĤ��ƽ缡�������뤳�Ȥˤ�äơ��������䤤��碌�˷�礵
+ �����롣
+ ���䤤��碌���鷺���ʥ��������֤����������䤤��碌�������Υ������֤�
+ ���ϡ�IN���Ǥ��ᤤ�Ǥ���¾���䤤��碌���®������ˤϡ�IN��EXISTS��
+ �ִ����ޤ�:
SELECT *
FROM tab
WHERE col IN (SELECT subcol FROM subtab)
-���֤������ơ�
-
+ ���֤�����ơ�
SELECT *
FROM tab
WHERE EXISTS (SELECT subcol FROM subtab WHERE subcol = col)
-�Ȥ��ޤ������줬��ü���ᤤ�Ǥ�����subcol�Ϻ����դ������Ǥ���٤��Ǥ���
-
-�С������7.4�ʹߤǤϡ�IN�ϡ��̾���䤤��碌��Ʊ�ͤ��������줿���祤��ε��Ѥ�
-�ºݤ˻Ȥ���EXISTS��Ȥ����Ȥ򹥤ߤޤ���
-
-4.23) �������(outer join)�ϤɤΤ褦�˼¸����ޤ���?
-
-PostgreSQL �� SQL ɸ�๽ʸ��Ȥ��������(�����������祤��)�򥵥ݡ��Ȥ��ޤ�����
-���� 2�Ĥ����꤬����ޤ���
-
+ �Ȥ��ޤ��� ���줬��ü���ᤤ�Ǥ�����subcol�Ϻ����դ�����Ǥ���٤�
+ �Ǥ���
+
+ �С������7.4�ʹߤǤϡ�IN�ϡ��̾���䤤��碌��Ʊ�ͤ��������줿���祤�
+ �ε��Ѥ�ºݤ˻Ȥ���EXISTS��Ȥ����Ȥ򹥤ߤޤ���
+
+ 4.23) �������(outer join)�ϤɤΤ褦�˼¸����ޤ���?
+
+ PostgreSQL �� SQL
+ ɸ�๽ʸ��Ȥ��������(�����������祤��)�򥵥ݡ��Ȥ��ޤ���������
+ 2�Ĥ����꤬����ޤ���
SELECT *
FROM t1 LEFT OUTER JOIN t2 ON (t1.col = t2.col);
-���뤤��
-
+ ���뤤��
SELECT *
FROM t1 LEFT OUTER JOIN t2 USING (col);
-�����ξ�ħŪ���䤤��碌�Ǥ� t1.col �� t2.col �ȷ�礷�ơ�t1 �η�礵��ʤ���
-������(t2 �Ȱ��פ��ʤ��ä�����)���֤��Ƥ��ޤ���RIGHT ���� t2 �η�礵��ʤ���
-��������ä���Ǥ��礦��FULL ���ϡ����פ��������� t1 �� t2 ����Ϸ�礵��ʤ�
-�ä��������֤��Ǥ��礦��OUTER �Ȥ������դϥ��ץ����� LEFT, RIGHT, �ޤ��� FULL
-�ʤɤη����ꤵ��Ƥ��ޤ����̾����INNER���ȸƤФ�ޤ��������Υ�꡼��
-�Ǥϳ������(outer join)��UNION �� NOT IN ��Ȥäƥ��ߥ�졼�ȤǤ��ޤ������Ȥ�
-�С�tab1 �� tab2 ���礹��Ȥ��ϡ������䤤��碌����ĤΥơ��֥������礷��
-����
-
+ �����ξ�ħŪ���䤤��碌�Ǥ� t1.col �� t2.col �ȷ�礷�ơ�t1
+ �η�礵��ʤ��ä�����(t2 �Ȱ��פ��ʤ��ä�����)���֤��Ƥ��ޤ���RIGHT
+ ���� t2 �η�礵��ʤ��ä�������ä���Ǥ��礦��FULL
+ ���ϡ����פ��������� t1 �� t2
+ ����Ϸ�礵��ʤ��ä��������֤��Ǥ��礦��OUTER
+ �Ȥ������դϥ��ץ����� LEFT, RIGHT, �ޤ��� FULL
+ �ʤɤη����ꤵ��Ƥ��ޤ����̾����INNER���ȸƤФ�ޤ���
+
+ �����Υ�꡼���Ǥϳ������(outer join)��UNION �� NOT IN
+ ��Ȥäƥ��ߥ�졼�ȤǤ�ޤ��� ���Ȥ��С�tab1 �� tab2 ���礹��Ȥ�
+ �ϡ������䤤��碌����ĤΥơ��֥������礷�ޤ���
SELECT tab1.col1, tab2.col2
FROM tab1, tab2
WHERE tab1.col1 = tab2.col1
@@ -1286,48 +1390,57 @@ PostgreSQL �� SQL ɸ�๽ʸ��Ȥ��������(�����������祤��)�򥵥ݡ��Ȥ��ޤ�����
WHERE tab1.col1 NOT IN (SELECT tab2.col1 FROM tab2)
ORDER BY col1
-4.24) ʣ���Υǡ����١�����Ȥ��䤤��碌�ϤɤΤ褦�ˤ���ФǤ��ޤ�����
-
-���ԤΥǡ����١����ʳ��ؤ��䤤��碌��ˡ�Ϥ���ޤ��󡣤Ȥ����Τ�PostgreSQL����
-�����١������ͤΥ����ƥ५���������ɤ߹��ि��ǡ������ˤϡ����Ȥ����Τդ��
-������ˤ������ǡ����١�����ۤ����䤤��碌�򤹤뤹�٤�����ޤ���
-
-contrib/dblink �ϥǡ����١�����(cross-database)���䤤��碌��ؿ��ƽФ��ˤ���
-���ޤ���������󡢥��饤����Ȥ�Ʊ������³���̤Υǡ����١����ؤ�ĥ��ʤ��ƤϤ�
-�餺����̤򥯥饤�����¦�ǥޡ������ʤ��ƤϤʤ�ޤ���
-
-4.25) �ؿ���ʣ���Υ����ޤ��ϥ������֤��ˤϤɤ����ޤ�����
-
-7.3�Ǥϴؿ����顢ʣ���Υ�����ʣ���������ñ���֤��ޤ��� http://
-techdocs.postgresql.org/guides/SetReturningFunctions��
-
-4.26)�ʤ���PL/PgSQL �ؿ����椫�����ơ��֥��μ¤� create/drop ���뤳�Ȥ��Ǥ�
-�ʤ��ΤǤ��礦����
-
-PL/PgSQL �ϴؿ������Ƥ򥭥�å��夷�������Թ��������ѤΤ��ᡢ�⤷ PL/PgSQL �ؿ�
-������ơ��֥�˥�����������ȡ����Υơ��֥�Ϥ��Ȥǥɥ��åפ���ƺ�������ޤ�
-�����ؿ����ƤӸƤӽФ����ȡ�����å��夵��Ƥ��뤽�δؿ������ƤϤޤ��Ť����
-�ơ��֥������Ȥ��ƻؤ��Ƥ��뤫��Ǥ��������ϡ� PL/PgSQL ����� EXECUTE ���
-���ơ��֥륢�������Τ���˻Ȥ����ȤǤ�������ǡ�����䤤��碌��ѡ�����ľ����
-�Ȥˤʤ�Ǥ��礦��
-
-4.27) �ɤΤ褦�ʰŹ沽���ץ��������ѤǤ��ޤ���?
-
- �� contrib/pgcrypto�ˤ�SQL�䤤��碌����ǻȤ�����������ΰŹ沽��ޤߤޤ���
- �� ���饤����Ȥȥ����ФȤδ֤�������Ź沽����ˤϡ������ФǤ�postgresql.conf
- ��ssl���ץ�����true �����ꤷ��pg_hba.conf�ˤ�Ŭ�Ѥ���host���뤤��hostssl
- �ιԤ��ʤ��ƤϤʤ�ޤ��󡣤����ơ����饤����ȤǤ�sslmode��disable�ˤ��Ƥ�
- �ʤ�ޤ��� (PostgreSQL������SSL��³�Τ����ˡ�stunnel �� ssh �����ɥѡ�
- �ƥ����ΰŹ沽ž����Ȥ����Ȥ��ǽ�Ǥ��뤳�Ȥ⵭���Ƥ����ޤ���)
- �� �С������7.3 �Ǥϥǡ����١����桼���Υѥ���ɤ���¸�������˼�ưŪ�˰�
- �沽����ޤ������������ΥС������Ǥ�postgresql.conf���
- PASSWORD_ENCRYPTION��ͭ���ˤ���ɬ�פ�����ޤ���
- �� �����С������餻��Τ˰Ź沽�ե����륷���ƥ��Ȥ����Ȥ�Ǥ��ޤ���
-
+ 4.24) ʣ���Υǡ����١�����Ȥ��䤤��碌�ϤɤΤ褦�ˤ���ФǤ�ޤ�����
+
+ ���ԤΥǡ����١����ʳ��ؤ��䤤��碌��ˡ�Ϥ���ޤ��󡣤Ȥ����Τ�Postgr
+ eSQL���ǡ����١������ͤΥ����ƥ५���������ɤ߹��ि��ǡ������ˤϡ���
+ �Ȥ����Τդ�򤹤�����ˤ������ǡ����١�����ۤ����䤤��碌�򤹤뤹��
+ ������ޤ���
+
+ contrib/dblink
+ �ϥǡ����١�����(cross-database)���䤤��碌��ؿ��ƽФ��ˤ������ޤ�
+ ��������󡢥��饤����Ȥ�Ʊ������³���̤Υǡ����١����ؤ�ĥ��ʤ��Ƥ�
+ �ʤ餺����̤򥯥饤�����¦�ǥޡ������ʤ��ƤϤʤ�ޤ���
+
+ 4.25) �ؿ���ʣ���Υ����ޤ��ϥ������֤��ˤϤɤ����ޤ�����
+
+ 7.3�Ǥϴؿ����顢ʣ���Υ�����ʣ���������ñ���֤��ޤ���
+ http://techdocs.postgresql.org/guides/SetReturningFunctions��
+
+ 4.26)�ʤ���PL/PgSQL �ؿ����椫�����ơ��֥��μ¤� create/drop
+ ���뤳�Ȥ��Ǥ�ʤ��ΤǤ��礦����
+
+ PL/PgSQL �ϴؿ������Ƥ��å��夷�������Թ��������ѤΤ��ᡢ�⤷
+ PL/PgSQL
+ �ؿ�������ơ��֥�˥�����������ȡ����Υơ��֥�Ϥ��Ȥǥɥ��åפ����
+ ��������ޤ������ؿ����ƤӸƤӽФ����ȡ���
+ ��å��夵��Ƥ��뤽�δؿ������ƤϤޤ��Ť�����ơ��֥������Ȥ��ƻؤ�
+ �Ƥ��뤫��Ǥ��������ϡ� PL/PgSQL ����� EXECUTE
+ �����ơ��֥륢�������Τ���˻Ȥ����ȤǤ�������ǡ�����䤤��碌���
+ ������ľ�����Ȥˤʤ�Ǥ��礦��
+
+ 4.27) �ɤΤ褦�ʰŹ沽���ץ��������ѤǤ�ޤ���?
+
+ * contrib/pgcrypto�ˤ�SQL�䤤��碌����ǻȤ�����������ΰŹ沽��ޤ
+ ߤޤ���
+ * ���饤����Ȥȥ����ФȤδ֤�������Ź沽����ˤϡ������ФǤ�postgr
+ esql.conf��ssl���ץ�����true
+ �����ꤷ��pg_hba.conf�ˤ�Ŭ�Ѥ���host���뤤��hostssl�ιԤ��ʤ��Ƥ�
+ �ʤ�ޤ��󡣤����ơ����饤����ȤǤ�sslmode��disable�ˤ��ƤϤʤ��
+ ���� (PostgreSQL������SSL��³�Τ����ˡ�stunnel �� ssh
+ �����ɥѡ��ƥ����ΰŹ沽ž����Ȥ����Ȥ��ǽ�Ǥ��뤳�Ȥⵤ��Ƥ���
+ �ޤ���)
+ * �������7.3
+ �Ǥϥǡ����١����桼���Υѥ���ɤ���¸�������˼�ưŪ�˰Ź沽��
+ ��ޤ���
+ ���������ΥС������Ǥ�postgresql.conf���PASSWORD_ENCRYPTION��
+ ͸��ˤ���ɬ�פ�����ޤ���
+ * �����С������餻��Τ˰Ź沽�ե����륷���ƥ��Ȥ����Ȥ�Ǥ�ޤ���
+
[����
��ץꥱ��������Ϣ�ι��ܤ��ʤ��ʤ�ޤ������������Τ߻Ĥ��Ƥ���ޤ���
- Jan Wieck����ˤ�륫�������ɲ�ǽ�ʥޥ����������졼�ַ��Υ�ץꥱ������� Slony-I
+ Jan Wieck����ˤ�륫�������ɲ�ǽ�ʥޥ����������졼�ַ��Υ�ץꥱ������� Slony-I
http://gborg.postgresql.org/project/slony1/projdisplay.php
�а�ã�פ���ˤ�륳�ͥ������ס��� ������ PGPool
@@ -1340,67 +1453,70 @@ PL/PgSQL �ϴؿ������Ƥ򥭥�å��夷�������Թ��������ѤΤ��ᡢ�⤷ PL/PgSQL �ؿ�
�μ�����Ԥ��ޤ�����
http://www.postgresql.jp/wg/dt/index.html
]
-
-������������������������������������������������������������������������������
-
- PostgreSQL�γ�ĥ�ˤĤ��Ƥμ���
-
-5.1) ��ʬ�ǽ񤤤��桼������ؿ��� psql ����Ǽ¹Ԥ���ȥ���������פ��Ƥ��ޤ���
-�Ϥʤ��Ǥ�����
-
-����Ͽ����ȹͤ����ޤ������ޤ��ǽ�ˡ����������桼������ؿ���ñ�ȤΥƥ��ȥ�
-�������ˤ��ƻ�ƤߤƲ�������
-
-5.2) PostgreSQL �Ѥ˽񤤤�����ä���Ũ�ʿ���������ؿ����󶡤��ƥץ��������Ȥ�
-�׸��������ΤǤ�����
-
-������ιԤʤä���ĥ��pgsql-hackers �᡼��󥰡��ꥹ�Ȥ����äƤ�������������
-�ơ��椯�椯�Ϥ���������ĥ�� contrib/ ���֥ǥ��쥯�ȥ��������뤳�Ȥˤʤ�Ǥ�
-�礦��
-
-5.3) ���ץ���֤� C����δؿ��ϤɤΤ褦�˽񤭤ޤ�����
-
-�С������7.3�ʹߤ�PostgreSQL�Ǥϡ��ơ��֥���֤��ؿ��� C, PL/PgSQL�������� SQL
-�ˤƴ����˥��ݡ��Ȥ��ޤ����ܤ����ϥץ�����ޥ����ɤξ���򸫤Ƥ���������C�����
-���줿ɽ���֤��ؿ������꤬contrib/tablefunc����ˤ���ޤ���
-
-5.4) ���������ե�������ѹ����ޤ������ƥ���ѥ��뤷�Ƥ��Ѳ��������ʤ��ΤϤʤ�
-�Ǥ�����
-
-�����Ĥ��� Makefile �����󥯥롼�ɡ��ե�������Ф���Ŭ�ڤʰ�¸�ط�����äƤ���
-����make clean �򤷤Ƥ���⤦���� make ��Ԥʤ�ʤ��ƤϤʤ�ޤ��󡣤⤷��GCC
-�򤪻Ȥ��Ǥ���� configure �� --enable-depend ���ץ�����Ȥäơ�����ѥ����
-��¸�ط���ưŪ��Ĵ�٤����뤳�Ȥ�Ǥ��ޤ���
-
-������������������������������������������������������������������������������
-
+ _________________________________________________________________
+
+ PostgreSQL�γ�ĥ�ˤĤ��Ƥμ���
+
+ 5.1) ��ʬ�ǽ񤤤��桼������ؿ��� psql
+ ����Ǽ¹Ԥ���ȥ���������פ��Ƥ��ޤ��ΤϤʤ��Ǥ�����
+
+ ����Ͽ����ȹͤ����ޤ������ޤ��ǽ�ˡ����������桼������ؿ���ñ�Ȥ�
+ �ƥ��ȥץ������ˤ��ƻ�ƤߤƲ�������
+
+ 5.2) PostgreSQL
+ �Ѥ˽񤤤�����ä���Ũ�ʿ���������ؿ����󶡤��ƥץ��������Ȥ˹׸��������Τ
+ Ǥ�����
+
+ ������ιԤʤä���ĥ��pgsql-hackers
+ �᡼��󥰡��ꥹ�Ȥ����äƤ��������������ơ��椯�椯�Ϥ���������ĥ��
+ contrib/ ���֥ǥ��쥯�ȥ��������뤳�Ȥˤʤ�Ǥ��礦��
+
+ 5.3) ���ץ���֤� C����δؿ��ϤɤΤ褦�˽�ޤ�����
+
+ �С������7.3�ʹߤ�PostgreSQL�Ǥϡ��ơ��֥���֤��ؿ��� C,
+ PL/PgSQL�������� SQL
+ �ˤƴ����˥��ݡ��Ȥ��ޤ����ܤ����ϥץ�����ޥ����ɤξ���򸫤Ƥ�������
+ ��C��������줿ɽ���֤��ؿ������꤬contrib/tablefunc����ˤ���ޤ���
+
+ 5.4)
+ ���������ե�������ѹ����ޤ������ƥ���ѥ��뤷�Ƥ��Ѳ��������ʤ��ΤϤʤ��
+ Ǥ�����
+
+ �����Ĥ��� Makefile
+ �����󥯥롼�ɡ��ե�������Ф���Ŭ�ڤʰ�¸�ط�����äƤ��ޤ���make
+ clean �򤷤Ƥ���⤦���� make ��Ԥʤ�ʤ��ƤϤʤ�ޤ��󡣤⤷��GCC
+ �򤪻Ȥ��Ǥ���� configure �� --enable-depend
+ ���ץ�����Ȥäơ�����ѥ���˰�¸�ط���ưŪ��Ĵ�٤����뤳�Ȥ�Ǥ�
+ �ޤ���
+ _________________________________________________________________
+
[������
���ܸ��Ǥ�����ˤĤ��Ƥϰʲ����̤�Ǥ���
�ǽ�������: 2005ǯ01��12��
������: ��¼ �� (Jun Kuwamura <juk at PostgreSQL.jp>)
- ����FAQ�������κ����ˤ����궨�Ϥ򤷤Ƥ������ä�����(�ɾΤ�ά�����Ƥ��������ޤ�):
+ ����FAQ�������κ����ˤ����궨�Ϥ򤷤Ƥ������ä�����(�ɾΤ�ά�����Ƥ�������ޤ�):
- ���� ̭(Minoru TANAKA <Tanaka.Minoru at keiken.co.jp>)
+ ���� �(Minoru TANAKA <Tanaka.Minoru at keiken.co.jp>)
�а� ã��(Tatsuo ISHII <t-ishii at sra.co.jp>)
��ƣ �ο�(Tomohito SAITOH <tomos at elelab.nsc.co.jp>)
�Ͼ� ȥ(Hajime BABA <baba at kusastro.kyoto-u.ac.jp>)
���� �칬(Kazuyuki OKAMOTO <kokamoto at itg.hitachi.co.jp>)
���� ����(Shoichi Kosuge <s-kosuge at str.hitachi.co.jp>)
���� ��Ƿ(Yoshiyuki YAMASHITA <dica at eurus.dti.ne.jp>)
- �� ����Ϻ(Sintaro SAKAI <s_sakai at mxn.mesh.ne.jp>)
+ � ����Ϻ(Sintaro SAKAI <s_sakai at mxn.mesh.ne.jp>)
���� ����(Masami OGOSHI <ogochan at zetabits.com>)
���� �ӹ�(Toshiyuki ISHIKAWA <tosiyuki at gol.com>)
- ���� �й�(Shigehiro HONDA <fwif0083 at mb.infoweb.ne.jp>)
+ ���� �й(Shigehiro HONDA <fwif0083 at mb.infoweb.ne.jp>)
���� �����(Jun SESE <sesejun at linet.gr.jp>)
��ë �ѹ�(Hidetaka KAMIYA <hkamiya at catvmics.ne.jp>)
���� ��(Atsushi SUGAWARA <asugawar at f3.dion.ne.jp>)
���� ����(Kaori Inaba <i-kaori at sra.co.jp>)
�а� ã��(Tatsuo Ishii <t-ishii at sra.co.jp>)
- ��Ϥ��ᡢ�ݥ��ȥ��쥹�˴ؤ�������˭�٤����ܸ�ݥ��ȥ��쥹���᡼��󥰥ꥹ�ȡ�
-�����Τ��ä������äƤ��줿 JF(Linux Japanese FAQ Mailing List)�ץ��������ȡ�FreeBSD �ɥ�����ơ������ץ��������ȡ�
+ ��Ϥ��ᡢ�ݥ��ȥ��쥹�˴ؤ���������٤����ܸ�ݥ��ȥ��쥹���᡼��󥰥ꥹ�ȡ�
+�����Τ�ä������äƤ��줿 JF(Linux Japanese FAQ Mailing List)�ץ��������ȡ�FreeBSD �ɥ����ơ������ץ��������ȡ�
����¾��ľ�ܤ��뤤�ϴ���Ū�ˤ�����äƤ��뤹�٤ƤΥ����ץ󥽡������ߥ�˥ƥ����γ�����˴��դ��ޤ���
���ܸ��ǤΤ���ʸ��ϡ��ʲ�����⤿�ɤ�ޤ���
@@ -1410,4 +1526,3 @@ PL/PgSQL �ϴؿ������Ƥ򥭥�å��夷�������Թ��������ѤΤ��ᡢ�⤷ PL/PgSQL �ؿ�
�ʤ������������˴ؤ��뤴�ո���(juk at PostgreSQL.jp)�ޤǤ��󤻲�������
]
-
diff --git a/doc/FAQ_polish b/doc/FAQ_polish
index f98902093c5..b2be9d9bf68 100644
--- a/doc/FAQ_polish
+++ b/doc/FAQ_polish
@@ -165,7 +165,7 @@
PostgreSQL Data Base Management System
- Portions copyright (c) 1996-2002, PostgreSQL Global Development Group
+ 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
@@ -747,8 +747,7 @@
DROP COLUMN. We wczesniejszych wersjach mozesz zrobic tak:
BEGIN;
LOCAL TABLE old_table;
- SELECT ... -- wybierz wszystkie kolumny poza ta jedna kt�rej chcesz sie po
-zbyc
+ SELECT ... -- wybierz wszystkie kolumny poza ta jedna kt�rej chcesz sie pozbyc
INTO TABLE new_table
FROM old_table;
DROP TABLE old_table;
@@ -770,8 +769,7 @@ zbyc
Maksymalny rozmiar dla rzedu? 1.6 TB
Maksymalny rozmiar pola? 1 GB
Maksymalna liczba rzed�w w tabeli? nieograniczona
- Maksymalna liczba kolumn w tabeli? 250-1600 w zalezonosci od typ�w ko
-lumn
+ Maksymalna liczba kolumn w tabeli? 250-1600 w zalezonosci od typ�w kolumn
Makasymalna liczba indeks�w na tabeli? nieograniczona
Oczywiscie "nieograniczony" nie jest prawda tak do konca, istnieja
@@ -807,8 +805,7 @@ lumn
Strona danych w PostgreSQL zajmuje 8192 bajt�w (8 KB), wiec:
8192 bajt�w na strone
- --------------------- = 128 rzed�w na jedna strone w bazie (zaokraglone w
- d�l/)
+ --------------------- = 128 rzed�w na jedna strone w bazie (zaokraglone w d�l/)
64 bajt�w na rzad
100000 rzed�w danych
@@ -858,6 +855,7 @@ lumn
zl/aczen (join). Sekwencyjne przeszukiwanie po kt�rym nastepuje
sortowanie jest zazwyczaj szybsze nie wyszukiwanie za pomoca indeksu
na duzej tabeli.
+
Jakkolwiek LIMIT w pol/aczeniu z ORDER BY czesto bedzie wykorzystywal/
indeksy poniewaz jedynie mal/a czesc z tabeli jest zwracana. W
rzeczywistosci, chociaz MAX() i MIN() nie uzywaja indeks�w, mozliwe
@@ -952,13 +950,10 @@ lumn
Type Nazwa wewnetrzna Uwagi
--------------------------------------------------
-VARCHAR(n) varchar rozmiar okresla maksymalna dl/ugosc, nie ma
-tutaj wypel/niania
-CHAR(n) bpchar wypel/niane pustymi znakami do podanej dl/ug
-osci
+VARCHAR(n) varchar rozmiar okresla maksymalna dl/ugosc, nie matutaj wypel/niania
+CHAR(n) bpchar wypel/niane pustymi znakami do podanej dl/ugosci
TEXT text bez limitu na dl/ugosc l/ancucha
-BYTEA bytea zmiennej dl/ugosci tablica bajt�w (null-byte
- safe)
+BYTEA bytea zmiennej dl/ugosci tablica bajt�w (null-byte safe)
"char" char 1 znak
Jesli bedziesz przegladac katalogi systemowe lub komunikaty o bl/edach
@@ -970,6 +965,7 @@ BYTEA bytea zmiennej dl/ugosci tablica bajt�w (null-byte
zadeklarowany rozmiar. Te typy takze podlegaja kompresji lub moga byc
przechowywane out-of-line jako TOAST, wiec faktyczne zuzycie miejsca
na dysku moze byc mniejsze niz oczekiwane.
+
VARCHAR(n) jest najodpowiedniejszy do przechowywania l/ancuch�w o
r�znej dl/ugosci ale okresla on maksymalna jego dl/ugosc. TEXT jest
najlepszy dla l/ancuch�w o dowolnej dl/ugosci, nie przekraczajacej
@@ -1229,13 +1225,14 @@ SELECT *
4.27) Jakie sa mozliwosci replikacji w PostgreSQL?
- Jest kilka opcji aby stosowac replikacje typu master/slave. Ten typ pozwala
- jedynie masterowi na dokonywanie zmian w bazie danych, a slave moze jedynie
- te zmiany odczytywac. Na stronie
- http://gborg.PostgreSQL.org/genpage?replication_research znajduje sie ich
- lista. Replikacja typu multi-master jest w trakcie prac, opis projektu
- znajduje sie pod adresem:
- http://gborg.PostgreSQL.org/project/pgreplication/projdisplay.php.
+ Jest kilka opcji aby stosowac replikacje typu master/slave. Ten typ
+ pozwala jedynie masterowi na dokonywanie zmian w bazie danych, a slave
+ moze jedynie te zmiany odczytywac. Na stronie
+ http://gborg.PostgreSQL.org/genpage?replication_research znajduje sie
+ ich lista. Replikacja typu multi-master jest w trakcie prac, opis
+ projektu znajduje sie pod adresem:
+ http://gborg.PostgreSQL.org/project/pgreplication/projdisplay.php.
+
4.28) Jakie mozliwosci szyfrowania oferuje PostgreSQL?
* contrib/pgcrypto zawiera wiele funkcji za pomoca, kt�rych mozemy
@@ -1257,22 +1254,26 @@ SELECT *
5.1) Napisal/em wl/asna funkcje. Kiedy uzyje jej w psql, program zrzuca
pamiec (dump core)?
- Problem moze byc spowodowany przez bardzo wiele rzeczy. Spr�buj najpierw
- przetestowac Twoja funkcje w samodzielnie dzial/ajacym programie.
+ Problem moze byc spowodowany przez bardzo wiele rzeczy. Spr�buj
+ najpierw przetestowac Twoja funkcje w samodzielnie dzial/ajacym
+ programie.
+
5.2) Jak moge dodac/zgl/osic nowe typy czy funkcje do PostgreSQL?
- Wyslij Twoje propozycje na liste mailowa pgsql-hackers, wtedy
- prawdopodobnie Tw�j kod znajdzie sie w katalogu contrib/.
+ Wyslij Twoje propozycje na liste mailowa pgsql-hackers, wtedy
+ prawdopodobnie Tw�j kod znajdzie sie w katalogu contrib/.
+
5.3) Jak napisac funkcje C zwracajaca krotke (tuple)?
- W wersjach PostgreSQL od numeru 7.3, funckje zwracajace tabele sa w pelni
- wspierane w C, PL/PgSQL i SQL. Sprawdz w Programmer's Guide aby uzyskac
- wiecej informacji. Przykl/ad funkcji napisanej w C zwracajacej tabele
- zostal/ umieszczony w contrib/tablefunc.
+ W wersjach PostgreSQL od numeru 7.3, funckje zwracajace tabele sa w
+ pelni wspierane w C, PL/PgSQL i SQL. Sprawdz w Programmer's Guide aby
+ uzyskac wiecej informacji. Przykl/ad funkcji napisanej w C zwracajacej
+ tabele zostal/ umieszczony w contrib/tablefunc.
+
5.4) Zmienil/em plik zr�dl/owy. Dlaczego po rekompilacji nie widac zmiany?
- Pliki Makefiles nie maja dorzuconych odpowiednich zaleznosci dla plik�w
- nagl/�wkowych (include files). Wykonaj najpierw make clean, a nastepnie
- ponownie make. Jesli uzywasz GCC mozesz uzyc opcji --enable-depend przy
- wykonywaniu configure aby kompilator m�gl/ okreslic zaleznosci
- samodzielnie.
+ Pliki Makefiles nie maja dorzuconych odpowiednich zaleznosci dla
+ plik�w nagl/�wkowych (include files). Wykonaj najpierw make clean, a
+ nastepnie ponownie make. Jesli uzywasz GCC mozesz uzyc opcji
+ --enable-depend przy wykonywaniu configure aby kompilator m�gl/
+ okreslic zaleznosci samodzielnie.
diff --git a/doc/FAQ_russian b/doc/FAQ_russian
index 2f106f30d22..6089d606137 100644
--- a/doc/FAQ_russian
+++ b/doc/FAQ_russian
@@ -520,11 +520,11 @@
Proizvol'noj stroki?
Dlya polucheniya tol'ko neskol'kih strok, esli vy znaete ih
- kolichestvo na moment vypolneniya SELECT ispol'zujte LIMIT.
- Esli est' kakoj-libo indeks, kotoryj sovpadaet s ORDER BY, to
- vozmozhno, chto ves' zapros vypolnen i ne budet. Esli vy ne znaete
- kolichestva neobhodimyh strok na moment vypolneniya SELECT,
- ispol'zujte kursor i FETCH.
+ kolichestvo na moment vypolneniya SELECT ispol'zujte LIMIT. Esli est'
+ kakoj-libo indeks, kotoryj sovpadaet s ORDER BY, to vozmozhno, chto
+ ves' zapros vypolnen i ne budet. Esli vy ne znaete kolichestva
+ neobhodimyh strok na moment vypolneniya SELECT, ispol'zujte kursor i
+ FETCH.
To SELECT a random row, use:
SELECT col
@@ -821,10 +821,8 @@
TID ispol'zuetsya dlya identifikacii special'nyh fizicheskih zapisej s
blochnymi i offset znacheniyami. TID izmenyaetsya posle togo kak
- stroki v tablice byli izmeneny ili peregruzheny.
-
- TID ispol'zuetsya indeksnymi zapisyami v kachestve ukazatelya na
- fizicheskie zapisi.
+ stroki v tablice byli izmeneny ili peregruzheny. TID ispol'zuetsya
+ indeksnymi zapisyami v kachestve ukazatelya na fizicheskie zapisi.
4.13) Pochemu ya poluchayu oshibku "ERROR: Memory exhausted in
AllocSetAlloc()"?
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.
diff --git a/doc/src/FAQ/FAQ.html b/doc/src/FAQ/FAQ.html
index 295ca20f4ae..32ed55ac000 100644
--- a/doc/src/FAQ/FAQ.html
+++ b/doc/src/FAQ/FAQ.html
@@ -10,7 +10,7 @@
alink="#0000ff">
<H1>Frequently Asked Questions (FAQ) for PostgreSQL</H1>
- <P>Last updated: Thu Feb 24 23:18:31 EST 2005</P>
+ <P>Last updated: Fri Mar 11 16:42:06 EST 2005</P>
<P>Current maintainer: Bruce Momjian (<A href=
@@ -197,7 +197,7 @@
and Win2003. A prepackaged installer is available at <a href=
"http://pgfoundry.org/projects/pginstaller">
http://pgfoundry.org/projects/pginstaller</a>. MSDOS-based versions
- of Windows (Win95, Win98, WinMe) can run PostgreSQL using Cygwin.
+ of Windows (Win95, Win98, WinMe) can run PostgreSQL using Cygwin.</P>
<p>There is also a Novell Netware 6 port at
<a href="http://forge.novell.com">http://forge.novell.com</a>,
@@ -217,14 +217,14 @@
via email. The main web site to subscribe to the email lists is
<a href="http://www.postgresql.org/community/lists/">
http://www.postgresql.org/community/lists/</a>. The <I>general</I>
- or <I>bugs</I> lists are a good place to start.
+ or <I>bugs</I> lists are a good place to start.</P>
<P>The major IRC channel is <I>#postgresql</I> on Freenode
(<I>irc.freenode.net</I>). To connect you can use the Unix
program <CODE>irc -c '#postgresql' "$USER" irc.freenode.net</CODE>
or use any of the other popular IRC clients. A Spanish one also exists
on the same network, (<I>#postgresql-es</I>), and a French one,
- (<I>#postgresqlfr</I>). There is also a PostgreSQL channel on EFNet.
+ (<I>#postgresqlfr</I>). There is also a PostgreSQL channel on EFNet.</P>
<P>A list of commercial support companies is available at <A href=
"http://techdocs.postgresql.org/companies.php">
@@ -482,7 +482,7 @@
<li>Use of Prepared queries</li>
<li>Use of <SMALL>ANALYZE</SMALL> to maintain accurate optimizer
statistics</li>
- <li>Regular use of <SMALL>VACUUM</SMALL> or <I>pg_autovacuum</I>
+ <li>Regular use of <SMALL>VACUUM</SMALL> or <I>pg_autovacuum</I></li>
<li>Dropping of indexes during large data changes</li>
</ul><BR>
<BR>
@@ -609,7 +609,7 @@
<SMALL>SELECT</SMALL> time, use a cursor and
<SMALL>FETCH</SMALL>.</P>
- <P>To <SMALL>SELECT</SMALL> a random row, use:
+ <P>To <SMALL>SELECT</SMALL> a random row, use:</P>
<PRE>
SELECT col
FROM tab
@@ -643,7 +643,7 @@
<H4><A name="4.3">4.3</A>) How do you change a column's data type?</H4>
<P>Changing the data type of a column can be done easily in 8.0
- and later with <SMALL>ALTER TABLE ALTER COLUMN TYPE</SMALL>.
+ and later with <SMALL>ALTER TABLE ALTER COLUMN TYPE</SMALL>.</P>
<P>In earlier releases, do this:</P>
<PRE>
@@ -661,7 +661,7 @@
<P>These are the limits:</P>
<BLOCKQUOTE>
-<TABLE BORDER=1>
+<TABLE >
<TR><TD>Maximum size for a database?</TD><TD>unlimited (32 TB databases
exist)</TD></TR>
<TR><TD>Maximum size for a table?</TD><TD>32 TB</TD></TR>
@@ -731,7 +731,7 @@ table?</TD><TD>unlimited</TD></TR>
used if the table is larger than a minimum size, and the query
selects only a small percentage of the rows in the table. This is
because the random disk access caused by an index scan can be
- slower than a straight read through the table, or sequential scan.
+ slower than a straight read through the table, or sequential scan. </P>
<P>To determine if an index should be used, PostgreSQL must have
statistics about the table. These statistics are collected using
@@ -843,7 +843,7 @@ table?</TD><TD>unlimited</TD></TR>
<H4><A name="4.10">4.10</A>) What is the difference between the
various character types?</H4>
<BLOCKQUOTE>
-<TABLE BORDER=1>
+<TABLE >
<TR><TH>Type</TH><TH>Internal Name</TH><TH>Notes</TH></TR>
<TR><TD>VARCHAR(n)</TD><TD>varchar</TD><TD>size specifies maximum
length, no padding</TD></TR>
@@ -1057,7 +1057,7 @@ length</TD></TR>
<P>It is easy using set-returning functions,
<a href="http://techdocs.postgresql.org/guides/SetReturningFunctions">
- http://techdocs.postgresql.org/guides/SetReturningFunctions</a>.
+ http://techdocs.postgresql.org/guides/SetReturningFunctions</a></P>.
<H4><A name="4.20">4.20</A>) Why do I get "relation with OID #####
does not exist" errors when accessing temporary tables in PL/PgSQL
@@ -1082,7 +1082,7 @@ length</TD></TR>
<I>pg_hba.conf</I>, and the client <I>sslmode</I> must not be
<I>disable.</I> (Note that it is also possible to use a third-party
encrypted transport, such as stunnel or ssh, rather than PostgreSQL's
- native SSL connections.)
+ native SSL connections.)</LI>
<LI>Database user passwords are automatically encrypted when stored in
the system tables.</LI>
<LI>The server can run using an encrypted file system.</LI>
diff --git a/doc/src/FAQ/FAQ_DEV.html b/doc/src/FAQ/FAQ_DEV.html
index 1098913c0aa..76872983670 100644
--- a/doc/src/FAQ/FAQ_DEV.html
+++ b/doc/src/FAQ/FAQ_DEV.html
@@ -13,7 +13,7 @@
<H1>Developer's Frequently Asked Questions (FAQ) for
PostgreSQL</H1>
- <P>Last updated: Fri Mar 11 08:09:23 EST 2005</P>
+ <P>Last updated: Fri Mar 11 16:43:05 EST 2005</P>
<P>Current maintainer: Bruce Momjian (<A href=
@@ -26,9 +26,7 @@
<BR>
- <CENTER>
<H2>General Questions</H2>
- </CENTER>
<A href="#1.1">1.1</A>) How do I get involved in PostgreSQL
development?<BR>
<A href="#1.2">1.2</A>) What development environment is required
@@ -59,9 +57,7 @@
site development?<BR>
- <CENTER>
<H2>Technical Questions</H2>
- </CENTER>
<A href="#2.1">2.1</A>) How do I efficiently access information in
tables from the backend code?<BR>
<A href="#2.2">2.2</A>) Why are table, column, type, function,
@@ -152,7 +148,7 @@
http://momjian.postgresql.org/cgi-bin/pgpatches</a>, and
those that are being kept for the next release,
<a href="http://momjian.postgresql.org/cgi-bin/pgpatches2">
- http://momjian.postgresql.org/cgi-bin/pgpatches2</a>.
+ http://momjian.postgresql.org/cgi-bin/pgpatches2</a>.</P>
<H3><A name="1.5">1.5</A>) Where can I learn more about the
code?</H3>
@@ -703,9 +699,7 @@
href=
"http://xzilla.postgresql.org/todo">http://xzilla.postgresql.org/todo</A></P>
- <CENTER>
<H2>Technical Questions</H2>
- </CENTER>
<H3><A name="2.1">2.1</A>) How do I efficiently access information
in tables from the backend code?</H3>
diff --git a/doc/src/FAQ/FAQ_MINGW.html b/doc/src/FAQ/FAQ_MINGW.html
index 924d20ef4d8..2f8bfc4ced6 100644
--- a/doc/src/FAQ/FAQ_MINGW.html
+++ b/doc/src/FAQ/FAQ_MINGW.html
@@ -71,8 +71,6 @@ The mailing list for discussion is
<i>[email protected]</i>. You can subscribe by sending
an email body containing the word <i>subscribe</i> to <i><a
href="mailto:[email protected]">[email protected]</a></i>.<br>
-<ul>
-</ul>
<h2>Resources</h2>
There are several resources that helped us complete this port:<br>
<ul>
diff --git a/doc/src/FAQ/FAQ_brazilian.html b/doc/src/FAQ/FAQ_brazilian.html
index a07ffbdf9c1..ad123d5bee9 100644
--- a/doc/src/FAQ/FAQ_brazilian.html
+++ b/doc/src/FAQ/FAQ_brazilian.html
@@ -17,7 +17,7 @@
</P>
<P>Traduzido por: Euler Taveira de Oliveira (<A href=
<P>A vers&atilde;o mais recente desse documento pode ser vista em <A href=
"http://www.postgresql.org/files/documentation/faqs/FAQ.html">
@@ -202,14 +202,14 @@
baseados no NT tais como Win2000, WinXP e Win2003. Um instalador
est&aacute; dispon&iacute;vel em <a href=
"http://pgfoundry.org/projects/pginstaller">
- http://pgfoundry.org/projects/pginstaller</a> Vers�es do Windows
- baseados no MSDOS (Win95, Win98, WinMe) podem executar o PostgreSQL utilizando o Cygwin.
+ http://pgfoundry.org/projects/pginstaller</a> Vers&otilde;es do Windows
+ baseados no MSDOS (Win95, Win98, WinMe) podem executar o PostgreSQL utilizando o Cygwin.</P>
<P>H&aacute; tamb&eacute;m um porte para Novell Netware 6 em
<A href="http://forge.novell.com">http://forge.novell.com</A>
- e uma vers�o para OS/2 (eComStation) em <a href=
- "http://hobbes.nmsu.edu/cgi-bin/h-search?sh=1&button=Search&key=postgreSQL&stype=all&sort=type&dir=%2F">
- http://hobbes.nmsu.edu/cgi-bin/h-search?sh=1&button=Search&key=postgreSQL&stype=all&sort=type&dir=%2F</a>.</P>
+ e uma vers&atilde;o para OS/2 (eComStation) em <a href=
+ "http://hobbes.nmsu.edu/cgi-bin/h-search?sh=1&amp;button=Search&amp;key=postgreSQL&amp;stype=all&amp;sort=type&amp;dir=%2F">
+ http://hobbes.nmsu.edu/cgi-bin/h-search?sh=1&amp;button=Search&amp;key=postgreSQL&amp;stype=all&amp;sort=type&amp;dir=%2F</a>.</P>
<H4><A name="1.5">1.5</A>) Onde eu posso conseguir o PostgreSQL?</H4>
@@ -253,7 +253,7 @@ H&aacute; tamb&eacute;m uma lista de discuss&atilde;o dos desenvolvedores dispon
<P>Outras listas de discuss&otilde;es e informa&ccedil;&otilde;es sobre o PostgreSQL podem ser encontradas na homepage do PostgreSQL em:</P>
<BLOCKQUOTE>
- <A href="http://www.PostgreSQL.org">http://www.PostgreSQL.org</A>
+ <P><A href="http://www.PostgreSQL.org">http://www.PostgreSQL.org</A></P>
</BLOCKQUOTE>
<P>O principal canal de IRC &eacute; o <I>#postgresql</I> na Freenode (<I>irc.freenode.net</I>). Para se conectar voc&ecirc; pode utilizar o comando Unix <code>irc -c '#postgresql' "$USER" irc.freenode.net</code> ou utilizar qualquer outro cliente de IRC. Um canal hisp&acirc;nico (<I>#postgresql-es</I>) e um franc&ecirc;s (<I>#postgresqlfr</I>) tamb&eacute;m existem na mesma rede. H&aacute; tamb&eacute;m um canal PostgreSQL na EFNet.</P>
@@ -499,9 +499,9 @@ H&aacute; tamb&eacute;m uma lista de discuss&atilde;o dos desenvolvedores dispon
<P>Se o <I>postmaster</I> n&atilde;o est&aacute; sendo executado, voc&ecirc; pode executar o n&uacute;cleo do <I>postgres</I> a partir da linha de comando, e digitar a sua senten&ccedil;a <SMALL>SQL</SMALL> diretamente. Isso &eacute; recomendado <B>somente</B> para fins de depura&ccedil;&atilde;o. Note que uma nova linha termina a consulta, e n&atilde;o um ponto-e-v&iacute;rgula. Se voc&ecirc; compilou com s&iacute;mbolos de depura&ccedil;&atilde;o, voc&ecirc; pode utilizar um depurador para ver o que est&aacute; acontecendo. Como o n&uacute;cleo (backend) n&atilde;o foi iniciado a partir do <I>postmaster</I>, ele n&atilde;o est&aacute; executando em um ambiente id&ecirc;ntico e problemas de itera&ccedil;&atilde;o com o n&uacute;cleo/travamento n&atilde;o podem ser reproduzidos.</P>
-<P>Se o <i>postmaster</i> est&aacute; sendo executado, inicie o <i>psql</i> em uma janela, e ent&atilde;o encontre o <small>PID</small> do processo <i>postgres</i> utilizado pelo <i>psql</i> utilizando <pre>SELECT pg_backend_pid()</pre>. Utilize um depurador para anexar ao <small>PID</small> do <i>postgres</i>. Voc&ecirc; pode definir pontos de parada (<i>breakpoints</i>) no depurador e digitar consultas no <i>psql</i>. Se voc&ecirc; est&aacute; depurando a inicializa&ccedil;&atilde;o do <i>postgres</i>, voc&ecirc; pode definir PGOPTIONS="-W n" e ent&atilde;o iniciar o <i>psql</i>. Isto retardar&aacute; a inicializa&ccedil;&atilde;o por <i>n</i> segundos ent&atilde;o voc&ecirc; pode anexar o depurador ao processo, definir quaisquer pontos de parada e continuar pela sequ&ecirc;ncia de inicializa&ccedil;&atilde;o.</p>
+<P>Se o <i>postmaster</i> est&aacute; sendo executado, inicie o <i>psql</i> em uma janela, e ent&atilde;o encontre o <small>PID</small> do processo <i>postgres</i> utilizado pelo <i>psql</i> utilizando <code>SELECT pg_backend_pid()</code>. Utilize um depurador para anexar ao <small>PID</small> do <i>postgres</i>. Voc&ecirc; pode definir pontos de parada (<i>breakpoints</i>) no depurador e digitar consultas no <i>psql</i>. Se voc&ecirc; est&aacute; depurando a inicializa&ccedil;&atilde;o do <i>postgres</i>, voc&ecirc; pode definir PGOPTIONS="-W n" e ent&atilde;o iniciar o <i>psql</i>. Isto retardar&aacute; a inicializa&ccedil;&atilde;o por <i>n</i> segundos ent&atilde;o voc&ecirc; pode anexar o depurador ao processo, definir quaisquer pontos de parada e continuar pela sequ&ecirc;ncia de inicializa&ccedil;&atilde;o.</p>
-<P>H&aacute; v&aacute;rias vari&aacute;veis de configura&ccedil;&atilde;o do servidor <pre>log_*</pre> que habilitam a exibi&ccedil;&atilde;o de estat&iacute;sticas que podem ser muito &uacute;teis para depura&ccedil;&atilde;o e medidas de performance.</P>
+<P>H&aacute; v&aacute;rias vari&aacute;veis de configura&ccedil;&atilde;o do servidor <code>log_*</code> que habilitam a exibi&ccedil;&atilde;o de estat&iacute;sticas que podem ser muito &uacute;teis para depura&ccedil;&atilde;o e medidas de performance.</P>
<P>Voc&ecirc; tamb&eacute;m pode compilar com perfil para ver que fun&ccedil;&otilde;es est&atilde;o demandando tempo de execu&ccedil;&atilde;o. Os arquivo de perfil do n&uacute;cleo (backend) ser&atilde;o colocados no diret&oacute;rio <I>pgsql/data/base/dbname</I>. O arquivo de perfil do cliente ser&aacute; colocado no diret&oacute;rio atual do cliente. O Linux requer uma compila&ccedil;&atilde;o com <I>-DLINUX_PROFILE</I> para cria&ccedil;&atilde;o dos perfis.</P>
@@ -526,7 +526,7 @@ H&aacute; tamb&eacute;m uma lista de discuss&atilde;o dos desenvolvedores dispon
<H4><A name="3.11">3.11</A>) Que tipo de hardware eu devo usar?</H4>
- <P>Por causa do hardware de PC ser em sua maioria compat&iacute;vel, pessoas tendem a acreditar que todos os hardwares de PC s�o de mesma qualidade. N�o &eacute; verdade. ECC RAM, SCSI e placas m&atilde;e de qualidade s&atilde;o mais confi&aacute;veis e t&ecirc;m uma melhor performance do que hardwares mais baratos. O PostgreSQL executar&aacute; em quase todo hardware, mas se a confiabilidade e a performance forem importantes &eacute; prudente pesquisar sobre as op&ccedil;&otilde;es de hardware. Nossas listas de discuss&atilde;o podem ser usadas para discutir op&ccedil;&otilde;es de hardware e dilemas.</P>
+ <P>Por causa do hardware de PC ser em sua maioria compat&iacute;vel, pessoas tendem a acreditar que todos os hardwares de PC satilde;o de mesma qualidade. Natilde;o &eacute; verdade. ECC RAM, SCSI e placas m&atilde;e de qualidade s&atilde;o mais confi&aacute;veis e t&ecirc;m uma melhor performance do que hardwares mais baratos. O PostgreSQL executar&aacute; em quase todo hardware, mas se a confiabilidade e a performance forem importantes &eacute; prudente pesquisar sobre as op&ccedil;&otilde;es de hardware. Nossas listas de discuss&atilde;o podem ser usadas para discutir op&ccedil;&otilde;es de hardware e dilemas.</P>
<HR>
@@ -543,7 +543,7 @@ H&aacute; tamb&eacute;m uma lista de discuss&atilde;o dos desenvolvedores dispon
<P>Toda a consulta tem que ser avaliada, mesmo se voc&ecirc; s&oacute; quer os primeiros registros. Considere utilizar uma consulta que tenha um <SMALL>ORDER BY</SMALL>. Se h&aacute; um &iacute;ndice que combina com o <SMALL>ORDER BY</SMALL>, o PostgreSQL pode ser capaz de avaliar somente os primeiros registros requisitados, ou toda consulta tem que ser avaliada at&eacute; que os registros desejados tenham sido gerados.</P>
- <P>Para obter um registro rand&ocirc;mico, utilize:
+ <P>Para obter um registro rand&ocirc;mico, utilize:</P>
<PRE>
SELECT col
FROM tab
@@ -639,7 +639,7 @@ N&uacute;mero m&aacute;ximo de &iacute;ndices em uma tabela? ilimitado
utilizados se uma tabela &eacute; maior do que o tamanho m&iacute;nimo e uma consulta
seleciona somente uma porcentagem pequena de registros de uma tabela. Isto porque
o acesso rand&ocirc;mico ao disco causado por uma busca por &iacute;ndice pode ser
- mais lento do que uma leitura ao longo da tabela ou uma busca sequencial.
+ mais lento do que uma leitura ao longo da tabela ou uma busca sequencial.</p>
<P>Para determinar se um &iacute;ndice pode ser utilizado, o PostgreSQL deve ter
estat&iacute;sticas sobre a tabela. Estas estat&iacute;sticas s&atilde;o coletadas utilizando
@@ -686,11 +686,10 @@ N&uacute;mero m&aacute;ximo de &iacute;ndices em uma tabela? ilimitado
<LI>A localidade padr&atilde;o <I>C</I> deve ser utilizada durante o
<i>initdb</i> porque n&atilde;o &eacute; poss&iacute;vel saber o pr&oacute;ximo/maior caracter
em uma localidade que n&atilde;o seja a C. Voc&ecirc; pode criar um &iacute;ndice
- especial <PRE>text_pattern_ops</PRE> para tais casos que funcionam somente para
- indexa&ccedil;&atilde;o utilizando <PRE>LIKE</PRE>.
+ especial <tt>text_pattern_ops</tt> para tais casos que funcionam somente para
+ indexa&ccedil;&atilde;o utilizando <tt>LIKE</tt>.
</LI>
</UL>
- <P>
<P>Em vers&otilde;es anteriores a 8.0, &iacute;ndices frequentemente n&atilde;o podiam ser usados a menos que os tipos de dados correspodessem aos tipos da coluna do &iacute;ndice. Isto &eacute; particularmente verdadeiro para &iacute;ndices de coluna int2, int8 e numeric.</P>
@@ -922,14 +921,15 @@ Veja a p&aacute;gina sobre <I>create_sequence</I> no manual para mais informa&cc
FROM tab
WHERE col IN (SELECT subcol FROM subtab);
</PRE>
- por:
+<p>por:</p>
<PRE> SELECT *
FROM tab
WHERE EXISTS (SELECT subcol FROM subtab WHERE subcol = col);
</PRE>
-
-Para isto ser r&aacute;pido, <CODE>subcol</CODE> deve ser uma coluna indexada. <P>A partir da vers&atilde;o 7.4, <CODE>IN</CODE> utiliza a mesma t&eacute;cnica de agrupamento do que consultas normais, e &eacute; recomendado utilizar <CODE>EXISTS</CODE>.
-
+<p>
+Para isto ser r&aacute;pido, <CODE>subcol</CODE> deve ser uma coluna indexada.</P>
+<P>A partir da vers&atilde;o 7.4, <CODE>IN</CODE> utiliza a mesma t&eacute;cnica de agrupamento do que consultas normais, e &eacute; recomendado utilizar <CODE>EXISTS</CODE>.
+</p>
<H4><A name="4.23">4.23</A>) Como eu fa&ccedil;o uma jun&ccedil;&atilde;o externa (outer join)?</H4>
<P>PostgreSQL suporta jun&ccedil;&otilde;es externas utilizando a sintaxe padr&atilde;o do SQL. Aqui temos dois exemplos:</P>
@@ -965,7 +965,7 @@ Para isto ser r&aacute;pido, <CODE>subcol</CODE> deve ser uma coluna indexada. <
<H4><A name="4.25">4.25</A>) Como eu retorno m&uacute;ltiplos registros ou colunas de uma fun&ccedil;&atilde;o?</H4>
- <P>No 7.3, voc&ecirc; pode facilmente retornar m&uacute;ltiplos registros ou colunas de uma fun&ccedil;&atilde;o, <A href="http://techdocs.postgresql.org/guides/SetReturningFunctions">http://techdocs.postgresql.org/guides/SetReturningFunctions</A>.
+ <P>No 7.3, voc&ecirc; pode facilmente retornar m&uacute;ltiplos registros ou colunas de uma fun&ccedil;&atilde;o, <A href="http://techdocs.postgresql.org/guides/SetReturningFunctions">http://techdocs.postgresql.org/guides/SetReturningFunctions</A>.</P>
<H4><A name="4.26">4.26</A>) Por que eu n&atilde;o posso confiar na cria&ccedil;&atilde;o/remo&ccedil;&atilde;o de tabelas tempor&aacute;rias em fun&ccedil;&otilde;es PL/PgSQL?</H4>
<P>PL/PgSQL armazena o conte&uacute;do da fun&ccedil;&atilde;o, e o efeito indesejado &eacute; que se uma fun&ccedil;&atilde;o PL/PgSQL acessa uma tabela tempor&aacute;ria, e aquela tabela &eacute; removida e criada novamente, e a fun&ccedil;&atilde;o &eacute; chamada novamente, a fun&ccedil;&atilde;o ir&aacute; falhar porque o conte&uacute;do armazenado da fun&ccedil;&atilde;o ainda apontar&aacute; para a tabela tempor&aacute;ria antiga. A solu&ccedil;&atilde;o &eacute; utilizar o <SMALL>EXECUTE</SMALL> para acesso a tabelas tempor&aacute;rias no PL/PgSQL. Isto ir&aacute; fazer com que a consulta seja avaliada toda vez.</P>
@@ -973,7 +973,7 @@ Para isto ser r&aacute;pido, <CODE>subcol</CODE> deve ser uma coluna indexada. <
<H4><A name="4.27">4.27</A>) Que op&ccedil;&otilde;es para encripta&ccedil;&atilde;o est&atilde;o dispon&iacute;veis?</H4>
<UL>
<LI>No <I>contrib/pgcrypto</I> cont&eacute;m muitas fun&ccedil;&otilde;es de encripta&ccedil;&atilde;o para serem utilizados em consultas <SMALL>SQL</SMALL>.</li>
- <LI>Para encriptar a transmiss&atilde;o do cliente ao servidor, o servidor deve ter a op&ccedil;&atilde;o <I>ssl</I> definida como <I>true</I> no <I>postgresql.conf</I>, e um registro <I>host</I> ou <I>hostssl</I> deve existir no <I>pg_hba.conf</I>, e o <I>sslmode</I> no cliente n&atilde;o deve estar <I>disable</I>. (Note que tamb&eacute;m &eacute; poss&iacute;vel utilizar outros esquemas de transporte encriptado, tais como stunnel ou ssh, ao inv&eacute;s da conex&atilde;o SSL nativa do PostgreSQL.)
+ <LI>Para encriptar a transmiss&atilde;o do cliente ao servidor, o servidor deve ter a op&ccedil;&atilde;o <I>ssl</I> definida como <I>true</I> no <I>postgresql.conf</I>, e um registro <I>host</I> ou <I>hostssl</I> deve existir no <I>pg_hba.conf</I>, e o <I>sslmode</I> no cliente n&atilde;o deve estar <I>disable</I>. (Note que tamb&eacute;m &eacute; poss&iacute;vel utilizar outros esquemas de transporte encriptado, tais como stunnel ou ssh, ao inv&eacute;s da conex&atilde;o SSL nativa do PostgreSQL.)</LI>
<LI>Senhas dos usu&aacute;rios do banco de dados s&atilde;o automaticamente encriptadas quando armazenadas na vers&atilde;o 7.3. Em vers&otilde;es anteriores, voc&ecirc; deve habilitar a op&ccedil;&atilde;o <I>PASSWORD_ENCRYPTION</I> no <I>postgresql.conf</I>.</li>
<li>O servidor pode executar utilizando um sistema de arquivos encriptado.</li>
</UL>
diff --git a/doc/src/FAQ/FAQ_czech.html b/doc/src/FAQ/FAQ_czech.html
index cb91c8eb90e..05079c79767 100644
--- a/doc/src/FAQ/FAQ_czech.html
+++ b/doc/src/FAQ/FAQ_czech.html
@@ -129,7 +129,7 @@
<H2 align="center">Obecn� ot�zky</H2>
- <H4><A name="1.1">1.1</A>) Co je PostgreSQL? Jak se vyslovuje?</H2>
+ <H4><A name="1.1">1.1</A>) Co je PostgreSQL? Jak se vyslovuje?</H4>
<P>PostgreSQL se vyslovuje <I>Post-Gres-Q-L</I>. Zvukov� z�znam je
dostupn� na adrese <A href="http://www.postgresql.org/postgresql.mp3"></A>.</P>
@@ -206,18 +206,18 @@
Win32 knihovny <I>libpq</I> a <I>psql</I>. K datab�zi PostgerSQL lze p�istupovat skrze
rozhran� <SMALL>ODBC</SMALL>.</P>
- <P><STRONG>Server</STRONG><P>
+ <P><STRONG>Server</STRONG></P>
<P>Server m��e b�t na WindowsNT a Win2k provozov�n pouze s knihovnou
Cygwin, Cygnus Unix/NT porting library. V�ce <I>pgsql/doc/FAQ_MSWIN</I> v
distribuci nebo MS Windows FAQ na adrese
- <A href="http://www.PostgreSQL.org/docs/faqs/text/FAQ_MSWIN">http://www.PostgreSQL.org/docs/faqs/text/FAQ_MSWIN</A>.
+ <A href="http://www.PostgreSQL.org/docs/faqs/text/FAQ_MSWIN">http://www.PostgreSQL.org/docs/faqs/text/FAQ_MSWIN</A>.</P>
<P>Na nativn�m portu pro MS Win NT/2000/XP se pracuje. Dal�� informace
o aktu�ln�m stavu PostgreSQL pro Windows naleznet na adrese
<A href="http://techdocs.postgresql.org/guides/Windows">http://techdocs.postgresql.org/guides/Windows</A> a
<A href="http://momjian.postgresql.org/main/writings/pgsql/win32.html">
- http://momjian.postgresql.org/main/writings/pgsql/win32.html</A>.
+ http://momjian.postgresql.org/main/writings/pgsql/win32.html</A>.</P>
<P>Existuj�c� port pro Novell Netware 6 naleznete na
<A href="http://forge.novell.com">http://forge.novell.com</A>.</P>
@@ -238,7 +238,7 @@
subscribe
end
</PRE>
- na adresu <A href="mailto:[email protected]">
+<P>na adresu <A href="mailto:[email protected]">
<P>M��ete si vy��dat denn� p�ehled (diggest), kter� m� zhruba 30K denn�
@@ -254,7 +254,7 @@
<P>Seznam dal��ch konferenc� naleznete na str�nk�ch PostgreSQL:</P>
<BLOCKQUOTE>
- <A href="http://www.postgresql.org">http://www.postgresql.org</A>
+ <P><A href="http://www.postgresql.org">http://www.postgresql.org</A></P>
</BLOCKQUOTE>
<H4><A name="1.7">1.7</A>) Jak� je posledn� verze?</H4>
@@ -315,7 +315,7 @@
<P>Nejd��ve si st�hn�te nejnov�j�� zdroje a p�e�t�te si v�voj��skou
dokumentaci na na�em webu nebo v distribuci. Pak se p�ihla�te do
- konferenc� <I>pgsql-hackers</I> a <P>pgsql-patches</I>. Kvalitn� z�platy pos�lejte do
+ konferenc� <I>pgsql-hackers</I> a <I>pgsql-patches</I>. Kvalitn� z�platy pos�lejte do
pgsql-patches.</P>
<P>Pr�vo commit m� v <SMALL>CVS</SMALL> archivu asi t�in�cti lid�. Ka�d� z nich poslal
@@ -341,7 +341,7 @@
<SMALL>DBMS</SMALL>, nap�. transakce, vno�en� dotazy, spou�t�, pohledy, kontrolu
referen�n� integrity a sofistikovan� zamyk�n�. Podporuje n�kter�
vlastnosti, kter� tyto syst�my nemaj�, u�ivatelem definovan� typy,
- d�di�nost, pravidla, MVCC redukuj�c� zamyk�n�.</BR></BR></DD>
+ d�di�nost, pravidla, MVCC redukuj�c� zamyk�n�.<BR><BR></DD>
<DT><B>V�kon</B></DT>
<DD>V�konnostn� je na tom PostgreSQL podobn� jako dal�� komer�n� ale
@@ -363,7 +363,7 @@
k�d s minimem chyb. Ka�d� verze je v�ce ne� m�s�c v beta testov�n�,
a na�e historie verz� ukazuje, �e m��eme nab�dnout stabiln�, solidn�
verze, kter� jsou p�ipraveny pro re�ln� nasazen�. V t�to oblasti
- jsme srovnateln� s dal��mi datab�zemi.</BR></BR></DD>
+ jsme srovnateln� s dal��mi datab�zemi.<BR><BR></DD>
<DT><B>Podpora</B></DT>
<DD>Na na�� mailov� konferenci m��ete kontaktovat velkou skupinu
@@ -375,7 +375,7 @@
kte�� vy�aduj� podporu ke konkr�tn�m p��pad�m, existuje placen�
podpora (<A href="#1.6">FAQ sekce 1.6</A>).<BR><BR></DD>
- <DT><B>Cena</B><DT>
+ <DT><B>Cena</B></DT>
<DD>PosgreSQL lze voln� pou��vat pro nekomer�n� i komer�n� pou�it�.
M��ete do sv�ch produkt� p�idat n� k�d bez omezen�, respektive
v souladu s podm�nkami na�� licen�n� smlouvy (v duchu BSD licence).<BR>
@@ -553,7 +553,7 @@
nap��klad:</P>
<PRE>
cd /usr/local/pgsql
- ./bin/postmaster > server.log 2>&1 &
+ ./bin/postmaster > server.log 2>&amp;1 &amp;
</PRE>
<P>T�m se vytvo�� log v adres��i PostgreSQL, Tento soubor obsahuje u�ite�n�
informace o probl�mech a chyb�ch vyskytl�ch se na serveru. Postmaster m�
@@ -773,7 +773,7 @@
<P>Jinak je tomu v p��pad� pou�it� <SMALL>LIMIT</SMALL> a <SMALL>ORDER BY</SMALL>, p�i kter�m se v�t�inou
index pou�ije, v�sledkem je pouze mal� ��st tabulky. Funkce MAX() a
- MIN() nepou��vaj� indexy, ale je mo�n� tut� hodnotu z�skat:
+ MIN() nepou��vaj� indexy, ale je mo�n� tut� hodnotu z�skat:</P>
<PRE>
SELECT col
FROM tab
@@ -791,7 +791,7 @@
<UL>
<LI>vzor <SMALL>LIKE</SMALL> nesm� za��nat <I>%</I></LI>
<LI><I>~</I> regul�rn� v�raz mus� za��nat <I>^</I></LI>
- </UL>
+ </UL></LI>
<LI>vzor nesm� za��nat intervalem, nap�. [a-e]</LI>
<LI>vyhled�van�, kter� nen� Case sensitiv jako je <SMALL>ILIKE</SMALL> nebo <I>~*</I>
nepou��v� indexy. M��ete ale pou��t funkcion�ln� indexy, kter� jsou
@@ -926,7 +926,7 @@ BYTEA bytea pole byt� (bezpe�n� lze ulo�it i znak NULL)
<P>Kone�n� m��ete pou��t <SMALL>OID</SMALL> hodnotu vr�cenou p��kazem <SMALL>INSERT</SMALL>, ale to je
pravd�podobn� nejm�n� p�enositeln� �e�en�. V Perlu p�i pou�it� DBI
modulu Edmunda Mergleho DBD:Pg oid hodnotu z�sk�me <I>$sth->{pg_oid_status}</I>
- po ka�d�m <I>$sth->execute()</I>.
+ po ka�d�m <I>$sth->execute()</I>.</P>
<H4><A name="4.15.3">4.15.3</A>) Nepovede <I>currval()</I> a <I>nextval()</I> k rozhozen�
podm�nek p�i soub�hu s jin�mi u�ivateli?</H4>
@@ -986,7 +986,7 @@ BYTEA bytea pole byt� (bezpe�n� lze ulo�it i znak NULL)
<LI> p�id�n�, vkl�d�n� (append, insert)</LI>
<LI> OID, serial value (OID, serial value)</LI>
<LI> portal, kurzor (portal, cursor)</LI>
- <LI> range variable, jm�no tabulky, alias tabulky (range</LI>
+ <LI> range variable, jm�no tabulky, alias tabulky (range
variable, table name, table alias)</LI>
</UL>
@@ -1038,13 +1038,13 @@ CREATE TABLE test (x int, modtime timestamp DEFAULT CURRENT_TIMESTAMP );
<P>D��v�j�� verze (p�ed 7.4) spojovali vno�en� dotazy k vn�j��m sekven�n�m
�ten�m v�sledku poddotazu pro ka�d� ��dek vn�j��ho dotazu. Pokud poddotaz
vr�til n�kolik m�lo ��dk� <SMALL>IN</SMALL> bylo rychl�. Pro ostatn� p��pady je vhodn�
- nahradit <SMALL>IN</SMALL> <SMALL>EXISTS</SMALL>:
+ nahradit <SMALL>IN</SMALL> <SMALL>EXISTS</SMALL>:</P>
<PRE>
SELECT *
FROM tab
WHERE col IN (SELECT subcol FROM subtab);
</PRE>
- na:
+<p>na:</p>
<PRE>
SELECT *
FROM tab
@@ -1101,7 +1101,7 @@ CREATE TABLE test (x int, modtime timestamp DEFAULT CURRENT_TIMESTAMP );
<P>V PostgreSQL 7.3 m��ete jednodu�e vracet v�ce ��dk� nebo sloupc� z
funkce, viz:
- <A href="http://techdocs.postgresql.org/guides/SetReturningFunctions">http://techdocs.postgresql.org/guides/SetReturningFunctions</A>.
+ <A href="http://techdocs.postgresql.org/guides/SetReturningFunctions">http://techdocs.postgresql.org/guides/SetReturningFunctions</A>.</P>
<H4><A name="4.26">4.26</A>) Pro� nelze spolehliv� vytv��et a ru�it do�asn� tabulky v PL/pgSQL funkc�ch?</H4>
@@ -1164,4 +1164,4 @@ CREATE TABLE test (x int, modtime timestamp DEFAULT CURRENT_TIMESTAMP );
p�ep�na� <I>--enable-depend</I> p��kazu <I>configure</I> k automatick�mu �e�en�
z�vislost� p�eklada�em.</P>
</BODY>
-</HTML> \ No newline at end of file
+</HTML>
diff --git a/doc/src/FAQ/FAQ_french.html b/doc/src/FAQ/FAQ_french.html
index 0436774159b..c48334ea91c 100644
--- a/doc/src/FAQ/FAQ_french.html
+++ b/doc/src/FAQ/FAQ_french.html
@@ -152,7 +152,7 @@
<P>PostgreSQL se prononce <I>Post-Gres-Q-L</I>. Un fichier audio est
disponible sur <A
- HREF="http://www.postgresql.org/postgresql.mp3">http://www.postgresql.org/postgresql.mp3</A>
+ href="http://www.postgresql.org/postgresql.mp3">http://www.postgresql.org/postgresql.mp3</A>
pour ceux souhaitant entendre la prononciation.</P>
<P>PostgreSQL est une am�lioration du syst�me de gestion de bases
@@ -173,7 +173,7 @@
d�veloppement de PostgreSQL. C'est un projet soutenu par une
communaut� sans �tre contr�l� par une soci�t�. Pour y contribuer,
voir la FAQ des d�veloppeurs sur <A
- HREF="http://www.postgresql.org/docs/faqs/FAQ_DEV.html">http://www.postgresql.org/docs/faqs/FAQ_DEV.html</A>.</P>
+ href="http://www.postgresql.org/docs/faqs/FAQ_DEV.html">http://www.postgresql.org/docs/faqs/FAQ_DEV.html</A>.</P>
<P>Les auteurs de PostgreSQL 1.01 �taient Andrew Yu et Jolly Chen.
Beaucoup d'autres personnes ont contribu� au portage, aux tests,
@@ -292,7 +292,7 @@
PostgreSQL sur le site web de PostgreSQL&nbsp;:</P>
<BLOCKQUOTE>
- <A href="http://www.PostgreSQL.org">http://www.PostgreSQL.org</A>
+ <p><A href="http://www.PostgreSQL.org">http://www.PostgreSQL.org</A></p>
</BLOCKQUOTE>
<P>Il y a aussi un canal IRC sur Freenode et EFNet, le canal
@@ -819,7 +819,7 @@
l'int�gralit� de la requ�te peut �tre �valu�e, jusqu'� g�n�rer les lignes
d�sir�es.</P>
- <P>Pour faire un <SMALL>SELECT</SMALL> sur une ligne al�atoire&nbsp;:
+ <P>Pour faire un <SMALL>SELECT</SMALL> sur une ligne al�atoire&nbsp;:</P>
<PRE>
SELECT colonne
FROM table
@@ -1004,7 +1004,6 @@
<LI>La locale <I>C</I> par d�faut doit �tre utilis�e lors de
<i>initdb</i>.</LI>
</UL>
- <P>
<p>Dans les versions ant�rieures � la 8.0, les indexs ne peuvent souvent
pas �tre utilis�s sauf si les types de donn�es correspondent exactement au
@@ -1398,7 +1397,7 @@ BYTEA bytea tableau d'octets (accepte les octets nuls)
<P>A partir de la 7.3, vous pouvez facilement renvoyer plusieurs lignes ou
colonnes � partir d'une fonction,
<a href="http://techdocs.postgresql.org/guides/SetReturningFunctions">
- http://techdocs.postgresql.org/guides/SetReturningFunctions</a>.
+ http://techdocs.postgresql.org/guides/SetReturningFunctions</a>.</P>
<H4><A name="4.26">4.26</A>) Pourquoi ne puis-je pas cr�er/supprimer des
tables temporaires dans les fonctions PL/PgSQL de fa�on stable&nbsp;?</H4>
@@ -1422,7 +1421,7 @@ BYTEA bytea tableau d'octets (accepte les octets nuls)
exister dans <I>pg_hba.conf</I>, et le <I>sslmode</I> du client ne doit pas
�tre <I>d�sactiv�e</I>. Notez qu'il est aussi possible d'utiliser un
transport crypt� d'une troisi�me partie, tel que stunnel ou ssh, plut�t que
- les connexions SSL natives de PostgreSQL.
+ les connexions SSL natives de PostgreSQL.</LI>
<LI>Les mots de passe des utilisateurs sont automatiquement crypt�s depuis
la version 7.3. Pour les versions pr�c�dentes, vous devez activer l'option
<I>PASSWORD_ENCRYPTION</I> dans <I>postgresql.conf</I>.</LI>
diff --git a/doc/src/FAQ/FAQ_german.html b/doc/src/FAQ/FAQ_german.html
index 4d842ad6fdd..924568b8fcf 100644
--- a/doc/src/FAQ/FAQ_german.html
+++ b/doc/src/FAQ/FAQ_german.html
@@ -212,7 +212,7 @@ href="mailto:[email protected]">[email protected]</a>).</p>
<p>Eine Portierung für Novell Netware 6 gibt es unter <a href="http://forge.novell.com">http://forge.novell.com</a>.</p>
<p>Für OS/2 (eComStation) gibt es eine Version hier:
- <a href="http://hobbes.nmsu.edu/cgi-bin/h-search?sh=1&button=Search&key=postgreSQL&stype=all&sort=type&dir=%2F">http://hobbes.nmsu.edu/cgi-bin/h-search?sh=1&button=Search&key=postgreSQL&stype=all&sort=type&dir=%2F</a>
+ <a href="http://hobbes.nmsu.edu/cgi-bin/h-search?sh=1&amp;button=Search&amp;key=postgreSQL&amp;stype=all&amp;sort=type&amp;dir=%2F">http://hobbes.nmsu.edu/cgi-bin/h-search?sh=1&amp;button=Search&amp;key=postgreSQL&amp;stype=all&amp;sort=type&amp;dir=%2F</a></p>
<h4><a name="1.5">1.5</a>) Woher bekomme ich PostgreSQL?</h4>
@@ -223,7 +223,7 @@ href="mailto:[email protected]">[email protected]</a>).</p>
<h4><a name="1.6">1.6</a>) Wo bekomme ich Support für PostgreSQL?</h4>
<p>Die zentrale (englischsprachige) Mailing-Liste ist:
- <a href="mailto:[email protected]">mailto:[email protected]</a> .
+ <a href="mailto:[email protected]">mailto:[email protected]</a> .</p>
<p>Die Liste ist Themen vorbehalten, die PostgreSQL betreffen. Die Anmeldung
erfolgt mit einer Email an die Adresse <a href="mailto:[email protected]">[email protected]</a> mit folgenden Zeilen im Text
@@ -260,7 +260,7 @@ href="mailto:[email protected]">[email protected]</a>).</p>
<p>Weitere Mailinglisten und Informationen zu PostgreSQL befinden sich auf der PostgreSQL-Homepage:</p>
<blockquote>
-<a href="http://www.postgresql.org">http://www.postgresql.org</a>
+<p><a href="http://www.postgresql.org">http://www.postgresql.org</a></p>
</blockquote>
<p>Es gibt außerdem einen IRC-Channel bei EFNet und bei Freenode, Channel
<em>#PostgreSQL</em>. Unter UNIX/Linux können Sie mit z.B.
@@ -341,7 +341,7 @@ href="mailto:[email protected]">[email protected]</a>).</p>
<h4><a name="1.13">1.13</a>) Wie sende ich einen Fehlerbericht?</h4>
<p>Bitte besuchen Sie die PostgreSQL-BugTool-Seite <a href="http://www.postgresql.org/bugform.html">http://www.postgresql.org/bugform.html</a>,
- die Hinweise und Anleitungen zur Einreichung von Fehlerberichten enthält.
+ die Hinweise und Anleitungen zur Einreichung von Fehlerberichten enthält.</p>
<p>Überprüfe auch den ftp-Server <a href="ftp://ftp.postgresql.org/pub/">ftp://ftp.postgresql.org/pub/</a>,
um nachzusehen, ob es eine neuere PostgreSQL-Version oder neue Patches gibt.</p>
@@ -475,7 +475,7 @@ href="mailto:[email protected]">[email protected]</a>).</p>
</a>) und Rekall (<a href="http://www.thekompany.com/products/rekall/">
http://www.thekompany.com/products/rekall/</a>, GPL/proprietär). Es gibt
außerdem phpPgAdmin (<a href="http://phppgadmin.sourceforge.net/">
- http://phppgadmin.sourceforge.net/ </a>), eine web-basierte Schnittstelle.
+ http://phppgadmin.sourceforge.net/ </a>), eine web-basierte Schnittstelle. </p>
<h4><a name="2.4">2.4</a>) Welche Programmiersprachen und Schnittstellen gibt es?</h4>
@@ -500,7 +500,7 @@ href="mailto:[email protected]">[email protected]</a>).</p>
(Bereich <em>Drivers/Interfaces</em>) bezogen werden.
</p>
<hr />
- <h2 align="center">Administrative Fragen</h2><p>
+ <h2 align="center">Administrative Fragen</h2>
<h4><a name="3.1">3.1</a>) Wie installiere ich PostgreSQL woanders als in /usr/local/pgsql?</h4>
@@ -632,7 +632,7 @@ href="mailto:[email protected]">[email protected]</a>).</p>
<p>Wenn der <em>postmaster</em> hingegen läuft, führen Sie <em>psql</em> in einem Fenster aus,
ermitteln Sie die Prozessnummer (<small>PID</small>) des <em>postgres</em>-Prozesses, der von <em>psql</em>
- verwendet wird (mit <pre>SELECT pg_backend_pid()</pre>). Binden Sie einen Debugger an diese <small>PID</small>
+ verwendet wird (mit <code>SELECT pg_backend_pid()</code>). Binden Sie einen Debugger an diese <small>PID</small>
und führen Sie Abfragen von <em>psql</em> aus. Wenn Sie den postgres-Serverstart analysieren
wollen, setzen Sie die Umgebungsvariable <em>PGOPTIONS="-W </em>n<em>"</em>, und starten Sie
dann <em>psql</em>. Dies verzögert den Start um <em>n</em> Sekunden, damit Sie einen Debugger an
@@ -728,7 +728,7 @@ href="mailto:[email protected]">[email protected]</a>).</p>
<h4><a name="4.2">4.2</a>) Wie wähle ich per <small>SELECT</small>-Anweisung nur die ersten paar
Zeilen bzw. eine beliebige Zeile in einer Abfrage aus?</h4>
- <p>Vgl. die <small>FETCH</small> Man-Page, oder benutzen Sie <small>SELECT ... LIMIT...</small> .
+ <p>Vgl. die <small>FETCH</small> Man-Page, oder benutzen Sie <small>SELECT ... LIMIT...</small> .</p>
<p>Selbst wenn Sie nur die ersten paar Zeilen einer Tabelle abfragen möchten,
muß unter Umständen die komplette Abfrage abgearbeitet werden. Ziehen Sie also
@@ -1123,7 +1123,7 @@ BYTEA bytea Bytearray mit variabler Länge (auch für
durch Block und Offset Werte zu identifizieren. T<small>ID</small>s
verändern sich, sobald Zeilen verändert oder zurückgeladen werden. Sie
werden in Indexeinträgen benutzt um auf die physikalischen Zeilen zu
- zeigen.
+ zeigen.</p>
<h4><a name="4.16">4.16</a>) Welche Bedeutung haben die verschiedenen Ausdrücke, die in
PostgreSQL benutzt werden (z.B. attribute, class,...)?</h4>
diff --git a/doc/src/FAQ/FAQ_japanese.html b/doc/src/FAQ/FAQ_japanese.html
index d09dd6f1d3d..05812e8db53 100644
--- a/doc/src/FAQ/FAQ_japanese.html
+++ b/doc/src/FAQ/FAQ_japanese.html
@@ -2,9 +2,9 @@
<HTML>
<HEAD>
<TITLE>PostgreSQL FAQ in Japanese</TITLE>
+<META HTTP-EQUIV="Content-Type" CONTENT="text/html; CHARSET=x-euc-jp">
</HEAD>
<BODY BGCOLOR="#FFFFFF" TEXT="#000000" LINK="#FF0000" VLINK="#A00000" ALINK="#0000FF">
-<META HTTP-EQUIV="Content-Type" CONTENT="text/html; CHARSET=x-euc-jp">
<H1>
PostgreSQL(�ݥ��ȥ��쥹�����塼������)�ˤĤ��Ƥ褯�������Ȥ��β���(FAQ)</H1>
<P>
@@ -13,20 +13,19 @@ PostgreSQL(�ݥ��ȥ��쥹�����塼������)�ˤĤ��Ƥ褯�������Ȥ��β���(FAQ)</H1>
���ߤΰݻ�������: Bruce Momjian (<A
HREF="mailto:[email protected]">[email protected]</A>)<BR>
Maintainer of Japanese Translation: Jun Kuwamura (<A
-HREF="mailto:juk at PostgreSQL.jp">juk at PostgreSQL.jp</A>)<BR><P>
+HREF="mailto:juk at PostgreSQL.jp">juk at PostgreSQL.jp</A>)<BR></P>
<P>
����ʸ��κǿ��Ǥ�
- "http://www.postgresql.org/files/documentation/faqs/FAQ.html">
+ <a href="http://www.postgresql.org/files/documentation/faqs/FAQ.html">
http://www.postgresql.org/files/documentation/faqs/FAQ.html</A></P>
�Ǹ��뤳�Ȥ��Ǥ��ޤ���
<P>
�ץ�åȥۡ������ͭ�μ���ˤĤ��Ƥ�:
- "http://www.postgresql.org/docs/faq/">
+ <a href="http://www.postgresql.org/docs/faq/">
http://www.postgresql.org/docs/faq/</A></P>
<BR>�˲���������ޤ���
-<P>
-<SMALL><PRE>
+<PRE>
(�ʲ������Ԥˤ������� [������ �� ] �ȤǰϤ�ǵ����ޤ���)
[������
���ܸ�������ˤĤ��ƤΥ��ϺǸ����ذ�ư���ޤ�����
@@ -42,11 +41,9 @@ HREF="mailto:juk at PostgreSQL.jp">juk at PostgreSQL.jp</A>)<BR><P>
2005ǯ01��12�� ��¼ ��
]
-</PRE></SMALL>
+</PRE>
-<P>
<HR>
-<P>
<H2 align="center">����Ū�ʼ���</H2>
@@ -133,15 +130,14 @@ HREF="mailto:juk at PostgreSQL.jp">juk at PostgreSQL.jp</A>)<BR><P>
<A HREF="#5.2">5.2</A>) PostgreSQL �Ѥ˽񤤤�����ä���Ũ�ʿ���������ؿ����󶡤��ƥץ��������Ȥ˹׸��������ΤǤ�����<BR>
<A HREF="#5.3">5.3</A>) ���ץ���֤� C����δؿ��ϤɤΤ褦�˽񤭤ޤ�����<BR>
<A HREF="#5.4">5.4</A>) ���������ե�������ѹ����ޤ������ƥ���ѥ��뤷�Ƥ��Ѳ��������ʤ��ΤϤʤ��Ǥ�����<BR>
-<P>
<HR>
<H2 align="center">����Ū�ʼ���</H2>
-<P>
<H4><A NAME="1.1">1.1</A>) PostgreSQL �Ȥϲ��Ǥ����� �����ɤߤޤ�����</H4>
<P>PostgreSQL��<I>Post-Gres-Q-L</I>(�ݥ��� - ���쥹 - ���塼 - ����) ��ȯ�����ޤ���</P>
<P>PostgreSQL �ϼ����� <SMALL>DBMS</SMALL> �����ѤΥץ��ȥ����פǤ��ä� POSTGRES �ǡ����١������������ƥ�β����ǤǤ��ʤ��Τ��ᡢ���Ǥ�Ȥ��ɤ� "Postgres" �ȸƤФ�뤳�Ȥ�����ޤ��ˡ�PostgreSQL �� POSTGRES �ζ��Ϥʥǡ�������ǥ��˭�٤ʥǡ�����������(��)���ݻ����ʤ��顢POSTGRES �ǻȤ�줿 PostQuel �䤤��碌����򡢳�ĥ���� <SMALL>SQL</SMALL> �Υ��֥��åȤ��֤������Ƥ��ޤ���PostgreSQL ��̵���Ǵ����ʥ����������ѤǤ��ޤ���
+</P>
<P>PostgreSQL �γ�ȯ�ϡ�PostgreSQL ��ȯ�᡼��󥰥ꥹ�Ȥ˻��ä��Ƥ��볫ȯ��ã�Υ�����Ǥ��٤ƹԤʤ��Ƥ��ޤ������ߤκ�Ĺ�� Marc G. Fournier (<A HREF="mailto:[email protected]">[email protected]</A> )�Ǥ���(������<a href="#1.6">1.6��</a>�˻��äλ���������ޤ���)���ߡ����Υ����ब PostgreSQL ��ȯ�Τ��٤Ƥ����ݤ�ߤƤ��ޤ������Υ�����ϥ��ߥ�˥ƥ��ץ��������ȤǤ��ꡢ�����ʤ��Ȥˤ�äƤ����������ޤ��󡣻��ä�������С�<A href=
"http://www.postgresql.org/files/documentation/faqs/FAQ_DEV.html">
@@ -150,18 +146,20 @@ HREF="mailto:juk at PostgreSQL.jp">juk at PostgreSQL.jp</A>)<BR><P>
</P>
<P>Postgres95-1.01 ���濴Ū�ʳ�ȯ�Ԥ� Andrew Yu �� Jolly Chen �Ǥ�����������¾�����ο͡������Υ����ɤΰܿ����ƥ��ȡ��ǥХ�������ӡ����ɤ˻��ä��ޤ�����PostgreSQL �������������ɤǤ��� Postgres �ϥ���ե���˥���إС����쥤���ˤ����ơ� Michael Stonebraker �����λش��Τ�ȡ�¿���γ�����´�������ܿ��Υץ�����ޤ��������Ϥˤ�����ޤ�����
+</P>
<P>�С����쥤�ˤ����뤳�Υ��եȥ������Τ�Ȥ�̾���� Postgres �Ǥ�������<SMALL>SQL</SMALL> �ε�ǽ���ɲä��줿 1995 ǯ�ˤ���̾���� Postgres95 ���ѹ����졢1996 ǯ�ν���ˤ���̾���� PostgreSQL ���ѹ�����ޤ�����
+</P>
-<P>
<H4><A NAME="1.2">1.2</A>) PostgreSQL ������Ϥɤ��ʤäƤޤ�����</H4>
<P> PostgreSQL �ϲ���������˽����ޤ���
-<SMALL><PRE>
+</P>
+<PRE>
[������
��ʸ�ϱѸ�Ǥ������ͤȤ��ơ���ʸ��ʻ���Ǻܤ��ޤ���
]
-</PRE></SMALL>
+</PRE>
<P>
PostgreSQL Data Base Management System</P>
<P>
@@ -187,7 +185,7 @@ IS ON AN "AS IS" BASIS, AND THE UNIVERSITY OF CALIFORNIA HAS NO
OBLIGATIONS TO PROVIDE MAINTENANCE, SUPPORT, UPDATES, ENHANCEMENTS, OR
MODIFICATIONS.</P>
-<SMALL><PRE>
+<PRE>
POSTGRESQL �ǡ����١������������ƥ�
��ʬŪ��� (c) 1996-2004, PostgreSQL��ݳ�ȯ������
@@ -214,7 +212,7 @@ MODIFICATIONS.</P>
����˴ؤ�����ʸ�Ͼ嵭�αѸ�ˤ��ɽ���Ǥ������ܸ����Ϥ����ޤ�
���ͤǤ���
]
-</PRE></SMALL>
+</PRE>
<P>�嵭��BSD�饤���󥹤ǸŤ������ץ󥽡����Υ饤���󥹤Ǥ���������������
���ɤΤ褦�˻Ȥ��褦�Ȥ����¤��ޤ��󡣹��ޤ������ȤʤΤǡ��桹�⤽���
@@ -225,7 +223,6 @@ MODIFICATIONS.</P>
<P>
����Ū�ˡ��Ƕ��Unix�ߴ��ץ�åȥۡ���Ǥ����PostgreSQL���Ư��������Ϥ��Ǥ�����꡼���λ����Ǽºݤ˥ƥ��Ȥ�Ԥʤä����Ȥ���𤬤ʤ��줿�ץ�åȥۡ���ˤĤ��Ƥϥ��󥹥ȡ����������󤷤Ƥ���ޤ���</P>
-<P>
<H4><A NAME="1.4">1.4</A>) Unix�ʳ��ΰܿ��ǤǻȤ����Τϡ�</H4>
<P>�С������8.0�ˤʤꡢPostgreSQL �ϡ�Win2000, WinXP, Win2003�ʤɤ� Microsoft Windows NT�١����Υ��ڥ졼�ƥ��󥰥����ƥ�ǥͥ��ƥ��֤�����褦�ˤʤ�ޤ�����
@@ -233,18 +230,18 @@ MODIFICATIONS.</P>
Windows (Win95, Win98, WinMe)�ʤɡ�MSDOS�١����ΥС������Ǥϡ�Cygwin ��Ȥä�PostgreSQL�����餻�뤳�Ȥ��Ǥ��ޤ���
</P>
-<small><pre>
+<pre>
[����
pgInstaller �������FTP�ߥ顼�����Ȥ� win32 �ǥ��쥯�ȥ꤫����ǽ�Ǥ���
http://www.postgresql.org/mirrors-ftp.html
]
-</pre></small>
+</pre>
<p>���Υ����Ȥ� Novell Netware 6 �ؤΰܿ��⤢��ޤ���
<a href="http://forge.novell.com">http://forge.novell.com</a>
�ޤ���OS/2 (eComStation) �С������ϡ�<a href=
- "http://hobbes.nmsu.edu/cgi-bin/h-search?sh=1&button=Search&key=postgreSQL&stype=all&sort=type&dir=%2F">
- http://hobbes.nmsu.edu/cgi-bin/h-search?sh=1&button=Search&key=postgreSQL&stype=all&sort=type&dir=%2F</a>�ˤ���ޤ���</p>
+ "http://hobbes.nmsu.edu/cgi-bin/h-search?sh=1&amp;button=Search&amp;key=postgreSQL&amp;stype=all&amp;sort=type&amp;dir=%2F">
+ http://hobbes.nmsu.edu/cgi-bin/h-search?sh=1&amp;button=Search&amp;key=postgreSQL&amp;stype=all&amp;sort=type&amp;dir=%2F</a>�ˤ���ޤ���</p>
<BR>
@@ -256,7 +253,7 @@ href="ftp://ftp.PostgreSQL.org/pub/">ftp://ftp.PostgreSQL.org/pub/</A>
�Ǥ���
�ߥ顼�����ȤˤĤ��Ƥϡ��桹�Υᥤ�� Web �ڡ���������������</P>
-<SMALL><PRE>
+<PRE>
[����:
�ʲ������ܤΥߥ顼�����ȤǤ�:
@@ -274,7 +271,7 @@ href="ftp://ftp.PostgreSQL.org/pub/">ftp://ftp.PostgreSQL.org/pub/</A>
Japan: <A HREF="ftp://ring.so-net.ne.jp/pub/misc/db/PostgreSQL/">ftp://ring.so-net.ne.jp/pub/misc/db/PostgreSQL/</A>
Japan: <A HREF="ftp://ring.aist.go.jp/pub/misc/db/PostgreSQL/">ftp://ring.aist.go.jp/pub/misc/db/PostgreSQL/</A>
]
-</PRE></SMALL>
+</PRE>
<H4><A NAME="1.6">1.6</A>) ���ݡ��ȤϤɤ��Ǽ������ޤ�����</H4>
@@ -292,33 +289,35 @@ href="ftp://ftp.PostgreSQL.org/pub/">ftp://ftp.PostgreSQL.org/pub/</A>
end
</PRE>
-�Ƚ񤤤� <A HREF="mailto:[email protected]"> [email protected]</A> ���Żҥ᡼������äƲ�������</P>
+<P>�Ƚ񤤤� <A HREF="mailto:[email protected]"> [email protected]</A> ���Żҥ᡼������äƲ�������</P>
<P> �������������Ǥϡ��ᥤ��ꥹ�ȤǼ��������å������� 30k ����ί����˥������������ǥꥹ�ȤΥ��С������դ���ޤ���</P>
<P> �Х���ݡ����ѤΥ᡼��󥰥ꥹ�Ȥ⤢��ޤ������Υꥹ�Ȥؤλ��ä� "��ʸ" �ˡ�
+</P>
<PRE>
subscribe
end
</PRE>
+<P>
�Ƚ񤤤�<A
���Żҥ᡼������äƲ�������</P>
<P> ��ȯ�Ԥε����Τ���Υ᡼��󥰥ꥹ�Ȥ����ѤǤ��ޤ������Υꥹ�Ȥؤλ��ä��Żҥ᡼�����ʸ�ˡ�
+</P>
<PRE>
subscribe
end
</PRE>
-�Ƚ񤤤ơ�<A HREF="mailto:[email protected]">[email protected]</A>���Żҥ᡼������äƲ�������</P>
+<P>�Ƚ񤤤ơ�<A HREF="mailto:[email protected]">[email protected]</A>���Żҥ᡼������äƲ�������</P>
-<P PostgreSQL �ˤĤ��Ƥ�äȾܤ����Τꤿ����С����� PostgreSQL WWW�ۡ���ڡ������餿�ɤ�ޤ���
+<P>PostgreSQL �ˤĤ��Ƥ�äȾܤ����Τꤿ����С����� PostgreSQL WWW�ۡ���ڡ������餿�ɤ�ޤ���</P>
<BLOCKQUOTE>
- <A HREF="http://www.PostgreSQL.org">http://www.PostgreSQL.org</A>
+ <P><A HREF="http://www.PostgreSQL.org">http://www.PostgreSQL.org</A></P>
</BLOCKQUOTE>
-</P>
<P>�᥸�㡼��IRC �����ͥ�ϡ�Freenode (<I>irc.freenode.net</I>)��
<I>#PostgreSQL</I> �Ȥ��������ͥ�Ǥ���
UNIX ���ޥ�ɤǡ�
@@ -329,8 +328,7 @@ UNIX ���ޥ�ɤǡ�
EFNet�ˤ�PostgreSQL�����ͥ뤬����ޤ���
</P>
-<P>
-<SMALL><PRE>
+<PRE>
[����:
1999ǯ7��23�������ܥݥ��ȥ��쥹�桼������ά��JPUG����Ω����ޤ�����
JPUG ��������ȿ��ǡ�PostgreSQL�����Ѥ����ã����߶��Ϥξ�ȤʤäƤ��ޤ���
@@ -341,7 +339,7 @@ EFNet�ˤ�PostgreSQL�����ͥ뤬����ޤ���
�������������������Ͽ���ǽ�ȤʤäƤ��ޤ���
���ܸ��IRC�����ͥ� '#PostgreSQL*jp' ��¸�ߤ��ޤ���
-</PRE></SMALL>
+</PRE>
<P>���ѥ��ݡ��Ȳ�ҤΥꥹ�Ȥ�<a href="http://techdocs.postgresql.org/companies.php">http://techdocs.postgresql.org/companies.php</a>�ˤ���ޤ���</P>
@@ -358,24 +356,25 @@ PostgreSQL �κǿ��ǤϥС������ 7.4.6 �Ǥ���</P>
<P> ���դ���ˡ������Ĥ��Υޥ˥奢��ȥ���饤�󡦥ޥ˥奢��(�ޥ˥奢�롦�ڡ���)����Ӥ����Ĥ��ξ����ʥƥ������꤬�ޤޤ�ޤ���<I>/doc</I> �ǥ��쥯�ȥ�������������ޤ����ޥ˥奢��ϡ�<A HREF="http://www.ca.PostgreSQL.org/docs/">http://www.ca.PostgreSQL.org/docs/</A>�ǥ���饤��Ǥ�����Ǥ��ޤ���</P>
-<SMALL><PRE>
+<PRE>
[����:
�ʳ���SRA������PostgreSQL�桼������������졢
<A HREF="http://osb.sra.co.jp/PostgreSQL/Manual/">��PostgreSQL ���ե������ޥ˥奢���</A>
�Ȥ��ƽ��Ǥ���Ƥ��ޤ���
]
-</PRE></SMALL>
+</PRE>
<P>����饤��ǻ��ȤǤ��� PostgreSQL ���ܤ�2������ޤ���<A href=
"http://www.PostgreSQL.org/docs/awbook.html">http://www.PostgreSQL.org/docs/awbook.html</A>
-<SMALL><PRE>
+</P>
+<PRE>
[����:
���ܥݥ��ȥ��쥹�桼�������<A HREF="http://www.PostgreSQL.jp/wg/psqltrans/"> ��PostgreSQL Book����ʬ�ʲ��</A>
�ˤ���������ޤ�����
]
-</PRE></SMALL>
-
+</PRE>
+<P>
����ӡ� <A href=
"http://www.commandprompt.com/ppbook/">http://www.commandprompt.com/ppbook/</A>
�Ǥ���
@@ -415,14 +414,13 @@ PostgreSQL�ϳ�ĥ���줿<SMALL>SQL</SMALL>-92�Υ��֥��åȤ򥵥ݡ��Ȥ��ޤ���
<A HREF="http://www.PostgreSQL.org/docs/awbook.html">
http://www.PostgreSQL.org/docs/awbook.html</A>
�ˤ���PostgreSQL�ܤ� <SMALL>SQL</SMALL> �򶵤��Ƥ��ޤ���
-
-<SMALL><PRE>
+</P>
+<PRE>
[����:
���ܥݥ��ȥ��쥹�桼�������<A HREF="http://www.PostgreSQL.jp/wg/psqltrans/"> ��PostgreSQL Book����ʬ�ʲ��</A>
�ˤ�����������Ǥ���Ƥ��ޤ���
]
-</PRE></SMALL>
-</P>
+</PRE>
<P>
����¾�ˤ� PostgreSQL�ܤȤ��ơ�<A href=
@@ -449,8 +447,7 @@ http://www.PostgreSQL.org/docs/awbook.html</A>
�Τ褦�ʤΤ⤢��ޤ���
</P>
-<P>
-<SMALL><PRE>
+<PRE>
[����:
�а�ã�׻�ˤ�����ܸ�λ���ʸ���ξҲ�ڡ���
<A HREF="http://www.SRA.co.jp/people/t-ishii/PostgreSQL/doc-jp/index.html">http://www.SRA.co.jp/people/t-ishii/PostgreSQL/doc-jp/index.html</A>
@@ -465,8 +462,7 @@ http://www.PostgreSQL.org/docs/awbook.html</A>
<A HREF="http://www.wakhok.ac.jp/DB/DB.html">http://www.wakhok.ac.jp/DB/DB.html</A>
�⥪��饤����ɤळ�Ȥ��Ǥ��ޤ���
]
-</PRE></SMALL>
-</P>
+</PRE>
<H4><A NAME="1.11">1.11</A>) PostgreSQL������2000ǯ����(Y2K)���б����Ƥ��ޤ�����
</H4>
@@ -536,6 +532,7 @@ http://www.PostgreSQL.org/docs/awbook.html</A>
<P>�����ɤ����פϡ������ץ󥽡������ץ��������ȤˤȤäƤϤȤƤ����ڤʤ�Τǡ��ץ��������Ȥ����ʤ��������򼺤ä�ʬ������Τ���򤷤ޤ���</P>
<P>������󡢤��δ��פϰ¤���ΤǤϤ���ޤ��󡣰ݻ���³���뤿��ˤ����뤤�ϰ��Ū�˷��񤬤�����ޤ����⤷�����ʤ��䤢�ʤ��β�Ҥˡ������������ϤΤ���λ��α����ܤ����Ȥ��Ǥ���褦�Ǥ����顢<A href="http://store.pgsql.com/shopping/">http://store.pgsql.com/shopping/</A>������դ򤪴ꤤ���ޤ���
+</P>
<P>�ޤ���Web�ڡ����ˤ� PostgreSQL,Inc �Ȥ���ޤ����������� "�׸�(contributions)"�Ȥ������ܤϡ� PostgreSQL �ץ��������Ȥ�ٱ礹������Τ���ǡ��褷������β�ҤΤ���λ��ǤϤ���ޤ��󡣤⤷�����ڼ�(check)�������Թ�褱���Ϣ����ν���ؤ����겼������</P>
@@ -546,10 +543,8 @@ http://www.PostgreSQL.org/docs/awbook.html</A>
�ؤ����꤯��������
</P>
-<P>
<HR>
<H2 align="center">�桼���������饤����Ȥμ���</H2>
-<P>
<H4><A NAME="2.1">2.1</A>) PostgreSQL �Τ���� <SMALL>ODBC</SMALL> �ɥ饤�С��Ϥ���ޤ�����
</H4>
@@ -563,26 +558,27 @@ http://www.PostgreSQL.org/docs/awbook.html</A>
</P>
<P> OpenLink <SMALL>ODBC</SMALL> �� <A HREF="http://www.openlinksw.com/">http://www.openlinksw.com/</A>��������Ǥ��ޤ���ɸ��Ū�� <SMALL>ODBC</SMALL> ���饤����ȡ����եȥ������ǻȤ��ޤ��Τǡ��ٱ礷�Ƥ��뤹�٤ƤΥץ�åȥۡ���(Win, Mac, Unix, VMS)���� PostgreSQL �� <SMALL>ODBC</SMALL> �����ѤǤ��ޤ���
+</P>
<P> ���֤����ϡ������ʼ��Υ��ݡ��Ȥ�ɬ�פʿ͡�����äƤ���Ȼפ��ޤ�����
�ե꡼�������ǤϤ��ĤǤ������ǽ�Τ褦�Ǥ�������ϡ�<A href=
�����äƲ�������</P>
-
+<P>
<A HREF="http://www.PostgreSQL.org/docs/programmer/odbc.html">
Programmer's Guide</A>
�� <SMALL>ODBC</SMALL> �ξϤ⤴������������
+</P>
-
-<P>
<H4><A NAME="2.2">2.2</A>) PostgreSQL �� Web �ڡ�����Ϣ�Ȥ�����ˤϤɤ�ʥġ��뤬����ޤ�����
</H4>
<P> �ǡ����١�����΢�˻��� Web �ڡ����ˤĤ��Ƥ������餷���Ҳ𤬡�<BR>
<A href="http://www.webreview.com">http://www.webreview.com</A>�ˤ���ޤ���</P>
<P> Web �ؤγ�ĥ�Τ���ˤϡ�PHP ����ۤ������󥿡��ե������ȤʤäƤ��ޤ���<A HREF="http://www.php.net">http://www.php.net/</A>�ˤ���ޤ���
+</P>
-<SMALL><PRE>
+<PRE>
[����:
PHP�˴ؤ������ܸ�ξ���ϡ�2000ǯ4��19����ȯ­��������PHP�桼����Υ�����
<A HREF="http://www.php.gr.jp/">http://www.php.gr.jp/</A>
@@ -590,11 +586,12 @@ Programmer's Guide</A>
<A HREF="http://www.geocities.jp/rui_hirokawa/php/">http://www.geocities.jp/rui_hirokawa/php/</A>
�ˤ��ʤ�ޤȤ���Ƥ��ޤ���
]
-</PRE></SMALL>
+</PRE>
<P> ������ʣ���ʾ�硢¿���οͤ� Perl ���󥿡��ե������� CGI.pm �� mod_perl ��Ȥ��ޤ���
+</P>
-<SMALL><PRE>
+<PRE>
[����:
WDB �ϡ�Web ���� DataBase �ؤ� Perl �� Interface �Ǥ���
wdb-p95 �ؤΥ�󥯤��ڤ�Ƥ��ޤäƤ��ޤ��������餯��Perl DBI ��ͳ�� DBD::Pg �����Ѥ���ǽ�Ȼפ��ޤ���
@@ -604,9 +601,8 @@ Programmer's Guide</A>
<A HREF="http://www.i-con.dk/wdb/">http://www.i-con.dk/wdb/</A>
�Ȥ�����ޤ������ηаޤϤ褯�狼��ޤ���
]
-</PRE></SMALL>
+</PRE>
-<P>
<H4><A NAME="2.3">2.3</A>) PostgreSQL �˥���ե����롦�桼�����󥿡��ե������Ϥ���ޤ�����
</H4>
<p>�������PostgreSQL �ؤΥ���ե����륤�󥿡��ե������������Ĥ�����ޤ���
@@ -626,12 +622,12 @@ RHDB Admin (<a
PhpPgAdmin (<a href="http://phppgadmin.sourceforge.net/">
http://phppgadmin.sourceforge.net/ </a>) ��PostgreSQL�ؤ�Web�١�����
���󥿡��ե��������󶡤��ޤ���
+</P>
<P>���ܺ٤ʥꥹ�ȤˤĤ��Ƥϡ�<a
href="http://techdocs.postgresql.org/guides/GUITools">http://techdocs.postgresql.org/guides/GUITools</a>
��������������</P>
-<P>
<H4><A NAME="2.4">2.4</A>) �ɤΤ褦�ʸ���� PostgreSQL ���̿��Ǥ�������
</H4>
@@ -640,42 +636,41 @@ PhpPgAdmin (<a href="http://phppgadmin.sourceforge.net/">
</P>
<P>�ʲ��Υ��󥿡��ե�������PostgreSQL�����ۤ˴ޤޤ�Ƥ��ޤ���
+</P>
<UL>
-<LI>C (libpq)
-<LI>������C (ecpg)
-<LI>Java (jdbc)
-<LI>Python (<A HREF="http://www.druid.net/pygresql/">PyGreSQL</A>)
-<LI>TCL (libpgtcl)
+<LI>C (libpq)</LI>
+<LI>������C (ecpg)</LI>
+<LI>Java (jdbc)</LI>
+<LI>Python (<A HREF="http://www.druid.net/pygresql/">PyGreSQL</A>)</LI>
+<LI>TCL (libpgtcl)</LI>
</UL>
- <P>����¾�����Ѳ�ǽ�ʥ��󥿡��ե������� <a
+ <P>����¾�����Ѳ�ǽ�ʥ��󥿡��ե�������
<a href="http://gborg.postgresql.org">http://gborg.postgresql.org</A>
��<I>Drivers/Interfaces</I>�Υ��������ˤ���ޤ���
</P>
-<SMALL><PRE>
+<PRE>
[������
�ʰ¸�ˤ���� Palm �Ǥ� libpq ��ȯ����ޤ�����
<a href="http://www.snaga.org/libpq/">http://www.snaga.org/libpq/</a>
]
-</PRE></SMALL>
+</PRE>
-<P>
<HR>
<H2 align="center">��������</H2>
-<P>
<H4><A NAME="3.1">3.1</A>) �ɤΤ褦�ˤ���� <I>/usr/local/pgsql</I> �ʳ��ξ��˥��󥹥ȡ���Ǥ��ޤ�����</H4>
<P> ��ñ����ˡ�ϡ� <I>configure</I> �����餻��Ȥ��� --prefix ���ץ�������ꤹ�뤳�ȤǤ���
+</P>
-<P>
<H4><A NAME="3.2">3.2</A>) postmaster �����餻��ȡ�<I>Bad System Call</I> �Ȥ�����������פ����ȤΥ�å��������Фޤ����ʤ��Ǥ�����
</H4>
<P> ���ޤ��ޤ����꤬�ͤ����ޤ������ޤ��ǽ�ˤ��ʤ��Υ����ͥ�� System V IPC �γ�ĥ�����󥹥ȡ��뤵��Ƥ��뤫���ǧ���Ƹ��Ƥ���������PostgreSQL �ϥ����ͥ�ˤ�붦ͭ���꡼�ȥ��ޥե��Υ��ݡ��Ȥ�ɬ�פȤ��ޤ���
-<P>
+</P>
<H4><A NAME="3.3">3.3</A>) <I>postmaster</I> �����餻�褦�Ȥ���ȡ�<I>IpcMemoryCreate</I> ���顼���Фޤ����ʤ��Ǥ�����
</H4>
@@ -686,11 +681,11 @@ PhpPgAdmin (<a href="http://phppgadmin.sourceforge.net/">
�˶�ͭ���꡼�ȥ��ޥե��ˤĤ��Ƥξ���ξܺ٤�����ޤ��ΤǤ�������������</P>
-<P>
<H4><A NAME="3.4">3.4</A>) <I>postmaster��</I>���餻�褦�Ȥ���ȡ�<I>IpcSemaphoreCreate</I> ���顼���Фޤ����ʤ��Ǥ�����
</H4>
<P>�⤷���顼��å�������<I>IpcSemaphoreCreate: semget failed (No space left on device)</I>�Ǥ���С������ͥ뤬��ʬ�ʥ��ޥե���Ȥ���褦�˹�������Ƥ��ޤ���Postgres������Ū�ʥХå�����ɥץ�������˰�ĤΥ��ޥե���ɬ�פȤ��ޤ����Ȥꤢ�����β�����<I>postmaster</I>��ư����Ȥ��ˡ��Хå�����ɥץ������ο����꾯�ʤ����¤򤹤뤳�ȤǤ��������ͤ�32��꾮���ʿ��Υѥ�᡼����<I>-N</I>�ǻȤ��ޤ�����깱��Ū�ʲ����ϡ������ͥ��<SMALL>SEMMNS</SMALL> �� <SMALL>SEMMNI</SMALL> �ѥ�᡼�������䤹���ȤǤ���
+</P>
<P>�����ǽ�Υ��ޥե�����٤ʥǡ����١������������δ֤˥���å����
��������ǽ��������ޤ���
@@ -699,7 +694,6 @@ PhpPgAdmin (<a href="http://phppgadmin.sourceforge.net/">
<P>�⤷�����顼��å��������ʤˤ�¾�Τ�ΤǤ���С������ͥ�ι����Ǥޤä������ޥե��Υ��ݡ��Ȥ򤷤Ƥ��ʤ����⤷��ޤ���
PostgreSQL Administrator's Guide �˶�ͭ���꡼�ȥ��ޥե��ˤĤ��Ƥξ���ξܺ٤�����ޤ���</P>
-<P>
<H4><A NAME="3.5">3.5</A>) ¾�Υۥ��Ȥ������³�ϤɤΤ褦�����椷�ޤ�����
</H4>
@@ -707,56 +701,68 @@ PostgreSQL Administrator's Guide �˶�ͭ���꡼�ȥ��ޥե��ˤĤ��Ƥξ���ξܺ٤��
<P> �����ͤǤϡ�PostgreSQL �� Unix �ɥᥤ�󥽥��åȡ��ޤ��ϡ�TCP/IP��³�Υ�������ޥ��󤫤����³���������ޤ���postgresql.conf ����� listen_addresses ��������<B>���ġ�</B><I>$PGDATA/pg_hba.conf</I> �ե������Ŭ�ڤ�ľ���ơ��ۥ��ȼ�Ƴ��ǧ�ڤ�ͭ���ˤ��ʤ�������ϡ�¾�Υޥ��󤫤����³�Ǥ��ʤ��Ǥ��礦��
</p>
-<P>
<H4><A NAME="3.6">3.6</A>) ����ɤ���ǽ�����뤿��ˤϡ��ǡ����١��������󥸥��ɤΤ褦��Ĵ��������ɤ��Ǥ�����
</H4>
<P> �Τ��˥���ǥå������䤤��碌��®�٤������ޤ���<SMALL>EXPLAIN ANALYZE</SMALL>���ޥ�ɤ� PostgreSQL ���ɤΤ褦�ˤ��ʤ����䤤��碌���������Ƥ��뤫�򸫤뤳�Ȥ��Ǥ��������ơ��ɤΥ���ǥå������Ȥ��Ƥ��뤫�򸫤뤳�Ȥ��Ǥ��ޤ���
+</P>
<P>�⤷ <SMALL>INSERT</SMALL> ��¿�Ѥ��Ƥ�����ϡ�<SMALL>COPY</SMALL> ���ޥ�ɤ�Ȥä��礭�ʥХå������Ǥ����Ԥʤ����Ȥ�Ƥ���Ʋ�����������ϡ�<SMALL>INSERT</SMALL> ���̡��˹Ԥʤ�����äȹ�®�Ǥ������ˡ�<SMALL>BEGIN WORK/COMMIT</SMALL> �Υȥ�󥶥�����󡦥֥��å������̵��ʸ�ϡ�����鼫�Ȥ����줾��Υȥ�󥶥����������äƤ���ȸ��ʤ���ޤ��������Ĥ���ʸ���ĤΥȥ�󥶥�����󡦥֥��å�����ǹԤʤ����Ȥ�ͤ��Ʋ�����������ˤ��ȥ�󥶥������Υ����С��إåɤ�����ޤ����ޤ����礭�ʥǡ������ѹ���Ԥʤ��ݤϥ���ǥå�������ٳ����ơ����ľ�����Ȥ�ͤ��ƤߤƲ�������
+</P>
<P> <a href=
"http://www.postgresql.org/docs/current/static/runtime.html">
Administration Guide/Server Run-time Environment/Run-time
Configuration</a>�ˤϡ�
���塼�˥󥰤Υ��ץ���󤬤����Ĥ�����ޤ���<i>fsync</I>���ץ�����<I>fsync()</I> ��̵���ˤ��뤳�Ȥ��Ǥ��ޤ�������ˤ�äơ��ƥȥ�󥶥��������� <I>fsync()</I> �ǥǥ������򹹿�����Τ�ߤᤵ���ޤ���
+</P>
<P> <I>shared_buffers</I>���ץ�����ȤäƥХå�����ɡ��ץ������ˤ��Ȥ��붦ͭ���꡼���Хåե����礭�����뤳�Ȥ�Ǥ��ޤ����⤷�����Υѥ�᡼����⤯��������ȡ������ͥ�ζ�ͭ���꡼���֤������ͤ�ۤ��Ƥ��ޤ������ <I>postmaster</I> ������ʤ��ʤ�Ǥ��礦�������ͤǤϡ����줾��ΥХåե����礭���� 8K �ǡ��Хåե����� 1000 �Ǥ���
+</P>
<P> <I>sort_mem</I> (PostgreSQL 8.0�����: <I>work_mem</I>)���ץ�����Ȥäơ����줾��ΥХå�����ɡ��ץ����������Ū���¤��ؤ��ˤ�äƻȤ����꡼�κ��祵���������䤹���Ȥ�Ǥ��ޤ��� �����ͤ� 1024 (���ʤ����1MB)�Ǥ���
+</P>
<P> �ޤ���<SMALL>CLUSTER</SMALL> ���ޥ�ɤ�Ȥäơ��ơ��֥�Υǡ����򥤥�ǥå����˹�碌�뤿��˥��롼�ײ����뤳�Ȥ�Ǥ��ޤ����ܤ����ϡ�����饤��ޥ˥奢��� <I>CLUSTER</I> �򸫤Ʋ�������
+</P>
-<P>
<H4><A NAME="3.7">3.7</A>) �ɤΤ褦�ʥǥХ���ǽ���Ȥ��ޤ�����</H4>
<P> PostgreSQL �ϡ��ǥХ��Τ���˰�̣�Τ��롢���־������𤹤뤤���Ĥ��ε�ǽ������ޤ���
+</P>
<P> �ޤ���--enable-cassert ���ץ����� <I>configure</I> �����餻�ޤ����������ƥ���ѥ��뤹�뤳�Ȥˤ�ꡢ������ <I>assert()</I> �����Хå�����ɤο�Ľ������ƻ뤷������ͽ�����̤��Ȥ�������ȥץ���������ߤ���褦�ˤʤ�ޤ���
+</P>
<P> <I>postmaster</I> �� <I>postgres</I> ��ξ���Ǥ����Ĥ��ΥǥХ������ץ��������Ѥ��Ǥ��ޤ����ޤ������Τ褦�� <I>postmaster</I> ��ư����Ȥ��Ϥ��ĤǤ⡢ɸ����Ϥȥ��顼���Ϥ�������ե����������褦�ˤ��Ƥ��뤳�Ȥ�Τ���Ʋ�������
+</P>
<PRE>
cd /usr/local/pgsql
- ./bin/postmaster &gt;server.log 2&gt;&1 &
+ ./bin/postmaster &gt;server.log 2&gt;&amp;1 &amp;
</PRE>
<P> ����ˤ�� PostgreSQL �κǾ����Υǥ��쥯�ȥ�� server.log �ե����뤬�֤���ޤ������Υե�����ϥ����С���������������䥨�顼�ˤĤ���ͭ�Ѥʾ����ޤߤޤ���<I>Postmaster</I> �Ϲ��˾ܺ٤ʾ������𤹤뤿��� <I>-d</I> ���ץ���������ޤ������� <I>-d</I> ���ץ����ϡ��ǥХ�����٥����ꤷ�ޤ����⤤�ǥХ�����٥�Ǥϡ��礭�ʥ����ե�������������뤳�Ȥ����դ��ʤ��ƤϤʤ�ޤ���
+</P>
<P>�⤷��<i>postmaster</i>�����äƤ��ʤ���С�<I>postgres</I>�Хå�����ɤ򥳥ޥ�ɥ饤�󤫤����餻�뤳�Ȥ��Ǥ���ľ��<SMALL>SQL</SMALL>ʸ�򥿥��פ��뤳�Ȥ��Ǥ��ޤ������Τ�꤫���ϡ��ǥХ���Ū�ΤȤ�<B>����</B>�����ᤷ�ޤ������ߥ�����ǤϤʤ������Ԥ��䤤��碌�ν���ˤʤ뤳�Ȥ����դ��Ƥ����������⤷���ǥХ�����ܥ������ƥ���ѥ��뤷�Ƥ���С��ǥХå���ȤäƲ��������Ƥ��뤫�򸫤뤳�Ȥ��Ǥ��ޤ���postmaster ����Хå�����ɤ򳫻Ϥ����櫓�ǤϤʤ��Τǡ���Ω�ʴĶ������äƤ���ΤǤϤʤ����å����Хå�����ɤȤ����ä����꤬��ʣ���뤳�ȤϤ���ޤ���
+</P>
- <P> �⤷��<i>postmaster</i>�����äƤ���С����륦����ɥ���<I>psql</I>�򳫻Ϥ���ȡ�<pre>SELECT pg_backend_pid()</pre>��Ȥäơ�<i>psql</i> �ǻȤ��� <i>postgres</i> �ץ�������<SMALL>PID</SMALL>�����Ĥ���ޤ���
+ <P> �⤷��<i>postmaster</i>�����äƤ���С����륦����ɥ���<I>psql</I>�򳫻Ϥ���ȡ�<code>SELECT pg_backend_pid()</code>��Ȥäơ�<i>psql</i> �ǻȤ��� <i>postgres</i> �ץ�������<SMALL>PID</SMALL>�����Ĥ���ޤ���
�ǥХå���Ȥä�<i>postgres</i>��<SMALL>PID</SMALL>�˥����å�(attach)���ޤ����ǥХå����椫��֥졼�����ݥ���Ȥ򥻥åȤ���<i>psql</i> �����䤤��碌��ȯ�Ԥ��ޤ����ǥХ��Τ����<i>postgres</i>���ư������ϡ�PGOPTIONS="-W n" ������Ǥ������줫�顢<i>psql</i> �򳫻Ϥ��ޤ�������ˤ�ꡢ<i>n</i> �ó��Ϥ��٤餻��Ϥ��ʤΤǡ��ǥХå��ǥץ������˥����å����ơ��֥졼���ݥ���Ȥ����ꤷ�����Ϥ������ɤäƸ��Ƥ椯���Ȥ��Ǥ��ޤ���
-<P> �����Ĥ���<pre>log_*</pre>�����й����ѿ��ϡ��ǥХå�����ǽ¬��ˤȤƤ����Ω�ĥץ����������פΰ������ǽ�ˤ��ޤ���
+</P>
+<P> �����Ĥ���<code>log_*</code>�����й����ѿ��ϡ��ǥХå�����ǽ¬��ˤȤƤ����Ω�ĥץ����������פΰ������ǽ�ˤ��ޤ���
+</P>
<P> ���Ȥ����ؿ����ɤΤ��餤�¹Ի��֤򿩤äƤ��뤫�򸫤뤿��ˡ��ץ��ե�����󥰡ʥץ��ե������դ��ˤǥ���ѥ��뤹�뤳�Ȥ��ǽ�Ǥ������ΥХå�����ɤΥץ��ե����롦�ե������ <I>pgsql/data/base/dbname</I> �ǥ��쥯�ȥ�˳�Ǽ�����Ǥ��礦�����饤����ȤΥץ��ե�����ϥ��饤����Ȥθ��ԥǥ��쥯�ȥ���֤����Ǥ��礦��Linux �ǤޤȤ�ʥץ��ե�����󥰤�Ԥ��ˤ� <I>-DLINUX_PROFILE</I> �ǥ���ѥ��뤹��ɬ�פ�����ޤ���
+</P>
-
-<P>
<H4><A NAME="3.8">3.8</A>) ��³���褦�Ȥ���Ȥ��� <I>'Sorry, too many clients'</I> ���Ф�ΤϤʤ��Ǥ�����
</H4>
<P> <I>postmaster��</I>Ʊ����ư�Ǥ���Хå�����ɥץ��������Ф������¿������䤹ɬ�פ�����ޤ���
+</P>
<P>����κ���ץ�������32�ץ������Ǥ���<I>-N</I>��Ŭ�ڤ��ͤ�����ˤ���<I>postmaster</I>��Ƶ�ư���뤫��PostgreSQL.conf �������뤳�Ȥˤ�äơ������ͤ����䤹���Ȥ��Ǥ��ޤ���
+</P>
<P>�⤷��<I>-N</I> �� 32�����礭������ΤǤ���С�<I>-B</I>������64����礭���ͤ����ä����ʤ��ƤϤʤ�ʤ�����<I>-B</I> �Ͼ��ʤ��Ȥ� <I>-N</I> ��2�ܤϤʤ��ƤϤʤ餺�������餯�ǹ���ǽ��˾��ʤ�Ф������礭���ͤ�ɬ�פʤϤ��Ǥ����Хå�����ɥץ������򤿤�����ˤ���ȡ�����������Unix�����ͥ빽���ѥ�᡼�������䤹���Ȥ�ɬ�פˤʤ뤫�⤷��ޤ���
��ͭ���꡼���֥��å��κ�����(<SMALL>SHMMAX</SMALL>)��
@@ -767,17 +773,19 @@ PostgreSQL Administrator's Guide �˶�ͭ���꡼�ȥ��ޥե��ˤĤ��Ƥξ���ξܺ٤��
���ǧ����˴ޤޤ�ޤ���
PostgreSQL�˵������Хå�����ɤΥץ������������¤���Ƥ���Τϡ�
�����ƥ�Υ꥽������Ȥ��̤��Ƥ��ޤ����Ȥ��򤱤뤿��Ǥ���
+</P>
-<P>
-<H4><A NAME="3.9">3.9</A>) pgsql_tmp</I> �ǥ��쥯�ȥ����ˤϲ�������ޤ�����
+<H4><A NAME="3.9">3.9</A>) <I>pgsql_tmp</I> �ǥ��쥯�ȥ����ˤϲ�������ޤ�����
</H4>
<P> �䤤��碌�¹ԥ⥸�塼��ˤ�ä��������줿���Ū�ʥե����뤬�����Υǥ�
�쥯�ȥ�˴ޤޤ�ޤ����㤨�С��⤷ <SMALL>ORDER BY</SMALL> �������������˥Хå�����ɤ� <I>-S</I> �ѥ�᡼���ǵ��Ĥ����ͤ����礭�ʥ��ڡ����������Ȥκݤ�ɬ�פ��Ȥ���ȡ���줿�ǡ������ݻ����뤿��˰��Ū�ʥե����뤬�����Ĥ���������������ޤ���
+</P>
<P>
���Ū�ʥե�����ϼ�ưŪ�˾ä������Ϥ��Ǥ������⤷�������Ȥ�����ǥХå�����ɤ�����å��夷�Ƥ��ޤ��Ȥ����Ϥʤ�ޤ���<I>postmaster</I>����ߤȥꥹ�����ȤǤ����Υե�����ϥǥ��쥯�ȥ꤫��ä������ޤ���
+</P>
-<SMALL><PRE>
+<PRE>
[������
SYSLOGD ��ͳ�ǥ�������Ϥ���ˤϡ��ޤ���configure �� --enable-syslog
�դ������餻���塢����ѥ���ȥ��󥹥ȡ����Ԥʤ��ޤ���
@@ -787,41 +795,40 @@ PostgreSQL�˵������Хå�����ɤΥץ������������¤���Ƥ���Τϡ�
���ץ�����դ��ˤƥ����Х⡼�ɤǵ�ư���ޤ���(�С������ 7.1 �����
pg_options �� PostgreSQL.conf �ˤʤäƤ��ޤ���)
]
-</PRE></SMALL>
+</PRE>
-<P>
<H4><A name="3.10">3.10</A>) PostgreSQL�Υ᥸�㡼��꡼���򥢥åץǡ��Ȥ���Τ˥���פȥꥹ�ȥ��򤷤ʤ��ƤϤʤ�ʤ��ΤϤʤ��Ǥ�����</H4>
<P>
PostgreSQL������ϥޥ��ʡ���꡼���ǤϾ������ѹ������Ԥʤ��ޤ���Τǡ�7.2 ���� 7.2.1 �ؤΥ��åץ��졼�ɤˤϥ���פȥꥹ�ȥ���ɬ�פϤ���ޤ��󡣤��������᥸�㡼��꡼��(���Ȥ��С�7.2����7.3�ؤΤ褦��)�Ǥϡ������ƥ�ơ��֥��ǡ����ե�����������ե����ޥåȤ��ѹ��򤷤Ф��йԤʤ��ޤ����������ѹ��Ϥ����Ƥ�ʣ���ǡ����Τ���桹�ϥǡ����ե�����Τ���θ����ߴ�����ݻ����뤳�Ȥ��Ǥ��ޤ��󡣥���פ����ѥե����ޥåȤǥǡ�������Ϥ�������򿷤��������ե����ޥåȤ��ɤ߹��ळ�Ȥ��Ǥ��ޤ���</P>
<P>
�ǥ�������ǤΥե����ޥåȤ��ѹ��Τʤ�Ʊ���꡼���Ǥϡ����åץ��졼�ɤϡ�����ס��ꥹ�ȥ��ǤϤʤ���<I>pg_upgrade</I> ������ץȤ�Ȥ����Ȥ��Ǥ��ޤ�����꡼���Ρ��Ȥˤϡ�<I>pg_upgrade</I> �����Ѳ�ǽ�ʥ�꡼�����ɤ���������Ƥ��ޤ���</P>
-<P>
<H4><A name="3.11">3.11</A>) �ϡ��ɥ������ˤϤɤ�ʥ���ԥ塼����Ȥ��Ф褤�Ǥ�����</H4>
<P>
PC�ϡ��ɥ������ϤۤȤ�ɸߴ���������ޤ��Τǡ��ۤȤ�ɤοͤϡ����٤Ƥ�PC�ϡ��ɥ�������Ʊ���ʼ����Ȼפ����෹��������ޤ���������������ϴְ㤤�Ǥ���ECC RAM��SCSI������ӡ����ʼ��ޥ����ܡ��ɤϡ��¤��ϡ��ɥ���������٤�ȡ���꿮�������⤯�������ǽ���ɤ��ΤǤ���PostgreSQL �ϤۤȤ�ɤΥϡ��ɥ������Dz�Ư���ޤ���������������ǽ�����פʾ��ϡ��ϡ��ɥ������Υ��ץ����򸦵椹�뤳�Ȥ������Ǥ����᡼��󥰥ꥹ�ȤǤ�ϡ��ɥ��������ץ����ȥȥ졼�ɥ��դˤĤ��Ƶ������뤳�Ȥ��Ǥ��ޤ���</P>
-<P>
<HR>
<H2 align="center">������</H2>
-<P>
<H4><A NAME="4.1">4.1</A>) �Х��ʥꡦ����������̾參������Ȥθ�̩�ʰ㤤�ϲ��Ǥ�����
</H4>
<P> �ܽҤϡ�����饤��ޥ˥奢��� <SMALL>DECLARE</SMALL> �򸫤Ʋ�������
+</P>
-<P>
<H4><A NAME="4.2">4.2</A>) �ǽ�ο������Τߤ� <SMALL>SELECT</SMALL>����ˤϤɤ����ޤ�����������ʥ�����
</H4>
<P> ����饤��ޥ˥奢���<SMALL>FETCH</SMALL>�򸫤Ƥ������������뤤�ϡ�SELECT ... LIMIT....��ȤäƤߤƲ�������
+</P>
<P>���Ȥ����ߤ����ΤϺǽ�ο����������Ǥ⡢���٤Ƥ��䤤��碌��ɾ�����ʤ��ƤϤʤ�ʤ����⤷��ޤ���<SMALL>ORDER BY</SMALL> ����ä��䤤��碌��Ȥ����Ȥ�ͤ��ƤߤƲ�������
�⤷��<SMALL>ORDER BY</SMALL>�˹�ä�����ǥå���������Ȥ���� PostgreSQL���׵ᤵ�줿�ǽ�ο�����������ɾ���Ǥ��뤫�⤷��ޤ��󤬡��Ǥʤ�С�PostgreSQL �ϰտޤ������������������ޤǤ��٤ƤΥ�����ɾ�����ʤ���Фʤ�ʤ����⤷��ޤ���
+</P>
<P>������ʥ�����<SMALL>SELECT</SMALL>����ˤϡ�����ʸ��Ȥ��ޤ���
+</P>
<PRE>
SELECT col
FROM tab
@@ -829,7 +836,6 @@ PC�ϡ��ɥ������ϤۤȤ�ɸߴ���������ޤ��Τǡ��ۤȤ�ɤοͤϡ����٤Ƥ�PC�ϡ��ɥ�
LIMIT 1;
</PRE>
-<P>
<H4><A NAME="4.3">4.3</A>) �ơ��֥�䤽��¾�ξ���Υꥹ�Ȥ� <I>psql</I> �Ǹ���ˤϤɤ����ޤ�����
</H4>
<P>
@@ -842,6 +848,7 @@ PC�ϡ��ɥ������ϤۤȤ�ɸߴ���������ޤ��Τǡ��ۤȤ�ɤοͤϡ����٤Ƥ�PC�ϡ��ɥ�
<P> <SMALL>DROP COLUMN</SMALL>��ǽ����<SMALL>ALTER TABLE DROP COLUMN</SMALL> �Ȥ��ƥ�꡼��7.3
�˲ä����ޤ���������ޤǤΥС������Ǥϡ���������ˤ������ޤ�:
+</P>
<PRE>
BEGIN;
@@ -855,6 +862,7 @@ PC�ϡ��ɥ������ϤۤȤ�ɸߴ���������ޤ��Τǡ��ۤȤ�ɤοͤϡ����٤Ƥ�PC�ϡ��ɥ�
</PRE>
<P>�����Υǡ��������פϼ���ʸ���Ѥ����ޤ���
+</P>
<PRE>
BEGIN;
@@ -865,12 +873,13 @@ PC�ϡ��ɥ������ϤۤȤ�ɸߴ���������ޤ��Τǡ��ۤȤ�ɤοͤϡ����٤Ƥ�PC�ϡ��ɥ�
</PRE>
<P>�����Ԥʤä��Ȥ��ϡ����ä��줿�Ԥ��ȤäƤ���ǥ��������֤������뤿���<I>VACUUM FULL tab</I>�򤷤��ۤ����ɤ����⤷��ޤ���
+</P>
-<P>
<H4><A NAME="4.5">4.5</A>) �������ơ��֥롢�ǡ����١����κ��祵�����ϡ�
</H4>
<P> ���¤ϰʲ��ΤȤ���Ǥ���
+</P>
<PRE>
�ǡ����١����κ��祵����? ����̵�� (32 TB �Υǡ����١�����¸�ߤ��ޤ�)
�ơ��֥�κ��祵����? 32TB
@@ -882,22 +891,25 @@ PC�ϡ��ɥ������ϤۤȤ�ɸߴ���������ޤ��Τǡ��ۤȤ�ɤοͤϡ����٤Ƥ�PC�ϡ��ɥ�
</PRE>
<P> ������󡢤����ϼºݤ�̵���¤ǤϤʤ����ǥ��������̤ȥ��꡼�䥹��åץ��ڡ������礭���ˤ�����¤���ޤ�����ǽ�Ϥ������ͤ����ȤΤۤ��礭�ʻ������������ޤ���
+</P>
<P> ����ơ��֥륵������32TB�ϥ��ڥ졼�ƥ��󥰥����ƥ�ˤ�����ե�����Υ��ݡ��Ȥ�ɬ�פȤ��ޤ��󡣵���ʥơ��֥��ʣ����1GB�Υե������ʬ������¸����ޤ��Τǡ��ե����륷���ƥ�����¤Ͻ��פǤϤ���ޤ���
+</P>
<P> �ǥե���ȤΥ֥��å���������32k�ˤ��뤳�Ȥǡ�����ơ��֥륵�����Ⱥ��祫�����Ȥ��ܤˤ��뤳�Ȥ��Ǥ��ޤ���
+</P>
-<P>
<H4><A NAME="4.6">4.6</A>) ����Ū�ʥƥ����ȥե����뤫��ǡ�������¸����ˤϡ��ǡ����١����Υǥ��������̤ϤɤΤ��餤ɬ�פǤ���
</H4>
-
-���̤Υƥ����ȥե������ PostgreSQL �Υǡ����١�������¸����ˤϡ��������5�ܤΥǥ��������̤�ɬ�פȤ��ޤ���<P>
+<P>
+���̤Υƥ����ȥե������ PostgreSQL �Υǡ����١�������¸����ˤϡ��������5�ܤΥǥ��������̤�ɬ�פȤ��ޤ���</P>
<P> ����Ȥ��ơ��ƹԤ������ȥƥ����ȵ��Ҥ���� 100,000�ԤΥե������ͤ�
�Ƥߤޤ��礦���ƥ����Ȥ�ʸ�����ʿ��Ĺ����20�Х��ȤȲ��ꤹ��ȡ��ե�å�
�ե�������礭������2.8MB �Ǥ������Υǡ�����ޤ� PostgreSQL �ǡ����١���
�ե�������礭���ϼ��Τ褦����6.4MB�ȸ��Ѥ�뤳�Ȥ��Ǥ��ޤ���
+</P>
<PRE>
32 bytes: �ƥ����Υإå�(����)
@@ -921,26 +933,29 @@ PC�ϡ��ɥ������ϤۤȤ�ɸߴ���������ޤ��Τǡ��ۤȤ�ɤοͤϡ����٤Ƥ�PC�ϡ��ɥ�
<P>
����ǥå����ϡ�����ۤɤΥ����Хإåɤ��׵ᤷ�ޤ��󤬡�����ǥå����դ������ǡ�����ޤ�ʾ塢����ʤ���礭���ʤ�ޤ���
+</P>
<P><SMALL>NULL</SMALL>�ϥӥåȥޥåפȤ�����¸����Ƥ��ơ�����餬�鷺���˥��ڡ�����Ȥ��ޤ���
+</P>
-
-<P>
<H4><A NAME="4.7">4.7</A>) ������줿�ơ��֥롢����ǥå������ǡ����١���������ӡ��桼����ɤΤ褦�ˤ��Ƹ��Ĥ��Ф��ޤ�����
</H4>
<P> <I>psql</I> �ˤϤ��������ʥХå�����å��塦���ޥ�ɤ����ꡢ�������������ɽ�����ޤ����Хå�����å��塦���ޥ�ɤμ���򸫤�ˤ� \? ��ȤäƲ��������ޤ���<i>pg_</i> �ǻϤޤ륷���ƥ�ơ��֥�ˤ⵭�Ҥ���Ƥ��ޤ�������ˡ�<i>psql -l</i> �Ϥ��٤ƤΥǡ����١�����ꥹ��ɽ�����ޤ���
+</P>
<P> �ޤ���<I>pgsql/src/tutorial/syscat.source</I> �ե���������餻�ƤߤƲ�����������ϡ������� <SMALL>SELECT</SMALL> ʸ�ˤ��ɬ�פʾ����ǡ����١����Υ����ƥࡦ�ơ��֥뤫����Ф����㼨���Ƥ���ޤ���
+</P>
-<P>
<H4><A NAME="4.8">4.8</A>) �䤤��碌���٤�����������ǥå�����ȤäƤ����ͻҤ�����ޤ��󡣤ʤ��Ǥ�����
</H4>
+<P>
����ǥå����ϼ�ưŪ�ˤ��٤Ƥ��䤤��碌�ǻȤ���櫓�ǤϤ���ޤ��󡣥ơ�
�֥뤬�Ǿ�����������礭�����䤤��碌�Ǥ��Τ鷺���ʥѡ�����ơ����Υ�����
���򤹤������������ǥå����ϻȤ��ޤ�������ϥ���ǥå����������ˤ�
�굯������������ʥǥ��������������ϡ��ơ��֥�򥹥ȥ졼�Ȥ��ɤ�缡
���������٤��ʤ뤳�Ȥ����뤫��Ǥ���
+</P>
<P>����ǥå�����Ȥ�������ꤹ�뤿��ˡ�PostgreSQL �ϥơ��֥�ˤĤ�
�Ƥ����׾��������ʤ���Фʤ�ޤ��󡣤������׾���ϡ�<SMALL>VACUUM
@@ -953,10 +968,12 @@ ANALYZE</SMALL>�ޤ��ϡ�ñ�� <SMALL>ANALYZE</SMALL> ��ȤäƼ������뤳��
<P> ����ǥå����ϡ��̾� <SMALL>ORDER BY</SMALL> �����Ԥ�
������ˤϻȤ��ޤ��󡣽缡��������³������Ū�����Ȥϡ�����ʥơ��֥�
�Υ���ǥå����������������̤Ϲ�®�Ǥ���</P>
+<P>
��������<SMALL>ORDER BY</SMALL>���Ȥ߹�蘆�줿<SMALL>LIMIT</SMALL>
�ϡ��ơ��֥�ξ�������ʬ���֤�����ˤ��Ӥ��ӥ���ǥå�����Ȥ��Ǥ��礦��
�ºݡ�MAX() �� MIN() ������ǥå�����Ȥ�ʤ��Ȥ��Ƥ⡢���Τ褦���ͤ�
ORDER BY �� LIMIT ��Ȥäƥ���ǥå�����ȤäƼ��Ф����Ȥ���ǽ�Ǥ�:
+</P>
<PRE>
SELECT col
@@ -969,23 +986,23 @@ ORDER BY �� LIMIT ��Ȥäƥ���ǥå�����ȤäƼ��Ф����Ȥ���ǽ�Ǥ�:
<P> <SMALL>LIKE</SMALL> ���뤤�� <I>~</I> �Τ褦�ʥ磻��ɥ����ɱ黻
�Ҥ����̤ʴĶ��Ǥ����Ȥ��ޤ���
+</P>
<UL>
- <LI>����ʸ����ʸ����κǽ�ˤ����ޤ������Ȥ��С�</LI>
+ <LI>����ʸ����ʸ����κǽ�ˤ����ޤ������Ȥ��С�
<UL>
<LI><SMALL>LIKE</SMALL> �ѥ�����<I>%</I>�ǻϤޤ�ʤ�</LI>
<LI><I>~</I> (����ɽ��) �ѥ������<I>^</I>�ǻϤޤ�ʤ���Фʤ�ʤ�</LI>
- </UL>
+ </UL></LI>
<LI>����ʸ�����ʸ�����饹����Ϥ�뤳�ȤϤǤ��ޤ��󡣤��Ȥ��С�[a-e]��</LI>
<LI><SMALL>ILIKE</SMALL> �� <I>~*</I> �Τ褦����ʸ���Ⱦ�ʸ������̤�
�ʤ������ϻȤ��ޤ��󡣤��Τ���ꡢ����FAQ��<a href="#4.12">4.12</a>�����������ؿ��Υ���ǥå������Ȥ��ޤ���</LI>
<LI><i>initdb</i> �ˤ����Ƥϡ��ǥե���Ȥ�<I>C</I>�������뤬�Ȥ���
���ƤϤʤ�ޤ��󡣤�����ͳ�ϡ�C��������ʳ��Ǥϼ����礭��ʸ�����Τ뤳��
-���Ǥ��ʤ�����Ǥ������Τ褦�ʾ�硢<PRE>LIKE</PRE>����ǥ����󥰤ˤ���
-Ư���褦�ʡ����̤�<PRE>text_pattern_ops</PRE>����ǥå��������
+���Ǥ��ʤ�����Ǥ������Τ褦�ʾ�硢<code>LIKE</code>����ǥ����󥰤ˤ���
+Ư���褦�ʡ����̤�<code>text_pattern_ops</code>����ǥå��������
���뤳�Ȥ�Ǥ��ޤ���
</LI>
</UL>
- <P>
<P>8.0������Υ�꡼���Ǥϡ�����ǥå����ϡ��ǡ����������礦�ɥ���ǥå����Υ����η��Ȱ��פ��ʤ���С��Ȥ��ʤ����Ȥ����Ф��Ф���ޤ����������餯��int2, int8, ����� numeric ���Υ����Υ���ǥå����������Ǥ���</P>
@@ -994,84 +1011,84 @@ ORDER BY �� LIMIT ��Ȥäƥ���ǥå�����ȤäƼ��Ф����Ȥ���ǽ�Ǥ�:
]
-<P>
<H4><A NAME="4.9">4.9</A>) �䤤��碌���֥ƥ��ޥ������ɤΤ褦���䤤��碌��ɾ������Τ��򸫤�ˤϤɤ����ޤ�����
</H4>
<P> ����饤��ޥ˥奢��� <SMALL>EXPLAIN</SMALL> �򸫤Ʋ�������
+</P>
-<P>
<H3><A NAME="4.10">4.10</A>) R-tree ����ǥå����Ȥϲ��Ǥ�����</H3>
<P> R-tree ����ǥå����϶���Ū�ʥǡ����˥���ǥå������դ��뤿��˻Ȥ��ޤ����ϥå��奤��ǥå����Ǥ��ϰϤθ������Ǥ��ޤ��󡣤ޤ���B-tree ����ǥå����Ǥϡ��������Ǥ����ϰϤθ������Ǥ��ޤ���R-tree ����ǥå����Ǥ����¿�����Υǡ����򰷤��ޤ������Ȥ��С��⤷ R-tree ����ǥå����� <I>point</I> ����°�����դ��뤳�Ȥ��Ǥ���Ȥ���ȥ����ƥ�ϡ���Ĺ�����˰Ϥޤ줿���򤹤٤����򤹤�פȤ����褦���䤤��碌�ˡ�����Ψ�ɤ��������ޤ���
+</P>
<P> R-Tree ���߷פθ�ŵ�Ȥʤ븢�Ҥ�����ʸ��:
+</P>
<P> 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.
+</P>
<P> ������ʸ�ϡ�Stonebraker ������ "Readings in Database Systems"
�Ǥ���夲���Ƥ��ޤ���
+</P>
-<P>
-<SMALL><PRE>
+<PRE>
[������
������ü�������¼�������R-Tree�ط���ʸ����Ҳ𤷤�ĺ���ޤ�����
���ܸ� Postgres ML �Υ��������֤��� "Subject: [postgres95 801] spatial data structures"
<A HREF="http://www.sra.co.jp/people/t-ishii/PostgreSQL/mhonarc/pgsql-jp/1996Oct/msg00007.html">http://www.sra.co.jp/people/t-ishii/PostgreSQL/mhonarc/pgsql-jp/1996Oct/msg00007.html</A>
������������
]
-</PRE></SMALL>
+</PRE>
<P> �ȹ��ߤ� R-Tree �ǥݥꥴ���ܥå��������Ǥ��ޤ�������Ū�ˤ�R-Tree �Ϥ�äȹ⤤����������褦�ˤ��ĥ�Ǥ��ޤ����¼�Ū�ˤϡ�R-Tree �γ�ĥ�ˤϤ���äȤ�����Ȥ�ɬ�פǤ��ơ����ߡ��桹�Ϥ����ɤΤ褦�ˤ��뤫�ˤĤ��Ƥ�ʸ�����äƤ��ޤ���
+</P>
-<P>
-<SMALL><PRE>
+<PRE>
[������
R-Tree ����ǥå�����GiST�dz�ȯ����Ƥ��ޤ���
<a href="http://www.sai.msu.su/~megera/postgres/gist/">http://www.sai.msu.su/~megera/postgres/gist/</a>
]
-</PRE></SMALL>
+</PRE>
-<P>
<H4><A NAME="4.11">4.11</A>) ����Ū�䤤��碌��Ŭ���Ȥϲ��Ǥ�����
</H4>
<P> GEQO �⥸�塼��ϡ������Υơ��֥���礹��Ȥ��ˡ�����Ū���르�ꥺ��(GA)�����碌���®�����ޤ�������ˤ�ꡢ����ߤĤ֤���õ����Ԥʤ�ʤ��Ƥ⡢�礭�ʷ��(join queries)�򰷤����Ȥ��Ǥ���褦�ˤʤ�ޤ���
+</P>
-<P>
<H4><A NAME="4.12">4.12</A>) ����ɽ���Ǥθ�������ʸ���Ⱦ�ʸ���Ȥ���̤��ʤ�����ɽ�������ϤɤΤ褦�˼¸����ޤ�������ʸ���Ⱦ�ʸ���Ȥ���̤��ʤ������Τ���Υ���ǥå����ϤɤΤ褦�˻Ȥ��ޤ�����
</H4>
<P>
<I>~</I>�黻�Ҥ�����ɽ���ȹ��Ԥʤ���<I>~*</I> ����ʸ���Ⱦ�ʸ������̤��ʤ�(case-insensitive)����ɽ���ȹ��Ԥ��ޤ��� ��ʸ���Ⱦ�ʸ������̤��ʤ� <SMALL>LIKE</SMALL> �黻�Ҥ� <SMALL>ILIKE</SMALL> �Ȥ����ޤ���
-
+</P>
<P>��ʸ���Ⱦ�ʸ������̤��ʤ�������Ӥϼ��Τ褦��ɽ���Ǥ��롧
+</P>
<PRE>
SELECT *
FROM tab
WHERE lower(col) = 'abc';
</PRE>
-
+<P>
ɸ�।��ǥå����ǤϻȤ�줺���������ʤ��顢�⤷�ؿ�����ǥå�����
��ä��ʤ餽�줬�Ȥ���Ǥ��礦��
-
+</P>
<PRE>
CREATE INDEX tabindex ON tab (lower(col));
</PRE>
-<P>
<H4><A NAME="4.13">4.13</A>) �䤤��碌����ǡ��ե�����ɤ� <SMALL>NULL</SMALL> �Ǥ��뤳�Ȥ򸡽Ф���ˤϤɤ����ޤ�����
</H4>
<P>������ <SMALL>IS NULL</SMALL> �� <SMALL>IS NOT NULL</SMALL>
�Ȥǻ�Ƥߤޤ���</P>
-<P>
<H4><A NAME="4.14">4.14</A>) �͡���ʸ�����Τ��줾��ΰ㤤�ϲ��Ǥ�����
</H4>
@@ -1086,17 +1103,18 @@ BYTEA bytea ����Ĺ�ΥХ�������(null-byte safe)
</PRE>
<P> ����̾�ˤ��ܤˤ�����Τϡ������ƥࡦ����������Ĵ�٤�Ȥ��䡢���顼��å�������������Ȥ��Ǥ���
-
+</P>
<P> �嵭�η��Τ����ǽ�Σ��Ĥη��� "varlena" ���Ǥ�(���ʤ�����ǥ������κǽ�Σ��Х��Ȥ��ǡ���Ĺ�ǡ�����θ�˼ºݤΥǡ�����³���ޤ�)�����Τ褦�˼ºݤζ��֤�������줿�礭�����⾯���礭���ʤ�ޤ����������������Υǡ�������<SMALL>TOAST</SMALL>�ˤ�갵�̤��줿��ʣ���������Ϥä���¸���줿�ꤷ�ơ��ǥ�������ζ��֤ϻפä���꾮�����ʤ�ޤ���
+</P>
<P><SMALL>VARCHAR(n)</SMALL> �ϲ���Ĺ��ʸ�������¸����Τ˺�Ŭ�Ǥ�������¸�Ǥ���ʸ�����Ĺ�������¤�����ޤ���<SMALL>TEXT</SMALL> ��Ĺ�������¤�̵��ʸ�������¸�Τ���Τ�Τǡ������ 1�����Х��ȤǤ��� <SMALL>CHAR(n)</SMALL>�ϡ�<SMALL>VARCHAR(n)</SMALL>��Ϳ����줿ʸ����������¸����Τ��Ф����֥�󥯤�ͤ����Ǥ��Ĥ�Ʊ��Ĺ����ʸ�������¸����Τ˺�Ŭ�Ǥ���<SMALL>BYTEA</SMALL>�ϡ���ʬŪ��<SMALL>NULL</SMALL> �ΥХ��Ȥ�ޤ�Х��ʥ�ǡ�������¸���뤿��Τ�ΤǤ��������Υ����פ�Ʊ�����餤����ǽ���������ޤ���</P>
-<P>
<H4><A NAME="4.15.1">4.15.1</A>) ����(serial)����ư��ʬ�ե�����ɤϤɤΤ褦�ˤĤ���ޤ�����
</H4>
<P> PostgreSQL �� <SMALL>SERIAL</SMALL> �ǡ������򥵥ݡ��Ȥ��ޤ���������˥������󥹤�ư�������ޤ������Ȥ��С�
+</P>
<PRE>
CREATE TABLE person (
@@ -1104,7 +1122,9 @@ BYTEA bytea ����Ĺ�ΥХ�������(null-byte safe)
name TEXT
);
</PRE>
+<P>
�ϼ�ưŪ�˼��Τ褦����������ޤ�:
+</P>
<PRE>
CREATE SEQUENCE person_id_seq;
CREATE TABLE person (
@@ -1117,38 +1137,43 @@ BYTEA bytea ����Ĺ�ΥХ�������(null-byte safe)
�ϡ� 7.3 ����ϼ�ưŪ�ˤϹԤʤ��ʤ��ʤ�ޤ�����
]
</PRE>
-
+<P>
���֤ˤĤ��ƤΤ�äȾܤ�������ϡ�����饤��ޥ˥奢��� <I>create_sequence</I> ������������
+</P>
<P> �ޤ����ƥ�����<I>OID</I>�ե�����ɤ����ͤȤ��ƻȤ����Ȥ�Ǥ��ޤ����������ʤ��顢�⤷��ǡ����١��������פ��ƥ�����ɤ���ɬ�פ�������ϡ�<SMALL>OID</SMALL>��¸���뤿���<I>pg_dump</I> �� <I>-o</I>���ץ�����Ȥ������ޤ��ϡ�<SMALL>COPY WITH OIDS</small>���ץ�����Ȥ�ɬ�פ�����ޤ���
-
+</P>
<H4><A NAME="4.15.2">4.15.2</A>) <SMALL>SERIAL</SMALL>�ǡ�����������������ͤϡ��ɤ�����������ޤ�����
</H4>
<P>�ҤȤĤ���ˡ�ϡ�<I>nextval()</I> �ؿ���ȤäƤ����ͤ���������<I>��(before)��</I> SEQUENCE ���֥������Ȥ��鼡�� <SMALL>SERIAL</SMALL> �ͤ���Ф������줫��ºݤ������򤹤뤳�ȤǤ���<A HREF="#4.15.1">4.15.1</A> �Υơ��֥�����Ȥ��Ȥ���ȡ���������ǤϤ��Τ褦�ˤʤ�ޤ���
+</P>
<PRE>
new_id = execute("SELECT nextval('person_id_seq')");
execute("INSERT INTO person (id, name) VALUES (new_id, 'Blaise Pascal')");
</PRE>
+<P>
�������ơ�<tt>new_id</tt> ����¸�����������ͤ�¾���䤤��碌��(���Ȥ��С�<tt>person</tt> �ơ��֥���Ф��볰������(foreign key)�Τ褦��)�Ȥ��Ȥ褤�Ǥ��礦����ưŪ�˺��줿<SMALL>SEQUENCE</SMALL>���֥������Ȥ�̾���ϡ�&lt;<I>table</I>&gt;_&lt;<I>serialcolumn</I>&gt;_<I>seq</I> �Τ褦�ˤʤꡢ���Τ�����<I>table</I> �� <I>serialcolumn</I> �Ϥ��줾��ơ��֥��̾����<SMALL>SERIAL</SMALL>������̾���Ǥ���
+</P>
<P>
-
���뤤�ϡ�Ϳ����줿<SMALL>SERIAL</SMALL>�ͤ򡢤��줬�����ͤȤ����������줿<I>���(after)</I>�� <I>currval()</I> �ؿ���ȤäƼ��Ф����Ȥ�Ǥ��ޤ������Ȥ��С�
+</P>
<PRE>
execute("INSERT INTO person (name) VALUES ('Blaise Pascal')");
new_id = execute("SELECT currval('person_id_seq')");
</PRE>
+<P>
�Ǹ�ˡ�<SMALL>INSERT</SMALL>ʸ�����֤�<A HREF="#4.17"><SMALL>OID</SMALL></A>��Ȥäơ������ͤ�ߤĤ��뤳�Ȥ�Ǥ��ޤ�������������oid���ͤ�40����ã����Ȥ�Ȥ���äƤ��ޤ����Ǥ�ܿ������㤤������Ȥʤ�Ǥ��礦��Perl DBI �� DBD::Pg �⥸�塼���Ȥ��С�$sth-&gt;execute() �θ�� $sth-&gt{pg_oid_status} ���ͳ���Ƥ��� OID �ͤ�Ȥ���褦�ˤ��뤳�ȤϤǤ��ޤ���
+</P>
-<P>
<H4><A NAME="4.15.3">4.15.3</A>) <I>currval()</I> ��¾�Υ桼���Ȥζ�����֤˴٤뤳�ȤϤʤ��Ǥ�����
</H4>
<P>����Ϥ���ޤ���<I>currval()</I> �ϡ����٤ƤΥ桼���ǤϤ���ޤ��󤬡����ʤ��ΥХå�����ɤ�Ϳ����줿���ߤ��ͤ��֤��ޤ���
-
+</P>
<H4><A name="4.15.4">4.15.4</A>) �ȥ�󥶥���������Ǥ����Ȥ��ˤ⤦�����ɥ��������ֹ椬�Ȥ��ʤ��ΤϤʤ��Ǥ������������󥹡�SERIAL�����˶���������ΤϤʤ��Ǥ�����
</H4>
@@ -1156,17 +1181,18 @@ BYTEA bytea ����Ĺ�ΥХ�������(null-byte safe)
<P>Ʊ������������뤿��ˡ��¹���Υȥ�󥶥������ˡ�ɬ�פǥȥ�󥶥�����󤬽�λ����ޤǥ��å�����ʤ����������ͤ�Ϳ���Ƥ��ޤ������Τ���ȥ�󥶥���������Ǥ������ֹ������Ƥ˥���åפ������ޤ���
</P>
-<P>
<H4><A NAME="4.16">4.16</A>) <SMALL>OID</SMALL> �Ȥϲ��Ǥ����� <SMALL>TID</SMALL> �Ȥϲ��Ǥ�����
</H4>
<P> <SMALL>OID</SMALL> �Ȥϰ�դΥ���ID ���Ф��� PostgreSQL �������Ǥ���PostgreSQL ����ǤĤ����뤹�٤ƤΥ����ϰ�դ� <SMALL>OID</SMALL> �����ޤ���<I>initdb</I> ��ȯ������� <SMALL>OID</SMALL> �Ϥ��٤� 16384 (<I>include/access/transam.h</I> ����)��꾮�����ͤǤ���<I>initdb</I> ��Τ��٤Ƥ� <SMALL>OID</SMALL> (�桼������)�Ϥ���ʾ���ͤˤʤ�ޤ���
����Ǥϡ�����餹�٤Ƥ� <SMALL>OID</SMALL>�ϰ�ĤΥǡ��֥��ǡ����١������α�ޤ餺��PostgreSQL ���󥹥ȥ졼��������Τ���ǰ�դǤ���
+</P>
<P> PostgreSQL �ϥơ��֥�֤Υ������ӤĤ��뤿��ˡ����Υ����ƥ�ơ��֥���� <SMALL>OID</SMALL> ��Ȥ��ޤ������� <SMALL>OID</SMALL> ������Υ桼���Υ������̤��뤿��������ǻȤ��뤳�Ȥ��Ǥ��ޤ���<SMALL>OID</SMALL> ���ͤ���¸���뤿��ˤ� <I>OID</I> ���򥫥��˻Ȥ����Ȥ򾩤�ޤ������®�������������뤿��� <I>OID</I> �ե�����ɤ˥���ǥå������뤳�Ȥ��Ǥ��ޤ���
O<SMALL>ID</SMALL> �ϡ����ƤΥǡ����١����ǻȤ�������ΰ褫�顢���Ƥο����������˳�����Ƥ��ޤ���<SMALL>OID</SMALL> ��¾�β������Ѥ����������뤤�ϸ��� <SMALL>OID</SMALL> ��ơ��֥�Ȱ��˥��ԡ��������Τʤ顢�Ǥ��ʤ��Ϥ���ޤ���
+</P>
<PRE>
CREATE TABLE new_table(mycol int);
@@ -1177,36 +1203,38 @@ BYTEA bytea ����Ĺ�ΥХ�������(null-byte safe)
</PRE>
<P> O<SMALL>ID</SMALL> �ϡ�4�Х��Ȥ������Ȥ�����¸����Ƥ���Τǡ�40����ۤ���Ȱ��Ƥ��ޤ��Ǥ��礦��ï�⤳�줬����������𤷤Ƥ���ͤϤ��ޤ���Ǥ������������ʤ����ˤ������¤���������Ȥ�ײ褷�Ƥ��ޤ���
+</P>
<P> T<SMALL>ID</SMALL> �������ʪ�������򤽤Υ֥��å��ȥ��ե��å��ͤǼ��̤��뤿��˻Ȥ��ޤ���<SMALL>TID</SMALL> �ϥ������������줿��ƥ����ɤ������Ѥ��ޤ��������� <SMALL>TID</SMALL> �ϡ�ʪ��������ؤ�����˥���ǥå������ܤǻȤ��ޤ���
+</P>
-<P>
<H4><A NAME="4.17">4.17</A>) PostgreSQL �ǻȤ��뤤���Ĥ����Ѹ�ΰ�̣�ϲ��Ǥ�����
</H4>
<P> �����Ĥ��Υ����������ɤ�Ť�ʸ�����ˤϡ����줾������ʬ�����Ǥ�äȰ���Ū�˻Ȥ��������Ѹ줬�Ȥ��Ƥ��ޤ���
+</P>
<UL>
-<LI> �ơ��֥�(table)���ط�(relation)�����饹(class)
-<LI> ����(row)���쥳����(record)�����åץ�(tuple)
-<LI> �����(column)���ե������(field)��°��(attribute)
-<LI> ����(retrieve)������(select)
-<LI> �ִ�(replace)������(update)
-<LI> �ɲ�(append)������(insert)
-<LI> <SMALL>OID</SMALL>, Ϣ��(serial value)
-<LI> �ݡ�����(portal), ��������(cursor)
-<LI> �ΰ��ѿ�(range variable)���ơ��֥�̾(table name)���ơ��֥���̾(table alias)
+<LI> �ơ��֥�(table)���ط�(relation)�����饹(class)</LI>
+<LI> ����(row)���쥳����(record)�����åץ�(tuple)</LI>
+<LI> �����(column)���ե������(field)��°��(attribute)</LI>
+<LI> ����(retrieve)������(select)</LI>
+<LI> �ִ�(replace)������(update)</LI>
+<LI> �ɲ�(append)������(insert)</LI>
+<LI> <SMALL>OID</SMALL>, Ϣ��(serial value)</LI>
+<LI> �ݡ�����(portal), ��������(cursor)</LI>
+<LI> �ΰ��ѿ�(range variable)���ơ��֥�̾(table name)���ơ��֥���̾(table alias)</LI>
</UL>
<P>����Ū�ʥǡ����١����Ѹ�Υꥹ�Ȥϡ�<a
href="http://hea-www.harvard.edu/MST/simul/software/docs/pkgs/pgsql/glossary/glossary.html">http://hea-www.harvard.edu/MST/simul/software/docs/pkgs/pgsql/glossary/glossary.html</A>
�Ǹ��Ĥ����ޤ���</P>
-<P>
<H4><A NAME="4.18">4.18</A>) ���顼��å����� <I>"ERROR: Memory exhausted in AllocSetAlloc()"</I>���Ф�ΤϤʤ��Ǥ�����
</H4>
<P>
�����餯�������ƥ�β��ۥ��꡼�����ƻȤ��̤����Ƥ��ޤäƤ����ǽ�������뤫�������ͥ뤬����꥽�����ˤĤ��Ƥ�������ͤ��㤹�����ǽ��������ޤ���
<I>postmaster</I> ���ư�������ˤ�����ƤߤƲ�������
+</P>
<PRE>
ulimit -d 262144
@@ -1215,34 +1243,34 @@ href="http://hea-www.harvard.edu/MST/simul/software/docs/pkgs/pgsql/glossary/glo
<P>
������ˤ�äơ��ɤ��餫�ҤȤĤ���������Ǥ��礦��������ϥץ������Υǡ��������������¤���⤯���ꤷ�����֤��䤤��碌�����뤹��褦�ˤʤ�Ǥ��礦�����Υ��ޥ�ɤϸ��ԤΥץ������ȡ����Υ��ޥ�ɤ����餻����˺�������ƤΥ��֥ץ������ˤĤ���Ŭ�Ѥ���ޤ����Хå�����ɤ��ȤƤ�¿���Υǡ������֤������<SMALL>SQL</SMALL> ���饤����Ȥ����꤬³���Ƥ���ΤǤ���С����饤����Ȥ򳫻Ϥ������ˤ�����ƤߤƤ���������
+</P>
-<P>
<H4><A NAME="4.19">4.19</A>) �ɤΥС������� PostgreSQL �����餻�Ƥ��뤫��Ĵ�٤�ˤϤɤ����ޤ�����<BR>
</H4>
<P>
<I>psql</I> ���� <CODE>SELECT version();</CODE> �򥿥��פ��ޤ���
-<P>
-
+</P>
<H4><A NAME="4.20">4.20</A>) �顼�������֥������Ȥ�����<I>invalid large obj descriptor</I> ��������ޤ������ʤ��Ǥ��礦����
</H4>
<P>�顼�������֥����������򤹤�Ȥ��ϡ������<tt>BEGIN WORK</tt>��<tt>COMMIT</tt>���դ���ɬ�פ�����ޤ������ʤ����<tt>lo_open</tt> ... <tt>lo_close</tt>��Ϥ��߹��ߤޤ���
+</P>
<P>���ߤϡ�PostgreSQL�Υȥ�󥶥������Υ��ߥåȻ��˥顼�������֥������ȡ��ϥ�ɥ���Ĥ��뤳�Ȥˤ�ꡢ<I>lo_open</I>���ޥ�ɤ���λ����ľ��˶���Ū�˥롼���¹Ԥ��ޤ������Τ��ᡢ�ǽ�˥ϥ�ɥ���Ф��Ʋ����򤷤褦�Ȥ���ȡ�<I>invalid large obj descriptor(�顼�������֥������Ȥε��һҤ�����)</I>�Ȥʤ�ޤ�������ǡ��⤷���ȥ�󥶥�������Ȥ��Τ�˺���ȡ��ʾ��ʤ��Ȥ�ۤȤ�ɤλ��֡�Ư���Ƥ��������ɤ����顼��å�������Ф��ΤǤ���
+</P>
<P>�⤷��<SMALL>ODBC</SMALL>�Τ褦�ʥ��饤����ȥ��󥿡��ե������򤪻Ȥ��ʤ顢<tt>auto-commit off</tt>�����ꤹ��ɬ�פ����뤫�⤷��ޤ���
-<P>
+</P>
<H4><A NAME="4.21">4.21</A>) ���ߤλ��郎�ǥե���ȤȤʤ�褦�ʥ����ϤɤΤ褦�ˤĤ���ޤ�����<BR></H4>
<P><i>CURRENT_TIMESTAMP</i>��Ȥ��ޤ�:
+</P>
<PRE>
CREATE TABLE test (x int, modtime timestamp DEFAULT CURRENT_TIMESTAMP );
</PRE>
-<P>
-
<H4><A NAME="4.22">4.22</A>) �ʤ���<SMALL>IN</SMALL>��Ȥ����䤤��碌���ȤƤ��٤��ΤǤ�����
</H4>
@@ -1256,14 +1284,18 @@ href="http://hea-www.harvard.edu/MST/simul/software/docs/pkgs/pgsql/glossary/glo
FROM tab
WHERE col IN (SELECT subcol FROM subtab)
</PRE>
+<P>
���֤������ơ�
+</P>
<PRE>
SELECT *
FROM tab
WHERE EXISTS (SELECT subcol FROM subtab WHERE subcol = col)
</PRE>
+<P>
�Ȥ��ޤ���
���줬��ü���ᤤ�Ǥ�����<CODE>subcol</CODE>�Ϻ����դ������Ǥ���٤��Ǥ���
+</P>
<P>�С������7.4�ʹߤǤϡ�<CODE>IN</CODE>�ϡ��̾���䤤��碌��Ʊ�ͤ��������줿���祤��ε��Ѥ�ºݤ˻Ȥ���<CODE>EXISTS</CODE>��Ȥ����Ȥ򹥤ߤޤ���
</P>
@@ -1272,22 +1304,26 @@ href="http://hea-www.harvard.edu/MST/simul/software/docs/pkgs/pgsql/glossary/glo
<H4><A NAME="4.23">4.23</A>) <i>����</i>���(<i>outer</i> join)�ϤɤΤ褦�˼¸����ޤ���?<BR></H4>
<P>
PostgreSQL �� SQL ɸ�๽ʸ��Ȥ��������(�����������祤��)�򥵥ݡ��Ȥ��ޤ��������� 2�Ĥ����꤬����ޤ���
+</P>
<PRE>
SELECT *
FROM t1 LEFT OUTER JOIN t2 ON (t1.col = t2.col);
</PRE>
+<P>
���뤤��
+</P>
<PRE>
SELECT *
FROM t1 LEFT OUTER JOIN t2 USING (col);
</PRE>
-
+<P>
�����ξ�ħŪ���䤤��碌�Ǥ� t1.col �� t2.col �ȷ�礷�ơ�t1 �η�礵��ʤ��ä�����(t2 �Ȱ��פ��ʤ��ä�����)���֤��Ƥ��ޤ���<SMALL>RIGHT</SMALL> ���� t2 �η�礵��ʤ��ä�������ä���Ǥ��礦��<SMALL>FULL</SMALL> ���ϡ����פ��������� t1 �� t2 ����Ϸ�礵��ʤ��ä��������֤��Ǥ��礦��<SMALL>OUTER</SMALL> �Ȥ������դϥ��ץ����� <SMALL>LEFT</SMALL>, <SMALL>RIGHT</SMALL>, �ޤ��� <SMALL>FULL</SMALL> �ʤɤη����ꤵ��Ƥ��ޤ����̾����<SMALL>INNER</SMALL>���ȸƤФ�ޤ���
-
+</P>
+<P>
�����Υ�꡼���Ǥϳ������(outer join)��<SMALL>UNION</SMALL> �� <SMALL>NOT IN</SMALL> ��Ȥäƥ��ߥ�졼�ȤǤ��ޤ���
���Ȥ��С�<i>tab1</i> �� <i>tab2</i> ���礹��Ȥ��ϡ������䤤��碌����ĤΥơ��֥��<i>����</i>��礷�ޤ���
-
+</P>
<PRE>
SELECT tab1.col1, tab2.col2
FROM tab1, tab2
@@ -1299,23 +1335,20 @@ PostgreSQL �� SQL ɸ�๽ʸ��Ȥ��������(�����������祤��)�򥵥ݡ��Ȥ��ޤ�������
ORDER BY col1
</PRE>
-<P>
<H4><A NAME="4.24">4.24</A>) ʣ���Υǡ����١�����Ȥ��䤤��碌�ϤɤΤ褦�ˤ���ФǤ��ޤ�����<BR></H4>
<P>
���ԤΥǡ����١����ʳ��ؤ��䤤��碌��ˡ�Ϥ���ޤ��󡣤Ȥ����Τ�PostgreSQL���ǡ����١������ͤΥ����ƥ५���������ɤ߹��ि��ǡ������ˤϡ����Ȥ����Τդ�򤹤�����ˤ������ǡ����١�����ۤ����䤤��碌�򤹤뤹�٤�����ޤ���
-<P>
+</P><P>
<I>contrib/dblink</I> �ϥǡ����١�����(cross-database)���䤤��碌��ؿ��ƽФ��ˤ������ޤ���������󡢥��饤����Ȥ�Ʊ������³���̤Υǡ����١����ؤ�ĥ��ʤ��ƤϤʤ餺����̤򥯥饤�����¦�ǥޡ������ʤ��ƤϤʤ�ޤ���</P>
-<P>
<H4><A NAME="4.25">4.25</A>) �ؿ���ʣ���Υ����ޤ��ϥ������֤��ˤϤɤ����ޤ�����<BR></H4>
<P>7.3�Ǥϴؿ����顢ʣ���Υ�����ʣ���������ñ���֤��ޤ���
<a href="http://techdocs.postgresql.org/guides/SetReturningFunctions">http://techdocs.postgresql.org/guides/SetReturningFunctions</a>��
+</P>
-
-<P>
<H4><A name="4.26">4.26</A>)�ʤ���PL/PgSQL �ؿ����椫�����ơ��֥��μ¤� create/drop ���뤳�Ȥ��Ǥ��ʤ��ΤǤ��礦����</H4>
<P>
PL/PgSQL �ϴؿ������Ƥ򥭥�å��夷�������Թ��������ѤΤ��ᡢ�⤷ PL/PgSQL �ؿ�������ơ��֥�˥�����������ȡ����Υơ��֥�Ϥ��Ȥǥɥ��åפ���ƺ�������ޤ������ؿ����ƤӸƤӽФ����ȡ�����å��夵��Ƥ��뤽�δؿ������ƤϤޤ��Ť�����ơ��֥������Ȥ��ƻؤ��Ƥ��뤫��Ǥ��������ϡ� PL/PgSQL ����� <SMALL>EXECUTE</SMALL> �����ơ��֥륢�������Τ���˻Ȥ����ȤǤ�������ǡ�����䤤��碌��ѡ�����ľ�����Ȥˤʤ�Ǥ��礦��</P>
@@ -1336,7 +1369,6 @@ PL/PgSQL �ϴؿ������Ƥ򥭥�å��夷�������Թ��������ѤΤ��ᡢ�⤷ PL/PgSQL �ؿ��
</UL>
-<P>
<pre>
[����
��ץꥱ��������Ϣ�ι��ܤ��ʤ��ʤ�ޤ������������Τ߻Ĥ��Ƥ���ޤ���
@@ -1355,41 +1387,37 @@ PL/PgSQL �ϴؿ������Ƥ򥭥�å��夷�������Թ��������ѤΤ��ᡢ�⤷ PL/PgSQL �ؿ��
http://www.postgresql.jp/wg/dt/index.html
]
</pre>
-<P>
-<P>
<HR>
<H2 align="center">PostgreSQL�γ�ĥ�ˤĤ��Ƥμ���</H2>
-<P>
<H4><A NAME="5.1">5.1</A>) ��ʬ�ǽ񤤤��桼������ؿ��� psql ����Ǽ¹Ԥ���ȥ���������פ��Ƥ��ޤ��ΤϤʤ��Ǥ�����
</H4>
<P> ����Ͽ����ȹͤ����ޤ������ޤ��ǽ�ˡ����������桼������ؿ���ñ�ȤΥƥ��ȥץ������ˤ��ƻ�ƤߤƲ�������
+</P>
-
-<P>
<H4><A NAME="5.2">5.2</A>) PostgreSQL �Ѥ˽񤤤�����ä���Ũ�ʿ���������ؿ����󶡤��ƥץ��������Ȥ˹׸��������ΤǤ�����
</H4>
<P> ������ιԤʤä���ĥ��<I>pgsql-hackers</I> �᡼��󥰡��ꥹ�Ȥ����äƤ��������������ơ��椯�椯�Ϥ���������ĥ�� <I>contrib/</I> ���֥ǥ��쥯�ȥ��������뤳�Ȥˤʤ�Ǥ��礦��
+</P>
-<P>
<H4><A NAME="5.3">5.3</A>) ���ץ���֤� C����δؿ��ϤɤΤ褦�˽񤭤ޤ�����
</H4>
<P>�С������7.3�ʹߤ�PostgreSQL�Ǥϡ��ơ��֥���֤��ؿ��� C, PL/PgSQL�������� SQL �ˤƴ����˥��ݡ��Ȥ��ޤ����ܤ����ϥץ�����ޥ����ɤξ���򸫤Ƥ���������C��������줿ɽ���֤��ؿ������꤬<I>contrib/tablefunc</I>����ˤ���ޤ���
+</P>
-
-<P><H4><A NAME="5.4">5.4</A>) ���������ե�������ѹ����ޤ������ƥ���ѥ��뤷�Ƥ��Ѳ��������ʤ��ΤϤʤ��Ǥ�����
+<H4><A NAME="5.4">5.4</A>) ���������ե�������ѹ����ޤ������ƥ���ѥ��뤷�Ƥ��Ѳ��������ʤ��ΤϤʤ��Ǥ�����
</H4>
<P> �����Ĥ��� <I>Makefile</I> �����󥯥롼�ɡ��ե�������Ф���Ŭ�ڤʰ�¸�ط�����äƤ��ޤ���<I>make clean</I> �򤷤Ƥ���⤦���� <I>make</I> ��Ԥʤ�ʤ��ƤϤʤ�ޤ��󡣤⤷��<SMALL>GCC</SMALL> �򤪻Ȥ��Ǥ���� <i>configure</i> �� <i>--enable-depend</i> ���ץ�����Ȥäơ�����ѥ���˰�¸�ط���ưŪ��Ĵ�٤����뤳�Ȥ�Ǥ��ޤ���
+</P>
-<P>
<HR>
-<SMALL><PRE>
+<PRE>
[������
���ܸ��Ǥ�����ˤĤ��Ƥϰʲ����̤�Ǥ���
@@ -1426,7 +1454,6 @@ PL/PgSQL �ϴؿ������Ƥ򥭥�å��夷�������Թ��������ѤΤ��ᡢ�⤷ PL/PgSQL �ؿ��
�ʤ������������˴ؤ��뤴�ո���(<A HREF="mailto:juk at PostgreSQL.jp">juk at PostgreSQL.jp</A>)�ޤǤ��󤻲�������
]
-</PRE></SMALL>
-</P>
+</PRE>
</BODY>
</HTML>
diff --git a/doc/src/FAQ/FAQ_polish.html b/doc/src/FAQ/FAQ_polish.html
index a92b90d3136..0966aee27a2 100644
--- a/doc/src/FAQ/FAQ_polish.html
+++ b/doc/src/FAQ/FAQ_polish.html
@@ -237,7 +237,7 @@
<P>Tekst powy�ej, jest klasyczn� licencj� BSD.
Nie posiada ona �adnych restrykcji co do u�ywania kodu �r�d�owego.
- Podoba nam si� i nie zamierzamy jej zmienia�.
+ Podoba nam si� i nie zamierzamy jej zmienia�.</P>
<H4><A name="1.3">1.3</A>) Na jakich systemach Unixowych dzia�a
PostreSQL?</H4>
@@ -266,7 +266,7 @@
<P>Serwer mo�e by� uruchamiany na Windows NT i Win2k u�ywaj�c
bibliotek Cygwin, Cygnus Unix/NT. W pliku <I>pgsql/doc/FAQ_MSWIN</I>
znajduj�cym si� w �r�d�ach lub pod adresem: <A href=
- "http://www.postgresql.org/docs/faqs/text/FAQ_MSWIN">http://www.PostgreSQL.org/docs/faqs/text/FAQ_MSWIN</A> na naszych stronach.<P>
+ "http://www.postgresql.org/docs/faqs/text/FAQ_MSWIN">http://www.PostgreSQL.org/docs/faqs/text/FAQ_MSWIN</A> na naszych stronach.</P><P>
Obecnie prowadzone s� prace nad stworzeniem wersji dla MS Win
NT/200/XP. Je�li chcesz si� dowiedzie� o obecnym statusie tych prac
zobacz <A
@@ -283,7 +283,7 @@
<P>G��wny serwer ftp z dost�pem "anonymous" dla PostgreSQL znajduje
si� <A href="ftp://ftp.PostgreSQL.org/pub">ftp://ftp.PostgreSQL.org/pub</A>.
- je�li szukasz mirror�w sprawd� nasz� g��wn� stron� www.<P>
+ je�li szukasz mirror�w sprawd� nasz� g��wn� stron� www.</P>
<H4><A name="1.6">1.6</A>) Gdzie mo�na szuka� wsparcia technicznego?</H4>
@@ -334,7 +334,7 @@
mo�na znale�� na stronach WWW PostgreSQL pod adresem:</P>
<BLOCKQUOTE>
- <A href="http://www.PostgreSQL.org">http://www.PostgreSQL.org</A>
+ <P><A href="http://www.PostgreSQL.org">http://www.PostgreSQL.org</A></P>
</BLOCKQUOTE>
<P>W sieci EFNet istnieje kana� IRC <I>#PostgreSQL</I>. Ja, do
@@ -599,7 +599,7 @@
</P>
<P>
Wi�cej informacji na ten temat znajduje si� pod adresem See
- <A href="http://techdocs.postgresql.org/guides/GUITools">http://techdocs.postgresql.org/guides/GUITools</A>.
+ <A href="http://techdocs.postgresql.org/guides/GUITools">http://techdocs.postgresql.org/guides/GUITools</A>.</P>
<H4><A name="2.4">2.4</A>) Za pomoc� jakich j�zyk�w programowania
mo�na si� komunikowa� z PostgreSQL?</H4>
@@ -882,14 +882,13 @@
pierwszych rz�d�w, by� mo�e b�dzie konieczno�� wykonania zapytania do
momentu a� zostan� znalezione po��dane wyniki.</P>
<P>
- Aby otrzyma� losowy rz�d, u�yj:
+ Aby otrzyma� losowy rz�d, u�yj:</P>
<PRE>
SELECT col
FROM tab
ORDER BY random()
LIMIT 1;
</PRE>
- </P>
<H4><A name="4.3">4.3</A>) Jak mog� uzyska� list� wszystkich tabel
czy innych rzeczy pod <I>psql</I>?</H4>
@@ -926,7 +925,6 @@
ALTER TABLE tab DROP COLUMN old_col;
COMMIT;
</PRE>
- </P>
<H4><A name="4.5">4.5</A>) Jaki jest maksymalny rozmiar dla rz�du,
tabeli i bazy danych?</H4>
@@ -1034,7 +1032,7 @@
przy wykonywaniu z��cze� (join). Sekwencyjne przeszukiwanie po kt�rym
nast�puje sortowanie jest zazwyczaj szybsze ni� wyszukiwanie za
pomoc� indeksu na du�ej tabeli.</P>
- Jakkolwiek <SMALL>LIMIT</SMALL> w po��czeniu z <SMALL>ORDER BY</SMALL>
+ <P>Jakkolwiek <SMALL>LIMIT</SMALL> w po��czeniu z <SMALL>ORDER BY</SMALL>
cz�sto b�dzie wykorzystywa� indeksy poniewa� jedynie ma�a cz�� z
tabeli jest zwracana. W rzeczywisto�ci, chocia� MAX() i MIN() nie
u�ywaj� indeks�w, mo�liwe jest aby zwr�ci� te warto�ci u�ywaj�c
@@ -1049,7 +1047,7 @@
<P>
Je�li uwa�asz, �e optimizer myli si� wybieraj�c sequential scan, u�yj
SET enable_seqscan TO 'off' i uruchom testy aby sprawdzi� czy wtym
- wypadku zapytanie b�dzie szybciej wykonywane.
+ wypadku zapytanie b�dzie szybciej wykonywane.</P>
<P>Kiedy u�ywa si� operator�w dopasuj�cych takich jak
<SMALL>LIKE</SMALL> lub <I>~</I>, indeksy b�d� u�ywane jedynie w
@@ -1057,16 +1055,16 @@
<UL>
<LI>Pocz�tek wyszukiwania jest oparty na pocz�tku �a�cucha tekstu.
<UL>
- <LI>wzorce <SMALL>LIKE</SMALL> nie mog� si� zaczyna� <I>%</I>
+ <LI>wzorce <SMALL>LIKE</SMALL> nie mog� si� zaczyna� <I>%</I></LI>
<LI>dopasowania operatorem <I>~</I> (dopasowania regularne)
- musz� si� zaczyna� znakiem specjalnym <I>^</I>.</P>
- </UL>
+ musz� si� zaczyna� znakiem specjalnym <I>^</I>.</LI>
+ </UL></LI>
<LI>Pocz�tek wyszukiwania nie mo�e si� zaczyna� od klas znak�w, np.
- [a-e].
+ [a-e].</LI>
<LI>Case-insensitive searches such as ILIKE and ~* do not utilise
indexes. Instead, use functional indexes, which are described in
- section 4.12.
- <LI>Standardowe locale C musi by� uzyte przy wykonywaniu initdb
+ section 4.12.</LI>
+ <LI>Standardowe locale C musi by� uzyte przy wykonywaniu initdb</LI>
</UL>
<H4><A name="4.9">4.9</A>) Jak mog� sprawdzi� w jakis spos�b "query
optimizer" wykonuje moje zapytanie?</H4>
@@ -1165,7 +1163,7 @@ BYTEA bytea zmiennej d�ugo�ci tablica bajt�w (null-byte s
przechowywane out-of-line jako <SMALL>TOAST</SMALL>, wi�c faktyczne
zu�ycie miejsca na dysku mo�e by� mniejsze ni� oczekiwane.</P>
- <SMALL>VARCHAR(n)</SMALL> jest
+ <P> <SMALL>VARCHAR(n)</SMALL> jest
najodpowiedniejszy do przechowywania �a�cuch�w o r�nej d�ugo�ci
ale okre�la on maksymaln� jego d�ugo��.
@@ -1344,7 +1342,7 @@ BYTEA bytea zmiennej d�ugo�ci tablica bajt�w (null-byte s
<P>List� termin�w zwi�zanych z bazami danych mo�esz znale�� pod tym
adresem:<A
- href="http://hea-www.harvard.edu/MST/simul/software/docs/pkgs/pgsql/glossary/glossary.html">http://hea-www.harvard.edu/MST/simul/software/docs/pkgs/pgsql/glossary/glossary.html</A>.
+ href="http://hea-www.harvard.edu/MST/simul/software/docs/pkgs/pgsql/glossary/glossary.html">http://hea-www.harvard.edu/MST/simul/software/docs/pkgs/pgsql/glossary/glossary.html</A>.</P>
<H4><A name="4.18">4.18</A>) Sk�d bierze si� ten b��d <I>"ERROR:
Memory exhausted in AllocSetAlloc()"</I>?</H4>
@@ -1488,7 +1486,7 @@ BYTEA bytea zmiennej d�ugo�ci tablica bajt�w (null-byte s
kolumn?</H4>
<P>Mo�esz w �atwy spos�b zwraca� wiele rz�d�w lub kolumn u�ywaj�c
- funkcji z: <A HREF="http://techdocs.postgresql.org/guides/SetReturningFunctions">http://techdocs.postgresql.org/guides/SetReturningFunctions</A>.
+ funkcji z: <A href="http://techdocs.postgresql.org/guides/SetReturningFunctions">http://techdocs.postgresql.org/guides/SetReturningFunctions</A>.</P>
<H4><A name="4.26">4.26</A>) Dlaczego nie mog� w spos�b pewny
tworzy�/usuwa� tabel tymczasowych w funkcjach PL/PgSQL?</H4>
@@ -1503,38 +1501,36 @@ BYTEA bytea zmiennej d�ugo�ci tablica bajt�w (null-byte s
funkcji.
</P>
- <H4><A name="4.27">4.27) Jakie s� mo�liwo�ci replikacji w PostgreSQL?</H4>
+ <H4><A name="4.27">4.27</A>) Jakie s� mo�liwo�ci replikacji w PostgreSQL?</H4>
<P>
Jest kilka opcji aby stosowa� replikacj� typu master/slave. Ten typ
pozwala jedynie masterowi na dokonywanie zmian w bazie danych, a
slave mo�e jedynie te zmiany odczytywa�. Na stronie
<A
- HREF="http://gborg.PostgreSQL.org/genpage?replication_research">http://gborg.PostgreSQL.org/genpage?replication_research</A>
+ href="http://gborg.PostgreSQL.org/genpage?replication_research">http://gborg.PostgreSQL.org/genpage?replication_research</A>
znajduje si� ich lista. Replikacja typu multi-master jest w trakcie
prac, opis projektu znajduje si� pod adresem: <A
- HREF="http://gborg.PostgreSQL.org/project/pgreplication/projdisplay.php">
+ href="http://gborg.PostgreSQL.org/project/pgreplication/projdisplay.php">
http://gborg.PostgreSQL.org/project/pgreplication/projdisplay.php</A>.
</P>
- <H4><A name="4.28">4.28) Jakie mo�liwo�ci szyfrowania oferuje
+ <H4><A name="4.28">4.28</A>) Jakie mo�liwo�ci szyfrowania oferuje
PostgreSQL?</H4>
- <P>
<UL>
<LI>contrib/pgcrypto zawiera wiele funkcji za pomoc�, kt�rych mo�emy u�ywa�
- kryptografii w zapytaniach SQL.
+ kryptografii w zapytaniach SQL.</LI>
<LI>Aby szyfrowa� transmisj� od klienta do serwera, ten musi mie�
ustawion� opcj� ssl na true w pliku postgresql.conf, odpowiedni
wpis host lub hostssl musi wyst�powa� w pliku pg_hba.conf, oraz
sslmode nie mo�e by� wy��czone w kliencie. (Warto zwr�ci� uwag�, �e
mo�liwe jest tak�e u�ywanie transport�w szyfruj�c�w przez strony
trzecie, takie jak stunnel lub ssh, poza natywnym wsparciem dla SSL
- przez PostgreSQL).
+ przez PostgreSQL).</LI>
<LI>Has�a u�ytkownik�w bazy danych s� automatycznie szyfrowane od
wersji 7.3. W poprzednich wersjach, nale�y t� funkcjonalno�� poprzez
- w��czenie opcji PASSWORD_ENCRYPTION w postgresql.conf.
- <LI>Serwer mo�e dzia�a� u�ywaj�c szyfrowanego systemu plik�w.
+ w��czenie opcji PASSWORD_ENCRYPTION w postgresql.conf. </LI>
+ <LI>Serwer mo�e dzia�a� u�ywaj�c szyfrowanego systemu plik�w.</LI>
</UL>
-</P>
<H2 align="center">Rozwijanie PostgreSQL</H2>
diff --git a/doc/src/FAQ/FAQ_russian.html b/doc/src/FAQ/FAQ_russian.html
index debcc882666..bd515c7c79f 100644
--- a/doc/src/FAQ/FAQ_russian.html
+++ b/doc/src/FAQ/FAQ_russian.html
@@ -236,16 +236,16 @@
<A href="http://techdocs.postgresql.org/companies.php">http://techdocs.postgresql.org/companies.php</A>.</P>
- <H4><A name="1.6">1.6</A>) ��� ��� �������� �� ������?</H3>
+ <H4><A name="1.6">1.6</A>) ��� ��� �������� �� ������?</H4>
<P>�������� ��������� �� ����������� ������ ��ޣ�� �� ������ �
PostgreSQL �� ������:
- <A HREF="http://www.postgresql.org/support/submitbug">
+ <A href="http://www.postgresql.org/support/submitbug">
http://www.postgresql.org/support/submitbug</A>.</P>
<P>����� ��������� ������� ����� ������ ������ PostgreSQL �� �����
FTP ����� <A href="ftp://ftp.postgresql.org/pub">
- ftp://ftp.PostgreSQL.org/pub</A>.
+ ftp://ftp.PostgreSQL.org/pub</A>.</P>
<H4><A name="1.7">1.7</A>) ����� ��������� ������?</H4>
@@ -604,19 +604,18 @@
��� ���������� ������ ������� �������? ������������ ������?</H4>
<P>��� ��������� ������ ���������� �����, ���� �� ������ �� ����������
- �� ������ ���������� <SMALL>SELECT</SMALL> ����������� <SMALL>LIMIT</SMALL>.</P>
+ �� ������ ���������� <SMALL>SELECT</SMALL> ����������� <SMALL>LIMIT</SMALL>.
���� ���� �����-���� ������, ������� ��������� � <SMALL>ORDER BY</SMALL>,
�� ��������, ��� ���� ������ �������� � �� �����. ���� �� �� ������
���������� ����������� ����� �� ������ ���������� <SMALL>SELECT</SMALL>,
����������� ������ � <SMALL>FETCH</SMALL>.</P>
- <p>To <small>SELECT</small> a random row, use:
-</p><pre> SELECT col
+ <p>To <small>SELECT</small> a random row, use:</p>
+<pre> SELECT col
FROM tab
ORDER BY random()
LIMIT 1;
</pre>
-</p>
<H4><A name="4.2">4.2</A>) ��� ��� ����� ����� �������, �������,
���� ������ � ������������ ����������? ��� ��� ������� �������,
@@ -646,7 +645,7 @@
<H4><A name="4.3">4.3</A>) ��� �������� ��� ������ �������?</H4>
<P>� 8.0 � ����� ������� �������, ��������� ���� ������� �����������
- ����� ����� ����� <SMALL>ALTER TABLE ALTER COLUMN TYPE</SMALL>.
+ ����� ����� ����� <SMALL>ALTER TABLE ALTER COLUMN TYPE</SMALL>.</P>
<P>� ����� ������ ������� �������� ���:</P>
<PRE>
@@ -662,7 +661,7 @@
<P>���������� ��������� �����������:</P>
<BLOCKQUOTE>
-<TABLE BORDER="1">
+<TABLE>
<TBODY>
<TR>
<TD>������������ ������ ����?</TD>
@@ -775,7 +774,7 @@
� � ���� ������ ������ ����� ��������������, ��������� ��� ����������
����� ������������ ��������� ����� �������. ���������� MAX() � MIN() ��
���������� �������, �� ������ ������������ ��� ���������� �������� �
- <SMALL>ORDER BY</SMALL> � <SMALL>LIMIT</SMALL>:
+ <SMALL>ORDER BY</SMALL> � <SMALL>LIMIT</SMALL>:</P>
<pre>
SELECT col
FROM tab
@@ -833,8 +832,8 @@
WHERE lower(col) = 'abc';
</PRE>
- ��� ����������� �� ����� ������������ ����������� ������. ������, ����
- �� ��������� ������ ���������, �� ����� �����������:
+<P> ��� ����������� �� ����� ������������ ����������� ������. ������, ����
+ �� ��������� ������ ���������, �� ����� �����������:</P>
<PRE>
CREATE INDEX tabindex ON tab (lower(col));
</PRE>
@@ -848,7 +847,7 @@
<H4><A name="4.10">4.10</A>) ������ ������� ����� ������� �����������
������?</H4>
<BLOCKQUOTE>
-<TABLE BORDER="1">
+<TABLE>
<TBODY>
<TR>
<TH>���</TH>
@@ -919,7 +918,7 @@
);
</PRE>
- ������������� ������������� �:
+<P> ������������� ������������� �: </P>
<PRE>
CREATE SEQUENCE person_id_seq;
CREATE TABLE person (
@@ -994,12 +993,12 @@
O<SMALL>ID</SMALL>, ������ ��� ������������������ <SMALL>SERIAL</SMALL>
��������� ������ ������ ������� � ����� ������� ������ ����������
������������. ��� �������� �������� 8-�� ������� ������������������
- �������� ��� <SMALL>SERIAL8</SMALL>.
+ �������� ��� <SMALL>SERIAL8</SMALL>.</P>
<P>T<SMALL>ID</SMALL> ������������ ��� ������������� �����������
���������� ������� � �������� � offset ����������. T<SMALL>ID</SMALL>
���������� ����� ���� ��� ������ � ������� ���� �������� ��� �����������.
- <P>T<SMALL>ID</SMALL> ������������ ���������� �������� � ��������
+ T<SMALL>ID</SMALL> ������������ ���������� �������� � ��������
��������� �� ���������� ������.</P>
diff --git a/doc/src/FAQ/FAQ_turkish.html b/doc/src/FAQ/FAQ_turkish.html
index e0921f64970..ac31a57ab76 100644
--- a/doc/src/FAQ/FAQ_turkish.html
+++ b/doc/src/FAQ/FAQ_turkish.html
@@ -111,7 +111,7 @@ adreslerinde g�r�lebilir.</p>
<a href="#4.18">4.18</a>) Neden "<code>ERROR: Memory exhausted in AllocSetAlloc()</code>"
hatas�n� al�yorum?<br>
<a href="#4.19">4.19</a>) Hangi PostgreSQL s�r�m�n� �al�st�rd���m� nas�l g�rebilirim?<br>
- <a href="#4.20">4.20</a>) Neden <i>large-object</i> i�lemlerim, "</code>invalid large
+ <a href="#4.20">4.20</a>) Neden <i>large-object</i> i�lemlerim, "<code>invalid large
obj descriptor</code>" hatas�n� veriyor?<br>
<a href="#4.21">4.21</a>) �u andaki zaman� �ntan�ml� de�er olarak kabul
eden kolonu nas�l yarat�r�m?<br>
@@ -190,7 +190,7 @@ adreslerinde g�r�lebilir.</p>
<P>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�, <a href="http://pgfoundry.org/projects/pginstaller">http://pgfoundry.org/projects/pginstaller</a>. adresinden
- indirilebilir.
+ indirilebilir.</P>
<p>Ayr�ca, http://forge.novell.com adresinde Novell Netware 6 portu bulunmaktad�r.</p>
@@ -218,7 +218,7 @@ adreslerinde g�r�lebilir.</p>
<pre>subscribe<br>end</pre>
<p>yazan bir e-posta atman�z yeterli olacakt�r.</p>
<p>Bunun d���ndaki e-posta listelerine ve PostgreSQL hakk�nda bilgiye, PostgreSQL WWW
- ana sayfas�ndan ulasabilirsiniz: <i><a href="http://www.PostgreSQL.org">http://www.PostgreSQL.org</a></i><p>
+ ana sayfas�ndan ulasabilirsiniz: <i><a href="http://www.PostgreSQL.org">http://www.PostgreSQL.org</a></i></p>
<p>Ayn� zamanda, EFNet �zerinde, <code>#PostgreSQL</code> adl� bir IRC kanal�
bulunmaktad�r. Bunun i�in, <code>irc -c '#PostgreSQL' "$USER" irc.phoenix.net</code>
Unix komutunu kullanabilirsiniz.</p>
@@ -235,7 +235,7 @@ adreslerinde g�r�lebilir.</p>
<code>/doc</code> dizinine bak�n�z. Ayr�ca, bu el kitap��klar�n� online olarak
<i><a href="http://www.PostgreSQL.org/docs/">http://www.PostgreSQL.org/docs/</a></i> adresinden inceleyebilirsiniz.</p>
<p><i><a href="http://www.PostgreSQL.org/docs/awbook.html">http://www.PostgreSQL.org/docs/awbook.html</a></i>
- ve <i><a href="http://www.commandprompt.com/ppbook">http://www.commandprompt.com/ppbook<a></i>
+ ve <i><a href="http://www.commandprompt.com/ppbook">http://www.commandprompt.com/ppbook</a></i>
adreslerinde PostgreSQL kitaplar� bulunmaktad�r. PostgreSQL kitablar�n�n listesine,
<i><a href="http://www.ca.PostgreSQL.org/books/">http://www.ca.PostgreSQL.org/books/</a></i> adresinden ula�aiblirsiniz.
Ayr�ca, PostgreSQL konusundaki teknik makalelere de
@@ -288,7 +288,7 @@ adreslerinde g�r�lebilir.</p>
<h4><a name="1.14">1.14</a>) PostgreSQL, diger DBMS'lerle nas�l kar��last�r�labilir?</h4>
<p>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.</p>
- <p>�zellikler:<p>
+ <p>�zellikler:</p>
<p>PostgreSQL mevcut b�y�k ticari veritabanlar�n�n, <i>transaction</i>,
<i>subselect</i>, <i>trigger</i>, <i>view</i>, <i>foreign key referential integrity</i>
ve <i>sophisticated locking</i> gibi (<i>user-defined types</i>), <i>rules</i>,
@@ -355,7 +355,7 @@ adreslerinde g�r�lebilir.</p>
<p><i><a href="http://www.webreview.com/">http://www.webreview.com/</a></i> adresinde,
arka planda veritaban� �al�st�ran Web sayfalar� i�in giri� seviyesinde bilgi bulunmaktad�r.</p>
<p>Web ile b�t�nle�me i�in, PHP (<i><a href="http://www.php.net/"></a></i>)
- m�kemmel bir arabirim sunar.<p>
+ m�kemmel bir arabirim sunar.</p>
<p>Karma��k sorunlar i�in, �o�u kisi Perl arabirimini ve CGI.pm ya da mod_perl kullan�r.</p>
<h4><a name="2.3">2.3</a>) PostgreSQL'in grafik kullan�c� arabirimi var m�d�r?</h4>
@@ -466,7 +466,7 @@ adreslerinde g�r�lebilir.</p>
<p>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:</p>
- <pre>cd /usr/local/pgsql<br>./bin/postmaster >server.log 2>&1 &</pre>
+ <pre>cd /usr/local/pgsql<br>./bin/postmaster >server.log 2>&amp;1 &amp;</pre>
<p>Bu i�lem PostgreSQL ana dizinine <code>server.log</code> dosyas� yerle�tirecektir.
Bu dosya sunucunun ya�ad��� sorunlar ya da hatalar hakk�nda yararl� bilgiler i�erir.
<code>-d</code> se�ene�i, hata ay�klama seviyesini belirten bir rakam ile kullan�l�r.
@@ -497,7 +497,7 @@ adreslerinde g�r�lebilir.</p>
de�eri ile ya da <code>postgresql.conf</code> dosyas�n� d�zenleyerek yeniden
ba�latmakla artt�rabilirsiniz.</p>
<p>E�er <code>-N</code> de�erini 32'den b�y�k yapacaksan�z, ayn� zamanda
- <code>-B</code> de�erini de de�i�tirmeniz gerekti�ini unutmay�n. </code>-B</code>,
+ <code>-B</code> de�erini de de�i�tirmeniz gerekti�ini unutmay�n. <code>-B</code>,
<code>-N</code>'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 <i>backend</i> s�re�leri i�in, �e�itli �ekirdek
yap�land�rma parametrelerini artt�rman�z gerekecektir. Yap�lmas� gerekenler,
@@ -554,7 +554,7 @@ adreslerinde g�r�lebilir.</p>
<code>LIMIT</code> ... kullan�n�z.</p>
<p>�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. </b></p>
+ sat�r� i�leyebilir, ya da t�m sorgu istenen sat�rlar �retilene kadar i�lenebilir. </p>
<h4><a name="4.3">4.3</a>) psql'in i�inde g�rd�g�m tablolar�n ya da di�er
�eylerin listesini nas�l alabilirim?</h4>
@@ -786,7 +786,7 @@ CREATE UNIQUE INDEX person_id_key ON person ( id );
execute("INSERT INTO person (id, name) VALUES (new_id, 'Blaise Pascal')");</pre>
<P>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).</p>
+ &lt;tablo ad�&gt;_&lt;serial kolonu ad�&gt;_seq �eklinde olacakt�r (&lt; &gt; i�aretleri olmadan).</p>
<p>Alternatif olarak, atanm�� SERIAL de�erini, de�er girildikten sonra currval()
fonksiyonu ile alabilirsiniz:</p>