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:47:44 +00:00
parent 30854a53fe
commit 2e964aee75
22 changed files with 5477 additions and 4324 deletions

16
doc/FAQ
View File

@ -1,7 +1,7 @@
Frequently Asked Questions (FAQ) for PostgreSQL
Last updated: Thu Feb 24 19:33:07 EST 2005
Last updated: Fri Mar 11 16:42:06 EST 2005
Current maintainer: Bruce Momjian (pgman@candle.pha.pa.us)
@ -77,8 +77,8 @@
4.17) How do I perform an outer join?
4.18) How do I perform queries using multiple databases?
4.19) How do I return multiple rows or columns from a function?
4.20) Why do I get "missing oid" errors when accessing temporary
tables in PL/PgSQL functions?
4.20) Why do I get "relation with OID ##### does not exist" errors
when accessing temporary tables in PL/PgSQL functions?
4.21) What encryption options are available?
Extending PostgreSQL
@ -321,7 +321,8 @@
For Web integration, PHP (http://www.php.net) is an excellent
interface.
For complex cases, many use the Perl DBD::Pg with CGI.pm or mod_perl.
For complex cases, many use the Perl and DBD::Pg with CGI.pm or
mod_perl.
2.3) Does PostgreSQL have a graphical user interface?
@ -818,10 +819,11 @@
4.19) How do I return multiple rows or columns from a function?
It is easy using set-returning functions,
http://techdocs.postgresql.org/guides/SetReturningFunctions.
http://techdocs.postgresql.org/guides/SetReturningFunctions
.
4.20) Why do I get "missing oid" errors when accessing temporary tables in
PL/PgSQL functions?
4.20) Why do I get "relation with OID ##### does not exist" errors when
accessing temporary tables in PL/PgSQL functions?
PL/PgSQL caches function scripts, and an unfortunate side effect is
that if a PL/PgSQL function accesses a temporary table, and that table

View File

@ -1,7 +1,7 @@
Developer's Frequently Asked Questions (FAQ) for PostgreSQL
Last updated: Wed Jan 5 17:36:58 EST 2005
Last updated: Fri Mar 11 16:43:05 EST 2005
Current maintainer: Bruce Momjian (pgman@candle.pha.pa.us)
@ -9,8 +9,8 @@
http://www.postgresql.org/files/documentation/faqs/FAQ_DEV.html.
_________________________________________________________________
General Questions
General Questions
1.1) How do I get involved in PostgreSQL development?
1.2) What development environment is required to develop code?
1.3) What areas need work?
@ -31,8 +31,8 @@
1.17) Where can I get technical assistance?
1.18) How do I get involved in PostgreSQL web site development?
Technical Questions
Technical Questions
2.1) How do I efficiently access information in tables from the
backend code?
2.2) Why are table, column, type, function, view names sometimes
@ -46,7 +46,7 @@
General Questions
1.1) How go I get involved in PostgreSQL development?
1.1) How do I get involved in PostgreSQL development?
Download the code and have a look around. See 1.7.
@ -97,6 +97,11 @@
have misunderstood the TODO item; your approach may benefit from the
review of others.
A web site is maintained for patches that are ready to be applied,
http://momjian.postgresql.org/cgi-bin/pgpatches, and those that are
being kept for the next release,
http://momjian.postgresql.org/cgi-bin/pgpatches2.
1.5) Where can I learn more about the code?
Other than documentation in the source tree itself, you can find some
@ -134,7 +139,7 @@
Basic system testing
The easiest way to test your code is to ensure that it builds against
the latest verion of the code and that it does not generate compiler
the latest version of the code and that it does not generate compiler
warnings.
It is worth advised that you pass --enable-cassert to configure. This
@ -150,7 +155,7 @@
test suite. To do this, issue "make check" in the root directory of
the source tree. If any tests failure, investigate.
If you've deliberately changed existing behaviour, this change may
If you've deliberately changed existing behavior, this change may
cause a regression test failure but not any actual regression. If so,
you should also patch the regression test suite.
@ -377,7 +382,7 @@
1. A set of patches to make certain portions of the source tree
'behave' in the different environment of the RPMset;
2. The initscript;
3. Any other ancilliary scripts and files;
3. Any other ancillary scripts and files;
4. A README.rpm-dist document that tries to adequately document both
the differences between the RPM build and the WHY of the
differences, as well as useful RPM environment operations (like,
@ -495,7 +500,7 @@
want to contain the toplevel "pgsql" directory and say
cvs ... checkout pgsql
To get a past branch, you cd to whereever you want it and say
To get a past branch, you cd to wherever you want it and say
cvs ... checkout -r BRANCHNAME pgsql
For example, just a couple days ago I did
@ -548,19 +553,19 @@
questions about development of new features, on IRC at
irc.freenode.net in the #postgresql channel.
1.18) How go I get involved in PostgreSQL web site development?
1.18) How do I get involved in PostgreSQL web site development?
PostgreSQL website development is discussed on the
pgsql-www@postgresql.org mailing list. The is a project page where the
source code is available at
http://gborg.postgresql.org/project/pgweb/projdisplay.php , the code
for the next version of the website is under the "portal" module. You
will al so find code for the "techdocs" website if you would like to
will also find code for the "techdocs" website if you would like to
contribute to that. A temporary todo list for current website
development issues is available at http://xzilla.postgresql.org/todo
Technical Questions
Technical Questions
2.1) How do I efficiently access information in tables from the backend code?
You first need to find the tuples(rows) you are interested in. There
@ -653,7 +658,7 @@ typedef struct nameData
Here are some of the List manipulation commands:
lfirst(i), lfirst_int(i), lfirst_oid(i)
return the data (a point, inteter and OID respectively) at list
return the data (a point, integer and OID respectively) at list
element i.
lnext(i)

View File

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

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

View File

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

File diff suppressed because it is too large Load Diff

View File

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

View File

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

File diff suppressed because it is too large Load Diff

View File

