aboutsummaryrefslogtreecommitdiff
path: root/doc/FAQ_czech
blob: 99120e60606ce621cca6e94c8cb4fb682977c632 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
335
336
337
338
339
340
341
342
343
344
345
346
347
348
349
350
351
352
353
354
355
356
357
358
359
360
361
362
363
364
365
366
367
368
369
370
371
372
373
374
375
376
377
378
379
380
381
382
383
384
385
386
387
388
389
390
391
392
393
394
395
396
397
398
399
400
401
402
403
404
405
406
407
408
409
410
411
412
413
414
415
416
417
418
419
420
421
422
423
424
425
426
427
428
429
430
431
432
433
434
435
436
437
438
439
440
441
442
443
444
445
446
447
448
449
450
451
452
453
454
455
456
457
458
459
460
461
462
463
464
465
466
467
468
469
470
471
472
473
474
475
476
477
478
479
480
481
482
483
484
485
486
487
488
489
490
491
492
493
494
495
496
497
498
499
500
501
502
503
504
505
506
507
508
509
510
511
512
513
514
515
516
517
518
519
520
521
522
523
524
525
526
527
528
529
530
531
532
533
534
535
536
537
538
539
540
541
542
543
544
545
546
547
548
549
550
551
552
553
554
555
556
557
558
559
560
561
562
563
564
565
566
567
568
569
570
571
572
573
574
575
576
577
578
579
580
581
582
583
584
585
586
587
588
589
590
591
592
593
594
595
596
597
598
599
600
601
602
603
604
605
606
607
608
609
610
611
612
613
614
615
616
617
618
619
620
621
622
623
624
625
626
627
628
629
630
631
632
633
634
635
636
637
638
639
640
641
642
643
644
645
646
647
648
649
650
651
652
653
654
655
656
657
658
659
660
661
662
663
664
665
666
667
668
669
670
671
672
673
674
675
676
677
678
679
680
681
682
683
684
685
686
687
688
689
690
691
692
693
694
695
696
697
698
699
700
701
702
703
704
705
706
707
708
709
710
711
712
713
714
715
716
717
718
719
720
721
722
723
724
725
726
727
728
729
730
731
732
733
734
735
736
737
738
739
740
741
742
743
744
745
746
747
748
749
750
751
752
753
754
755
756
757
758
759
760
761
762
763
764
765
766
767
768
769
770
771
772
773
774
775
776
777
778
779
780
781
782
783
784
785
786
787
788
789
790
791
792
793
794
795
796
797
798
799
800
801
802
803
804
805
806
807
808
809
810
811
812
813
814
815
816
817
818
819
820
821
822
823
824
825
826
827
828
829
830
831
832
833
834
835
836
837
838
839
840
841
842
843
844
845
846
847
848
849
                          Frequently Asked Questions
                                       
   Casto kladen� dotazy (FAQ) PostgreSQL
   
   Posledn� aktualizace: 29. r�jna 2007 (aktualizov�no pro PostgreSQL
   8.3)
   
   Soucasn� spr�vce: Bruce Momjian (bruce@momjian.us)
   
   Prelozil: Pavel Stehule (pavel.stehule@gmail.com)
   
   Nejaktu�lnejs� verzi tohoto dokumentu naleznete na adrese
   http://www.postgresql.org/files/documentation/faqs/FAQ.html
   
   Odpovedi na ot�zky v�zan� na konkr�tn� platformy naleznete na adrese
   http://www.postgresql.org/docs/faq/.
     _________________________________________________________________
   
                               Obecn� ot�zky
                                      
   1.1) Co je to PostgreSQL? Jak� je spr�vn� v�slovnost slova PostgreSQL?
   1.2) Kdo r�d� v�voj PostgreSQL?
   1.3) Pod jakou licenc� je PostgreSQL?
   1.4) Na kter�ch platform�ch lze provozovat PostgreSQL?
   1.5) Kde mohu z�skat PostgreSQL?
   1.6) Jak� je posledn� verze?
   1.7) Kde mohu z�skat podporu?
   1.8) Jak a kam hl�sit chyby?
   1.9) Kde najdu informace o zn�m�ch chyb�ch nebo nepodporovan�ch
   vlastnostech?
   1.10) Jak� je dostupn� dokumentace?
   1.11) Jak se mohu naucit SQL?
   1.12) Jak se mohu pripojit k t�mu v�voj�ru?
   1.13) Jak je na tom PostgreSQL v porovn�n� s jin�mi datab�zemi?
   1.14) Je PostgreSQL pripraven na aktu�ln� zav�den� letn�ho casu v
   nekter�ch zem�ch?
   
                        Dotazy na klientsk� rozhran�
                                      
   2.1) Kter� rozhran� jsou pouziteln� pro PostgreSQL?
   2.2) Jak� n�stroje lze pouz�t pro PostgreSQL a web?
   2.3) Existuje grafick� rozhran� pro PostgreSQL?
   
                           Administrativn� dotazy
                                      
   3.1) Jak nainstalovat PostgreSQL jinam nez do /usr/local/pgsql?
   3.2) Jak nastavit pravidla pro pr�stup z jin�ch stanic?
   3.3) Jak vyladit datab�zi na vyss� v�kon?
   3.4) Jak� m�m lad�c� prostredky?
   3.5) Co znamen� "Sorry, too many clients", kdyz se zkous�m pripojit?
   3.6) Proc je nutn� dump a obnoven� (load) datab�ze pri upgradu
   PostgreSQL?
   3.7) Jak� hardware bych mel pouz�vat?
   
                              Provozn� dotazy
                                      
   4.1) Jak z�skat pouze prvn� r�dek dotazu? N�hodn� r�dek?
   4.2) Jak z�sk�m seznam tabulek, indexu, datab�z�, a definovan�ch
   uzivatelu. Mohu videt dotazy, kter� pouz�v� psql pro zobrazen� techto
   informac�?
   4.3) Jak zmenit datov� typ sloupce?
   4.4) Jak� je maxim�ln� velikost r�dku, tabulky a datab�ze?
   4.5) Kolik diskov�ho prostoru je potreba k ulozen� dat z norm�ln�ho
   textov�ho souboru?
   4.6) Muj dotaz je pomal� a nepouz�v� vytvoren� indexy. Proc?
   4.7) Jak zjist�m, jak se vyhodnocuje muj dotaz?
   4.8) Jak pouz�t case-(in)sensitive regul�rn� v�raz? Jak pouz�t index
   pro case insensitive hled�n�?
   4.9) Jak v dotazu detekovat, ze polozka je NULL? Jak bezpecne spojit
   dva retezce, pokud mohou obsahovat NULL? Lze tr�dit podle toho, jestli
   je polozka NULL nebo ne?
   4.10) Jak� jsou rozd�ly mezi ruzn�mi znakov�mi typy?
   4.11.1) Jak vytvorit serial/auto-increment polozku?
   4.11.2) Jak z�skat hodnotu SERIAL po vlozen� r�dku?
   4.11.3) Nezpusob� currval() a nextval() probl�my ve v�ce uzivatelsk�m
   prostred�?
   4.11.4) Proc nen� vygenerovan� c�slo pouzito pri prerusen�
   transakce?Proc vznikaj� d�ry v c�slov�n� prostrednictv�m sekvence nebo
   typu SERIAL?
   4.12) Co to je OID? Co je to CTID?
   4.13) Co znamen� chybov� hl�sen� "ERROR: Memory exhausted in
   AllocSetAlloc()"?
   4.14) Jak zjist�m, kterou verzi PostgreSQL pouz�v�m?
   4.15) Jak vytvorit sloupec, kter� bude implicitne obsahovat aktu�ln�
   cas?
   4.16) Jak prov�st vnejs� spojen� (outer join)?
   4.17) Jak prov�st dotaz napr�c nekolika datab�zemi?
   4.18) Muze funkce vr�tit v�ce r�dku nebo sloupcu?
   4.19) Co je pr�cinou chyby "relation with OID xxxxx does not exist"?
   4.20) Jak� jsou moznosti replikace datab�z�?
   4.21) Proc v dotazu nejsou rozpozn�ny n�zvy m�ch tabulek nebo funkc�?
   Proc jsou velk� p�smena v n�zvech automaticky prevedena na mal�
   p�smena?
     _________________________________________________________________
   
                               Obecn� ot�zky
                                      
  1.1) Co je to PostgreSQL? Jak� je spr�vn� v�slovnost slova PostgreSQL?
  
   V�slovnost PostgreSQL je Post-Gres-Q-L , nebo zjednodusene Postgres .
   V rade jazyku je slovo PostgreSQL obt�zne vysloviteln�, proto se v
   hovoru casto pouz�v� zjednodusen� forma n�zvu. Pro ty, kter� by si
   r�di poslechli v�slovnost, je k dispozici audioz�znam v MP3 form�tu.
   
   PostgreSQL je relacn� datab�ze s nekter�mi objektov�mi rysy, kter� m�
   moznosti tradicn�ch komercn�ch datab�zov�ch syst�mu s nekolika
   rozs�ren�mi, kter� lze naj�t v DBMS syst�mech pr�st� generace.
   Pouz�v�n� PostgreSQL nen� omezen� a vesker� zdrojov� k�dy jsou volne
   dostupn�.
   
   Za v�vojem PostgreSQL je mezin�rodn� skupina nez�visl�ch v�voj�ru
   navz�jem komunikuj�c�ch prostrednictv�m internetu. Tento projekt nen�
   r�zen z�dnou obchodn� organizac�. Pokud se chcete pridat k projektu,
   prectete si v�voj�rsk� FAQ na adrese
   http://www.postgresql.org/files/documentation/faqs/FAQ_DEV.html .
   
  1.2) Kdo r�d� v�voj PostgreSQL?
  
   Pokud budete hledat organizaci r�d�c� v�voj PostgreSQL, budete
   zklam�ni. Nic takov�ho neexistuje. Existuj� pouze "core" a CVS skupiny
   uzivatelu, ale ty existuj� v�ce z administr�torsk�ch duvodu nez z
   organizacn�ch. Projekt je smerov�n komunitou v�voj�ru a uzivatelu, ke
   kter� se kdokoliv muze pripojit. Jedin� co potrebuje, je prihl�sit se
   do elektronick� konference. V�ce ve v�voj�rsk�m FAQ.
   
  1.3) Pod jakou licenc� je PostgreSQL?
  
   PostgreSQL je predmetem n�sleduj�c�ch autorsk�ch pr�v:
   
   D�lc� Copyright (c) 1996-2009, PostgreSQL Global Development Group
   D�lc� Copyright (c) 1994-6, Regents of the University of California
   
   Udeluje se opr�vnen� k uzit�, rozmnozov�n�, prov�den� �prav a
   rozsirov�n� tohoto softwaru a dokumentace k nemu, pro jak�koli �cely,
   bez licencn�ho poplatku a bez p�semn� licencn� smlouvy, za podm�nky,
   ze na vsech jeho kopi�ch je uvedeno ozn�men� o v�se uveden�ch pr�vech,
   jakoz i obsah tohoto a dvou n�sleduj�c�ch odstavcu.
   
   THE UNIVERSITY OF CALIFORNIA ("KALIFORNSK� UNIVERZITA") NEN� V Z�DN�M
   PR�PADE ODPOVEDNA Z�DN� TRET� OSOBE ZA PR�MOU, NEPR�MOU, ZVL�STN�,
   NAHODILOU NEBO V�SLEDNOU SKODU, VCETNE USL�HO ZISKU, ZPUSOBENOU UZIT�M
   TOHOTO SOFTWARU A DOKUMENTACE K NEMU, A TO I V PR�PADE, ZE THE
   UNIVERSITY OF CALIFORNIA BYLA INFORMOV�NA O MOZNOSTI VZNIKU TAKOV�
   SKODY.
   
   THE UNIVERSITY OF CALIFORNIA ZEJM�NA NEPOSKYTUJE JAK�KOLI Z�RUKY, A TO
   NEJEN Z�RUKY OBCHODOVATELNOSTI A VHODNOSTI TOHOTO V�ROBKU KE
   SPECIFICK�M �CELUM. N�ZE UVEDEN� SOFTWARE JE POSKYTNUT "JAK STOJ� A
   LEZ�" A THE UNIVERSITY OF CALIFORNIA NEN� POVINNA ZAJISTIT JEHO
   �DRZBU, PODPORU, AKTUALIZACI, VYLEPSEN� NEBO MODIFIKACI.
   
   V�se uveden� je BSD licence, bezn� licence otevren�ho zdroje. Nen� zde
   z�dn� omezen� ohledne uzit� k�du zdroje. Jsme s t�m spokojeni a nem�me
   v �myslu na t�to skutecnosti cokoli menit.
   
  1.4) Na kter�ch platform�ch lze provozovat PostgreSQL?
  
   Strucne receno, PostgreSQL bez� na vsech modern�ch unixov�ch
   syst�mech. Seznam tech, u kter�ch probehlo testov�n�, naleznete v
   instalacn�ch instrukc�ch.
   
   PostreSQL tak� bez� nativne na vsech Microsof Windows syst�mech
   odvozen�ch z Microsoft Windows NT jako jsou Windows 2000SP4, WindowsXP
   a Windows2003. Instalacn� bal�cek naleznete na adrese
   http://pgfoundry.org/projects/pginstaller. Na stars�ch syst�mech s
   jeste MS-DOS j�drem lze spustit PostgreSQL s emulacn�m programem
   Cygwin.
   
   D�le existuje port pro Novell Netware 6 port na adrese
   http://forge.novell.com, a pro OS/2 verze (eComStation) na adrese
   http://hobbes.nmsu.edu/cgi-bin/h-search?sh=1&button=Search&key=postgre
   SQL&stype=all&sort=type&dir=%2F .
   
  1.5) Kde mohu z�skat PostgreSQL?
  
   Pomoc� webov�ho klienta z adresy http://www.postgresql.org/ftp/ nebo
   klienta ftp z adresy ftp://ftp.postgresql.org/pub/.
   
  1.6) Jak� je posledn� verze?
  
   Nejnovejs� verz� PostgreSQL je verze 8.2.5
   
   V pl�nu je uvolnovat kazdorocne jednu velkou verzi a kazd�ch nekolik
   mes�cu mal� verze.
   
  1.7) Kde mohu z�skat podporu?
  
   Nejcastejs� forma podpory uzivatelum PostgreSQL komunitou je
   prostrednictv�m e-mailu. Na nasem webov�m serveru naleznete odkaz na
   str�nky,kde se muzete prihl�sit do elektronick� konference. Pro
   zac�tek jsou doporucen� konference general nebo bugs.
   
   Dals� cestou je IRC kan�l #postgresql na Freenode (irc.freenode.net).
   K pripojen� pouzijte Unixov� pr�kaz irc -x '#postgresql' "$USER"
   irc.freenode.net nebo jak�koholiv jin�ho IRC klienta. V t�to s�ti
   existuje jeste spanelsk� (#postgresql-es) a francouzsk�
   (#postgresqlfr) verze. Dals� PostgreSQL kan�l naleznete na EFNet.
   
   Seznam spolecnost� poskytuj�c� komercn� podporu naleznete na adrese
   http://techdocs.postgresql.org/companies.php.
   
  1.8) Jak a kam hl�sit chyby?
  
   Vyplnte formul�r na adrese
   http://www.postgresql.org/support/submitbug. Na nasem ftp serveru
   ftp://ftp.postgresql.org/pub/ si overte, ze pouz�v�te aktu�ln� verzi
   PostreSQL.
   
   Chyby reportovan� prostrednictv�m chybov�ho formul�re nebo zasl�n�m
   mailu do PostgreSQL konference obvykle generuje n�sleduj�c� odezvu:
     * Nejedn� se o chybu, a proc
     * Jedn� se o zn�mou chybu, kter� je jiz v seznamu �kolu TODO
     * Tato chyba byla opravena v aktu�ln� verzi
     * Tato chyba byla jiz opravena ve verzi, kter� zat�m nebyla
       ofici�lne uvolnena
     * Pozadavek na dals� doplnuj�c� informace:
          + Operacn� syst�m
          + Verze PostgreSQL
          + Test reprodukuj�c� chybu
          + Lad�c� informace
          + Backtrace v�stup debuggeru
     * Jedn� se o zat�m nezjistenou chybu, pak muzete cekat
          + Z�platu odstranuj�c� chybu, kter� bude vlozena do dals� velk�
            nebo mal� verze
          + Informaci, ze se jedn� o chybu, kterou nelze okamzite resit a
            je proto prid�na do TODO
       
  1.9) Kde najdu informace o zn�m�ch chyb�ch nebo nepodporovan�ch vlastnostech?
  
   PostgreSQL podporuje rozs�renou podmnozinu SQL:2003. V nasem TODO
   naleznete seznam zn�m�ch chyb, chybej�c�ch vlastnost�, a pl�ny do
   budoucna.
   
   Odezva na pozadavek na novou vlastnost PostgreSQL je obvykle:
     * Pozadavek je jiz v TODO
     * Pozadovan� funkce nen� chten� protoze
          + Duplikuje jiz existuj�c� funkci, kter� respektuje SQL
            standard
          + Implementac� funkce by se pr�lis zkomplikoval k�d bez
            relevantn�ho pr�nosu
          + Funkce by mohla b�t nebezpecn� nebo nespolehliv�
     * Pozadavek je prid�n do TODO
       
   PostgreSQL nepoz�v� syst�m pro sledov�n� chyb, protoze jsme zjistili,
   ze je efektivnejs� pr�mo reagovat na maily a udrzovat aktu�ln� TODO. V
   praxi je snaha o co nejrychlejs� resen� chyb, a chyby, kter� by se
   mohly projevit u mnoha uzivatelu jsou opravov�ny velice rychle. Jedin�
   m�sto, kde lze dohledat vsechny zmeny, rozs�ren� a opravy v PostgreSQL
   je CVS log. Pozn�mky k verzi "Release notes" nezachycuj� vsechny
   zmeny, k nemz doslo.
   
  1.10) Jak� je dostupn� dokumentace?
  
   PostgreSQL obsahuje vynikaj�c� dokumentaci zahrnuj�c� manu�l,
   manu�lov� str�nky a testovac� pr�klady. Pod�vejte se do adres�re /doc.
   Manu�l je pr�stupn� online na http://www.postgresql.org/docs.
   
   K dispozici jsou zdarma dve online knihy na adres�ch
   http://www.postgresql.org/docs/books/awbook.html a
   http://www.commandprompt.com/ppbook/. Dals� literaturu lze zakoupit.
   Nejpopul�rnejs� je od Kerryho Douglase. Seznam dostupn� literatury je
   na http://techdocs.postgresql.org/techdocs/bookreviews.php. Jeste je
   kolekce technicky orientovan�ch cl�nku tematicky spojen�ch s
   PostgreSQL na adrese http://techdocs.postgresql.org/.
   
   R�dkov� klient psql m� \d pr�kazy pro zobrazen� informac� o typech,
   oper�torech, funkc�ch, agregacn�ch funkc�, atd. Pouzijte \? pro
   zobrazen� dostupn�ch pr�kazu.
   
   Dals� dokumentaci najdete na nasem webu.
   
  1.11) Jak se mohu naucit SQL?
  
   Pod�vejte se do v�se uveden� dokumentace. Dals� online knihou je
   "Teach Yourself SQL in 21 Days, Second Edition" na adrese
   http://members.tripod.com/er4ebus/sql/index.htm. Mnoho nasich
   uzivatelu doporucuje knihu The Practical SQL Handbook, Bowman, Judith
   S., et al., Addison-Wesley. Dals� The Complete Reference SQL, Groff et
   al., McGraw-Hill.
   
   Dals� online tutori�ly jsou dostupn� na adres�ch:
     * http://www.intermedia.net/support/sql/sqltut.shtm
     * http://sqlcourse.com
     * http://www.w3schools.com/sql/default.asp
     * http://mysite.verizon.net/Graeme_Birchall/id1.html
       
  1.12) Jak se mohu pripojit k t�mu v�voj�ru?
  
   Prostudujte si Developer's FAQ.
   
  1.13) Jak je na tom PostgreSQL v porovn�n� s jin�mi datab�zemi?
  
   Software muzeme porovn�vat z nekolika ruzn�ch pohledu: vlastnosti,
   v�kon, spolehlivost, podpora a cena.
   
    Vlastnosti
    
   PostgreSQL nab�z� vetsinu funkc� funkcionality velk�ch komercn�ch DBMS
   syst�mu jako jsou: transakce, vnoren� dotazy, spouste, referencn�
   integrita a sofistikovan� syst�m zamyk�n�. Poskytujeme urcit� funkce,
   kter� ostatn� syst�my bezne nepodporuj�. Napr. uzivatelem definovan�
   typy, dedicnost, pravidla (rules), a MVCC architekturu.
   
    V�kon
    
   V�kon PostgreSQL je srovnateln� s ostatn�mi komercn�mi nebo Open
   Source datab�zemi. V nekter�ch pr�padech je rychlejs�, jindy
   pomalejs�. N�s v�kon je obvykle +/-10% vuci ostatn�m datab�z�m.
   
    Spolehlivost
    
   Uvedomujeme si, ze datab�ze mus� b�t stoprocentne spolehliv�, jinak je
   nepouziteln�. Snaz�me se, aby kazd� verze byla dobre otestov�na a
   obsahovala minimum chyb. Kazd� verze je minim�lne nekolik mes�cu v
   beta testovac�m rezimu. Do produkcn�ho rezimu se dostane, az kdyz
   nedoch�z� k dals�m zmen�m nebo oprav�m. Ver�me, ze jsem v�ce nez
   srovnateln� s ostatn�mi datab�zemi v t�to oblasti.
   
    Podpora
    
   Na nasich internetov�ch konferenc�ch se setk�v� velk� skupina v�voj�ru
   a uzivatelu pri resen� vyskytuj�c�ch se probl�mu. Nase internetov�
   konference umoznuj� kontakt velk� skupiny v�voj�ru a uzivatelu.
   Nemuzeme garantovat opravu chyby, ale komercn� DBMSs tak� vzdy
   negarantuj� resen� probl�mu. Ver�me ale, ze d�ky pr�m�mu kontaktu na
   v�voj�re, nasi uzivatelskou komunitu, manu�lum, a dostupn�m zdrojov�m
   k�dum m�me leps� podporu nez ostatn� DBMSs. Pro ty, kter� preferuj�
   komercn� "per-incident" podporu, existuje spolecnost�, kter� ji
   nab�zej� (FAQ sekce 1.7.)
   
    Cena
    
   PostgreSQL lze pouz�vat bezplatne (a to i pro komercn� pouzit�). Tak�
   muzete neomezene pouz�vat n�s k�d ve sv�ch produktech s v�jimkami
   specifikovan�mi v nas� licenci (preb�r�me BSD licenci).
   
  1.14) Je PostgreSQL pripraven na aktu�ln� zav�den� letn�ho casu v nekter�ch
  zem�ch?
  
   Poc�naje verz� 8.0.[4+] podporuje PostgreSQL letn� cas tak� pro USA.
   Podpora letn�ho casu (daylight saving time) pro Kanadu a Z�padn�
   Austr�lii je obsazena ve verz�ch 8.0.[10+] a 8.1.[6+] a vsech
   n�sleduj�c�ch verz�ch. Stars� verze pouz�valy syst�movou datab�zi
   casov�ch z�n obsahuj�c�, krome jin�ho, informaci o tom, zda se pro
   danou casovou z�nu rozlisuje mezi letn�m a zimn�m casem.
     _________________________________________________________________
   
                        Dotazy na klientsk� rozhran�
                                      
  2.1) Kter� rozhran� jsou pouziteln� pro PostgreSQL?
  
   PostgreSQL se distribuuje pouze s rozhran�m pro jazyk C a embedded C.
   Vsechna dals� rozhran� predstavuj� nez�visl� projekty, kter� je treba
   st�hnout z internetu samostatne. Osamostatnen� techto projektu
   umoznuje nez�vislost v�vojov�ch t�mu a moznost vyd�vat nov� verze bez
   ohledu na vyd�n� nov� verze PostgreSQL.
   
   Nekter� programovac� jazyky jako je napr. PHP obsahuj� rozhran� pro
   PostgreSQL. Rozhran� pro jazyky jako je Perl, Tcl, Python a mnoho
   dals�ch jsou dostupn� na adrese: http://gborg.postgresql.org v sekci
   Drivers/Interfaces.
   
  2.2) Jak� n�stroje lze pouz�t pro PostgreSQL a web?
  
   Dobr�m �vodem do problematiky datab�z� v prostred� webov�ch str�nek
   muze b�t web http://www.webreview.com.
   
   PHP (http://www.php.net) je vynikaj�c�m rozhran�m pro tvorbu webu.
   
   Pro slozitejs� �lohy se casto pouz�v� Perl a jeho BDB:Pg rozhran� s
   podporou CGI - CGI.pm nebo mod_perl(u).
   
  2.3) Existuje grafick� rozhran� pro PostgreSQL?
  
   K dispozici je rada grafick�ch n�stroju podporuj�c�ch PostgreSQL a to
   od komercn�ch nebo open source v�voj�ru. Podrobn� seznam naleznete na
   adrese http://www.postgresql.org/docs/techdocs.54.
     _________________________________________________________________
   
                           Administrativn� dotazy
                                      
  3.1) Jak nainstalovat PostgreSQL jinam nez do /usr/local/pgsql?
  
   Pri spousten� configure nastavte parametr --prefix
   
  3.2) Jak nastavit pravidla pro pr�stup z jin�ch stanic?
  
   Ve v�choz� konfiguraci, PostgreSQL umoznuje pouze pripojen� z
   lok�ln�ho uzivatele prostrednictv�m Unix domain sockets nebo TCP/IP
   spojen�. Bez modifikace listen_addresses v souboru postgresql.conf, a
   povolen� adresy v souboru $PGDATA/pg_hba.conf se nelze pripojit k
   PostgreSQL z ostatn�ch stanic. Zmena v�se zm�nen�ch parametru vyzaduje
   restart datab�zov�ho serveru.
   
  3.3) Jak vyladit datab�zi na vyss� v�kon?
  
   V�kon syst�mu muzete ovlivnit ve trech oblastech:
   
    Zmeny dotazu
    
     * Pouzit�m indexu vcetne c�stecn�ch a funkcion�ln�ch
     * Pouzit�m COPY m�sto opakovan�ch INSERTu
     * Sloucen�m mnoha SQL pr�kazu do jedn� transakce sn�zen�m rezie na
       commit
     * Pouz�v�n�m CLUSTERU, pokud nac�t�te vets� pocet r�dek podle indexu
     * Pouzit�m klauzule LIMIT v poddotazech
     * Pouzit�m predpripraven�ch dotazu
     * Pouz�v�n�m ANALYZE. Tento pr�kaz aktualizuje statistiky, kter� se
       pouz�vaj� pri optimalizaci dotazu
     * Pravideln� pouzit� VACUUM nebo pouz�v�n� pg_autovacuum
     * Odstranen�m indexu pred rozs�hl�mi zmenami v datech
       
    Konfigurace serveru
    
   Urcit� parametry v souboru postgresql.conf maj� vliv na v�kon serveru.
   Detaily naleznete v pr�rucce Administr�tora v Server Run-time
   Environment/Run-time Configuration. Dals� koment�re naleznete v
   http://www.varlena.com/varlena/GeneralBits/Tidbits/annotated_conf_e.ht
   ml a http://www.varlena.com/varlena/GeneralBits/Tidbits/perf.html.
   
    V�ber hardware
    
   Vliv hardware na v�kon serveru je pops�n v dokumentech
   http://candle.pha.pa.us/main/writings/pgsql/hw_performance/index.html
   a http://www.powerpostgresql.com/PerfList/.
   
  3.4) Jak� m�m lad�c� prostredky?
  
   Nastaven�m log_* promenn�ch v konfiguraci serveru si vynut�te logov�n�
   dotazu a procesn�ch statistik, kter� V�m mohou pomoci pri laden� a
   optimalizaci v�konu.
   
  3.5) Co znamen� "Sorry, too many clients", kdyz se zkous�m pripojit?
  
   Prekrocil jste v�choz� limit, kter� je 100 soucasne pripojen�ch
   uzivatelu. V konfiguraci serveru v postgresql.conf tuto hodnotu muzete
   zvetsit zmenou hodnoty max_connection. Nezapomente restartovat server.
   
  3.6) Proc je nutn� dump a obnoven� (load) datab�ze pri upgradu PostgreSQL?
  
   Zpusob c�slov�n� je pops�n v dokumentaci na
   http://www.postgresql.org/support/versioning. Instrukce k proveden�
   migrace na vyss� verzi jsou takt�z v dokumentaci na adrese
   http://www.postgresql.org/docs/current/static/install-upgrading.html.
   
  3.7) Jak� hardware bych mel pouz�vat?
  
   Jelikoz PC jsou vetsinou kompatibiln�, lid� maj� tendence verit, ze
   vsechna PC jsou stejne kvalitn�. Coz nen� pravda. Pameti ECC, SCSI a
   kvalitn� z�kladn� desky jsou mnohem spolehlivejs� a v�konnejs� nez
   lacinejs� hardware. PostgreSQL pobez� na vetsine hardwaru, nicm�ne
   pokud je pro V�s spolehlivost a v�kon syst�mu dulezit�, je dobr�
   venovat cas nalezen� vhodn� hardwarov� konfigurace. Na nasich
   elektronick�ch konferenc�ch muzete diskutovat o vhodn�ch konfigurac�ch
   a znack�ch.
     _________________________________________________________________
   
                              Provozn� dotazy
                                      
  4.1) Jak z�skat pouze prvn� r�dek dotazu? N�hodn� r�dek?
  
   Pokud potrebujete pouze nekolik r�dku a pokud v�te kolik, pouzijte
   SELECT LIMIT. Pokud bude mozn� pouz�t index shoduj�c� se s ORDER BY,
   je mozn�, ze se nebude prov�det cel� dotaz. Pokud nezn�te pocet
   z�znamu, pouzijte kurzor a pr�kaz FETCH.
   
   Pro v�ber n�hodn�ho r�dku pouzijte pr�kaz ve tvaru:
SELECT col
FROM tab
ORDER BY random()
LIMIT 1;

  4.2) Jak z�sk�m seznam tabulek, indexu, datab�z�, a definovan�ch uzivatelu.
  Mohu videt dotazy, kter� pouz�v� psql pro zobrazen� techto informac�?
  
   V psql pr�kazem \dt z�sk�te seznam tabulek. �pln� seznam pr�kazu psql
   z�sk�te pr�kazem \?. Alternativne si muzete prostudovat zdrojov� k�d
   psql - soubor pgsql/src/bin/psql/describe.c, kter� obsahuje SQL
   pr�kazy, kter� jsou generov�ny pro z�sk�n� v�stupu psql "backslash"
   pr�kazu. Tak� muzete nastartovat psql s parametrem -E, kter� zpusob�
   zobrazen� vsech SQL pr�kazu, kter� se odes�laj� na server. PostgreSQL
   tak� podporuje SQL standard INFORMACN� SCH�MATA (standardn� syst�mov�
   tabulky). Klasick�m dotazem do syst�mov�ch tabulek z�sk�te pozadovan�
   informace o strukture datab�ze.
   
   Syst�mov� tabulky PostgreSQL (mimo r�mec SQL standardu) pouz�vaj�
   prefix pg_. Pro zjisten� struktury datab�ze je muzete pouz�t tak�, i
   kdyz preferov�ny jsou dotazy do informacn�ho sch�matu.
   
   Seznam vsech datab�z� z�sk�te pr�kazem psql -l
   
   Dals� inspiraci najdete v souboru pgsql/src/tutorial/syscat.source.
   Obsahuje ilustracn� SELECTy potrebn� k z�sk�n� informac� z syst�mov�ch
   tabulek datab�ze.
   
  4.3) Jak zmenit datov� typ sloupce?
  
   Ve verz�ch 8.0 a pozdejs�ch jednoduse:
ALTER TABLE ALTER COLUMN TYPE

   V stars�ch verz�ch:
BEGIN;
ALTER TABLE tab ADD COLUMN new_col new_data_type;
UPDATE tab SET new_col = CAST(old_col AS new_data_type);
ALTER TABLE tab DROP COLUMN old_col;
COMMIT;

   Po zmene spustte pr�kaz VACUUM FULL, aby doslo k uvolnen� diskov�ho
   prostoru pouzit�ho v tu chv�li jiz neplatn�mi z�znamy.
   
  4.4) Jak� je maxim�ln� velikost r�dku, tabulky a datab�ze?
  
   PostgreSQL m� tato omezen�:
   
   Maxim�ln� velikost datab�ze:       neomezena (existuj� 32TB db)
   Maxim�ln� velikost tabulky:        32 TB
   Maxim�ln� velikost r�dky:          480GB
   Maxim�ln� velikost polozky         1 GB
   Maxim�ln� pocet r�dku v tabulce:   neomezeno
   Maxim�ln� pocet sloupcu v tabulce: 250-1600 podle typu
   Maxim�ln� pocet indexu na tabulce: neomezeno
   
   Ve skutecnosti nic nen� neomezeno, limitem b�v� vzdy dostupn� diskov�
   pamet nebo velikost operacn� pameti. Pokud m�te nekterou z techto
   hodnot neobvykle velkou, muze doj�t ke sn�zen� v�konu.
   
   Maxim�ln� velikost tabulky je 32 TB a nevyzaduje podporu velk�ch
   souboru operacn�m syst�mem. Velk� tabulky se ukl�daj� do nekolika 1 GB
   souboru takze limity souborov�ho syst�mu nejsou podstatn�.
   
   Maxim�ln� velikost tabulky a maxim�ln� pocet sloupcu muzeme
   zectyrn�sobit nastaven�m velikosti bloku na 32K.
   
   Indexy jsou povolen� pouze na sloupc�ch jejichz d�lka je mens� nez
   2000 znaku. Pokud tuto d�lku prekroc�me a index potrebujeme pro
   zajisten� jednoznacnosti, je vhodnejs� pouz�t funkcion�ln� index nad
   MD5 funkc� nebo fulltextov� index.
   
  4.5) Kolik diskov�ho prostoru je potreba k ulozen� dat z norm�ln�ho textov�ho
  souboru?
  
   PostgreSQL vyzaduje az petin�sobek diskov�ho prostoru k ulozen� dat z
   textov�ho souboru.
   
   Napr�klad, uvazujme soubor se 100 tis�ci r�dky obsahuj�c� na kazd�
   r�dce cel� c�slo a textov� popis. Text je v prumerne dvacet bytu
   dlouh�. Textov� soubor bude 2.8 MB dlouh�. Velikost datab�ze
   obsahuj�c� odpov�daj�c� data bude zhruba 5.2 MB.
    24 bytu: hlavicka r�dku (priblizne)
    24 bytu: jedna celoc�seln� polozka a jedna textov�
   + 4 byty: ukazatel na str�nku k entici
   ------------------------------------------------------
    52 bytu na r�dek

   Velikost datov� str�nky PostgreSQL je 8192 bytu (8KB)
 8192 bytu na str�nce
