Here's the patch to fix a lot of markup errors in the HTML FAQs. Doesn't

change content (at least not supposed to).

Magnus Hagander
This commit is contained in:
Bruce Momjian 2005-03-11 21:46:54 +00:00
parent caad817d1c
commit b9de4a26cf
22 changed files with 5437 additions and 4299 deletions

View File

@ -1,7 +1,7 @@
Frequently Asked Questions (FAQ) for PostgreSQL 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 (pgman@candle.pha.pa.us) Current maintainer: Bruce Momjian (pgman@candle.pha.pa.us)
@ -819,7 +819,8 @@
4.19) How do I return multiple rows or columns from a function? 4.19) How do I return multiple rows or columns from a function?
It is easy using set-returning functions, 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 4.20) Why do I get "relation with OID ##### does not exist" errors when
accessing temporary tables in PL/PgSQL functions? accessing temporary tables in PL/PgSQL functions?

View File

@ -1,7 +1,7 @@
Developer's Frequently Asked Questions (FAQ) for PostgreSQL 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 (pgman@candle.pha.pa.us) Current maintainer: Bruce Momjian (pgman@candle.pha.pa.us)
@ -9,8 +9,8 @@
http://www.postgresql.org/files/documentation/faqs/FAQ_DEV.html. 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.1) How do I get involved in PostgreSQL development?
1.2) What development environment is required to develop code? 1.2) What development environment is required to develop code?
1.3) What areas need work? 1.3) What areas need work?
@ -31,8 +31,8 @@
1.17) Where can I get technical assistance? 1.17) Where can I get technical assistance?
1.18) How do I get involved in PostgreSQL web site development? 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 2.1) How do I efficiently access information in tables from the
backend code? backend code?
2.2) Why are table, column, type, function, view names sometimes 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 contribute to that. A temporary todo list for current website
development issues is available at http://xzilla.postgresql.org/todo 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? 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 You first need to find the tuples(rows) you are interested in. There

View File

@ -603,22 +603,17 @@
Se o postmaster está sendo executado, inicie o psql em uma janela, e Se o postmaster está sendo executado, inicie o psql em uma janela, e
então encontre o PID do processo postgres utilizado pelo psql então encontre o PID do processo postgres utilizado pelo psql
utilizando utilizando SELECT pg_backend_pid(). Utilize um depurador para anexar
SELECT pg_backend_pid() ao PID do postgres. Você pode definir pontos de parada (breakpoints)
no depurador e digitar consultas no psql. Se você está depurando a
. Utilize um depurador para anexar ao PID do postgres. Você pode inicialização do postgres, você pode definir PGOPTIONS="-W n" e então
definir pontos de parada (breakpoints) no depurador e digitar iniciar o psql. Isto retardará a inicialização por n segundos então
consultas no psql. Se você está depurando a inicialização do postgres, você pode anexar o depurador ao processo, definir quaisquer pontos de
você pode definir PGOPTIONS="-W n" e então iniciar o psql. Isto parada e continuar pela sequência de inicialização.
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 Há várias variáveis de configuração do servidor log_* que habilitam a
log_* exibição de estatísticas que podem ser muito úteis para depuração e
medidas de performance.
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 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) 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? 3.11) Que tipo de hardware eu devo usar?
Por causa do hardware de PC ser em sua maioria compatível, pessoas 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 tendem a acreditar que todos os hardwares de PC satilde;o de mesma
qualidade. Não é verdade. ECC RAM, SCSI e placas mãe de qualidade são qualidade. Natilde;o é verdade. ECC RAM, SCSI e placas mãe de
mais confiáveis e têm uma melhor performance do que hardwares mais qualidade são mais confiáveis e têm uma melhor performance do que
baratos. O PostgreSQL executará em quase todo hardware, mas se a hardwares mais baratos. O PostgreSQL executará em quase todo hardware,
confiabilidade e a performance forem importantes é prudente pesquisar mas se a confiabilidade e a performance forem importantes é prudente
sobre as opções de hardware. Nossas listas de discussão podem ser pesquisar sobre as opções de hardware. Nossas listas de discussão
usadas para discutir opções de hardware e dilemas. podem ser usadas para discutir opções de hardware e dilemas.
_________________________________________________________________ _________________________________________________________________
Perguntas Operacionais Perguntas Operacionais
@ -753,14 +748,12 @@ log_*
dados? dados?
Estes são os limites: Estes são os limites:
Tamanho máximo de um banco de dados? ilimitado (existem bancos de dad Tamanho máximo de um banco de dados? ilimitado (existem bancos de dados de 32 TB)
os de 32 TB)
Tamanho máximo de uma tabela? 32 TB Tamanho máximo de uma tabela? 32 TB
Tamanho máximo de um registro? 1.6TB Tamanho máximo de um registro? 1.6TB
Tamanho máximo de um campo? 1 GB Tamanho máximo de um campo? 1 GB
Número máximo de registros em uma tabela? ilimitado 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 Número máximo de colunas em uma tabela? 250-1600 dependendo dos tipos das colunas
s colunas
Número máximo de índices em uma tabela? ilimitado 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 É claro, que eles não são ilimitados, mas limitados ao espaço em disco
@ -795,17 +788,14 @@ N
O tamanho de uma página de dados no PostgreSQL é 8192 bytes (8 KB), então: O tamanho de uma página de dados no PostgreSQL é 8192 bytes (8 KB), então:
8192 bytes por página 8192 bytes por página
------------------------ = 136 registros por página do banco de dados (ar ------------------------ = 136 registros por página do banco de dados (arredondado para baixo)
redondado para baixo)
60 bytes por registro 60 bytes por registro
100000 registros de dados 100000 registros de dados
---------------------------- = 735 páginas do banco de dados (arredondado ---------------------------- = 735 páginas do banco de dados (arredondadopara cima)
para cima)
128 registros por página 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 Índices não requerem muito espaço, mas contém dados que foram
indexados, então eles podem ocupar algum espaço. 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 * 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 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 que não seja a C. Você pode criar um índice especial
text_pattern_ops text_pattern_ops para tais casos que funcionam somente para
para tais casos que funcionam somente para indexação utilizando indexação utilizando LIKE.
LIKE
.
Em versões anteriores a 8.0, índices frequentemente não podiam ser 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 usados a menos que os tipos de dados correspodessem aos tipos da
@ -948,14 +936,10 @@ LIKE
Tipo Nome Interno Notas Tipo Nome Interno Notas
-------------------------------------------------- --------------------------------------------------
VARCHAR(n) varchar tamanho especifica o comprimento máximo, sem pr VARCHAR(n) varchar tamanho especifica o comprimento máximo, sem preenchimento
eenchimento CHAR(n) bpchar preenchimento em branco para comprimento fixo específico
CHAR(n) bpchar preenchimento em branco para comprimento fixo e TEXT text nenhum limite superior específico no comprimento
specífico BYTEA bytea vetor de bytes de comprimento variável (null-byte safe)
TEXT text nenhum limite superior específico no compriment
o
BYTEA bytea vetor de bytes de comprimento variável (null-by
te safe)
"char" char um caracter "char" char um caracter
Você verá o nome interno quando examinar o catálogo do sistema e em 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 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: OIDs, não há razão para que você não possa fazê-la:
CREATE TABLE nova_tabela(minha_coluna int); CREATE TABLE nova_tabela(minha_coluna int);
SELECT oid as oid_antigo, minha_coluna INTO tabela_tmp FROM tabela_anti SELECT oid as oid_antigo, minha_coluna INTO tabela_tmp FROM tabela_antiga;
ga;
COPY tabela_tmp TO '/tmp/pgtable'; COPY tabela_tmp TO '/tmp/pgtable';
DROP TABLE tabela_tmp; DROP TABLE tabela_tmp;
COPY nova_tabela WITH OIDS FROM '/tmp/pgtable'; COPY nova_tabela WITH OIDS FROM '/tmp/pgtable';

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

View File