@ -10,7 +10,7 @@
alink="#0000ff">
<H1>Frequently Asked Questions (FAQ) for PostgreSQL</H1>
<P>Last updated: Thu Feb 24 19:33:07 EST 2005</P>
<P>Last updated: Fri Mar 11 16:42:06 EST 2005</P>
<P>Current maintainer: Bruce Momjian (<A href=
"mailto:pgman@candle.pha.pa.us">pgman@candle.pha.pa.us</A>)
@ -113,8 +113,9 @@
databases?<BR>
<A href="#4.19">4.19</A>) How do I return multiple rows or columns
from a function?<BR>
<A href="#4.20">4.20</A>) Why do I get "missing oid" errors when
accessing temporary tables in PL/PgSQL functions?<BR>
<A href="#4.20">4.20</A>) Why do I get "relation with OID #####
does not exist" errors when accessing temporary tables in PL/PgSQL
functions?<BR>
<A href="#4.21">4.21</A>) What encryption options are available?<BR>
@ -196,7 +197,7 @@
and Win2003. A prepackaged installer is available at <a href=
"http://pgfoundry.org/projects/pginstaller">
http://pgfoundry.org/projects/pginstaller</a>. MSDOS-based versions
of Windows (Win95, Win98, WinMe) can run PostgreSQL using Cygwin.
of Windows (Win95, Win98, WinMe) can run PostgreSQL using Cygwin.</P>
<p>There is also a Novell Netware 6 port at
<a href="http://forge.novell.com">http://forge.novell.com</a>,
@ -216,14 +217,14 @@
via email. The main web site to subscribe to the email lists is
<a href="http://www.postgresql.org/community/lists/">
http://www.postgresql.org/community/lists/</a>. The <I>general</I>
or <I>bugs</I> lists are a good place to start.
or <I>bugs</I> lists are a good place to start.</P>
<P>The major IRC channel is <I>#postgresql</I> on Freenode
(<I>irc.freenode.net</I>). To connect you can use the Unix
program <CODE>irc -c '#postgresql' "$USER" irc.freenode.net</CODE>
or use any of the other popular IRC clients. A Spanish one also exists
on the same network, (<I>#postgresql-es</I>), and a French one,
(<I>#postgresqlfr</I>). There is also a PostgreSQL channel on EFNet.
(<I>#postgresqlfr</I>). There is also a PostgreSQL channel on EFNet.</P>
<P>A list of commercial support companies is available at <A href=
"http://techdocs.postgresql.org/companies.php">
@ -412,7 +413,7 @@
href="http://www.php.net">http://www.php.net</A>) is an excellent
interface.</P>
<P>For complex cases, many use the Perl DBD::Pg with CGI.pm or
<P>For complex cases, many use the Perl and DBD::Pg with CGI.pm or
mod_perl.</P>
<H4><A name="2.3">2.3</A>) Does PostgreSQL have a graphical user
@ -481,7 +482,7 @@
<li>Use of Prepared queries</li>
<li>Use of <SMALL>ANALYZE</SMALL> to maintain accurate optimizer
statistics</li>
<li>Regular use of <SMALL>VACUUM</SMALL> or <I>pg_autovacuum</I>
<li>Regular use of <SMALL>VACUUM</SMALL> or <I>pg_autovacuum</I></li>
<li>Dropping of indexes during large data changes</li>
</ul><BR>
<BR>
@ -608,7 +609,7 @@
<SMALL>SELECT</SMALL> time, use a cursor and
<SMALL>FETCH</SMALL>.</P>
<P>To <SMALL>SELECT</SMALL> a random row, use:
<P>To <SMALL>SELECT</SMALL> a random row, use:</P>
<PRE>
SELECT col
FROM tab
@ -642,7 +643,7 @@
<H4><A name="4.3">4.3</A>) How do you change a column's data type?</H4>
<P>Changing the data type of a column can be done easily in 8.0
and later with <SMALL>ALTER TABLE ALTER COLUMN TYPE</SMALL>.
and later with <SMALL>ALTER TABLE ALTER COLUMN TYPE</SMALL>.</P>
<P>In earlier releases, do this:</P>
<PRE>
@ -660,7 +661,7 @@
<P>These are the limits:</P>
<BLOCKQUOTE>
<TABLE BORDER=1>
<TABLE >
<TR><TD>Maximum size for a database?</TD><TD>unlimited (32 TB databases
exist)</TD></TR>
<TR><TD>Maximum size for a table?</TD><TD>32 TB</TD></TR>
@ -730,7 +731,7 @@ table?</TD><TD>unlimited</TD></TR>
used if the table is larger than a minimum size, and the query
selects only a small percentage of the rows in the table. This is
because the random disk access caused by an index scan can be
slower than a straight read through the table, or sequential scan.
slower than a straight read through the table, or sequential scan. </P>
<P>To determine if an index should be used, PostgreSQL must have
statistics about the table. These statistics are collected using
@ -842,7 +843,7 @@ table?</TD><TD>unlimited</TD></TR>
<H4><A name="4.10">4.10</A>) What is the difference between the
various character types?</H4>
<BLOCKQUOTE>
<TABLE BORDER=1>
<TABLE >
<TR><TH>Type</TH><TH>Internal Name</TH><TH>Notes</TH></TR>
<TR><TD>VARCHAR(n)</TD><TD>varchar</TD><TD>size specifies maximum
length, no padding</TD></TR>
@ -1056,10 +1057,11 @@ length</TD></TR>
<P>It is easy using set-returning functions,
<a href="http://techdocs.postgresql.org/guides/SetReturningFunctions">
http://techdocs.postgresql.org/guides/SetReturningFunctions</a>.
http://techdocs.postgresql.org/guides/SetReturningFunctions</a></P>.
<H4><A name="4.20">4.20</A>) Why do I get "missing oid" errors when
accessing temporary tables in PL/PgSQL functions?</H4>
<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
functions?</H4>
<P>PL/PgSQL caches function scripts, and an unfortunate side effect
is that if a PL/PgSQL function accesses a temporary table, and that
@ -1080,7 +1082,7 @@ length</TD></TR>
<I>pg_hba.conf</I>, and the client <I>sslmode</I> must not be
<I>disable.</I> (Note that it is also possible to use a third-party
encrypted transport, such as stunnel or ssh, rather than PostgreSQL's
native SSL connections.)
native SSL connections.)</LI>
<LI>Database user passwords are automatically encrypted when stored in
the system tables.</LI>
<LI>The server can run using an encrypted file system.</LI>

View File

@ -13,7 +13,7 @@
<H1>Developer's Frequently Asked Questions (FAQ) for
PostgreSQL</H1>
<P>Last updated: Wed Jan 5 17:36:58 EST 2005</P>
<P>Last updated: Fri Mar 11 16:43:05 EST 2005</P>
<P>Current maintainer: Bruce Momjian (<A href=
"mailto:pgman@candle.pha.pa.us">pgman@candle.pha.pa.us</A>)<BR>
@ -26,9 +26,7 @@
<BR>
<CENTER>
<H2>General Questions</H2>
</CENTER>
<A href="#1.1">1.1</A>) How do I get involved in PostgreSQL
development?<BR>
<A href="#1.2">1.2</A>) What development environment is required
@ -59,9 +57,7 @@
site development?<BR>
<CENTER>
<H2>Technical Questions</H2>
</CENTER>
<A href="#2.1">2.1</A>) How do I efficiently access information in
tables from the backend code?<BR>
<A href="#2.2">2.2</A>) Why are table, column, type, function,
@ -83,7 +79,7 @@
<H2>General Questions</H2>
</CENTER>
<H3><A name="1.1">1.1</A>) How go I get involved in PostgreSQL
<H3><A name="1.1">1.1</A>) How do I get involved in PostgreSQL
development?</H3>
<P>Download the code and have a look around. See <A href=
@ -147,6 +143,13 @@
item; you may have misunderstood the TODO item; your approach may
benefit from the review of others.</P>
<P>A web site is maintained for patches that are ready to be applied,
<a href="http://momjian.postgresql.org/cgi-bin/pgpatches">
http://momjian.postgresql.org/cgi-bin/pgpatches</a>, and
those that are being kept for the next release,
<a href="http://momjian.postgresql.org/cgi-bin/pgpatches2">
http://momjian.postgresql.org/cgi-bin/pgpatches2</a>.</P>
<H3><A name="1.5">1.5</A>) Where can I learn more about the
code?</H3>
@ -192,7 +195,7 @@
<P><B>Basic system testing</B></P>
<P>The easiest way to test your code is to ensure that it builds
against the latest verion of the code and that it does not generate
against the latest version of the code and that it does not generate
compiler warnings.</P>
<P>It is worth advised that you pass --enable-cassert to
@ -210,7 +213,7 @@
directory of the source tree. If any tests failure,
investigate.</P>
<P>If you've deliberately changed existing behaviour, this change
<P>If you've deliberately changed existing behavior, this change
may cause a regression test failure but not any actual regression.
If so, you should also patch the regression test suite.</P>
@ -472,7 +475,7 @@
<LI>The initscript;</LI>
<LI>Any other ancilliary scripts and files;</LI>
<LI>Any other ancillary scripts and files;</LI>
<LI>A README.rpm-dist document that tries to adequately document
both the differences between the RPM build and the WHY of the
@ -601,7 +604,7 @@
cvs ... checkout pgsql
</PRE>
<P>To get a past branch, you cd to whereever you want it and
<P>To get a past branch, you cd to wherever you want it and
say</P>
<PRE>
cvs ... checkout -r BRANCHNAME pgsql
@ -682,7 +685,7 @@
questions about development of new features, on IRC at
irc.freenode.net in the #postgresql channel.</P>
<H3><A name="1.18">1.18</A>) How go I get involved in PostgreSQL
<H3><A name="1.18">1.18</A>) How do I get involved in PostgreSQL
web site development?</H3>
<P>PostgreSQL website development is discussed on the
@ -690,15 +693,13 @@
the source code is available at <A href=
"http://gborg.postgresql.org/project/pgweb/projdisplay.php">http://gborg.postgresql.org/project/pgweb/projdisplay.php</A>
, the code for the next version of the website is under the
"portal" module. You will al so find code for the "techdocs"
"portal" module. You will also find code for the "techdocs"
website if you would like to contribute to that. A temporary todo
list for current website development issues is available at <A
href=
"http://xzilla.postgresql.org/todo">http://xzilla.postgresql.org/todo</A></P>
<CENTER>
<H2>Technical Questions</H2>
</CENTER>
<H3><A name="2.1">2.1</A>) How do I efficiently access information
in tables from the backend code?</H3>
@ -810,7 +811,7 @@
<DL>
<DT>lfirst(i), lfirst_int(i), lfirst_oid(i)</DT>
<DD>return the data (a point, inteter and OID respectively) at
<DD>return the data (a point, integer and OID respectively) at
list element <I>i.</I></DD>
<DT>lnext(i)</DT>