---------------------- = 158 r�dek na str�nku
  52 bytu za r�dek

100000 r�dek
----------------------- = 633 str�nek (zaokrouhleno nahoru)
   158 r�dek na str�nce

633 datov�ch str�nek * 8192 bytu na kazdou str�nku = 5,185,536 bytu (5.2 MB)

   Indexy nemaj� tak velkou rezii, ale mohou b�t tak� velk�, protoze
   obsahuj� indexovan� data.
   
   Hodnoty NULL jsou ulozeny v bitmap�ch, takze zab�raj� jen velmi m�lo
   diskov�ho prostoru.
   
  4.6) Muj dotaz je pomal� a nepouz�v� vytvoren� indexy. Proc?
  
   Kazd� dotaz nemus� nutne pouz�t existuj�c� indexy. Index se pouzije
   tehdy, kdyz je tabulka vets� nez urcit� minim�ln� velikost, a dotaz
   vyb�r� pouze procentu�lne malou c�st r�dku tabulky. To proto, ze
   n�hodn� pr�stup k disku dan� cten�m indexu muze b�t pomalejs� nez
   line�rn� cten� tabulky nebo sekvencn� cten�.
   
   PostgreSQL rozhoduje o pouzit� indexu na z�klade statistiky pr�stupu k
   tabulce. Tyto statistiky se shromazduj� pr�kazy VACUUM ANALYZE nebo
   ANALYZE. D�ky statistik�m m� optimizer informaci o poctu r�dek v
   tabulce a muze l�pe rozhodnout o pouzit� indexu. Statistiky se uplatn�
   pri urcen� optim�ln�ho porad� a metody spojen� tabulek. Statistiky by
   se meli aktualizovat opakovane, tak jak se men� obsah tabulek.
   
   Indexy nejsou obycejne pouzity pro setr�den� nebo spojen� tabulek.
   Sekvencn� zpracov�n� n�sledovan� explicitn�m tr�den�m je obycejne
   rychlejs� nez pouzit� indexu na velk� tabulce.
   
   Jinak je tomu v pr�pade pouzit� LIMIT a ORDER BY, pri kter�m se
   vetsinou index pouzije, jelikoz je v�sledkem pouze mal� c�st tabulky.
   
   Pokud si mysl�te, ze optimizer mylne zvolil sekvencn� prohled�v�n�
   tabulky, pouzijte pr�kaz SET enable_seqscan TO 'off' a zkuste zda je
   prohled�v�n� s indexem rychlejs�.
   
   Pri vyhled�v�n� na z�klade vzoru jako je napr. oper�tor LIKE nebo ~ se
   indexy pouzij� pouze za urcit�ch skutecnost�:
     * zac�tek hledan�ho vzoru mus� b�t ukotven k zac�tku, tj.
          + vzor LIKE nesm� zac�nat %
          + ~ regul�rn� v�raz mus� zac�nat ^
     * vzor nesm� zac�nat intervalem, napr. [a-e]
     * vyhled�van�, kter� nen� Case sensitiv jako je ILIKE nebo ~*
       nepouz�v� indexy. Muzete ale pouz�t funkcion�ln� indexy, kter�
       jsou pops�ny v sekci 4.8
     * pri inicializaci datab�ze (initdb) mus� b�t pouzito C locale nebo
       vytvorte speci�ln� text_pattern_index, kter� umozn�, pri
       respektov�n� zm�nen�ch podm�nek pouzit� indexu operac� LIKE. Pro
       vyhled�v�n� cel�ch slov je mozn� a v�hodn� pouz�t fulltext.
       
  4.7) Jak zjist�m, jak se vyhodnocuje muj dotaz?
  
   Pod�vejte se do n�povedy k pr�kazu EXPLAIN.
   
  4.8) Jak pouz�t case-(in)sensitive regul�rn� v�raz? Jak pouz�t index pro case
  insensitive hled�n�?
  
   Vyhled�v�n� prostrednictv�m regul�rn�ch vzoru zajistuje oper�tor ~,
   kter� je case-sensitive. Jeho case-insensitive varianta je oper�tor
   ~*. Case-insensitive variac� oper�toru LIKE je oper�tor ILIKE.
   
   Case-insensitive vyhled�n� se res�:
SELECT *
FROM tab
WHERE lower(col) = 'abc';

   Tento dotaz nepouzije standardn� index. Mus�te pouz�t tzv.
   funkcion�ln� index:
CREATE INDEX tabindex ON tab (lower(col));

   Pokud index vytvor�me jako unik�tn�, tak muzeme ukl�dat retezce
   obsahuj�c� mal� i velk� p�smena, ale nikoliv retezce, kter� se od sebe
   odlisuj� jen v mal�ch a velk�ch p�smenech. K zajisten� z�pisu retezce
   obsahuj�c� pouze mal� nebo pouze velk� p�smena pouzijte CHECK kontroly
   nebo triggery.
   
  4.9) Jak v dotazu detekovat, ze polozka je NULL? Jak bezpecne spojit dva
  retezce, pokud mohou obsahovat NULL? Lze tr�dit podle toho, jestli je polozka
  NULL nebo ne?
  
   Pokud chcete testovat hodnotu NULL pouzijte oper�tor IS:
   SELECT *
   FROM tab
   WHERE col IS NULL;

   K spojen� retezcu, kter� mohou obsahovat hodnotu NULL, pouz�vejte
   funkci COALESCE(), napr.:
   SELECT COALESCE(col1, '') || COALESCE(col2, '')
   FROM tab

   Pokud chcete tr�dit podle hodnoty NULL, pouzijte v�raz IS NULL nebo IS
   NOT NULL v klauzuli ORDER. Hodnota pravda m� prednost pred hodnotou
   false a tedy pokud pouzijete:
   SELECT *
   FROM tab
   ORDER BY (col IS NOT NULL)

   tak z�znamy s NULL budou na zac�tku setr�den�ch dat.
   
  4.10) Jak� jsou rozd�ly mezi ruzn�mi znakov�mi typy?
  
   Typ        Intern� n�zev Pozn�mky
   VARCHAR(n) varchar       n urcuje maxim�ln� d�lku
   CHAR(n)    bpchar        retezec je do dan� d�lky rozs�ren mezerami
   TEXT       text          bez omezen� d�lky
   BYTEA      bytea         pole bytu nespecifikovan� d�lky
   "char"     char          jeden znak
   
   Na intern� n�zvy muzete narazit v syst�mov�m katalogu nebo v nekter�ch
   chybov�ch hl�sen�ch.
   
   Ctyri prvn� typy jsou tzv. varlena typy (prvn� ctyri byty na disku
   jsou obsahuj� d�lku, ostatn� obsahuj� vlastn� data). Skutecne obsazen�
   prostor je tedy o neco m�lo vets� nez deklarovan� velikost. Na druhou
   stranu, dels� retezce jsou komprimov�ny, takze obsazen� prostor na
   disku muze b�t mens� nez se cek�.
   
   VARCHAR(n) je vhodn� pro ukl�d�n� ruzne dlouh�ch retezcu u kter�ch
   zn�me d�lkov� omezen�, TEXT pro retezce bez omezen� d�lky (maximum je
   jeden gigabyte).
   
   CHAR(n) se pouz�v� pro ulozen� stejne dlouh�ch retezcu. CHAR(n) dopln�
   mezerami na specifikovanou d�lku, VARCHAR(n) hodnoty se ukl�daj� tak
   jak jsou. BYTEA je pro ukl�d�n� bin�rn�ch dat - non ASCII hodnot.
   Vsechny zm�nen� typy maj� podobn� v�konov� charakteristiky.
   
  4.11.1) Jak vytvorit serial/auto-increment polozku?
  
   V PostgreSQL muzete pouz�t datov� typ SERIAL. Jeho pouzit�m se
   automaticky vytvor� sekvence. Napr�klad:
CREATE TABLE person (
  id   SERIAL,
  name TEXT
);

   je automaticky transformov�no na:
CREATE SEQUENCE person_id_seq;
CREATE TABLE person (
  id   INT4 NOT NULL DEFAULT nextval('person_id_seq'),
  name TEXT
);

   Podrobnejs� informace najdete v manu�lu v popisu pr�kazu
   create_sequence.
   
  4.11.2) Jak z�skat hodnotu SERIAL po vlozen� r�dku?
  
   Nejjednoduss�m zpusob, jak z�skat vygenerovanou hodnotu typu SERIAL,
   je vyuz�t klauzuli RETURNING. Pro tabulku z 4.11.1 vypad� takto:
INSERT INTO person (name) VALUES ('Blaise Pascal') RETURNING id;

   Tak� muzete pouz�t funkci nextvall() a jej� v�sledek pouz�t v pr�kazu
   INSERT, nebo zavolat currval() po proveden� pr�kazu INSERT.
   
  4.11.3) Nezpusob� currval() a nextval() probl�my ve v�ce uzivatelsk�m
  prostred�?
  
   Ne, currval vrac� vzdy hodnotu, kter� byla vygenerov�na pro v�s.
   
  4.11.4) Proc nen� vygenerovan� c�slo pouzito pri prerusen� transakce?Proc
  vznikaj� d�ry v c�slov�n� prostrednictv�m sekvence nebo typu SERIAL?
  
   Pot� co sekvence vygeneruje nov� c�slo, tak se nedoch�z� k zamcen�
   sekvence a necek� se na �spesn� nebo ne�spesn� dokoncen� transakce.
   Odvol�n�m transakce, kter� si vyz�dala c�sla sekvence se tato c�sla
   nen�vratne ztrat�.
   
  4.12) Co to je OID? Co je to CTID?
  
   V pr�pade, ze tabulku nezaloz�me s atributem WITHOUT OIDS, tak m�
   kazd� r�dek unik�tn� identifikacn� c�slo OID. Toto c�slo je 4 bajtov�
   cel� c�slo, kter� je jedinecn� v cel� instalaci. Pretece po 4
   miliard�ch r�dku. PostgreSQL pouz�v� OIDs jako intern� linky v
   intern�ch syst�mov�ch tabulk�ch.
   
   K z�sk�n� unik�tn�ho c�sla v nesyst�mov�ch tabulk�ch je vhodnejs�
   pouzit� typu SERIAL nez OID, jelikoz sekvence SERIAL se pouz�v� pouze
   pro jednu tabulku a je tud�z m�ne n�chyln� na pretecen�. Pokud byste
   se toho ob�vali, pouzijte typ SERIAL8.
   
   CTID se pouz�v� k identifikaci konkr�tn�ho fyzick�ho r�dku. CTID se
   men� pokud je r�dek modifikov�n nebo znovu nacten. Pouz�vaj� ho indexy
   jako adresaci fyzick�ch r�dku.
   
  4.13) Co znamen� chybov� hl�sen� "ERROR: Memory exhausted in
  AllocSetAlloc()"?
  
   Pravdepodobne jste vycerpal dostupnou virtu�ln� pamet, nebo tvuj
   kernel m� pr�lis n�zk� limity u urcit�ch zdroju. Pred startem
   PostgreSQL vyzkousejte:
ulimit -d 262144
limit datasize 256m

   Mozn�, ze se projde pouze jeden pr�kaz - z�lez� to na vasem shellu.
   Mel by zvednout limity datov�ch segmentu vasich procesu na dostatecne
   velkou hodnotu a snad umoznit dokoncen� dotazu. Zmena limitu se bude
   aplikovat pouze na aktu�ln� proces a na vsechny nove vytvoren�
   procesy. Jestlize m�te probl�m s SQL klientem, protoze v�m server
   vr�til pr�lis dat, zkuste to pred startem klienta.
   
  4.14) Jak zjist�m, kterou verzi PostgreSQL pouz�v�m?
  
   V psql napiste:
SELECT version();

  4.15) Jak vytvorit sloupec, kter� bude implicitne obsahovat aktu�ln� cas?
  
   Pouzijte CURRENT_TIMESTAMP:
CREATE TABLE test (x int, modtime TIMESTAMP DEFAULT CURRENT_TIMESTAMP );

  4.16) Jak prov�st vnejs� spojen� (outer join)?
  
   PostgreSQL podporuje standardn� SQL syntaxi pro vnejs� spojen�. Zde
   jsou dva pr�klady:
SELECT *
FROM t1 LEFT OUTER JOIN t2 ON (t1.col = t2.col);

   nebo