@ -171,7 +171,7 @@
PostgreSQL Data Base Management System 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 Portions Copyright (c) 1994-6 Regents of the University of California
Permission to use, copy, modify, and distribute this software and its 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 : Pour changer le type de données d'une colonne, faites :
BEGIN; BEGIN;
ALTER TABLE table ADD COLUMN nouvelle_colonne nouveau_type_de_donnees; ALTER TABLE table ADD COLUMN nouvelle_colonne nouveau_type_de_donnees;
UPDATE table SET nouvelle_colonne = CAST(ancienne_colonne AS nouveau_type_d UPDATE table SET nouvelle_colonne = CAST(ancienne_colonne AS nouveau_type_de_donnees);
e_donnees);
ALTER TABLE table DROP COLUMN ancienne_colonne; ALTER TABLE table DROP COLUMN ancienne_colonne;
COMMIT; COMMIT;
@ -772,14 +771,12 @@ e_donnees);
données ? données ?
Les limites sont : Les limites sont :
Taille maximum pour une base de données illimitée (il existe des bases Taille maximum pour une base de données illimitée (il existe des basesde 32 To)
de 32 To)
Taille maximum pour une table 32 To Taille maximum pour une table 32 To
Taille maximum pour une ligne 1,6 To Taille maximum pour une ligne 1,6 To
Taille maximum pour un champ 1 Go Taille maximum pour un champ 1 Go
Nombre maximum de lignes dans une table illimité Nombre maximum de lignes dans une table illimité
Nombre maximum de colonnes dans une table 250-1600, selon le type de colo Nombre maximum de colonnes dans une table 250-1600, selon le type de colonnes
nnes
Nombre maximum d'index sur une table illimité Nombre maximum d'index sur une table illimité
Bien sûr, ces valeurs ne sont pas vraiment illimitée, elles sont Bien sûr, ces valeurs ne sont pas vraiment illimitée, elles sont
@ -813,21 +810,17 @@ nnes
---------------------------------------- ----------------------------------------
60 octets par ligne 60 octets par ligne
La taille des pages de données dans PostgreSQL est de 8192 octets (8 KO), do La taille des pages de données dans PostgreSQL est de 8192 octets (8 KO), donc :
nc :
8192 octets par page 8192 octets par page
---------------------- = 136 lignes par page de base de données (arrondi à ---------------------- = 136 lignes par page de base de données (arrondi à l'entier inférieur)
l'entier inférieur)
60 octets par ligne 60 octets par ligne
100000 lignes de données 100000 lignes de données
------------------------- = 735 pages de base de données (arrondi à l'enti ------------------------- = 735 pages de base de données (arrondi à l'entier supérieur)
er supérieur)
128 lignes par page 128 lignes par page
735 pages de base de données * 8192 octets par page = 6 021 120 octets (6,4 M 735 pages de base de données * 8192 octets par page = 6 021 120 octets (6,4 Mo)
o)
Les index utilisent moins d'espace, mais ils contiennent les données Les index utilisent moins d'espace, mais ils contiennent les données
indexées, ils peuvent donc également être grands. 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 table d'exemple de la section 4.15.1, un exemple dans un
pseudo-langage ressemblerait à ceci : pseudo-langage ressemblerait à ceci :
nouvelle_id = execute("SELECT nextval('personne_id_seq')"); 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 Vous pourriez ensuite utiliser la nouvelle valeur stockée dans
nouvelle_id avec d'autres requêtes (c'est-à-dire en tant que clé 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 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 : avec les OID originaux, il n'y a pas de raisons pour ne pas le faire :
CREATE TABLE nouvelle_table (macolonne int); CREATE TABLE nouvelle_table (macolonne int);
SELECT oid AS ancienne_oid, macolonne INTO table_temporaire FROM ancienne_t SELECT oid AS ancienne_oid, macolonne INTO table_temporaire FROM ancienne_table;
able;
COPY table_temporaire FROM '/tmp/tablepg'; COPY table_temporaire FROM '/tmp/tablepg';
COPY nouvelle_table WITH OIDS FROM '/tmp/tablepg'; COPY nouvelle_table WITH OIDS FROM '/tmp/tablepg';
DROP TABLE table_temporaire; DROP TABLE table_temporaire;
@ -1178,8 +1169,7 @@ CREATE TABLE test (x int, heuremodif timestamp DEFAULT CURRENT_TIMESTAMP );
to: to:
SELECT * SELECT *
FROM table 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. Pour que ceci soit rapide, souscolonne doit être une colonne indexée.

View File

@ -643,14 +643,12 @@
Wenn der postmaster hingegen läuft, führen Sie psql in einem Fenster Wenn der postmaster hingegen läuft, führen Sie psql in einem Fenster
aus, ermitteln Sie die Prozessnummer (PID) des postgres-Prozesses, der aus, ermitteln Sie die Prozessnummer (PID) des postgres-Prozesses, der
von psql verwendet wird (mit von psql verwendet wird (mit SELECT pg_backend_pid()). Binden Sie
SELECT pg_backend_pid() einen Debugger an diese PID und führen Sie Abfragen von psql aus. Wenn
Sie den postgres-Serverstart analysieren wollen, setzen Sie die
). Binden Sie einen Debugger an diese PID und führen Sie Abfragen von Umgebungsvariable PGOPTIONS="-W n", und starten Sie dann psql. Dies
psql aus. Wenn Sie den postgres-Serverstart analysieren wollen, setzen verzögert den Start um n Sekunden, damit Sie einen Debugger an den
Sie die Umgebungsvariable PGOPTIONS="-W n", und starten Sie dann psql. Prozess binden und ggf. Breakpoints setzen können, bevor die
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. Startsequenz begonnen wird.
Es gibt verschiedene Einstellungen (die log_*-Gruppe), die diverse Es gibt verschiedene Einstellungen (die log_*-Gruppe), die diverse

File diff suppressed because it is too large Load Diff

View File

@ -165,7 +165,7 @@
PostgreSQL Data Base Management System 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 Portions Copyright (c) 1994-6 Regents of the University of California
Permission to use, copy, modify, and distribute this software and its Permission to use, copy, modify, and distribute this software and its
@ -747,8 +747,7 @@
DROP COLUMN. We wczesniejszych wersjach mozesz zrobic tak: DROP COLUMN. We wczesniejszych wersjach mozesz zrobic tak:
BEGIN; BEGIN;
LOCAL TABLE old_table; LOCAL TABLE old_table;
SELECT ... -- wybierz wszystkie kolumny poza ta jedna której chcesz sie po SELECT ... -- wybierz wszystkie kolumny poza ta jedna której chcesz sie pozbyc
zbyc
INTO TABLE new_table INTO TABLE new_table
FROM old_table; FROM old_table;
DROP TABLE old_table; DROP TABLE old_table;
@ -770,8 +769,7 @@ zbyc
Maksymalny rozmiar dla rzedu? 1.6 TB Maksymalny rozmiar dla rzedu? 1.6 TB
Maksymalny rozmiar pola? 1 GB Maksymalny rozmiar pola? 1 GB
Maksymalna liczba rzedów w tabeli? nieograniczona Maksymalna liczba rzedów w tabeli? nieograniczona
Maksymalna liczba kolumn w tabeli? 250-1600 w zalezonosci od typów ko Maksymalna liczba kolumn w tabeli? 250-1600 w zalezonosci od typów kolumn
lumn
Makasymalna liczba indeksów na tabeli? nieograniczona Makasymalna liczba indeksów na tabeli? nieograniczona
Oczywiscie "nieograniczony" nie jest prawda tak do konca, istnieja 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: Strona danych w PostgreSQL zajmuje 8192 bajtów (8 KB), wiec:
8192 bajtów na strone 8192 bajtów na strone
--------------------- = 128 rzedów na jedna strone w bazie (zaokraglone w --------------------- = 128 rzedów na jedna strone w bazie (zaokraglone w dól/)
dól/)
64 bajtów na rzad 64 bajtów na rzad
100000 rzedów danych 100000 rzedów danych
@ -858,6 +855,7 @@ lumn
zl/aczen (join). Sekwencyjne przeszukiwanie po którym nastepuje zl/aczen (join). Sekwencyjne przeszukiwanie po którym nastepuje
sortowanie jest zazwyczaj szybsze nie wyszukiwanie za pomoca indeksu sortowanie jest zazwyczaj szybsze nie wyszukiwanie za pomoca indeksu
na duzej tabeli. na duzej tabeli.
Jakkolwiek LIMIT w pol/aczeniu z ORDER BY czesto bedzie wykorzystywal/ Jakkolwiek LIMIT w pol/aczeniu z ORDER BY czesto bedzie wykorzystywal/
indeksy poniewaz jedynie mal/a czesc z tabeli jest zwracana. W indeksy poniewaz jedynie mal/a czesc z tabeli jest zwracana. W
rzeczywistosci, chociaz MAX() i MIN() nie uzywaja indeksów, mozliwe rzeczywistosci, chociaz MAX() i MIN() nie uzywaja indeksów, mozliwe
@ -952,13 +950,10 @@ lumn
Type Nazwa wewnetrzna Uwagi Type Nazwa wewnetrzna Uwagi
-------------------------------------------------- --------------------------------------------------
VARCHAR(n) varchar rozmiar okresla maksymalna dl/ugosc, nie ma VARCHAR(n) varchar rozmiar okresla maksymalna dl/ugosc, nie matutaj wypel/niania
tutaj wypel/niania CHAR(n) bpchar wypel/niane pustymi znakami do podanej dl/ugosci
CHAR(n) bpchar wypel/niane pustymi znakami do podanej dl/ug
osci
TEXT text bez limitu na dl/ugosc l/ancucha TEXT text bez limitu na dl/ugosc l/ancucha
BYTEA bytea zmiennej dl/ugosci tablica bajtów (null-byte BYTEA bytea zmiennej dl/ugosci tablica bajtów (null-byte safe)
safe)
"char" char 1 znak "char" char 1 znak
Jesli bedziesz przegladac katalogi systemowe lub komunikaty o bl/edach Jesli bedziesz przegladac katalogi systemowe lub komunikaty o bl/edach
@ -970,6 +965,7 @@ BYTEA bytea zmiennej dl/ugosci tablica bajt
zadeklarowany rozmiar. Te typy takze podlegaja kompresji lub moga byc zadeklarowany rozmiar. Te typy takze podlegaja kompresji lub moga byc
przechowywane out-of-line jako TOAST, wiec faktyczne zuzycie miejsca przechowywane out-of-line jako TOAST, wiec faktyczne zuzycie miejsca
na dysku moze byc mniejsze niz oczekiwane. na dysku moze byc mniejsze niz oczekiwane.
VARCHAR(n) jest najodpowiedniejszy do przechowywania l/ancuchów o VARCHAR(n) jest najodpowiedniejszy do przechowywania l/ancuchów o
róznej dl/ugosci ale okresla on maksymalna jego dl/ugosc. TEXT jest róznej dl/ugosci ale okresla on maksymalna jego dl/ugosc. TEXT jest
najlepszy dla l/ancuchów o dowolnej dl/ugosci, nie przekraczajacej najlepszy dla l/ancuchów o dowolnej dl/ugosci, nie przekraczajacej
@ -1229,13 +1225,14 @@ SELECT *
4.27) Jakie sa mozliwosci replikacji w PostgreSQL? 4.27) Jakie sa mozliwosci replikacji w PostgreSQL?
Jest kilka opcji aby stosowac replikacje typu master/slave. Ten typ pozwala Jest kilka opcji aby stosowac replikacje typu master/slave. Ten typ
jedynie masterowi na dokonywanie zmian w bazie danych, a slave moze jedynie pozwala jedynie masterowi na dokonywanie zmian w bazie danych, a slave
te zmiany odczytywac. Na stronie moze jedynie te zmiany odczytywac. Na stronie
http://gborg.PostgreSQL.org/genpage?replication_research znajduje sie ich http://gborg.PostgreSQL.org/genpage?replication_research znajduje sie
lista. Replikacja typu multi-master jest w trakcie prac, opis projektu ich lista. Replikacja typu multi-master jest w trakcie prac, opis
znajduje sie pod adresem: projektu znajduje sie pod adresem:
http://gborg.PostgreSQL.org/project/pgreplication/projdisplay.php. http://gborg.PostgreSQL.org/project/pgreplication/projdisplay.php.
4.28) Jakie mozliwosci szyfrowania oferuje PostgreSQL? 4.28) Jakie mozliwosci szyfrowania oferuje PostgreSQL?
* contrib/pgcrypto zawiera wiele funkcji za pomoca, których mozemy * 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 5.1) Napisal/em wl/asna funkcje. Kiedy uzyje jej w psql, program zrzuca
pamiec (dump core)? pamiec (dump core)?
Problem moze byc spowodowany przez bardzo wiele rzeczy. Spróbuj najpierw Problem moze byc spowodowany przez bardzo wiele rzeczy. Spróbuj
przetestowac Twoja funkcje w samodzielnie dzial/ajacym programie. najpierw przetestowac Twoja funkcje w samodzielnie dzial/ajacym
programie.
5.2) Jak moge dodac/zgl/osic nowe typy czy funkcje do PostgreSQL? 5.2) Jak moge dodac/zgl/osic nowe typy czy funkcje do PostgreSQL?
Wyslij Twoje propozycje na liste mailowa pgsql-hackers, wtedy Wyslij Twoje propozycje na liste mailowa pgsql-hackers, wtedy
prawdopodobnie Twój kod znajdzie sie w katalogu contrib/. prawdopodobnie Twój kod znajdzie sie w katalogu contrib/.
5.3) Jak napisac funkcje C zwracajaca krotke (tuple)? 5.3) Jak napisac funkcje C zwracajaca krotke (tuple)?
W wersjach PostgreSQL od numeru 7.3, funckje zwracajace tabele sa w pelni W wersjach PostgreSQL od numeru 7.3, funckje zwracajace tabele sa w
wspierane w C, PL/PgSQL i SQL. Sprawdz w Programmer's Guide aby uzyskac pelni wspierane w C, PL/PgSQL i SQL. Sprawdz w Programmer's Guide aby
wiecej informacji. Przykl/ad funkcji napisanej w C zwracajacej tabele uzyskac wiecej informacji. Przykl/ad funkcji napisanej w C zwracajacej
zostal/ umieszczony w contrib/tablefunc. tabele zostal/ umieszczony w contrib/tablefunc.
5.4) Zmienil/em plik zródl/owy. Dlaczego po rekompilacji nie widac zmiany? 5.4) Zmienil/em plik zródl/owy. Dlaczego po rekompilacji nie widac zmiany?
Pliki Makefiles nie maja dorzuconych odpowiednich zaleznosci dla plików Pliki Makefiles nie maja dorzuconych odpowiednich zaleznosci dla
nagl/ówkowych (include files). Wykonaj najpierw make clean, a nastepnie plików nagl/ówkowych (include files). Wykonaj najpierw make clean, a
ponownie make. Jesli uzywasz GCC mozesz uzyc opcji --enable-depend przy nastepnie ponownie make. Jesli uzywasz GCC mozesz uzyc opcji
wykonywaniu configure aby kompilator mógl/ okreslic zaleznosci --enable-depend przy wykonywaniu configure aby kompilator mógl/
samodzielnie. okreslic zaleznosci samodzielnie.