View File

@ -71,8 +71,6 @@ The mailing list for discussion is
<i>pgsql-hackers-win32@postgresql.org</i>. You can subscribe by sending
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>
<ul>
</ul>
<h2>Resources</h2>
There are several resources that helped us complete this port:<br>
<ul>

View File

@ -17,7 +17,7 @@
</P>
<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=
"http://www.postgresql.org/files/documentation/faqs/FAQ.html">
@ -202,14 +202,14 @@
baseados no NT tais como Win2000, WinXP e Win2003. Um instalador
est&aacute; dispon&iacute;vel em <a href=
"http://pgfoundry.org/projects/pginstaller">
http://pgfoundry.org/projects/pginstaller</a> Versões do Windows
baseados no MSDOS (Win95, Win98, WinMe) podem executar o PostgreSQL utilizando o Cygwin.
http://pgfoundry.org/projects/pginstaller</a> Vers&otilde;es do Windows
baseados no MSDOS (Win95, Win98, WinMe) podem executar o PostgreSQL utilizando o Cygwin.</P>
<P>H&aacute; tamb&eacute;m um porte para Novell Netware 6 em
<A href="http://forge.novell.com">http://forge.novell.com</A>
e uma versão para OS/2 (eComStation) em <a href=
"http://hobbes.nmsu.edu/cgi-bin/h-search?sh=1&button=Search&key=postgreSQL&stype=all&sort=type&dir=%2F">
http://hobbes.nmsu.edu/cgi-bin/h-search?sh=1&button=Search&key=postgreSQL&stype=all&sort=type&dir=%2F</a>.</P>
e uma vers&atilde;o para OS/2 (eComStation) em <a href=
"http://hobbes.nmsu.edu/cgi-bin/h-search?sh=1&amp;button=Search&amp;key=postgreSQL&amp;stype=all&amp;sort=type&amp;dir=%2F">
http://hobbes.nmsu.edu/cgi-bin/h-search?sh=1&amp;button=Search&amp;key=postgreSQL&amp;stype=all&amp;sort=type&amp;dir=%2F</a>.</P>
<H4><A name="1.5">1.5</A>) Onde eu posso conseguir o PostgreSQL?</H4>
@ -253,7 +253,7 @@ H&aacute; tamb&eacute;m uma lista de discuss&atilde;o dos desenvolvedores dispon
<P>Outras listas de discuss&otilde;es e informa&ccedil;&otilde;es sobre o PostgreSQL podem ser encontradas na homepage do PostgreSQL em:</P>
<BLOCKQUOTE>
<A href="http://www.PostgreSQL.org">http://www.PostgreSQL.org</A>
<P><A href="http://www.PostgreSQL.org">http://www.PostgreSQL.org</A></P>
</BLOCKQUOTE>
<P>O principal canal de IRC &eacute; o <I>#postgresql</I> na Freenode (<I>irc.freenode.net</I>). Para se conectar voc&ecirc; pode utilizar o comando Unix <code>irc -c '#postgresql' "$USER" irc.freenode.net</code> ou utilizar qualquer outro cliente de IRC. Um canal hisp&acirc;nico (<I>#postgresql-es</I>) e um franc&ecirc;s (<I>#postgresqlfr</I>) tamb&eacute;m existem na mesma rede. H&aacute; tamb&eacute;m um canal PostgreSQL na EFNet.</P>
@ -499,9 +499,9 @@ H&aacute; tamb&eacute;m uma lista de discuss&atilde;o dos desenvolvedores dispon
<P>Se o <I>postmaster</I> n&atilde;o est&aacute; sendo executado, voc&ecirc; pode executar o n&uacute;cleo do <I>postgres</I> a partir da linha de comando, e digitar a sua senten&ccedil;a <SMALL>SQL</SMALL> diretamente. Isso &eacute; recomendado <B>somente</B> para fins de depura&ccedil;&atilde;o. Note que uma nova linha termina a consulta, e n&atilde;o um ponto-e-v&iacute;rgula. Se voc&ecirc; compilou com s&iacute;mbolos de depura&ccedil;&atilde;o, voc&ecirc; pode utilizar um depurador para ver o que est&aacute; acontecendo. Como o n&uacute;cleo (backend) n&atilde;o foi iniciado a partir do <I>postmaster</I>, ele n&atilde;o est&aacute; executando em um ambiente id&ecirc;ntico e problemas de itera&ccedil;&atilde;o com o n&uacute;cleo/travamento n&atilde;o podem ser reproduzidos.</P>
<P>Se o <i>postmaster</i> est&aacute; sendo executado, inicie o <i>psql</i> em uma janela, e ent&atilde;o encontre o <small>PID</small> do processo <i>postgres</i> utilizado pelo <i>psql</i> utilizando <pre>SELECT pg_backend_pid()</pre>. Utilize um depurador para anexar ao <small>PID</small> do <i>postgres</i>. Voc&ecirc; pode definir pontos de parada (<i>breakpoints</i>) no depurador e digitar consultas no <i>psql</i>. Se voc&ecirc; est&aacute; depurando a inicializa&ccedil;&atilde;o do <i>postgres</i>, voc&ecirc; pode definir PGOPTIONS="-W n" e ent&atilde;o iniciar o <i>psql</i>. Isto retardar&aacute; a inicializa&ccedil;&atilde;o por <i>n</i> segundos ent&atilde;o voc&ecirc; pode anexar o depurador ao processo, definir quaisquer pontos de parada e continuar pela sequ&ecirc;ncia de inicializa&ccedil;&atilde;o.</p>
<P>Se o <i>postmaster</i> est&aacute; sendo executado, inicie o <i>psql</i> em uma janela, e ent&atilde;o encontre o <small>PID</small> do processo <i>postgres</i> utilizado pelo <i>psql</i> utilizando <code>SELECT pg_backend_pid()</code>. Utilize um depurador para anexar ao <small>PID</small> do <i>postgres</i>. Voc&ecirc; pode definir pontos de parada (<i>breakpoints</i>) no depurador e digitar consultas no <i>psql</i>. Se voc&ecirc; est&aacute; depurando a inicializa&ccedil;&atilde;o do <i>postgres</i>, voc&ecirc; pode definir PGOPTIONS="-W n" e ent&atilde;o iniciar o <i>psql</i>. Isto retardar&aacute; a inicializa&ccedil;&atilde;o por <i>n</i> segundos ent&atilde;o voc&ecirc; pode anexar o depurador ao processo, definir quaisquer pontos de parada e continuar pela sequ&ecirc;ncia de inicializa&ccedil;&atilde;o.</p>
<P>H&aacute; v&aacute;rias vari&aacute;veis de configura&ccedil;&atilde;o do servidor <pre>log_*</pre> que habilitam a exibi&ccedil;&atilde;o de estat&iacute;sticas que podem ser muito &uacute;teis para depura&ccedil;&atilde;o e medidas de performance.</P>
<P>H&aacute; v&aacute;rias vari&aacute;veis de configura&ccedil;&atilde;o do servidor <code>log_*</code> que habilitam a exibi&ccedil;&atilde;o de estat&iacute;sticas que podem ser muito &uacute;teis para depura&ccedil;&atilde;o e medidas de performance.</P>
<P>Voc&ecirc; tamb&eacute;m pode compilar com perfil para ver que fun&ccedil;&otilde;es est&atilde;o demandando tempo de execu&ccedil;&atilde;o. Os arquivo de perfil do n&uacute;cleo (backend) ser&atilde;o colocados no diret&oacute;rio <I>pgsql/data/base/dbname</I>. O arquivo de perfil do cliente ser&aacute; colocado no diret&oacute;rio atual do cliente. O Linux requer uma compila&ccedil;&atilde;o com <I>-DLINUX_PROFILE</I> para cria&ccedil;&atilde;o dos perfis.</P>
@ -526,7 +526,7 @@ H&aacute; tamb&eacute;m uma lista de discuss&atilde;o dos desenvolvedores dispon
<H4><A name="3.11">3.11</A>) Que tipo de hardware eu devo usar?</H4>
<P>Por causa do hardware de PC ser em sua maioria compat&iacute;vel, pessoas tendem a acreditar que todos os hardwares de PC são de mesma qualidade. Não &eacute; verdade. ECC RAM, SCSI e placas m&atilde;e de qualidade s&atilde;o mais confi&aacute;veis e t&ecirc;m uma melhor performance do que hardwares mais baratos. O PostgreSQL executar&aacute; em quase todo hardware, mas se a confiabilidade e a performance forem importantes &eacute; prudente pesquisar sobre as op&ccedil;&otilde;es de hardware. Nossas listas de discuss&atilde;o podem ser usadas para discutir op&ccedil;&otilde;es de hardware e dilemas.</P>
<P>Por causa do hardware de PC ser em sua maioria compat&iacute;vel, pessoas tendem a acreditar que todos os hardwares de PC satilde;o de mesma qualidade. Natilde;o &eacute; verdade. ECC RAM, SCSI e placas m&atilde;e de qualidade s&atilde;o mais confi&aacute;veis e t&ecirc;m uma melhor performance do que hardwares mais baratos. O PostgreSQL executar&aacute; em quase todo hardware, mas se a confiabilidade e a performance forem importantes &eacute; prudente pesquisar sobre as op&ccedil;&otilde;es de hardware. Nossas listas de discuss&atilde;o podem ser usadas para discutir op&ccedil;&otilde;es de hardware e dilemas.</P>
<HR>
@ -543,7 +543,7 @@ H&aacute; tamb&eacute;m uma lista de discuss&atilde;o dos desenvolvedores dispon
<P>Toda a consulta tem que ser avaliada, mesmo se voc&ecirc; s&oacute; quer os primeiros registros. Considere utilizar uma consulta que tenha um <SMALL>ORDER BY</SMALL>. Se h&aacute; um &iacute;ndice que combina com o <SMALL>ORDER BY</SMALL>, o PostgreSQL pode ser capaz de avaliar somente os primeiros registros requisitados, ou toda consulta tem que ser avaliada at&eacute; que os registros desejados tenham sido gerados.</P>
<P>Para obter um registro rand&ocirc;mico, utilize:
<P>Para obter um registro rand&ocirc;mico, utilize:</P>
<PRE>
SELECT col
FROM tab
@ -639,7 +639,7 @@ N&uacute;mero m&aacute;ximo de &iacute;ndices em uma tabela? ilimitado
utilizados se uma tabela &eacute; maior do que o tamanho m&iacute;nimo e uma consulta
seleciona somente uma porcentagem pequena de registros de uma tabela. Isto porque
o acesso rand&ocirc;mico ao disco causado por uma busca por &iacute;ndice pode ser
mais lento do que uma leitura ao longo da tabela ou uma busca sequencial.
mais lento do que uma leitura ao longo da tabela ou uma busca sequencial.</p>
<P>Para determinar se um &iacute;ndice pode ser utilizado, o PostgreSQL deve ter
estat&iacute;sticas sobre a tabela. Estas estat&iacute;sticas s&atilde;o coletadas utilizando
@ -686,11 +686,10 @@ N&uacute;mero m&aacute;ximo de &iacute;ndices em uma tabela? ilimitado
<LI>A localidade padr&atilde;o <I>C</I> deve ser utilizada durante o
<i>initdb</i> porque n&atilde;o &eacute; poss&iacute;vel saber o pr&oacute;ximo/maior caracter
em uma localidade que n&atilde;o seja a C. Voc&ecirc; pode criar um &iacute;ndice
especial <PRE>text_pattern_ops</PRE> para tais casos que funcionam somente para
indexa&ccedil;&atilde;o utilizando <PRE>LIKE</PRE>.
especial <tt>text_pattern_ops</tt> para tais casos que funcionam somente para
indexa&ccedil;&atilde;o utilizando <tt>LIKE</tt>.
</LI>
</UL>
<P>
<P>Em vers&otilde;es anteriores a 8.0, &iacute;ndices frequentemente n&atilde;o podiam ser usados a menos que os tipos de dados correspodessem aos tipos da coluna do &iacute;ndice. Isto &eacute; particularmente verdadeiro para &iacute;ndices de coluna int2, int8 e numeric.</P>
@ -922,14 +921,15 @@ Veja a p&aacute;gina sobre <I>create_sequence</I> no manual para mais informa&cc
FROM tab
WHERE col IN (SELECT subcol FROM subtab);
</PRE>
por:
<p>por:</p>
<PRE> SELECT *
FROM tab
WHERE EXISTS (SELECT subcol FROM subtab WHERE subcol = col);
</PRE>
Para isto ser r&aacute;pido, <CODE>subcol</CODE> deve ser uma coluna indexada. <P>A partir da vers&atilde;o 7.4, <CODE>IN</CODE> utiliza a mesma t&eacute;cnica de agrupamento do que consultas normais, e &eacute; recomendado utilizar <CODE>EXISTS</CODE>.
<p>
Para isto ser r&aacute;pido, <CODE>subcol</CODE> deve ser uma coluna indexada.</P>
<P>A partir da vers&atilde;o 7.4, <CODE>IN</CODE> utiliza a mesma t&eacute;cnica de agrupamento do que consultas normais, e &eacute; recomendado utilizar <CODE>EXISTS</CODE>.
</p>
<H4><A name="4.23">4.23</A>) Como eu fa&ccedil;o uma jun&ccedil;&atilde;o externa (outer join)?</H4>
<P>PostgreSQL suporta jun&ccedil;&otilde;es externas utilizando a sintaxe padr&atilde;o do SQL. Aqui temos dois exemplos:</P>
@ -965,7 +965,7 @@ Para isto ser r&aacute;pido, <CODE>subcol</CODE> deve ser uma coluna indexada. <
<H4><A name="4.25">4.25</A>) Como eu retorno m&uacute;ltiplos registros ou colunas de uma fun&ccedil;&atilde;o?</H4>
<P>No 7.3, voc&ecirc; pode facilmente retornar m&uacute;ltiplos registros ou colunas de uma fun&ccedil;&atilde;o, <A href="http://techdocs.postgresql.org/guides/SetReturningFunctions">http://techdocs.postgresql.org/guides/SetReturningFunctions</A>.
<P>No 7.3, voc&ecirc; pode facilmente retornar m&uacute;ltiplos registros ou colunas de uma fun&ccedil;&atilde;o, <A href="http://techdocs.postgresql.org/guides/SetReturningFunctions">http://techdocs.postgresql.org/guides/SetReturningFunctions</A>.</P>
<H4><A name="4.26">4.26</A>) Por que eu n&atilde;o posso confiar na cria&ccedil;&atilde;o/remo&ccedil;&atilde;o de tabelas tempor&aacute;rias em fun&ccedil;&otilde;es PL/PgSQL?</H4>
<P>PL/PgSQL armazena o conte&uacute;do da fun&ccedil;&atilde;o, e o efeito indesejado &eacute; que se uma fun&ccedil;&atilde;o PL/PgSQL acessa uma tabela tempor&aacute;ria, e aquela tabela &eacute; removida e criada novamente, e a fun&ccedil;&atilde;o &eacute; chamada novamente, a fun&ccedil;&atilde;o ir&aacute; falhar porque o conte&uacute;do armazenado da fun&ccedil;&atilde;o ainda apontar&aacute; para a tabela tempor&aacute;ria antiga. A solu&ccedil;&atilde;o &eacute; utilizar o <SMALL>EXECUTE</SMALL> para acesso a tabelas tempor&aacute;rias no PL/PgSQL. Isto ir&aacute; fazer com que a consulta seja avaliada toda vez.</P>
@ -973,7 +973,7 @@ Para isto ser r&aacute;pido, <CODE>subcol</CODE> deve ser uma coluna indexada. <
<H4><A name="4.27">4.27</A>) Que op&ccedil;&otilde;es para encripta&ccedil;&atilde;o est&atilde;o dispon&iacute;veis?</H4>
<UL>
<LI>No <I>contrib/pgcrypto</I> cont&eacute;m muitas fun&ccedil;&otilde;es de encripta&ccedil;&atilde;o para serem utilizados em consultas <SMALL>SQL</SMALL>.</li>
<LI>Para encriptar a transmiss&atilde;o do cliente ao servidor, o servidor deve ter a op&ccedil;&atilde;o <I>ssl</I> definida como <I>true</I> no <I>postgresql.conf</I>, e um registro <I>host</I> ou <I>hostssl</I> deve existir no <I>pg_hba.conf</I>, e o <I>sslmode</I> no cliente n&atilde;o deve estar <I>disable</I>. (Note que tamb&eacute;m &eacute; poss&iacute;vel utilizar outros esquemas de transporte encriptado, tais como stunnel ou ssh, ao inv&eacute;s da conex&atilde;o SSL nativa do PostgreSQL.)
<LI>Para encriptar a transmiss&atilde;o do cliente ao servidor, o servidor deve ter a op&ccedil;&atilde;o <I>ssl</I> definida como <I>true</I> no <I>postgresql.conf</I>, e um registro <I>host</I> ou <I>hostssl</I> deve existir no <I>pg_hba.conf</I>, e o <I>sslmode</I> no cliente n&atilde;o deve estar <I>disable</I>. (Note que tamb&eacute;m &eacute; poss&iacute;vel utilizar outros esquemas de transporte encriptado, tais como stunnel ou ssh, ao inv&eacute;s da conex&atilde;o SSL nativa do PostgreSQL.)</LI>
<LI>Senhas dos usu&aacute;rios do banco de dados s&atilde;o automaticamente encriptadas quando armazenadas na vers&atilde;o 7.3. Em vers&otilde;es anteriores, voc&ecirc; deve habilitar a op&ccedil;&atilde;o <I>PASSWORD_ENCRYPTION</I> no <I>postgresql.conf</I>.</li>
<li>O servidor pode executar utilizando um sistema de arquivos encriptado.</li>
</UL>