SELECT *
FROM t1 LEFT OUTER JOIN t2 USING (col);

   Tyto identick� dotazy spoj� sloupec t1.col k sloupci t2.col, a jeste
   vr�t� vsechny nesp�rovan� r�dky t2 (ty, kter� nedohled� v t2). RIGHT
   JOIN by pripojil vsechny nesp�rovan� r�dky z t2. FULL JOIN vr�t�
   vsechny sp�rovan� r�dky i vsechny zb�vaj�c� r�dky z obou tabulek.
   Kl�cov� slovo OUTER je voliteln�. Bezn� operace JOIN se tak� oznacuje
   jako vnitrn� spojen�.
   
  4.17) Jak prov�st dotaz napr�c nekolika datab�zemi?
  
   Neexistuje z�dn� zpusob, jak se v dotazu odkazovat na tabulky z jin�
   nez aktu�ln� datab�ze. A to protoze m� syst�mov� tabulky ulozen�
   nez�visle v kazd� datab�zi a nen� tak �plne zrejm�, jak by se dotaz
   proveden� napr�c datab�zemi mel chovat.
   
   Jeden z doplnku dblink umoznuje dotaz nad nekolika tabulkami pomoc�
   funkc�. Druh� zpusob je simult�ln� pripojen� klienta ke vsem
   relevantn�m datab�z�m a sloucen� v�sledku na strane klienta.
   
  4.18) Muze funkce vr�tit v�ce r�dku nebo sloupcu?
  
   Jde to jednoduse pomoc� set-returning funkce. V�ce na
   http://www.postgresql.org/docs/techdocs.17.
   
  4.19) Co je pr�cinou chyby "relation with OID xxxxx does not exist"?
  
   Nechten�m vedlejs�m efektem kesov�n� SQL dotazu v PL/pgSQL funkci je
   probl�m s neplatn�mi odkazy na docasn� tabulky, kter� byly od prvn�ho
   spusten� funkce zruseny a znovu vytvoreny pred dals�m spusten�m
   PL/pgSQL funkce. Resen�m je pouz�t pr�kaz EXECUTE a to proto, ze
   prov�dec� pl�n SQL pr�kazu spousten�ho pr�kazem EXECUTE se vytv�r�
   pokazd� znovu (neukl�d� se do cache).
   
   Tento probl�m by se nemel vyskytovat u PostgreSQL verze 8.3 a vyss�ch
   verz�ch.
   
  4.20) Jak� jsou moznosti replikace datab�z�?
  
   Replikaci datab�ze umoznuje nekolik technoligi�. Kazd� m� urcit�
   v�hody a nev�hody.
   
   Master/Slave replikaci podporuje jeden hlavn� server, kter� prij�m�
   pozadavky na z�pis a cten�, a nekolik podr�zen�ch serveru, kter�
   umoznuj� pouze cten� (SELECT). Nejrozs�renejs�m volne dostupn�m
   resen�m tohoto typu je Slony-I.
   
   Replikace typu Multi-master podporuje existenci nekolika serveru s
   povolen�m z�pisem na v�ce replikovan�ch serverech. Toto resen� zvysuje
   z�tez serveru, protoze je nutn� synchronizace serveru.
   Nejrozs�renejs�m volne dostupn�m resen�m je PGCluster.
   
   Jeste existuje nekolik komercn�ch a hardware resen� replikac�
   podporuj�c�ch ruzn� modely replikace.
   
  4.21) Proc v dotazu nejsou rozpozn�ny n�zvy m�ch tabulek nebo funkc�? Proc
  jsou velk� p�smena v n�zvech automaticky prevedena na mal� p�smena?
  
   Nejcastejs�m duvodem nerozpozn�n� n�zvu objektu bylo pouzit� vlozen�
   n�zvu sloupce nebo tabulky mezi uvozovky pri zakl�d�n� tabulky. Pokud
   se n�zev zap�se mezi uvozovky, pak je case sensitive, a v dusledku
   toho je nutn� n�zvy techto sloupcu nebo tabulek v SQL pr�kazech tak�
   vkl�dat mezi uvozovky (pokud obsahuj� velk� p�smena). Nekter�
   programy, jako je napr�klad pgAdmin, automaticky pouz�vaj� uvozovky.
   Takze pokud chcete, aby syst�m identifikoval identifik�tor, mus�te:
     * nepouz�vat uvozovky v pr�kazu CREATE TABLE
     * v identifik�toru pouz�t pouze mal� p�smena
     * v dotazech vkl�dat identifik�tory do uvozovek