View File

@ -520,11 +520,11 @@
Proizvol'noj stroki? Proizvol'noj stroki?
Dlya polucheniya tol'ko neskol'kih strok, esli vy znaete ih Dlya polucheniya tol'ko neskol'kih strok, esli vy znaete ih
kolichestvo na moment vypolneniya SELECT ispol'zujte LIMIT. kolichestvo na moment vypolneniya SELECT ispol'zujte LIMIT. Esli est'
Esli est' kakoj-libo indeks, kotoryj sovpadaet s ORDER BY, to kakoj-libo indeks, kotoryj sovpadaet s ORDER BY, to vozmozhno, chto
vozmozhno, chto ves' zapros vypolnen i ne budet. Esli vy ne znaete ves' zapros vypolnen i ne budet. Esli vy ne znaete kolichestva
kolichestva neobhodimyh strok na moment vypolneniya SELECT, neobhodimyh strok na moment vypolneniya SELECT, ispol'zujte kursor i
ispol'zujte kursor i FETCH. FETCH.
To SELECT a random row, use: To SELECT a random row, use:
SELECT col SELECT col
@ -821,10 +821,8 @@
TID ispol'zuetsya dlya identifikacii special'nyh fizicheskih zapisej s TID ispol'zuetsya dlya identifikacii special'nyh fizicheskih zapisej s
blochnymi i offset znacheniyami. TID izmenyaetsya posle togo kak blochnymi i offset znacheniyami. TID izmenyaetsya posle togo kak
stroki v tablice byli izmeneny ili peregruzheny. stroki v tablice byli izmeneny ili peregruzheny. TID ispol'zuetsya
indeksnymi zapisyami v kachestve ukazatelya na fizicheskie zapisi.
TID ispol'zuetsya indeksnymi zapisyami v kachestve ukazatelya na
fizicheskie zapisi.
4.13) Pochemu ya poluchayu oshibku "ERROR: Memory exhausted in 4.13) Pochemu ya poluchayu oshibku "ERROR: Memory exhausted in
AllocSetAlloc()"? AllocSetAlloc()"?