View File

@ -129,7 +129,7 @@
<H2 align="center">Obecné otázky</H2>
<H4><A name="1.1">1.1</A>) Co je PostgreSQL? Jak se vyslovuje?</H2>
<H4><A name="1.1">1.1</A>) Co je PostgreSQL? Jak se vyslovuje?</H4>
<P>PostgreSQL se vyslovuje <I>Post-Gres-Q-L</I>. Zvukový záznam je
dostupný na adrese <A href="http://www.postgresql.org/postgresql.mp3"></A>.</P>
@ -206,18 +206,18 @@
Win32 knihovny <I>libpq</I> a <I>psql</I>. K databázi PostgerSQL lze přistupovat skrze
rozhraní <SMALL>ODBC</SMALL>.</P>
<P><STRONG>Server</STRONG><P>
<P><STRONG>Server</STRONG></P>
<P>Server může být na WindowsNT a Win2k provozován pouze s knihovnou
Cygwin, Cygnus Unix/NT porting library. Více <I>pgsql/doc/FAQ_MSWIN</I> v
distribuci nebo MS Windows FAQ na adrese
<A href="http://www.PostgreSQL.org/docs/faqs/text/FAQ_MSWIN">http://www.PostgreSQL.org/docs/faqs/text/FAQ_MSWIN</A>.
<A href="http://www.PostgreSQL.org/docs/faqs/text/FAQ_MSWIN">http://www.PostgreSQL.org/docs/faqs/text/FAQ_MSWIN</A>.</P>
<P>Na nativním portu pro MS Win NT/2000/XP se pracuje. Další informace
o aktuálním stavu PostgreSQL pro Windows naleznet na adrese
<A href="http://techdocs.postgresql.org/guides/Windows">http://techdocs.postgresql.org/guides/Windows</A> a
<A href="http://momjian.postgresql.org/main/writings/pgsql/win32.html">
http://momjian.postgresql.org/main/writings/pgsql/win32.html</A>.
http://momjian.postgresql.org/main/writings/pgsql/win32.html</A>.</P>
<P>Existující port pro Novell Netware 6 naleznete na
<A href="http://forge.novell.com">http://forge.novell.com</A>.</P>
@ -238,7 +238,7 @@
subscribe
end
</PRE>
na adresu <A href="mailto:pgsql-general-request@PostgreSQL.org">
<P>na adresu <A href="mailto:pgsql-general-request@PostgreSQL.org">
pgsql-general-request@PostgreSQL.org</A>.</P>
<P>Můžete si vyžádat denní přehled (diggest), který má zhruba 30K denně
@ -254,7 +254,7 @@
<P>Seznam dalších konferencí naleznete na stránkách PostgreSQL:</P>
<BLOCKQUOTE>
<A href="http://www.postgresql.org">http://www.postgresql.org</A>
<P><A href="http://www.postgresql.org">http://www.postgresql.org</A></P>
</BLOCKQUOTE>
<H4><A name="1.7">1.7</A>) Jaká je poslední verze?</H4>
@ -315,7 +315,7 @@
<P>Nejdříve si stáhněte nejnovější zdroje a přečtěte si vývojářskou
dokumentaci na našem webu nebo v distribuci. Pak se přihlašte do
konferencí <I>pgsql-hackers</I> a <P>pgsql-patches</I>. Kvalitní záplaty posílejte do
konferencí <I>pgsql-hackers</I> a <I>pgsql-patches</I>. Kvalitní záplaty posílejte do
pgsql-patches.</P>
<P>Právo commit má v <SMALL>CVS</SMALL> archivu asi třinácti lidí. Každý z nich poslal
@ -341,7 +341,7 @@
<SMALL>DBMS</SMALL>, např. transakce, vnořené dotazy, spouště, pohledy, kontrolu
referenční integrity a sofistikované zamykání. Podporuje některé
vlastnosti, které tyto systémy nemají, uživatelem definované typy,
dědičnost, pravidla, MVCC redukující zamykání.</BR></BR></DD>
dědičnost, pravidla, MVCC redukující zamykání.<BR><BR></DD>
<DT><B>Výkon</B></DT>
<DD>Výkonnostně je na tom PostgreSQL podobně jako další komerční ale
@ -363,7 +363,7 @@
kód s minimem chyb. Každá verze je více než měsíc v beta testování,
a naše historie verzí ukazuje, že můžeme nabídnout stabilní, solidní
verze, které jsou připraveny pro reálné nasazení. V této oblasti
jsme srovnatelní s dalšími databázemi.</BR></BR></DD>
jsme srovnatelní s dalšími databázemi.<BR><BR></DD>
<DT><B>Podpora</B></DT>
<DD>Na naší mailové konferenci můžete kontaktovat velkou skupinu
@ -375,7 +375,7 @@
kteří vyžadují podporu ke konkrétním případům, existuje placená
podpora (<A href="#1.6">FAQ sekce 1.6</A>).<BR><BR></DD>
<DT><B>Cena</B><DT>
<DT><B>Cena</B></DT>
<DD>PosgreSQL lze volně používat pro nekomerční i komerční použití.
Můžete do svých produktů přidat náš kód bez omezení, respektive
v souladu s podmínkami naší licenční smlouvy (v duchu BSD licence).<BR>
@ -553,7 +553,7 @@
například:</P>
<PRE>
cd /usr/local/pgsql
./bin/postmaster > server.log 2>&1 &
./bin/postmaster > server.log 2>&amp;1 &amp;
</PRE>
<P>Tím se vytvoří log v adresáři PostgreSQL, Tento soubor obsahuje užitečné
informace o problémech a chybách vyskytlých se na serveru. Postmaster má
@ -773,7 +773,7 @@
<P>Jinak je tomu v případě použití <SMALL>LIMIT</SMALL> a <SMALL>ORDER BY</SMALL>, při kterém se většinou
index použije, výsledkem je pouze malá část tabulky. Funkce MAX() a
MIN() nepoužívají indexy, ale je možné tutéž hodnotu získat:
MIN() nepoužívají indexy, ale je možné tutéž hodnotu získat:</P>
<PRE>
SELECT col
FROM tab
@ -791,7 +791,7 @@
<UL>
<LI>vzor <SMALL>LIKE</SMALL> nesmí začínat <I>%</I></LI>
<LI><I>~</I> regulární výraz musí začínat <I>^</I></LI>
</UL>
</UL></LI>
<LI>vzor nesmí začínat intervalem, např. [a-e]</LI>
<LI>vyhledávaní, které není Case sensitiv jako je <SMALL>ILIKE</SMALL> nebo <I>~*</I>
nepoužívá indexy. Můžete ale použít funkcionální indexy, které jsou
@ -926,7 +926,7 @@ BYTEA bytea pole byt
<P>Konečně můžete použít <SMALL>OID</SMALL> hodnotu vrácenou příkazem <SMALL>INSERT</SMALL>, ale to je
pravděpodobně nejméně přenositelné řešení. V Perlu při použití DBI
modulu Edmunda Mergleho DBD:Pg oid hodnotu získáme <I>$sth->{pg_oid_status}</I>
po každém <I>$sth->execute()</I>.
po každém <I>$sth->execute()</I>.</P>
<H4><A name="4.15.3">4.15.3</A>) Nepovede <I>currval()</I> a <I>nextval()</I> k rozhození
podmínek při souběhu s jinými uživateli?</H4>
@ -986,7 +986,7 @@ BYTEA bytea pole byt
<LI> přidání, vkládání (append, insert)</LI>
<LI> OID, serial value (OID, serial value)</LI>
<LI> portal, kurzor (portal, cursor)</LI>
<LI> range variable, jméno tabulky, alias tabulky (range</LI>
<LI> range variable, jméno tabulky, alias tabulky (range
variable, table name, table alias)</LI>
</UL>
@ -1038,13 +1038,13 @@ CREATE TABLE test (x int, modtime timestamp DEFAULT CURRENT_TIMESTAMP );
<P>Dřívější verze (před 7.4) spojovali vnořené dotazy k vnějším sekvenčním
čtením výsledku poddotazu pro každý řádek vnějšího dotazu. Pokud poddotaz
vrátil několik málo řádků <SMALL>IN</SMALL> bylo rychlé. Pro ostatní případy je vhodné
nahradit <SMALL>IN</SMALL> <SMALL>EXISTS</SMALL>:
nahradit <SMALL>IN</SMALL> <SMALL>EXISTS</SMALL>:</P>
<PRE>
SELECT *
FROM tab
WHERE col IN (SELECT subcol FROM subtab);
</PRE>
na:
<p>na:</p>
<PRE>
SELECT *
FROM tab
@ -1101,7 +1101,7 @@ CREATE TABLE test (x int, modtime timestamp DEFAULT CURRENT_TIMESTAMP );
<P>V PostgreSQL 7.3 můžete jednoduše vracet více řádků nebo sloupců z
funkce, viz:
<A href="http://techdocs.postgresql.org/guides/SetReturningFunctions">http://techdocs.postgresql.org/guides/SetReturningFunctions</A>.
<A href="http://techdocs.postgresql.org/guides/SetReturningFunctions">http://techdocs.postgresql.org/guides/SetReturningFunctions</A>.</P>
<H4><A name="4.26">4.26</A>) Proč nelze spolehlivě vytvářet a rušit dočasné tabulky v PL/pgSQL funkcích?</H4>
@ -1164,4 +1164,4 @@ CREATE TABLE test (x int, modtime timestamp DEFAULT CURRENT_TIMESTAMP );
přepínač <I>--enable-depend</I> příkazu <I>configure</I> k automatickému řešení
závislostí překladačem.</P>
</BODY>
</HTML>
</HTML>