File diff suppressed because it is too large Load Diff

View File

@ -10,7 +10,7 @@
alink="#0000ff"> alink="#0000ff">
<H1>Frequently Asked Questions (FAQ) for PostgreSQL</H1> <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= <P>Current maintainer: Bruce Momjian (<A href=
"mailto:pgman@candle.pha.pa.us">pgman@candle.pha.pa.us</A>) "mailto:pgman@candle.pha.pa.us">pgman@candle.pha.pa.us</A>)
@ -197,7 +197,7 @@
and Win2003. A prepackaged installer is available at <a href= and Win2003. A prepackaged installer is available at <a href=
"http://pgfoundry.org/projects/pginstaller"> "http://pgfoundry.org/projects/pginstaller">
http://pgfoundry.org/projects/pginstaller</a>. MSDOS-based versions 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 <p>There is also a Novell Netware 6 port at
<a href="http://forge.novell.com">http://forge.novell.com</a>, <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 via email. The main web site to subscribe to the email lists is
<a href="http://www.postgresql.org/community/lists/"> <a href="http://www.postgresql.org/community/lists/">
http://www.postgresql.org/community/lists/</a>. The <I>general</I> 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 <P>The major IRC channel is <I>#postgresql</I> on Freenode
(<I>irc.freenode.net</I>). To connect you can use the Unix (<I>irc.freenode.net</I>). To connect you can use the Unix
program <CODE>irc -c '#postgresql' "$USER" irc.freenode.net</CODE> program <CODE>irc -c '#postgresql' "$USER" irc.freenode.net</CODE>
or use any of the other popular IRC clients. A Spanish one also exists 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, 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= <P>A list of commercial support companies is available at <A href=
"http://techdocs.postgresql.org/companies.php"> "http://techdocs.postgresql.org/companies.php">
@ -482,7 +482,7 @@
<li>Use of Prepared queries</li> <li>Use of Prepared queries</li>
<li>Use of <SMALL>ANALYZE</SMALL> to maintain accurate optimizer <li>Use of <SMALL>ANALYZE</SMALL> to maintain accurate optimizer
statistics</li> 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> <li>Dropping of indexes during large data changes</li>
</ul><BR> </ul><BR>
<BR> <BR>
@ -609,7 +609,7 @@
<SMALL>SELECT</SMALL> time, use a cursor and <SMALL>SELECT</SMALL> time, use a cursor and
<SMALL>FETCH</SMALL>.</P> <SMALL>FETCH</SMALL>.</P>
<P>To <SMALL>SELECT</SMALL> a random row, use: <P>To <SMALL>SELECT</SMALL> a random row, use:</P>
<PRE> <PRE>
SELECT col SELECT col
FROM tab FROM tab
@ -643,7 +643,7 @@
<H4><A name="4.3">4.3</A>) How do you change a column's data type?</H4> <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 <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> <P>In earlier releases, do this:</P>
<PRE> <PRE>
@ -661,7 +661,7 @@
<P>These are the limits:</P> <P>These are the limits:</P>
<BLOCKQUOTE> <BLOCKQUOTE>
<TABLE BORDER=1> <TABLE >
<TR><TD>Maximum size for a database?</TD><TD>unlimited (32 TB databases <TR><TD>Maximum size for a database?</TD><TD>unlimited (32 TB databases
exist)</TD></TR> exist)</TD></TR>
<TR><TD>Maximum size for a table?</TD><TD>32 TB</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 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 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 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 <P>To determine if an index should be used, PostgreSQL must have
statistics about the table. These statistics are collected using 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 <H4><A name="4.10">4.10</A>) What is the difference between the
various character types?</H4> various character types?</H4>
<BLOCKQUOTE> <BLOCKQUOTE>
<TABLE BORDER=1> <TABLE >
<TR><TH>Type</TH><TH>Internal Name</TH><TH>Notes</TH></TR> <TR><TH>Type</TH><TH>Internal Name</TH><TH>Notes</TH></TR>
<TR><TD>VARCHAR(n)</TD><TD>varchar</TD><TD>size specifies maximum <TR><TD>VARCHAR(n)</TD><TD>varchar</TD><TD>size specifies maximum
length, no padding</TD></TR> length, no padding</TD></TR>
@ -1057,7 +1057,7 @@ length</TD></TR>
<P>It is easy using set-returning functions, <P>It is easy using set-returning functions,
<a href="http://techdocs.postgresql.org/guides/SetReturningFunctions"> <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 ##### <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 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>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 <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 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 <LI>Database user passwords are automatically encrypted when stored in
the system tables.</LI> the system tables.</LI>
<LI>The server can run using an encrypted file system.</LI> <LI>The server can run using an encrypted file system.</LI>

View File

@ -13,7 +13,7 @@
<H1>Developer's Frequently Asked Questions (FAQ) for <H1>Developer's Frequently Asked Questions (FAQ) for
PostgreSQL</H1> 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= <P>Current maintainer: Bruce Momjian (<A href=
"mailto:pgman@candle.pha.pa.us">pgman@candle.pha.pa.us</A>)<BR> "mailto:pgman@candle.pha.pa.us">pgman@candle.pha.pa.us</A>)<BR>
@ -26,9 +26,7 @@
<BR> <BR>
<CENTER>
<H2>General Questions</H2> <H2>General Questions</H2>
</CENTER>
<A href="#1.1">1.1</A>) How do I get involved in PostgreSQL <A href="#1.1">1.1</A>) How do I get involved in PostgreSQL
development?<BR> development?<BR>
<A href="#1.2">1.2</A>) What development environment is required <A href="#1.2">1.2</A>) What development environment is required
@ -59,9 +57,7 @@
site development?<BR> site development?<BR>
<CENTER>
<H2>Technical Questions</H2> <H2>Technical Questions</H2>
</CENTER>
<A href="#2.1">2.1</A>) How do I efficiently access information in <A href="#2.1">2.1</A>) How do I efficiently access information in
tables from the backend code?<BR> tables from the backend code?<BR>
<A href="#2.2">2.2</A>) Why are table, column, type, function, <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 http://momjian.postgresql.org/cgi-bin/pgpatches</a>, and
those that are being kept for the next release, those that are being kept for the next release,
<a href="http://momjian.postgresql.org/cgi-bin/pgpatches2"> <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 <H3><A name="1.5">1.5</A>) Where can I learn more about the
code?</H3> code?</H3>
@ -703,9 +699,7 @@
href= href=
"http://xzilla.postgresql.org/todo">http://xzilla.postgresql.org/todo</A></P> "http://xzilla.postgresql.org/todo">http://xzilla.postgresql.org/todo</A></P>
<CENTER>
<H2>Technical Questions</H2> <H2>Technical Questions</H2>
</CENTER>
<H3><A name="2.1">2.1</A>) How do I efficiently access information <H3><A name="2.1">2.1</A>) How do I efficiently access information
in tables from the backend code?</H3> in tables from the backend code?</H3>

View File

@ -71,8 +71,6 @@ The mailing list for discussion is
<i>pgsql-hackers-win32@postgresql.org</i>. You can subscribe by sending <i>pgsql-hackers-win32@postgresql.org</i>. You can subscribe by sending
an email body containing the word <i>subscribe</i> to <i><a an email body containing the word <i>subscribe</i> to <i><a
href="mailto:pgsql-hackers-win32-request@postgresql.org">pgsql-hackers-win32-request@postgresql.org</a></i>.<br> href="mailto:pgsql-hackers-win32-request@postgresql.org">pgsql-hackers-win32-request@postgresql.org</a></i>.<br>
<ul>
</ul>
<h2>Resources</h2> <h2>Resources</h2>
There are several resources that helped us complete this port:<br> There are several resources that helped us complete this port:<br>
<ul> <ul>

View File