View File

@ -152,7 +152,7 @@
<P>PostgreSQL se prononce <I>Post-Gres-Q-L</I>. Un fichier audio est
disponible sur <A
HREF="http://www.postgresql.org/postgresql.mp3">http://www.postgresql.org/postgresql.mp3</A>
href="http://www.postgresql.org/postgresql.mp3">http://www.postgresql.org/postgresql.mp3</A>
pour ceux souhaitant entendre la prononciation.</P>
<P>PostgreSQL est une amélioration du système de gestion de bases
@ -173,7 +173,7 @@
développement de PostgreSQL. C'est un projet soutenu par une
communauté sans être contrôlé par une société. Pour y contribuer,
voir la FAQ des développeurs sur <A
HREF="http://www.postgresql.org/docs/faqs/FAQ_DEV.html">http://www.postgresql.org/docs/faqs/FAQ_DEV.html</A>.</P>
href="http://www.postgresql.org/docs/faqs/FAQ_DEV.html">http://www.postgresql.org/docs/faqs/FAQ_DEV.html</A>.</P>
<P>Les auteurs de PostgreSQL 1.01 étaient Andrew Yu et Jolly Chen.
Beaucoup d'autres personnes ont contribué au portage, aux tests,
@ -292,7 +292,7 @@
PostgreSQL sur le site web de PostgreSQL&nbsp;:</P>
<BLOCKQUOTE>
<A href="http://www.PostgreSQL.org">http://www.PostgreSQL.org</A>
<p><A href="http://www.PostgreSQL.org">http://www.PostgreSQL.org</A></p>
</BLOCKQUOTE>
<P>Il y a aussi un canal IRC sur Freenode et EFNet, le canal
@ -819,7 +819,7 @@
l'intégralité de la requête peut être évaluée, jusqu'à générer les lignes
désirées.</P>
<P>Pour faire un <SMALL>SELECT</SMALL> sur une ligne aléatoire&nbsp;:
<P>Pour faire un <SMALL>SELECT</SMALL> sur une ligne aléatoire&nbsp;:</P>
<PRE>
SELECT colonne
FROM table
@ -1004,7 +1004,6 @@
<LI>La locale <I>C</I> par défaut doit être utilisée lors de
<i>initdb</i>.</LI>
</UL>
<P>
<p>Dans les versions antérieures à la 8.0, les indexs ne peuvent souvent
pas être utilisés sauf si les types de données correspondent exactement au
@ -1398,7 +1397,7 @@ BYTEA bytea tableau d'octets (accepte les octets nuls)
<P>A partir de la 7.3, vous pouvez facilement renvoyer plusieurs lignes ou
colonnes à partir d'une fonction,
<a href="http://techdocs.postgresql.org/guides/SetReturningFunctions">
http://techdocs.postgresql.org/guides/SetReturningFunctions</a>.
http://techdocs.postgresql.org/guides/SetReturningFunctions</a>.</P>
<H4><A name="4.26">4.26</A>) Pourquoi ne puis-je pas créer/supprimer des
tables temporaires dans les fonctions PL/PgSQL de façon stable&nbsp;?</H4>
@ -1422,7 +1421,7 @@ BYTEA bytea tableau d'octets (accepte les octets nuls)
exister dans <I>pg_hba.conf</I>, et le <I>sslmode</I> du client ne doit pas
être <I>désactivée</I>. Notez qu'il est aussi possible d'utiliser un
transport crypté d'une troisième partie, tel que stunnel ou ssh, plutôt que
les connexions SSL natives de PostgreSQL.
les connexions SSL natives de PostgreSQL.</LI>
<LI>Les mots de passe des utilisateurs sont automatiquement cryptés depuis
la version 7.3. Pour les versions précédentes, vous devez activer l'option
<I>PASSWORD_ENCRYPTION</I> dans <I>postgresql.conf</I>.</LI>

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>Für OS/2 (eComStation) gibt es eine Version hier:
<a href="http://hobbes.nmsu.edu/cgi-bin/h-search?sh=1&button=Search&key=postgreSQL&stype=all&sort=type&dir=%2F">http://hobbes.nmsu.edu/cgi-bin/h-search?sh=1&button=Search&key=postgreSQL&stype=all&sort=type&dir=%2F</a>
<a href="http://hobbes.nmsu.edu/cgi-bin/h-search?sh=1&amp;button=Search&amp;key=postgreSQL&amp;stype=all&amp;sort=type&amp;dir=%2F">http://hobbes.nmsu.edu/cgi-bin/h-search?sh=1&amp;button=Search&amp;key=postgreSQL&amp;stype=all&amp;sort=type&amp;dir=%2F</a></p>
<h4><a name="1.5">1.5</a>) Woher bekomme ich PostgreSQL?</h4>
@ -223,7 +223,7 @@ href="mailto: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>
<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
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>
<blockquote>
<a href="http://www.postgresql.org">http://www.postgresql.org</a>
<p><a href="http://www.postgresql.org">http://www.postgresql.org</a></p>
</blockquote>
<p>Es gibt außerdem einen IRC-Channel bei EFNet und bei Freenode, Channel
<em>#PostgreSQL</em>. Unter UNIX/Linux können Sie mit z.B.
@ -341,7 +341,7 @@ href="mailto: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>
<p>Bitte besuchen Sie die PostgreSQL-BugTool-Seite <a href="http://www.postgresql.org/bugform.html">http://www.postgresql.org/bugform.html</a>,
die Hinweise und Anleitungen zur Einreichung von Fehlerberichten enthält.
die Hinweise und Anleitungen zur Einreichung von Fehlerberichten enthält.</p>
<p>Überprüfe auch den ftp-Server <a href="ftp://ftp.postgresql.org/pub/">ftp://ftp.postgresql.org/pub/</a>,
um nachzusehen, ob es eine neuere PostgreSQL-Version oder neue Patches gibt.</p>
@ -475,7 +475,7 @@ href="mailto:pgman@candle.pha.pa.us">pgman@candle.pha.pa.us</a>).</p>
</a>) und Rekall (<a href="http://www.thekompany.com/products/rekall/">
http://www.thekompany.com/products/rekall/</a>, GPL/proprietär). Es gibt
außerdem phpPgAdmin (<a href="http://phppgadmin.sourceforge.net/">
http://phppgadmin.sourceforge.net/ </a>), eine web-basierte Schnittstelle.
http://phppgadmin.sourceforge.net/ </a>), eine web-basierte Schnittstelle. </p>
<h4><a name="2.4">2.4</a>) Welche Programmiersprachen und Schnittstellen gibt es?</h4>
@ -500,7 +500,7 @@ href="mailto:pgman@candle.pha.pa.us">pgman@candle.pha.pa.us</a>).</p>
(Bereich <em>Drivers/Interfaces</em>) bezogen werden.
</p>
<hr />
<h2 align="center">Administrative Fragen</h2><p>
<h2 align="center">Administrative Fragen</h2>
<h4><a name="3.1">3.1</a>) Wie installiere ich PostgreSQL woanders als in /usr/local/pgsql?</h4>
@ -632,7 +632,7 @@ href="mailto: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,
ermitteln Sie die Prozessnummer (<small>PID</small>) des <em>postgres</em>-Prozesses, der von <em>psql</em>
verwendet wird (mit <pre>SELECT pg_backend_pid()</pre>). Binden Sie einen Debugger an diese <small>PID</small>
verwendet wird (mit <code>SELECT pg_backend_pid()</code>). Binden Sie einen Debugger an diese <small>PID</small>
und führen Sie Abfragen von <em>psql</em> aus. Wenn Sie den postgres-Serverstart analysieren
wollen, setzen Sie die Umgebungsvariable <em>PGOPTIONS="-W </em>n<em>"</em>, und starten Sie
dann <em>psql</em>. Dies verzögert den Start um <em>n</em> Sekunden, damit Sie einen Debugger an
@ -728,7 +728,7 @@ href="mailto: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
Zeilen bzw. eine beliebige Zeile in einer Abfrage aus?</h4>
<p>Vgl. die <small>FETCH</small> Man-Page, oder benutzen Sie <small>SELECT ... LIMIT...</small> .
<p>Vgl. die <small>FETCH</small> Man-Page, oder benutzen Sie <small>SELECT ... LIMIT...</small> .</p>
<p>Selbst wenn Sie nur die ersten paar Zeilen einer Tabelle abfragen möchten,
muß unter Umständen die komplette Abfrage abgearbeitet werden. Ziehen Sie also
@ -1123,7 +1123,7 @@ BYTEA bytea Bytearray mit variabler Länge (auch für
durch Block und Offset Werte zu identifizieren. T<small>ID</small>s
verändern sich, sobald Zeilen verändert oder zurückgeladen werden. Sie
werden in Indexeinträgen benutzt um auf die physikalischen Zeilen zu
zeigen.
zeigen.</p>
<h4><a name="4.16">4.16</a>) Welche Bedeutung haben die verschiedenen Ausdrücke, die in
PostgreSQL benutzt werden (z.B. attribute, class,...)?</h4>