@ -17,7 +17,7 @@
</P> </P>
<P>Traduzido por: Euler Taveira de Oliveira (<A href= <P>Traduzido por: Euler Taveira de Oliveira (<A href=
"mailto:eulerto@yahoo.com.br">eulerto@yahoo.com.br</A>)<BR> "mailto:eulerto@yahoo.com.br">eulerto@yahoo.com.br</A>)</P>
<P>A vers&atilde;o mais recente desse documento pode ser vista em <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"> "http://www.postgresql.org/files/documentation/faqs/FAQ.html">
@ -202,14 +202,14 @@
baseados no NT tais como Win2000, WinXP e Win2003. Um instalador baseados no NT tais como Win2000, WinXP e Win2003. Um instalador
est&aacute; dispon&iacute;vel em <a href= est&aacute; dispon&iacute;vel em <a href=
"http://pgfoundry.org/projects/pginstaller"> "http://pgfoundry.org/projects/pginstaller">
http://pgfoundry.org/projects/pginstaller</a> Versões do Windows http://pgfoundry.org/projects/pginstaller</a> Vers&otilde;es do Windows
baseados no MSDOS (Win95, Win98, WinMe) podem executar o PostgreSQL utilizando o Cygwin. 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 <P>H&aacute; tamb&eacute;m um porte para Novell Netware 6 em
<A href="http://forge.novell.com">http://forge.novell.com</A> <A href="http://forge.novell.com">http://forge.novell.com</A>
e uma versão para OS/2 (eComStation) em <a href= e uma vers&atilde;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&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&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</a>.</P>
<H4><A name="1.5">1.5</A>) Onde eu posso conseguir o PostgreSQL?</H4> <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> <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> <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> </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> <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> 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> <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> <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> <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>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> <PRE>
SELECT col SELECT col
FROM tab 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 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 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 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 <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 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 <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 <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 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 especial <tt>text_pattern_ops</tt> para tais casos que funcionam somente para
indexa&ccedil;&atilde;o utilizando <PRE>LIKE</PRE>. indexa&ccedil;&atilde;o utilizando <tt>LIKE</tt>.
</LI> </LI>
</UL> </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> <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 FROM tab
WHERE col IN (SELECT subcol FROM subtab); WHERE col IN (SELECT subcol FROM subtab);
</PRE> </PRE>
por: <p>por:</p>
<PRE> SELECT * <PRE> SELECT *
FROM tab FROM tab
WHERE EXISTS (SELECT subcol FROM subtab WHERE subcol = col); WHERE EXISTS (SELECT subcol FROM subtab WHERE subcol = col);
</PRE> </PRE>
<p>
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>. 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> <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> <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> <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> <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> <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> <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> <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>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>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> <li>O servidor pode executar utilizando um sistema de arquivos encriptado.</li>
</UL> </UL>

View File

@ -129,7 +129,7 @@
<H2 align="center">Obecné otázky</H2> <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 <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> 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 Win32 knihovny <I>libpq</I> a <I>psql</I>. K databázi PostgerSQL lze přistupovat skrze
rozhraní <SMALL>ODBC</SMALL>.</P> 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 <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 Cygwin, Cygnus Unix/NT porting library. Více <I>pgsql/doc/FAQ_MSWIN</I> v
distribuci nebo MS Windows FAQ na adrese 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 <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 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://techdocs.postgresql.org/guides/Windows">http://techdocs.postgresql.org/guides/Windows</A> a
<A href="http://momjian.postgresql.org/main/writings/pgsql/win32.html"> <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 <P>Existující port pro Novell Netware 6 naleznete na
<A href="http://forge.novell.com">http://forge.novell.com</A>.</P> <A href="http://forge.novell.com">http://forge.novell.com</A>.</P>
@ -238,7 +238,7 @@
subscribe subscribe
end end
</PRE> </PRE>
na adresu <A href="mailto:pgsql-general-request@PostgreSQL.org"> <P>na adresu <A href="mailto:pgsql-general-request@PostgreSQL.org">
pgsql-general-request@PostgreSQL.org</A>.</P> pgsql-general-request@PostgreSQL.org</A>.</P>
<P>Můžete si vyžádat denní přehled (diggest), který má zhruba 30K denně <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> <P>Seznam dalších konferencí naleznete na stránkách PostgreSQL:</P>
<BLOCKQUOTE> <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> </BLOCKQUOTE>
<H4><A name="1.7">1.7</A>) Jaká je poslední verze?</H4> <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 <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 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> pgsql-patches.</P>
<P>Právo commit má v <SMALL>CVS</SMALL> archivu asi třinácti lidí. Každý z nich poslal <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 <SMALL>DBMS</SMALL>, např. transakce, vnořené dotazy, spouště, pohledy, kontrolu
referenční integrity a sofistikované zamykání. Podporuje některé referenční integrity a sofistikované zamykání. Podporuje některé
vlastnosti, které tyto systémy nemají, uživatelem definované typy, 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> <DT><B>Výkon</B></DT>
<DD>Výkonnostně je na tom PostgreSQL podobně jako další komerční ale <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í, 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í 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 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> <DT><B>Podpora</B></DT>
<DD>Na naší mailové konferenci můžete kontaktovat velkou skupinu <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á 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> 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í. <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 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> v souladu s podmínkami naší licenční smlouvy (v duchu BSD licence).<BR>
@ -553,7 +553,7 @@
například:</P> například:</P>
<PRE> <PRE>
cd /usr/local/pgsql cd /usr/local/pgsql
./bin/postmaster > server.log 2>&1 & ./bin/postmaster > server.log 2>&amp;1 &amp;
</PRE> </PRE>
<P>Tím se vytvoří log v adresáři PostgreSQL, Tento soubor obsahuje užitečné <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á 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 <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 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> <PRE>
SELECT col SELECT col
FROM tab FROM tab
@ -791,7 +791,7 @@
<UL> <UL>
<LI>vzor <SMALL>LIKE</SMALL> nesmí začínat <I>%</I></LI> <LI>vzor <SMALL>LIKE</SMALL> nesmí začínat <I>%</I></LI>
<LI><I>~</I> regulární výraz musí 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>vzor nesmí začínat intervalem, např. [a-e]</LI>
<LI>vyhledávaní, které není Case sensitiv jako je <SMALL>ILIKE</SMALL> nebo <I>~*</I> <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 nepoužívá indexy. Můžete ale použít funkcionální indexy, které jsou
@ -926,7 +926,7 @@ BYTEA bytea pole byt
<P>Konečně můžete použít <SMALL>OID</SMALL> hodnotu vrácenou příkazem <SMALL>INSERT</SMALL>, ale to je <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 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> 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í <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> podmínek při souběhu s jinými uživateli?</H4>
@ -986,7 +986,7 @@ BYTEA bytea pole byt
<LI> přidání, vkládání (append, insert)</LI> <LI> přidání, vkládání (append, insert)</LI>
<LI> OID, serial value (OID, serial value)</LI> <LI> OID, serial value (OID, serial value)</LI>
<LI> portal, kurzor (portal, cursor)</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> variable, table name, table alias)</LI>
</UL> </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 <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 č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é 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> <PRE>
SELECT * SELECT *
FROM tab FROM tab
WHERE col IN (SELECT subcol FROM subtab); WHERE col IN (SELECT subcol FROM subtab);
</PRE> </PRE>
na: <p>na:</p>
<PRE> <PRE>
SELECT * SELECT *
FROM tab 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 <P>V PostgreSQL 7.3 můžete jednoduše vracet více řádků nebo sloupců z
funkce, viz: 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> <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í přepínač <I>--enable-depend</I> příkazu <I>configure</I> k automatickému řešení
závislostí překladačem.</P> závislostí překladačem.</P>
</BODY> </BODY>
</HTML> </HTML>

View File

@ -152,7 +152,7 @@
<P>PostgreSQL se prononce <I>Post-Gres-Q-L</I>. Un fichier audio est <P>PostgreSQL se prononce <I>Post-Gres-Q-L</I>. Un fichier audio est
disponible sur <A 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> pour ceux souhaitant entendre la prononciation.</P>
<P>PostgreSQL est une amélioration du système de gestion de bases <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 développement de PostgreSQL. C'est un projet soutenu par une
communauté sans être contrôlé par une société. Pour y contribuer, communauté sans être contrôlé par une société. Pour y contribuer,
voir la FAQ des développeurs sur <A 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. <P>Les auteurs de PostgreSQL 1.01 étaient Andrew Yu et Jolly Chen.
Beaucoup d'autres personnes ont contribué au portage, aux tests, Beaucoup d'autres personnes ont contribué au portage, aux tests,
@ -292,7 +292,7 @@
PostgreSQL sur le site web de PostgreSQL&nbsp;:</P> PostgreSQL sur le site web de PostgreSQL&nbsp;:</P>
<BLOCKQUOTE> <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> </BLOCKQUOTE>
<P>Il y a aussi un canal IRC sur Freenode et EFNet, le canal <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 l'intégralité de la requête peut être évaluée, jusqu'à générer les lignes
désirées.</P> 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> <PRE>
SELECT colonne SELECT colonne
FROM table FROM table
@ -1004,7 +1004,6 @@
<LI>La locale <I>C</I> par défaut doit être utilisée lors de <LI>La locale <I>C</I> par défaut doit être utilisée lors de
<i>initdb</i>.</LI> <i>initdb</i>.</LI>
</UL> </UL>
<P>
<p>Dans les versions antérieures à la 8.0, les indexs ne peuvent souvent <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 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 <P>A partir de la 7.3, vous pouvez facilement renvoyer plusieurs lignes ou
colonnes à partir d'une fonction, colonnes à partir d'une fonction,
<a href="http://techdocs.postgresql.org/guides/SetReturningFunctions"> <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 <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> 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 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 ê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 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 <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 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> <I>PASSWORD_ENCRYPTION</I> dans <I>postgresql.conf</I>.</LI>

View File

@ -212,7 +212,7 @@ href="mailto:pgman@candle.pha.pa.us">pgman@candle.pha.pa.us</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>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: <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> <h4><a name="1.5">1.5</a>) Woher bekomme ich PostgreSQL?</h4>
@ -223,7 +223,7 @@ href="mailto:pgman@candle.pha.pa.us">pgman@candle.pha.pa.us</a>).</p>
<h4><a name="1.6">1.6</a>) Wo bekomme ich Support für PostgreSQL?</h4> <h4><a name="1.6">1.6</a>) Wo bekomme ich Support für PostgreSQL?</h4>
<p>Die zentrale (englischsprachige) Mailing-Liste ist: <p>Die zentrale (englischsprachige) Mailing-Liste ist:
<a href="mailto:pgsql-general@postgresql.org">mailto:pgsql-general@postgresql.org</a> . <a href="mailto:pgsql-general@postgresql.org">mailto:pgsql-general@postgresql.org</a> .</p>
<p>Die Liste ist Themen vorbehalten, die PostgreSQL betreffen. Die Anmeldung <p>Die Liste ist Themen vorbehalten, die PostgreSQL betreffen. Die Anmeldung
erfolgt mit einer Email an die Adresse <a href="mailto:pgsql-general-request@postgresql.org">pgsql-general-request@postgresql.org</a> mit folgenden Zeilen im Text erfolgt mit einer Email an die Adresse <a href="mailto:pgsql-general-request@postgresql.org">pgsql-general-request@postgresql.org</a> mit folgenden Zeilen im Text
@ -260,7 +260,7 @@ href="mailto:pgman@candle.pha.pa.us">pgman@candle.pha.pa.us</a>).</p>
<p>Weitere Mailinglisten und Informationen zu PostgreSQL befinden sich auf der PostgreSQL-Homepage:</p> <p>Weitere Mailinglisten und Informationen zu PostgreSQL befinden sich auf der PostgreSQL-Homepage:</p>
<blockquote> <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> </blockquote>
<p>Es gibt außerdem einen IRC-Channel bei EFNet und bei Freenode, Channel <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. <em>#PostgreSQL</em>. Unter UNIX/Linux können Sie mit z.B.
@ -341,7 +341,7 @@ href="mailto:pgman@candle.pha.pa.us">pgman@candle.pha.pa.us</a>).</p>
<h4><a name="1.13">1.13</a>) Wie sende ich einen Fehlerbericht?</h4> <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>, <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>, <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> um nachzusehen, ob es eine neuere PostgreSQL-Version oder neue Patches gibt.</p>
@ -475,7 +475,7 @@ href="mailto:pgman@candle.pha.pa.us">pgman@candle.pha.pa.us</a>).</p>
</a>) und Rekall (<a href="http://www.thekompany.com/products/rekall/"> </a>) und Rekall (<a href="http://www.thekompany.com/products/rekall/">
http://www.thekompany.com/products/rekall/</a>, GPL/proprietär). Es gibt http://www.thekompany.com/products/rekall/</a>, GPL/proprietär). Es gibt
außerdem phpPgAdmin (<a href="http://phppgadmin.sourceforge.net/"> 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> <h4><a name="2.4">2.4</a>) Welche Programmiersprachen und Schnittstellen gibt es?</h4>
@ -500,7 +500,7 @@ href="mailto:pgman@candle.pha.pa.us">pgman@candle.pha.pa.us</a>).</p>
(Bereich <em>Drivers/Interfaces</em>) bezogen werden. (Bereich <em>Drivers/Interfaces</em>) bezogen werden.
</p> </p>
<hr /> <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> <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:pgman@candle.pha.pa.us">pgman@candle.pha.pa.us</a>).</p>
<p>Wenn der <em>postmaster</em> hingegen läuft, führen Sie <em>psql</em> in einem Fenster aus, <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> 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 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 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 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:pgman@candle.pha.pa.us">pgman@candle.pha.pa.us</a>).</p>
<h4><a name="4.2">4.2</a>) Wie wähle ich per <small>SELECT</small>-Anweisung nur die ersten paar <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> 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, <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 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 durch Block und Offset Werte zu identifizieren. T<small>ID</small>s
verändern sich, sobald Zeilen verändert oder zurückgeladen werden. Sie verändern sich, sobald Zeilen verändert oder zurückgeladen werden. Sie
werden in Indexeinträgen benutzt um auf die physikalischen Zeilen zu 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 <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> PostgreSQL benutzt werden (z.B. attribute, class,...)?</h4>

File diff suppressed because it is too large Load Diff

View File