File diff suppressed because it is too large Load Diff

View File

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

View File

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

View File

@ -111,7 +111,7 @@ adreslerinde g
<a href="#4.18">4.18</a>) Neden "<code>ERROR: Memory exhausted in AllocSetAlloc()</code>"
hatasını alıyorum?<br>
<a href="#4.19">4.19</a>) Hangi PostgreSQL sürümünü çalıstırdığımı nasıl görebilirim?<br>
<a href="#4.20">4.20</a>) Neden <i>large-object</i> işlemlerim, "</code>invalid large
<a href="#4.20">4.20</a>) Neden <i>large-object</i> işlemlerim, "<code>invalid large
obj descriptor</code>" hatasını veriyor?<br>
<a href="#4.21">4.21</a>) Şu andaki zamanı öntanımlı değer olarak kabul
eden kolonu nasıl yaratırım?<br>
@ -190,7 +190,7 @@ adreslerinde g
<P>PostgreSQL 8.0 sürümü ile , PostgreSQL artık Win2000, WinXP ve Win2003 gibi Microsoft
Windows NT tabanlı işletim sistemlerinde doğal olarak çalışmaya başlamıştır. Paketlenmiş bir
kurulum programı, <a href="http://pgfoundry.org/projects/pginstaller">http://pgfoundry.org/projects/pginstaller</a>. adresinden
indirilebilir.
indirilebilir.</P>
<p>Ayrıca, http://forge.novell.com adresinde Novell Netware 6 portu bulunmaktadır.</p>
@ -218,7 +218,7 @@ adreslerinde g
<pre>subscribe<br>end</pre>
<p>yazan bir e-posta atmanız yeterli olacaktır.</p>
<p>Bunun dışındaki e-posta listelerine ve PostgreSQL hakkında bilgiye, PostgreSQL WWW
ana sayfasından ulasabilirsiniz: <i><a href="http://www.PostgreSQL.org">http://www.PostgreSQL.org</a></i><p>
ana sayfasından ulasabilirsiniz: <i><a href="http://www.PostgreSQL.org">http://www.PostgreSQL.org</a></i></p>
<p>Aynı zamanda, EFNet üzerinde, <code>#PostgreSQL</code> adlı bir IRC kanalı
bulunmaktadır. Bunun için, <code>irc -c '#PostgreSQL' "$USER" irc.phoenix.net</code>
Unix komutunu kullanabilirsiniz.</p>
@ -235,7 +235,7 @@ adreslerinde g
<code>/doc</code> dizinine bakınız. Ayrıca, bu el kitapçıklarını online olarak
<i><a href="http://www.PostgreSQL.org/docs/">http://www.PostgreSQL.org/docs/</a></i> adresinden inceleyebilirsiniz.</p>
<p><i><a href="http://www.PostgreSQL.org/docs/awbook.html">http://www.PostgreSQL.org/docs/awbook.html</a></i>
ve <i><a href="http://www.commandprompt.com/ppbook">http://www.commandprompt.com/ppbook<a></i>
ve <i><a href="http://www.commandprompt.com/ppbook">http://www.commandprompt.com/ppbook</a></i>
adreslerinde PostgreSQL kitapları bulunmaktadır. PostgreSQL kitablarının listesine,
<i><a href="http://www.ca.PostgreSQL.org/books/">http://www.ca.PostgreSQL.org/books/</a></i> adresinden ulaşaiblirsiniz.
Ayrıca, PostgreSQL konusundaki teknik makalelere de
@ -288,7 +288,7 @@ adreslerinde g
<h4><a name="1.14">1.14</a>) PostgreSQL, diger DBMS'lerle nasıl karşılastırılabilir?</h4>
<p>Bir yazılımın gücünü ölçmek için çeşitli yollar vardır: Yazılımın özellikleri,
başarımı, güvenilirliği, desteği ve ücreti.</p>
<p>Özellikler:<p>
<p>Özellikler:</p>
<p>PostgreSQL mevcut büyük ticari veritabanlarının, <i>transaction</i>,
<i>subselect</i>, <i>trigger</i>, <i>view</i>, <i>foreign key referential integrity</i>
ve <i>sophisticated locking</i> gibi (<i>user-defined types</i>), <i>rules</i>,
@ -355,7 +355,7 @@ adreslerinde g
<p><i><a href="http://www.webreview.com/">http://www.webreview.com/</a></i> adresinde,
arka planda veritabanı çalıstıran Web sayfaları için giriş seviyesinde bilgi bulunmaktadır.</p>
<p>Web ile bütünleşme için, PHP (<i><a href="http://www.php.net/"></a></i>)
mükemmel bir arabirim sunar.<p>
mükemmel bir arabirim sunar.</p>
<p>Karmaşık sorunlar için, çoğu kisi Perl arabirimini ve CGI.pm ya da mod_perl kullanır.</p>
<h4><a name="2.3">2.3</a>) PostgreSQL'in grafik kullanıcı arabirimi var mıdır?</h4>
@ -466,7 +466,7 @@ adreslerinde g
<p>Postmaster ve postgres çeşitli hata ayıklama seçeneklerine sahiptir. Öncelikle,
postmaster'ı başlattığınızda, standart çıktıyı ve hataları bir log dosyasına
yönlendirdiğinize emin olun:</p>
<pre>cd /usr/local/pgsql<br>./bin/postmaster >server.log 2>&1 &</pre>
<pre>cd /usr/local/pgsql<br>./bin/postmaster >server.log 2>&amp;1 &amp;</pre>
<p>Bu işlem PostgreSQL ana dizinine <code>server.log</code> dosyası yerleştirecektir.
Bu dosya sunucunun yaşadığı sorunlar ya da hatalar hakkında yararlı bilgiler içerir.
<code>-d</code> seçeneği, hata ayıklama seviyesini belirten bir rakam ile kullanılır.
@ -497,7 +497,7 @@ adreslerinde g
değeri ile ya da <code>postgresql.conf</code> dosyasını düzenleyerek yeniden
başlatmakla arttırabilirsiniz.</p>
<p>Eğer <code>-N</code> değerini 32'den büyük yapacaksanız, aynı zamanda
<code>-B</code> değerini de değiştirmeniz gerektiğini unutmayın. </code>-B</code>,
<code>-B</code> değerini de değiştirmeniz gerektiğini unutmayın. <code>-B</code>,
<code>-N</code>'nin en az 2 katı kadar olmalıdır; daha iyi başarım için bu sayıyı daha
da arttırmalısınız. Yüksek sayıdaki <i>backend</i> süreçleri için, çeşitli çekirdek
yapılandırma parametrelerini arttırmanız gerekecektir. Yapılması gerekenler,
@ -554,7 +554,7 @@ adreslerinde g
<code>LIMIT</code> ... kullanınız.</p>
<p>İlk birkaç satırı almak isteseniz bile, tüm sorgu değerlendirilmek durumunda kalınabilir. ORDER
BY içeren bir sorgu düşünün. Eğer ORDER BY işe eşleşen bir index varsa, PostgreSQL istenen ilk birkaç
satırı işleyebilir, ya da tüm sorgu istenen satırlar üretilene kadar işlenebilir. </b></p>
satırı işleyebilir, ya da tüm sorgu istenen satırlar üretilene kadar işlenebilir. </p>
<h4><a name="4.3">4.3</a>) psql'in içinde gördügüm tabloların ya da diğer
şeylerin listesini nasıl alabilirim?</h4>
@ -786,7 +786,7 @@ CREATE UNIQUE INDEX person_id_key ON person ( id );
execute("INSERT INTO person (id, name) VALUES (new_id, 'Blaise Pascal')");</pre>
<P>Diğer sorgular için new_id'de yeni değerin saklanması gerekir. Otomatik olarak yaratılan SEQUENE nesnesinin adı,
<tablo adı>_<serial kolonu adı>_seq şeklinde olacaktır (< > işaretleri olmadan).</p>
&lt;tablo adı&gt;_&lt;serial kolonu adı&gt;_seq şeklinde olacaktır (&lt; &gt; işaretleri olmadan).</p>
<p>Alternatif olarak, atanmış SERIAL değerini, değer girildikten sonra currval()
fonksiyonu ile alabilirsiniz:</p>