@ -237,7 +237,7 @@
<P>Tekst powyżej, jest klasyczną licencją BSD. <P>Tekst powyżej, jest klasyczną licencją BSD.
Nie posiada ona żadnych restrykcji co do używania kodu źródłowego. 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 <H4><A name="1.3">1.3</A>) Na jakich systemach Unixowych działa
PostreSQL?</H4> PostreSQL?</H4>
@ -266,7 +266,7 @@
<P>Serwer może być uruchamiany na Windows NT i Win2k używając <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> 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= 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 Obecnie prowadzone są prace nad stworzeniem wersji dla MS Win
NT/200/XP. Jeśli chcesz się dowiedzieć o obecnym statusie tych prac NT/200/XP. Jeśli chcesz się dowiedzieć o obecnym statusie tych prac
zobacz <A zobacz <A
@ -283,7 +283,7 @@
<P>Główny serwer ftp z dostępem "anonymous" dla PostgreSQL znajduje <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>. 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> <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> można znaleźć na stronach WWW PostgreSQL pod adresem:</P>
<BLOCKQUOTE> <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> </BLOCKQUOTE>
<P>W sieci EFNet istnieje kanał IRC <I>#PostgreSQL</I>. Ja, do <P>W sieci EFNet istnieje kanał IRC <I>#PostgreSQL</I>. Ja, do
@ -599,7 +599,7 @@
</P> </P>
<P> <P>
Więcej informacji na ten temat znajduje się pod adresem See 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 <H4><A name="2.4">2.4</A>) Za pomocą jakich języków programowania
można się komunikować z PostgreSQL?</H4> można się komunikować z PostgreSQL?</H4>
@ -882,14 +882,13 @@
pierwszych rzędów, być może będzie konieczność wykonania zapytania do pierwszych rzędów, być może będzie konieczność wykonania zapytania do
momentu aż zostaną znalezione pożądane wyniki.</P> momentu aż zostaną znalezione pożądane wyniki.</P>
<P> <P>
Aby otrzymać losowy rząd, użyj: Aby otrzymać losowy rząd, użyj:</P>
<PRE> <PRE>
SELECT col SELECT col
FROM tab FROM tab
ORDER BY random() ORDER BY random()
LIMIT 1; LIMIT 1;
</PRE> </PRE>
</P>
<H4><A name="4.3">4.3</A>) Jak mogę uzyskać listę wszystkich tabel <H4><A name="4.3">4.3</A>) Jak mogę uzyskać listę wszystkich tabel
czy innych rzeczy pod <I>psql</I>?</H4> czy innych rzeczy pod <I>psql</I>?</H4>
@ -926,7 +925,6 @@
ALTER TABLE tab DROP COLUMN old_col; ALTER TABLE tab DROP COLUMN old_col;
COMMIT; COMMIT;
</PRE> </PRE>
</P>
<H4><A name="4.5">4.5</A>) Jaki jest maksymalny rozmiar dla rzędu, <H4><A name="4.5">4.5</A>) Jaki jest maksymalny rozmiar dla rzędu,
tabeli i bazy danych?</H4> tabeli i bazy danych?</H4>
@ -1034,7 +1032,7 @@
przy wykonywaniu złączeń (join). Sekwencyjne przeszukiwanie po którym przy wykonywaniu złączeń (join). Sekwencyjne przeszukiwanie po którym
następuje sortowanie jest zazwyczaj szybsze nię wyszukiwanie za następuje sortowanie jest zazwyczaj szybsze nię wyszukiwanie za
pomocą indeksu na dużej tabeli.</P> 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 często będzie wykorzystywał indeksy ponieważ jedynie mała część z
tabeli jest zwracana. W rzeczywistości, chociaż MAX() i MIN() nie 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 używają indeksów, możliwe jest aby zwrócić te wartości używając
@ -1049,7 +1047,7 @@
<P> <P>
Jeśli uważasz, że optimizer myli się wybierając sequential scan, użyj 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 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 <P>Kiedy używa się operatorów dopasujących takich jak
<SMALL>LIKE</SMALL> lub <I>~</I>, indeksy będą używane jedynie w <SMALL>LIKE</SMALL> lub <I>~</I>, indeksy będą używane jedynie w
@ -1057,16 +1055,16 @@
<UL> <UL>
<LI>Początek wyszukiwania jest oparty na początku łańcucha tekstu. <LI>Początek wyszukiwania jest oparty na początku łańcucha tekstu.
<UL> <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) <LI>dopasowania operatorem <I>~</I> (dopasowania regularne)
muszą się zaczynać znakiem specjalnym <I>^</I>.</P> muszą się zaczynać znakiem specjalnym <I>^</I>.</LI>
</UL> </UL></LI>
<LI>Początek wyszukiwania nie może się zaczynać od klas znaków, np. <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 <LI>Case-insensitive searches such as ILIKE and ~* do not utilise
indexes. Instead, use functional indexes, which are described in indexes. Instead, use functional indexes, which are described in
section 4.12. section 4.12.</LI>
<LI>Standardowe locale C musi być uzyte przy wykonywaniu initdb <LI>Standardowe locale C musi być uzyte przy wykonywaniu initdb</LI>
</UL> </UL>
<H4><A name="4.9">4.9</A>) Jak mogę sprawdzić w jakis sposób "query <H4><A name="4.9">4.9</A>) Jak mogę sprawdzić w jakis sposób "query
optimizer" wykonuje moje zapytanie?</H4> optimizer" wykonuje moje zapytanie?</H4>
@ -1165,7 +1163,7 @@ BYTEA bytea zmiennej d
przechowywane out-of-line jako <SMALL>TOAST</SMALL>, więc faktyczne przechowywane out-of-line jako <SMALL>TOAST</SMALL>, więc faktyczne
zużycie miejsca na dysku może być mniejsze niż oczekiwane.</P> 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 najodpowiedniejszy do przechowywania łańcuchów o różnej długości
ale określa on maksymalną jego długość. ale określa on maksymalną jego długość.
@ -1344,7 +1342,7 @@ BYTEA bytea zmiennej d
<P>Listę terminów związanych z bazami danych możesz znaleźć pod tym <P>Listę terminów związanych z bazami danych możesz znaleźć pod tym
adresem:<A 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: <H4><A name="4.18">4.18</A>) Skąd bierze się ten błąd <I>"ERROR:
Memory exhausted in AllocSetAlloc()"</I>?</H4> Memory exhausted in AllocSetAlloc()"</I>?</H4>
@ -1488,7 +1486,7 @@ BYTEA bytea zmiennej d
kolumn?</H4> kolumn?</H4>
<P>Możesz w łatwy sposób zwracać wiele rzędów lub kolumn używając <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 <H4><A name="4.26">4.26</A>) Dlaczego nie mogę w sposób pewny
tworzyć/usuwać tabel tymczasowych w funkcjach PL/PgSQL?</H4> tworzyć/usuwać tabel tymczasowych w funkcjach PL/PgSQL?</H4>
@ -1503,38 +1501,36 @@ BYTEA bytea zmiennej d
funkcji. funkcji.
</P> </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> <P>
Jest kilka opcji aby stosować replikację typu master/slave. Ten typ Jest kilka opcji aby stosować replikację typu master/slave. Ten typ
pozwala jedynie masterowi na dokonywanie zmian w bazie danych, a pozwala jedynie masterowi na dokonywanie zmian w bazie danych, a
slave może jedynie te zmiany odczytywać. Na stronie slave może jedynie te zmiany odczytywać. Na stronie
<A <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 znajduje się ich lista. Replikacja typu multi-master jest w trakcie
prac, opis projektu znajduje się pod adresem: <A 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>. http://gborg.PostgreSQL.org/project/pgreplication/projdisplay.php</A>.
</P> </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> PostgreSQL?</H4>
<P>
<UL> <UL>
<LI>contrib/pgcrypto zawiera wiele funkcji za pomocą, których możemy używać <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ć <LI>Aby szyfrować transmisję od klienta do serwera, ten musi mieć
ustawioną opcję ssl na true w pliku postgresql.conf, odpowiedni ustawioną opcję ssl na true w pliku postgresql.conf, odpowiedni
wpis host lub hostssl musi występować w pliku pg_hba.conf, oraz 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 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 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 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 <LI>Hasła użytkowników bazy danych są automatycznie szyfrowane od
wersji 7.3. W poprzednich wersjach, należy tą funkcjonalność poprzez wersji 7.3. W poprzednich wersjach, należy tą funkcjonalność poprzez
włączenie opcji PASSWORD_ENCRYPTION w postgresql.conf. włączenie opcji PASSWORD_ENCRYPTION w postgresql.conf. </LI>
<LI>Serwer może działać używając szyfrowanego systemu plików. <LI>Serwer może działać używając szyfrowanego systemu plików.</LI>
</UL> </UL>
</P>
<H2 align="center">Rozwijanie PostgreSQL</H2> <H2 align="center">Rozwijanie PostgreSQL</H2>

View File

@ -236,16 +236,16 @@
<A href="http://techdocs.postgresql.org/companies.php">http://techdocs.postgresql.org/companies.php</A>.</P> <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>Посетите страничку со специальной формой отчёта об ошибке в <P>Посетите страничку со специальной формой отчёта об ошибке в
PostgreSQL по адресу: 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> http://www.postgresql.org/support/submitbug</A>.</P>
<P>Также проверьте наличие более свежей версии PostgreSQL на нашем <P>Также проверьте наличие более свежей версии PostgreSQL на нашем
FTP сайте <A href="ftp://ftp.postgresql.org/pub"> 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> <H4><A name="1.7">1.7</A>) Какая последняя версия?</H4>
@ -604,19 +604,18 @@
для нескольких первых строчек запроса? Произвольной строки?</H4> для нескольких первых строчек запроса? Произвольной строки?</H4>
<P>Для получения только нескольких строк, если вы знаете их количество <P>Для получения только нескольких строк, если вы знаете их количество
на момент выполнения <SMALL>SELECT</SMALL> используйте <SMALL>LIMIT</SMALL>.</P> на момент выполнения <SMALL>SELECT</SMALL> используйте <SMALL>LIMIT</SMALL>.
Если есть какой-либо индекс, который совпадает с <SMALL>ORDER BY</SMALL>, Если есть какой-либо индекс, который совпадает с <SMALL>ORDER BY</SMALL>,
то возможно, что весь запрос выполнен и не будет. Если вы не знаете то возможно, что весь запрос выполнен и не будет. Если вы не знаете
количества необходимых строк на момент выполнения <SMALL>SELECT</SMALL>, количества необходимых строк на момент выполнения <SMALL>SELECT</SMALL>,
используйте курсор и <SMALL>FETCH</SMALL>.</P> используйте курсор и <SMALL>FETCH</SMALL>.</P>
<p>To <small>SELECT</small> a random row, use: <p>To <small>SELECT</small> a random row, use:</p>
</p><pre> SELECT col <pre> SELECT col
FROM tab FROM tab
ORDER BY random() ORDER BY random()
LIMIT 1; LIMIT 1;
</pre> </pre>
</p>
<H4><A name="4.2">4.2</A>) Как мне найти какие таблицы, индексы, <H4><A name="4.2">4.2</A>) Как мне найти какие таблицы, индексы,
базы данных и пользователи существуют? Как мне увидеть запросы, базы данных и пользователи существуют? Как мне увидеть запросы,
@ -646,7 +645,7 @@
<H4><A name="4.3">4.3</A>) Как изменить тип данных колонки?</H4> <H4><A name="4.3">4.3</A>) Как изменить тип данных колонки?</H4>
<P>В 8.0 и более поздних версиях, изменение типа колонки выполняется <P>В 8.0 и более поздних версиях, изменение типа колонки выполняется
очень легко через <SMALL>ALTER TABLE ALTER COLUMN TYPE</SMALL>. очень легко через <SMALL>ALTER TABLE ALTER COLUMN TYPE</SMALL>.</P>
<P>В более ранних версиях сделайте так:</P> <P>В более ранних версиях сделайте так:</P>
<PRE> <PRE>
@ -662,7 +661,7 @@
<P>Существуют следующие ограничения:</P> <P>Существуют следующие ограничения:</P>
<BLOCKQUOTE> <BLOCKQUOTE>
<TABLE BORDER="1"> <TABLE>
<TBODY> <TBODY>
<TR> <TR>
<TD>Максимальный размер базы?</TD> <TD>Максимальный размер базы?</TD>
@ -775,7 +774,7 @@
и в этом случае индекс будет использоваться, поскольку при выполнении и в этом случае индекс будет использоваться, поскольку при выполнении
будет возвращаться небольшая часть таблицы. Фактически MAX() и MIN() не будет возвращаться небольшая часть таблицы. Фактически MAX() и MIN() не
используют индексы, но индекс используется при построении запросов с используют индексы, но индекс используется при построении запросов с
<SMALL>ORDER BY</SMALL> и <SMALL>LIMIT</SMALL>: <SMALL>ORDER BY</SMALL> и <SMALL>LIMIT</SMALL>:</P>
<pre> <pre>
SELECT col SELECT col
FROM tab FROM tab
@ -833,8 +832,8 @@
WHERE lower(col) = 'abc'; WHERE lower(col) = 'abc';
</PRE> </PRE>
Эта конструкция не будет использовать стандартный индекс. Однако, если <P> Эта конструкция не будет использовать стандартный индекс. Однако, если
вы создадите индекс выражения, он будет использован: вы создадите индекс выражения, он будет использован:</P>
<PRE> <PRE>
CREATE INDEX tabindex ON tab (lower(col)); CREATE INDEX tabindex ON tab (lower(col));
</PRE> </PRE>
@ -848,7 +847,7 @@
<H4><A name="4.10">4.10</A>) Каковы отличия между разными символьными <H4><A name="4.10">4.10</A>) Каковы отличия между разными символьными
типами?</H4> типами?</H4>
<BLOCKQUOTE> <BLOCKQUOTE>
<TABLE BORDER="1"> <TABLE>
<TBODY> <TBODY>
<TR> <TR>
<TH>Тип</TH> <TH>Тип</TH>
@ -919,7 +918,7 @@
); );
</PRE> </PRE>
автоматически транслируется в: <P> автоматически транслируется в: </P>
<PRE> <PRE>
CREATE SEQUENCE person_id_seq; CREATE SEQUENCE person_id_seq;
CREATE TABLE person ( CREATE TABLE person (
@ -994,12 +993,12 @@
O<SMALL>ID</SMALL>, потому что последовательности <SMALL>SERIAL</SMALL> O<SMALL>ID</SMALL>, потому что последовательности <SMALL>SERIAL</SMALL>
уникальны только внутри таблицы и таким образом меньше подвержены уникальны только внутри таблицы и таким образом меньше подвержены
переполнению. Для хранения значений 8-ми байтной последовательности переполнению. Для хранения значений 8-ми байтной последовательности
доступен тип <SMALL>SERIAL8</SMALL>. доступен тип <SMALL>SERIAL8</SMALL>.</P>
<P>T<SMALL>ID</SMALL> используется для идентификации специальных <P>T<SMALL>ID</SMALL> используется для идентификации специальных
физических записей с блочными и offset значениями. T<SMALL>ID</SMALL> физических записей с блочными и offset значениями. T<SMALL>ID</SMALL>
изменяется после того как строки в таблице были изменены или перегружены. изменяется после того как строки в таблице были изменены или перегружены.
<P>T<SMALL>ID</SMALL> используется индексными записями в качестве T<SMALL>ID</SMALL> используется индексными записями в качестве
указателя на физические записи.</P> указателя на физические записи.</P>

View File

@ -111,7 +111,7 @@ adreslerinde g
<a href="#4.18">4.18</a>) Neden "<code>ERROR: Memory exhausted in AllocSetAlloc()</code>" <a href="#4.18">4.18</a>) Neden "<code>ERROR: Memory exhausted in AllocSetAlloc()</code>"
hatasını alıyorum?<br> 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.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> obj descriptor</code>" hatasını veriyor?<br>
<a href="#4.21">4.21</a>) Şu andaki zamanı öntanımlı değer olarak kabul <a href="#4.21">4.21</a>) Şu andaki zamanı öntanımlı değer olarak kabul
eden kolonu nasıl yaratırım?<br> eden kolonu nasıl yaratırım?<br>
@ -190,7 +190,7 @@ adreslerinde g
<P>PostgreSQL 8.0 sürümü ile , PostgreSQL artık Win2000, WinXP ve Win2003 gibi Microsoft <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 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 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> <p>Ayrıca, http://forge.novell.com adresinde Novell Netware 6 portu bulunmaktadır.</p>
@ -218,7 +218,7 @@ adreslerinde g
<pre>subscribe<br>end</pre> <pre>subscribe<br>end</pre>
<p>yazan bir e-posta atmanız yeterli olacaktır.</p> <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 <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ı <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> bulunmaktadır. Bunun için, <code>irc -c '#PostgreSQL' "$USER" irc.phoenix.net</code>
Unix komutunu kullanabilirsiniz.</p> Unix komutunu kullanabilirsiniz.</p>
@ -235,7 +235,7 @@ adreslerinde g
<code>/doc</code> dizinine bakınız. Ayrıca, bu el kitapçıklarını online olarak <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> <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> <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, 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. <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 Ayrıca, PostgreSQL konusundaki teknik makalelere de
@ -288,7 +288,7 @@ adreslerinde g
<h4><a name="1.14">1.14</a>) PostgreSQL, diger DBMS'lerle nasıl karşılastırılabilir?</h4> <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, <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> 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>, <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> <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>, ve <i>sophisticated locking</i> gibi (<i>user-defined types</i>), <i>rules</i>,
@ -355,7 +355,7 @@ adreslerinde g
<p><i><a href="http://www.webreview.com/">http://www.webreview.com/</a></i> adresinde, <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> 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>) <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> <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> <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
<p>Postmaster ve postgres çeşitli hata ayıklama seçeneklerine sahiptir. Öncelikle, <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 postmaster'ı başlattığınızda, standart çıktıyı ve hataları bir log dosyasına
yönlendirdiğinize emin olun:</p> 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. <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. 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. <code>-d</code> seçeneği, hata ayıklama seviyesini belirten bir rakam ile kullanılır.
@ -497,7 +497,7 @@ adreslerinde g
değeri ile ya da <code>postgresql.conf</code> dosyasını düzenleyerek yeniden değeri ile ya da <code>postgresql.conf</code> dosyasını düzenleyerek yeniden
başlatmakla arttırabilirsiniz.</p> başlatmakla arttırabilirsiniz.</p>
<p>Eğer <code>-N</code> değerini 32'den büyük yapacaksanız, aynı zamanda <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 <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 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, yapılandırma parametrelerini arttırmanız gerekecektir. Yapılması gerekenler,
@ -554,7 +554,7 @@ adreslerinde g
<code>LIMIT</code> ... kullanınız.</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 <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ç 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 <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> ş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> 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ı, <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() <p>Alternatif olarak, atanmış SERIAL değerini, değer girildikten sonra currval()
fonksiyonu ile alabilirsiniz:</p> fonksiyonu ile alabilirsiniz:</p>