Update new Russian FAQ.
authorBruce Momjian
Fri, 12 Apr 2002 09:17:10 +0000 (09:17 +0000)
committerBruce Momjian
Fri, 12 Apr 2002 09:17:10 +0000 (09:17 +0000)
doc/FAQ_russian
doc/src/FAQ/FAQ_russian.html
src/backend/tcop/utility.c

index cca1fb9e5cb342cb863ad7f4b085d93dca3f11ce..14cef1ad9a232c9e9994443c56360c6c2a9b5875 100644 (file)
 
-Current directory is /root
-
-    drwxr-xr-x   19 root     wheel       1024 Mar  4 05:01 ../
-    drwxr-xr-x    2 root     wheel        512 Dec 29 13:36 Calendar/
-    drwx------    8 root     wheel       9216 Mar  1 06:08 Mail/
-    drwx------    8 root     wheel       9216 Mar  1 06:08 News/
-    lrwxr-xr-x    1 www      wheel         16 Mar  4 20:39 calendar -> /users/n
-uyu/mcal
-    drwxr-xr-x    2 root     wheel        512 Mar  4 16:56 download/
-    -r--r--r--    1 root     wheel        409 Feb 27 05:00 notes
+               ïÔ×ÅÔÙ ÎÁ ÞÁÓÔÏ ÚÁÄÁ×ÁÅÍÙÅ ×ÏÐÒÏÓÙ ÐÏ PostgreSQL
+                                       
+   äÁÔÁ ÐÏÓÌÅÄÎÅÇÏ ÏÂÎÏ×ÌÅÎÉÑ: ÷ÔÏÒÎÉË 9 áÐÒÅÌÑ 10:53:30 EDT 2002
+   
+   áÎÇÌÉÊÓËÉÊ ×ÁÒÉÁÎÔ ÓÏÐÒÏ×ÏÖÄÁÅÔ: âÒÀÓ íÏÍØÑΠ(Bruce Momjian)
+   
+   ðÅÒÅ×ÅÌ ÎÁ ÒÕÓÓËÉÊ: ÷ÉËÔÏÒ ÷ÉÓÌÏÂÏËÏ× ([email protected])
+   
+   óÁÍÕÀ Ó×ÅÖÕÀ ÁÎÇÌÉÊÓËÕÀ ×ÅÒÓÉÀ ÄÏËÕÍÅÎÔÁ ÍÏÖÎÏ ÎÁÊÔÉ ÎÁ
+   http://www.PostgreSQL.org/docs/faq-english.html.
+   
+   ïÔ×ÅÔÙ ÎÁ ×ÏÐÒÏÓÙ ÓÐÅÃÉÆÉÞÎÙÅ ÄÌÑ ËÏÎËÒÅÔÎÙÈ ÐÌÁÔÆÏÒÍ ÍÏÖÎÏ ÎÁÊÔÉ ÎÁ
+   http://www.PostgreSQL.org/users-lounge/docs/faq.html.
+     _________________________________________________________________
+   
+                               ïÂÝÉÅ ×ÏÐÒÏÓÙ
+                                      
+   1.1) þÔÏ ÔÁËÏÅ PostgreSQL? ëÁË ÐÒÏÉÚÎÏÓÉÔÓÑ ÜÔÏ ÎÁÚ×ÁÎÉÅ?
+   1.2) ëÁËÏ×Ù Á×ÔÏÒÓËÉÅ ÐÒÁ×Á ÎÁ PostgreSQL?
+   1.3) îÁ ËÁËÉÈ Unix ÐÌÁÔÆÏÒÍÁÈ ÒÁÂÏÔÁÅÔ PostgreSQL?
+   1.4) óÕÝÅÓÔ×ÕÀÔ ÌÉ ×ÅÒÓÉÉ ÐÏÒÔÉÒÏ×ÁÎÎÙÅ ÎÅ ÎÁ Unix ÓÉÓÔÅÍÙ?
+   1.5) çÄÅ ÍÏÖÎÏ ×ÚÑÔØ PostgreSQL?
+   1.6) çÄÅ ÐÏÌÕÞÉÔØ ÐÏÄÄÅÒÖËÕ?
+   1.7) ëÁËÁÑ ÐÏÓÌÅÄÎÑÑ ×ÅÒÓÉÑ?
+   1.8) ëÁËÁÑ ÄÏËÕÍÅÎÔÁÃÉÑ ÉÍÅÅÔÓÑ × ÎÁÌÉÞÉÉ?
+   1.9) ëÁË ÎÁÊÔÉ ÉÎÆÏÒÍÁÃÉÀ Ï ÉÚ×ÅÓÔÎÙÈ ÏÛÉÂËÁÈ ÉÌÉ ÏÔÓÕÔÓÔ×ÕÀÝÉÈ
+   ×ÏÚÍÏÖÎÏÓÔÑÈ?
+   1.10) ëÁË ÎÁÕÞÉÔØÓÑ SQL?
+   1.11) òÅÛÅÎÁ ÌÉ × PostgreSQL ÐÒÏÂÌÅÍÁ 2000-ÇÏ ÇÏÄÁ (Y2K)?
+   1.12) ëÁË ÐÒÉÓÏÅÄÉÎÉÔÓÑ Ë ËÏÍÁÎÄÅ ÒÁÚÒÁÂÏÔÞÉËÏ×?
+   1.13) ëÁË ÏÔÒÁ×ÉÔØ ÓÏÏÂÝÅÎÉÅ Ï ÏÛÉÂËÅ?
+   1.14) ëÁË ÓÒÁ×ÎÉ×ÁÔØ PostgreSQL Ó ÄÒÕÇÉÍÉ óõâä?
+   1.15) ëÁË ÏËÁÚÁÔØ ÆÉÎÁÎÓÏ×ÕÀ ÐÏÍÏÝØ PostgreSQL?
+   
+                 ÷ÏÐÒÏÓÙ ÐÏÌØÚÏ×ÁÔÅÌÅÊ ÐÏ ËÌÉÅÎÔÓËÏÊ ÞÁÓÔÉ
+                                      
+   2.1) óÕÝÅÓÔ×ÕÀÔ ÌÉ ODBC ÄÒÁÊ×ÅÒÁ ÄÌÑ PostgreSQL?
+   2.2) ëÁËÉÅ ÉÎÓÔÒÕÍÅÎÔÙ ÓÕÝÅÓÔ×ÕÀÔ ÄÌÑ ÉÓÐÏÌØÚÏ×ÁÎÉÑ PostgreSQL ÞÅÒÅÚ
+   Web?
+   2.3) åÓÔØ ÌÉ Õ PostgreSQL ÇÒÁÆÉÞÅÓËÉÊ ÉÎÔÅÒÆÅÊÓ ÐÏÌØÚÏ×ÁÔÅÌÑ?
+   çÅÎÅÒÁÔÏÒ ÏÔÞÅÔÏ×? ÷ÓÔÒÏÅÎÎÙÊ ÉÎÔÅÒÆÅÊÓ ÄÌÑ ÑÚÙËÁ ÚÁÐÒÏÓÏ×?
+   2.4) ëÁËÉÅ ÑÚÙËÉ ÍÏÇÕÔ ×ÚÁÉÍÏÄÅÊÓÔ×Ï×ÁÔØ Ó PostgreSQL?
+   
+                         ÷ÏÐÒÏÓÙ ÁÄÍÉÎÉÓÔÒÉÒÏ×ÁÎÉÑ
+                                      
+   3.1) ëÁË ÍÎÅ ÕÓÔÁÎÏ×ÉÔØ PostgreSQL × ÍÅÓÔÏ ÏÔÌÉÞÎÏÅ ÏÔ
+   /usr/local/pgsql?
+   3.2) ëÏÇÄÁ Ñ ÚÁÐÕÓËÁÀ postmaster, Ñ ÐÏÌÕÞÁÀ ÓÏÏÂÝÅÎÉÅ Bad System Call
+   ÉÌÉ ÓÏÏÂÝÅÎÉÅ core dumped. ðÏÞÅÍÕ?
+   3.3) ëÏÇÄÁ Ñ ÐÙÔÁÀÓØ ÚÁÐÕÓÔÉÔØ postmaster, Ñ ÐÏÌÕÞÁÀ ÏÛÉÂËÉ
+   IpcMemoryCreate. ðÏÞÅÍÕ?
+   3.4) ëÏÇÄÁ Ñ ÐÙÔÁÀÓØ ÚÁÐÕÓÔÉÔØ postmaster, Ñ ÐÏÌÕÞÁÀ ÏÛÉÂËÉ
+   IpcSemaphoreCreate. ðÏÞÅÍÕ?
+   3.5) ëÁË ÍÎÅ ÕÐÒÁ×ÌÑÔØ ÓÏÅÄÉÎÅÎÉÑÍÉ Ó ÄÒÕÇÉÈ ËÏÍÐØÀÔÅÒÏ×?
+   3.6) ëÁËÉÅ ÎÁÓÔÒÏÊËÉ ÍÎÅ ÎÕÖÎÏ ÓÄÅÌÁÔØ ÄÌÑ ÕÌÕÞÛÅÎÉÑ
+   ÐÒÏÉÚ×ÏÄÉÔÅÌØÎÏÓÔÉ?
+   3.7) ëÁËÉÅ ×ÏÚÍÏÖÎÏÓÔÉ ÄÌÑ ÏÔÌÁÄËÉ ÅÓÔØ × ÎÁÌÉÞÉÉ?
+   3.8) ðÏÞÅÍÕ Ñ ÐÏÌÕÞÁÀ ÓÏÏÂÝÅÎÉÅ "Sorry, too many clients" ËÏÇÄÁ
+   ÐÙÔÁÀÓØ ÐÏÄËÌÀÞÉÔØÓÑ Ë ÂÁÚÅ?
+   3.9) þÔÏ ÜÔÏ ÚÁ ÆÁÊÌÙ pg_sorttempNNN.NN × ÍÏÅÍ ËÁÔÁÌÏÇÅ Ó ÂÁÚÏÊ
+   ÄÁÎÎÙÈ?
+   
+                            ÷ÏÐÒÏÓÙ ÜËÓÐÌÕÁÔÁÃÉÉ
+                                      
+   4.1) ÷ ÞÅÍ ÏÔÌÉÞÉÅ ÍÅÖÄÕ ÂÉÎÁÒÎÙÍ É ÎÏÒÍÁÌØÎÙÍ ËÕÒÓÏÒÏÍ?
+   4.2) ëÁË ×ÙÐÏÌÎÉÔØ SELECT ÔÏÌØËÏ ÄÌÑ ÎÅÓËÏÌØËÉÈ ÐÅÒ×ÙÈ ÓÔÒÏÞÅË
+   ÚÁÐÒÏÓÁ?
+   4.3) ëÁË ÐÏÌÕÞÉÔØ ÓÐÉÓÏË ÔÁÂÌÉàÉÌÉ ÄÒÕÇÉÈ ËÏÍÐÏÎÅÎÔÏ× × psql?
+   4.4) ëÁË ÕÄÁÌÉÔØ ËÏÌÏÎËÕ ÉÚ ÔÁÂÌÉÃÙ?
+   4.5) ëÁËÏ×Ù ÍÁËÓÉÍÁÌØÎÙÅ ÒÁÚÍÅÒÙ ÄÌÑ ÚÁÐÉÓÅÊ, ÔÁÂÌÉàɠÂÁÚÙ ÄÁÎÎÙÈ?
+   4.6) ëÁË ÍÎÏÇÏ ÄÉÓËÏ×ÏÇÏ ÐÒÏÓÔÒÁÎÓÔ×Á × ÂÁÚÅ ÄÁÎÎÙÈ ÎÕÖÎÏ ÄÌÑ
+   ÓÏÈÒÁÎÅÎÉÑ ÄÁÎÎÙÈ ÉÚ ÏÂÙÞÎÏÇÏ ÔÅËÓÔÏ×ÏÇÏ ÆÁÊÌÁ?
+   4.7) ëÁË ÍÎÅ ÕÂÅÄÉÔØÓÑ, ÞÔÏ ÎÕÖÎÙÅ ÍÎÅ ÔÁÂÌÉÃÙ ÉÌÉ ÉÎÄÅËÓÙ ÏÐÒÅÄÅÌÅÎÙ
+   × ÂÁÚÅ ÄÁÎÎÙÈ?
+   4.8) õ ÍÅÎÑ ÍÅÄÌÅÎÎÏ ÒÁÂÏÔÁÀÔ ÚÁÐÒÏÓÙ ÉÌÉ ÎÅ ÐÒÏÉÓÈÏÄÉÔ ÉÓÐÏÌØÚÏ×ÁÎÉÑ
+   ÉÎÄÅËÓÏ×. ðÏÞÅÍÕ?
+   4.9) ëÁË ÐÏÓÍÏÔÒÅÔØ ÎÁ ÔÏ, ËÁË ÏÐÔÉÍÉÚÁÔÏÒ ×ÙÐÏÌÎÑÅÔ ÍÏÊ ÚÁÐÒÏÓ?
+   4.10) þÔÏ ÔÁËÏÅ R-tree ÉÎÄÅËÓ?
+   4.11) þÔÏ ÔÁËÏÅ Genetic Query Optimizer?
+   4.12) ëÁË ÍÎÅ ×ÙÐÏÌÎÉÔØ ÐÏÉÓË ÒÅÇÕÌÑÒÎÏÇÏ ×ÙÒÁÖÅÎÉÑ É ÐÏÉÓË
+   ÎÅÚÁ×ÉÓÉÍÙÊ ÏÔ ÒÅÇÉÓÔÒÁ ÂÕË× ÐÏÉÓË ÒÅÇÕÌÑÒÎÏÇÏ ×ÙÒÁÖÅÎÉÑ? ëÁË ÍÎÅ
+   ÉÓÐÏÌØÚÏ×ÁÔØ ÉÎÄÅËÓ ÄÌÑ ÐÏÉÓËÁ ÎÅÚÁ×ÉÓÉÍÏÇÏ ÏÔ ÒÅÇÉÓÔÒÁ ÂÕË×?
+   4.13) ëÁË Ñ ÍÏÇÕ ÏÐÒÅÄÅÌÉÔØ, ÞÔÏ ÚÎÁÞÅÎÉÅ ÐÏÌÑ ÒÁ×ÎÏ NULL × ËÁËÏÍ-ÌÉÂÏ
+   ÚÁÐÒÏÓÅ?
+   4.14) ëÁËÏ×Ù ÏÔÌÉÞÉÑ ÍÅÖÄÕ ÒÁÚÎÙÍÉ ÓÉÍ×ÏÌØÎÙÍÉ ÔÉÐÁÍÉ?
+   4.15.1) ëÁË ÍÎÅ ÓÏÚÄÁÔØ ÐÏÌÅ serial/Ó-Á×ÔÏ-Õ×ÅÌÉÞÅÎÉÅÍ?
+   4.15.2) ëÁË ÍÎÅ ÐÏÌÕÞÉÔØ ÚÎÁÞÅÎÉÅ ÐÒÉ ×ÓÔÁ×ËÅ SERIAL?
+   4.15.3) îÅ ÍÏÖÅÔ ÌÉ ÐÏÌÕÞÉÔØÓÑ ÔÁË, ÞÔÏ ÉÓÐÏÌØÚÏ×ÁÎÉÅ currval() É
+   nextval() ÐÒÉ×ÅÄÅÔ Ë ÚÁÃÉËÌÉÒÏ×ÁÎÉÀ Ó ÄÒÕÇÉÍÉ ÐÏÌØÚÏ×ÁÔÅÌÑÍÉ?
+   4.15.4) ðÏÞÅÍÕ ÞÉÓÌÁ ÉÚ ÍÏÅÊ ÐÏÓÌÅÄÏ×ÁÔÅÌØÎÏÓÔÉ ÎÅ ÉÓÐÏÌØÚÕÀÔÓÑ ÓÎÏ×Á
+   ÐÒÉ ÏÔÍÅÎÅ ÔÒÁÎÚÁËÃÉÉ? ðÏÞÅÍÕ ÓÏÚÄÁÀÔÓÑ ÒÁÚÒÙ×Ù ÐÒÉ ÎÕÍÅÒÁÃÉÉ ×
+   ËÏÌÏÎËÅ, ÇÄÅ Ñ ÉÓÐÏÌØÚÕÀ ÐÏÓÌÅÄÏ×ÁÔÅÌØÎÏÓÔØ/SERIAL?
+   4.16) þÔÏ ÔÁËÏÅ OID? þÔÏ ÔÁËÏÅ TID?
+   4.17) þÔÏ ÏÚÎÁÞÁÀÔ ÎÅËÏÔÏÒÙÅ ÔÅÒÍÉÎÙ ÉÓÐÏÌØÚÕÅÍÙÅ × PostgreSQL?
+   4.18) ðÏÞÅÍÕ Ñ ÐÏÌÕÞÁÀ ÏÛÉÂËÕ "ERROR: Memory exhausted in
+   AllocSetAlloc()"?
+   4.19) ëÁË ÍÎÅ ÕÚÎÁÔØ, ËÁËÁÑ ×ÅÒÓÉÑ PostgreSQL ÚÁÐÕÝÅÎÁ?
+   4.20) ðÏÞÅÍÕ ÐÒÉ ÒÁÂÏÔÅ Ó ÍÏÉÍ ÂÏÌØÛÉÍ ÏÂßÅËÔÏÍ Ñ ÐÏÌÕÞÁÀ ÏÛÉÂËÕ
+   "invalid large obj descriptor"?
+   4.21) ëÁË ÍÎÅ ÓÏÚÄÁÔØ ËÏÌÏÎËÕ ËÏÔÏÒÁÑ ÐÏ ÕÍÏÌÞÁÎÉÀ ÂÕÄÅÔ ÓÏÄÅÒÖÁÔØ
+   ÔÅËÕÝÅÅ ×ÒÅÍÑ?
+   4.22) ðÏÞÅÍÕ ÍÏÉ ÐÏÄÚÁÐÒÏÓÙ, ÉÓÐÏÌØÚÕÀÝÉÅ IN ÔÁË ÍÅÄÌÅÎÎÏ ÒÁÂÏÔÁÅÀÔ?
+   4.23) ëÁË ×ÙÐÏÌÎÉÔØ ×ÎÅÛÎÅÅ Ó×ÑÚÙ×ÁÎÉÅ?
+   4.24) ëÁË ×ÙÐÏÌÎÑÔØ ÚÁÐÒÏÓÙ, ÉÓÐÏÌØÚÕÀÝÉÅ ÎÅÓËÏÌØËÏ ÂÁÚ ÄÁÎÎÙÈ?
+   4.25) ëÁË ÍÎÅ ×ÅÒÎÕÔØ ÉÚ ÆÕÎËÃÉÉ ÎÅÓËÏÌØËÏ ÚÁÐÉÓÅÊ?
+   
+                           òÁÓÛÉÒÅÎÉÑ PostgreSQL
+                                      
+   5.1) ñ ÎÁÐÉÓÁÌ ÆÕÎËÃÉÀ ÏÐÒÅÄÅÌÑÅÍÕÀ ÐÏÌØÚÏ×ÁÔÅÌÅÍ. ëÏÇÄÁ Ñ ÚÁÐÕÓËÁÀ ÅÅ
+   × psql, ÐÏÞÅÍÕ Ñ ÐÏÌÕÞÁÀ dump core?
+   5.2) ëÁË Ñ ÍÏÇÕ ×ÎÅÓÔÉ ÎÅËÏÔÏÒÙÅ ËÌÁÓÓÎÙÅ ÎÏ×ÙÅ ÔÉÐÙ É ÆÕÎËÃÉÉ ×
+   PostgreSQL?
+   5.3) ëÁË ÍÎÅ ÎÁÐÉÓÁÔØ C ÆÕÎËÃÉÀ, ×ÏÚ×ÒÁÝÁÀÝÕÀ ÚÁÐÉÓØ?
+   5.4) ñ ÉÚÍÅÎÉÌ ÉÓÈÏÄÎÙÊ ÆÁÊÌ. ðÏÞÅÍÕ ÐÏÓÌÅ ÐÅÒÅËÏÍÐÉÌÑÃÉÉ Ñ ÎÅ ×ÉÖÕ
+   ÉÚÍÅÎÅÎÉÊ?
+     _________________________________________________________________
+   
+                               ïÂÝÉÅ ×ÏÐÒÏÓÙ
+                                      
+    1.1) þÔÏ ÔÁËÏÅ PostgreSQL?
+    
+   PostgreSQL ÐÒÏÉÚÎÏÓÉÔÓÑ Post-Gres-Q-L (ðÏÓÔ-çÒÅÓ-ëØÀ-üÌ).
+   
+   PostgreSQL - ÜÔÏ ÒÁÓÛÉÒÅÎÉÅ óõâä POSTGRES, ÉÓÓÌÅÄÏ×ÁÔÅÌØÓËÉÊ ÐÒÏÔÏÔÉÐ
+   ÎÏ×ÏÇÏ ÐÏËÏÌÅÎÉÑ óõâä. PostgreSQL ÏÄÎÏ×ÒÅÍÅÎÎÏ ÓÏÈÒÁÎÑÅÔ ÍÏÝÎÕÀ ÍÏÄÅÌØ
+   ÄÁÎÎÙÈ É ÏÂÝÉÒÎÏÅ ËÏÌÉÞÅÓÔ×Ï ÔÉÐÏ× POSTGRES, É ÚÁÍÅÝÁÅÔ ÑÚÙË ÚÁÐÒÏÓÏ×
+   PostQuel ÎÁ ÒÁÓÛÉÒÅÎÎÏÅ ÐÏÄÍÎÏÖÅÓÔ×Ï SQL. PostgreSQL - ÜÔÏ Ó×ÏÂÏÄÎÏÅ É
+   ÐÏÌÎÏÓÔØÀ ÏÔËÒÙÔÏÅ ÐÒÏÇÒÁÍÍÎÏÅ ÏÂÅÓÐÅÞÅÎÉÅ.
+   
+   òÁÚÒÁÂÏÔËÕ PostgreSQL ×ÙÐÏÌÎÑÅÔ ËÏÍÁÎÄÁ, Ó×ÑÚÁÎÎÁÑ ÞÅÒÅÚ Internet, ×ÓÅ
+   ÕÞÁÓÔÎÉËÉ ËÏÔÏÒÏÊ ÐÏÄÐÉÓÁÎÙ ÎÁ ÓÐÉÓÏË ÒÁÓÓÙÌËÉ ÒÁÚÒÁÂÏÔÞÉËÏ×. ÷
+   ÎÁÓÔÏÑÝÅÅ ×ÒÅÍÑ, ÉÈ ËÏÏÒÄÉÎÁÔÏÒÏÍ Ñ×ÌÑÅÔÓÑ íÁÒË æÏÒÎÁÊ (Marc G.
+   Fournier) ([email protected]). (óÍ. ÎÉÖÅ Ï ÔÏÍ, ËÁË ÐÏÄËÌÀÞÉÔØÓÑ
+   Ë ÒÁÚÒÁÂÏÔËÅ). üÔÁ ËÏÍÁÎÄÁ ÔÅÐÅÒØ ÏÔ×ÅÞÁÅÔ ÚÁ ×ÓÀ ÒÁÚÒÁÂÏÔËÕ
+   PostgreSQL.
+   
+   á×ÔÏÒÁÍÉ PostgreSQL 1.01 Ñ×ÌÑÀÔÓÑ üÎÄÒÀ à (Andrew Yu) É äÖÏÌÉ þÅÎ
+   (Jolly Chen). íÎÏÇÉÅ ÄÒÕÇÉÅ ×ÎÅÓÌÉ Ó×ÏÊ ×ËÌÁÄ × ÐÅÒÅÎÏÓ ÎÁ ÄÒÕÇÉÅ
+   ÐÌÁÔÆÏÒÍÙ, ÔÅÓÔÉÒÏ×ÁÎÉÅ, ÏÔÌÁÄËÕ É ÒÁÓÛÉÒÅÎÉÅ ÜÔÏÇÏ ËÏÄÁ.
+   ðÅÒ×ÏÎÁÞÁÌØÎÙÊ ËÏÄ Postgres, ÉÚ ËÏÔÏÒÏÇÏ ÐÏÑ×ÉÌÓÑ PostgreSQL, ÂÙÌ
+   ÉÔÏÇÏÍ ÕÓÉÌÉÊ ÍÎÏÇÉÈ ÁËÁÄÅÍÉÞÅÓËÉÈ ÓÔÕÄÅÎÔÏ×, ÎÅÁËÁÄÅÍÉÞÅÓËÉÈ
+   ÓÔÕÄÅÎÔÏ× É ÍÎÏÖÅÓÔ×Á ÒÁÚÎÙÈ ÐÒÏÇÒÁÍÍÉÓÔÏ×, ÒÁÂÏÔÁ×ÛÉÈ ÐÏÄ
+   ÒÕËÏ×ÏÄÓÔ×ÏÍ ÐÒÏÆÅÓÓÏÒÁ íÁÊËÌÁ óÔÏÕÎÂÒÅÊËÅÒÁ (Michael Stonebraker) ×
+   ëÁÌÉÆÏÒÎÉÊÓËÏÍ ÕÎÉ×ÅÒÓÉÔÅÔÅ, âÅÒËÌÉ.
+   
+   ðÅÒ×ÏÎÁÞÁÌØÎÏÅ ÉÍÑ, ÄÁÎÎÏÅ × âÅÒËÌÉ, ÂÙÌÏ Postgres. ëÏÇÄÁ × 1995 ÇÏÄÕ
+   ÂÙÌÁ ÄÏÂÁ×ÌÅÎÁ ÆÕÎËÃÉÏÎÁÌØÎÏÓÔØ SQL, ÜÔÏ ÉÍÑ ÂÙÌÏ ÉÚÍÅÎÅÎÏ ÎÁ
+   Postgres95. îÏ É ÜÔÏ ÉÍÑ ÂÙÌÏ ÉÚÍÅÎÅÎÏ × ËÏÎÃÅ 1996 ÎÁ PostgreSQL.
+   
+    1.2) ëÁËÏ×Ù Á×ÔÏÒÓËÉÅ ÐÒÁ×Á ÎÁ PostgreSQL?
+    
+   PostgreSQL ÐÏÐÁÄÁÅÔ ÐÏÄ ÄÅÊÓÔ×ÉÅ ÓÌÅÄÕÀÝÅÇÏ COPYRIGHT:
+   
+   óÉÓÔÅÍÁ õÐÒÁ×ÌÅÎÉÑ âÁÚÁÍÉ äÁÎÎÙÈ PostgreSQL
+   
+   Portion copyright (c) 1996-2002, PostgreSQL Global Development Group
+   Portions Copyright (c) 1994-6 Regents of the University of California
+   
+   ðÒÅÄÏÓÔÁ×ÌÑÀÔÓÑ ÐÒÁ×Á ÎÁ ÉÓÐÏÌØÚÏ×ÁÎÉÅ, ËÏÐÉÒÏ×ÁÎÉÅ, ÉÚÍÅÎÅÎÉÅ É
+   ÒÁÓÐÒÏÓÔÒÁÎÅÎÉÅ ÄÁÎÎÏÇÏ ÐÒÏÇÒÁÍÍÎÏÇÏ ÏÂÅÓÐÅÞÅÎÉÑ É ÅÇÏ ÄÏËÕÍÅÎÔÁÃÉÉ
+   ÄÌÑ ÌÀÂÙÈ ÃÅÌÅÊ, ÂÅÓÐÌÁÔÎÏ É ÂÅÚ ÐÏÄÐÉÓÁÎÉÑ ËÁËÏÇÏ-ÌÉÂÏ ÓÏÇÌÁÛÅÎÉÑ,
+   ÐÒÉ ÕÓÌÏ×ÉÉ ÞÔÏ ÄÌÑ ËÁÖÄÏÊ ËÏÐÉÉ ÂÕÄÕÔ ÐÒÅÄÏÓÔÁ×ÌÅÎÙ ÄÁÎÎÏÅ ×ÙÛÅ
+   ÚÁÍÅÞÁÎÉÅ Ï Á×ÔÏÒÓËÉÈ ÐÒÁ×ÁÈ, ÔÅËÕÝÉÊ ÐÁÒÁÇÒÁÆ É Ä×Á ÓÌÅÄÕÀÝÉÈ
+   ÐÁÒÁÇÒÁÆÁ.
+   
+   ëáìéæïòîéêóëéê õîé÷åòóéôåô îå îåóåô îéëáëïê ïô÷åôóô÷åîîïóôé úá ìàâùå
+   ðï÷òåöäåîéñ, ÷ëìàþáñ ðïôåòà äïèïäá, îáîåóåîîùå ðòñíùí éìé îåðòñíùí,
+   óðåãéáìøîùí éìé óìõþáêîùí éóðïìøúï÷áîéåí äáîîïçï ðòïçòáííîïçï
+   ïâåóðåþåîéñ éìé åçï äïëõíåîôáãéé, äáöå åóìé ëáìéæïòîéêóëéê õîé÷åòóéôåô
+   âùì éú÷åýåî ï ÷ïúíïöîïóôé ôáëéè ðï÷òåöäåîéê.
+   
+   ëáìéæïòîéêóëéê õîé÷åòóéôåô óðåãéáìøîï ïôëáúù÷áúù÷áåôóñ ðòåäïóôá÷ìñôø
+   ìàâùå çáòáîôéé, ÷ëìàþáñ, îï îå ïçòáîéþé÷áñóø ôïìøëï üôéíé çáòáîôéñíé:
+   îåñ÷îùå çáòáîôéé ðòéçïäîïóôé ôï÷áòá éìé ðòéçïäîïóôé äìñ ïôäåìøîïê
+   ãåìé. äáîîïå ðòïçòáííîïå ïâåóðåþåîéå ðòåäïóôá÷ìñåôóñ îá ïóîï÷å ðòéãéðá
+   "ëáë åóôø" é ëáìéæïòîéêóëéê õîé÷åòóéôåô îå ïâñúáî ðòåäïóôá÷ìñôø
+   óïðòï÷ïöäåîéå, ðïääåòöëõ, ïâîï÷ìåîéñ, òáóûéòåîéñ éìé éúíåîåîéñ.
+   
+   ÷ÙÛÅÉÚÌÏÖÅÎÎÏÅ Ñ×ÌÑÅÔÓÑ BSD ÌÉÃÅÎÚÉÅÊ, ËÌÁÓÓÉÞÅÓËÏÊ ÌÉÃÅÎÚÉÅÊ
+   ÐÒÏÇÒÁÍÍÎÏÇÏ ÏÂÅÓÐÅÞÅÎÉÑ Ó ÏÔËÒÙÔÙÍ ËÏÄÏÍ. üÔÁ ÌÉÃÅÎÚÉÑ ÎÅ ÎÁËÌÁÄÙ×ÁÅÔ
+   ÏÇÒÁÎÉÞÅÎÉÊ ÎÁ ÉÓÐÏÌØÚÏ×ÁÎÉÅ ÉÓÈÏÄÎÏÇÏ ËÏÄÁ. îÁÍ ÎÒÁ×ÉÔÓÑ ÜÔÁ ÌÉÃÅÎÚÉÑ
+   É ÍÙ ÎÅ ÓÏÂÉÒÁÅÍÓѠţ ÍÅÎÑÔØ.
+   
+    1.3) îÁ ËÁËÉÈ Unix ÐÌÁÔÆÏÒÍÁÈ ÒÁÂÏÔÁÅÔ PostgreSQL?
+    
+   ïÂÙÞÎÏ, PostgreSQL ÍÏÖÅÔ ÒÁÂÏÔÁÔØ ÎÁ ÌÀÂÏÊ ÓÏ×ÒÅÍÅÎÎÏÊ ÐÌÁÔÆÏÒÍÅ
+   ÓÏ×ÍÅÓÔÉÍÏÊ Ó Unix. ÷ ÉÎÓÔÒÕËÃÉÉ ÐÏ ÕÓÔÁÎÏ×ËÅ, ×Ù ÎÁÊÄÅÔÅ ÓÐÉÓÏË ÔÅÈ
+   ÐÌÁÔÆÏÒÍ, ÎÁ ËÏÔÏÒÙÈ ÂÙÌÉ ÐÒÏ×ÅÄÅÎÙ ÔÅÓÔÏ×ÙÅ ÚÁÐÕÓËÉ PostgreSQL Ë
+   ÍÏÍÅÎÔÕ ×ÙÈÏÄÁ ÄÁÎÎÏÊ ×ÅÒÓÉÉ.
+   
+    1.4) óÕÝÅÓÔ×ÕÀÔ ÌÉ ×ÅÒÓÉÉ ÐÅÒÅÎÅÓÅÎÎÙÅ ÎÅ ÎÁ Unix ÓÉÓÔÅÍÙ?
+    
+   ëÌÉÅÎÔ
+   
+   äÌÑ ÚÁÐÕÓËÁ ÎÁ ÐÌÁÔÆÏÒÍÁÈ MS Windows ×ÏÚÍÏÖÎÁ ËÏÍÐÉÌÑÃÉÑ C ÂÉÂÌÉÏÔÅËÉ
+   libpq, psql É ÄÒÕÇÉÈ ÉÎÔÅÒÆÅÓÏ× É ÂÉÎÁÒÎÙÈ ÆÁÊÌÏ×. ÷ ÜÔÏÍ ÓÌÕÞÁÅ,
+   ËÌÉÅÎÔ ÚÁÐÕÓËÁÅÔÓÑ ÎÁ MS Windows É Ó×ÑÚÙ×ÁÅÔÓÑ ÐÏ TCP/IP Ó ÓÅÒ×ÅÒÏÍ,
+   ÚÁÐÕÝÅÎÎÙÍ ÎÁ ÏÄÎÏÊ ÉÚ ÐÏÄÄÅÒÖÉ×ÁÅÍÙÈ Unix ÐÌÁÔÆÏÒÍ. ÷ ÄÉÓÔÒÉÂÕÔÉ×
+   ×ËÌÀÞÁÅÔÓÑ ÆÁÊÌ win31.mak ÄÌÑ ÔÏÇÏ, ÞÔÏÂÙ ÍÏÖÎÏ ÂÙÌÏ ÐÒÏ×ÅÓÔÉ ÓÂÏÒËÕ
+   ÂÉÂÌÉÏÔÅËÉ libpq É psql ÄÌÑ Win32. PostgreSQL ÔÁËÖÅ ÒÁÂÏÔÁÅÔ ÞÅÒÅÚ
+   ODBC.
+   
+   óÅÒ×ÅÒ
+   
+   óÅÒ×ÅÒ âä ÍÏÖÅÔ ÂÙÔØ ÚÁÐÕÝÅΠÎÁ Windows NT É Win2k, ÉÓÐÏÌØÚÕÑ
+   ÂÉÂÌÉÏÔÅËÕ Cygwin, ÒÁÚÒÁÂÏÔÁÎÎÕÀ ÄÌÑ ÐÅÒÅÎÏÓÁ ÐÒÏÇÒÁÍÍÎÏÇÏ ÏÂÅÓÐÅÞÅÎÉÑ
+   Unix × NT. óÍÏÔÒÉÔÅ pgsql/doc/FAQ_MSWIN × ÄÉÓÔÒÉÂÕÔÉ×Å ÉÌÉ MS Windows
+   FAQ ÎÁ ÎÁÛÅÍ ÓÁÊÔÅ. íÙ ÎÅ ÐÌÁÎÉÒÕÅÍ ÓÐÅÃÉÁÌØÎÏ ÐÅÒÅÎÏÓÉÔØ PostgreSQL
+   ÎÁ ËÁËÕÀ-ÌÉÂÏ ÐÌÁÔÆÏÒÍÕ Microsoft.
+   
+    1.5) çÄÅ ÍÏÖÎÏ ×ÚÑÔØ PostgreSQL?
+    
+   îÁÐÒÉÍÅÒ, ×ÏÓÐÏÌØÚÏ×Á×ÛÉÓØ ÁÎÏÎÉÍÎÙÍ ÄÏÓÔÕÐÏÍ ÎÁ ftp ÓÁÊÔ PostgreSQL
+   ftp://ftp.PostgreSQL.org/pub. óÐÉÓÏË ÚÅÒËÁÌ ×Ù ÎÁÊÄÅÔÅ ÎÁ ÎÁÛÅÍ
+   ÏÓÎÏ×ÎÏÍ ÓÁÊÔÅ.
+   
+    1.6) çÄÅ ÐÏÌÕÞÉÔØ ÐÏÄÄÅÒÖËÕ?
+    
+   ïÓÎÏ×ÎÏÊ ÓÐÉÓÏË ÒÁÓÓÙÌËÉ: [email protected]. ÷ ÎÅÍ ÍÏÖÎÏ
+   ÏÂÓÕÖÄÁÔØ ÌÀÂÙÅ ÔÅÍÙ, ËÁÓÁÀÝÉÅÓÑ PostgreSQL. þÔÏÂÙ ÐÏÄÐÉÓÁÔØÓÑ,
+   ÏÔÐÒÁרÔÅ ÐÉÓØÍÏ ÐÏ ÜÌÅËÔÒÏÎÎÏÊ ÐÏÞÔÅ, × ËÏÔÏÒÏÍ × ÔÅÌÅ ÐÉÓØÍÁ (ÎÅ ×
+   ÔÅÍÅ) ÎÁÐÉÛÉÔÅ ÓÌÅÄÕÀÝÉÅ ÓÔÒÏËÉ:
+    subscribe
+    end
+
+   ÎÁ ÁÄÒÅÓ [email protected].
+   
+   óÕÝÅÓÔ×ÕÅÔ ÄÁÊÖÅÓÔ ÓÐÉÓÏË. þÔÏÂÙ ÐÏÄÐÉÓÁÔØÓÑ ÎÁ ÎÅÇÏ, ÏÔÐÒÁרÔÅ ÐÉÓØÍÏ
+   ÐÏ ÜÌÅËÔÒÏÎÎÏÊ ÐÏÞÔÅ ÎÁ ÁÄÒÅÓ:
+   [email protected] É × ÔÅÌÅ ÐÉÓØÍÁ ÎÁÐÉÛÉÔÅ
+   ÓÔÒÏÞËÉ ÓÔÒÏÞËÉ:
+    subscribe
+    end
+
+   äÁÊÖÅÓÔÙ ÏÔÐÒÁ×ÌÑÀÔÓÑ ÐÏÄÐÉÓÞÉËÁÍ, ËÏÇÄÁ × ÏÓÎÏ×ÎÏÍ ÓÐÉÓËÅ ÒÁÓÓÙÌËÉ
+   ÎÁËÏÐÉÔÓÑ ÏËÏÌÏ 30 ËÉÌÏÂÁÊÔ ÓÏÏÂÝÅÎÉÊ.
+   
+   äÏÓÔÕÐÅΠɠÓÐÉÓÏË ÒÁÓÓÙÌËÉ ÓÏÏÂÝÅÎÉÊ Ï ÏÛÉÂËÁÈ. þÔÏÂÙ ÐÏÄÐÉÓÁÔØÓÑ ÎÁ
+   ÜÔÏÔ ÓÐÉÓÏË, ÏÔÐÒÁרÔÅ ÐÏ ÜÌÅËÔÒÏÎÎÏÊ ÐÏÞÔÅ ÐÉÓØÍÏ ÎÁ ÁÄÒÅÓ
+   [email protected] É × ÔÅÌÅ ÐÉÓØÍÁ ÎÁÐÉÛÉÔÅ ÓÔÒÏÞËÉ
+   ÓÔÒÏÞËÉ:
+    subscribe
+    end
+
+   ôÁËÖÅ ÉÍÅÅÔÓÑ ÓÐÉÓÏË ÒÁÓÓÙÌËÉ Ó ÄÉÓËÕÓÓÉÑÍÉ ÒÁÚÒÁÂÏÔÞÉËÏ×. þÔÏÂÙ
+   ÐÏÄÐÉÓÁÔØÓÑ ÎÁ ÜÔÏÔ ÓÐÉÓÏË, ÏÔÐÒÁרÔÅ ÐÏ ÜÌÅËÔÒÏÎÎÏÊ ÐÏÞÔÅ ÐÉÓØÍÏ ÎÁ
+   ÁÄÒÅÓ [email protected] É × ÔÅÌÅ ÐÉÓØÍÁ ÎÁÐÉÛÉÔÅ
+   ÓÔÒÏÞËÉ ÓÔÒÏÞËÉ:
+    subscribe
+    end
+
+   äÏÐÏÌÎÉÔÅÌØÎÙÅ ÓÐÉÓËÉ ÒÁÓÓÙÌËÉ É ÉÎÆÏÍÁÃÉÀ Ï PostgreSQL ÍÏÖÎÏ ÎÁÊÔÉ ÎÁ
+   ÄÏÍÁÛÎÅÊ ÓÔÒÁÎÉÞËÅ PostgreSQL ÐÏ ÁÄÒÅÓÕ:
+   
+     http://www.PostgreSQL.org
+     
+   åÝÅ ÓÕÝÅÓÔ×ÕÅÔ IRC ËÁÎÁÌ ÎÁ EFNet, Ó ÎÁÚ×ÁÎÉÅÍ #PostgreSQL. ñ
+   ÉÓÐÏÌØÚÕÀ ÄÌÑ ÐÏÄËÌÀÞÅÎÉÑ Ë ÜÔÏÍÕ ËÁÎÁÌÕ ËÏÍÁÎÄÕ Unix irc -c
+   '#PostgreSQL' "$USER" irc.phoenix.net.
+   
+   óÐÉÓÏË ËÏÍÍÅÒÞÅÓËÏÊ ÐÏÄÄÅÒÖËÉ ËÏÍÐÁÎÉÊ ÄÏÓÔÕÐÅΠÎÁ
+   http://www.postgresql.org/users-lounge/commercial-support.html.
+   
+    1.7) ëÁËÁÑ ÐÏÓÌÅÄÎÑÑ ×ÅÒÓÉÑ?
+    
+   ðÏÓÌÅÄÎÉÊ ×ÙÐÕÓË PostgreSQL - ÜÔÏ ×ÅÒÓÉÑ 7.2.
+   
+   íÙ ÐÌÁÎÉÒÕÅÍ ×ÙÐÕÓËÁÔØ ÎÏ×ÙÅ ×ÅÒÓÉÉ ËÁÖÄÙÅ ÞÅÔÙÒÅ ÍÅÓÑÃÁ.
+   
+    1.8) ëÁËÁÑ ÄÏËÕÍÅÎÔÁÃÉÑ ÉÍÅÅÔÓÑ × ÎÁÌÉÞÉÉ?
+    
+   ÷ ÄÉÓÔÒÉÂÕÔÉ× ×ËÌÀÞÁÀÔÓÑ ÒÁÚÌÉÞÎÙÅ ÒÕËÏ×ÏÄÓÔ×Á, ÓÔÒÁÎÉÃÙ ÜÌÅËÔÒÏÎÎÏÇÏ
+   ÒÕËÏ×ÏÄÓÔ×Á man É ÎÅËÏÔÏÒÙÅ ÍÁÌÅÎØËÉÅ ÔÅÓÔÏ×ÙÅ ÐÒÉÍÅÒÙ. óÍÏÔÒÉÔÅ ×
+   ËÁÔÁÌÏÇ /doc. ÷Ù ÔÁËÖÅ ÍÏÖÅÔÅ ÐÒÏÓÍÁÔÒÉ×ÁÔØ ÄÏËÕÍÅÎÔÁÃÉÀ × éÎÔÅÒÎÅÔ ÐÏ
+   ÁÄÒÅÓÕ http://www.PostgreSQL.org/users-lounge/docs/.
+   
+   óÕÝÅÓÔ×ÕÅÔ Ä×Å ËÎÉÇÉ ÐÏ PostgreSQL ÄÏÓÔÕÐÎÙÅ ÐÏ ÁÄÒÅÓÁÍ
+   http://www.PostgreSQL.org/docs/awbook.html É
+   http://www.commandprompt.com/ppbook/. óÐÉÓÏË ËÎÉÇ ÐÏ PostgreSQL,
+   ËÏÔÏÒÙÅ ÍÏÖÎÏ ËÕÐÉÔØ ÄÏÓÔÕÐÅΠÐÏ ÁÄÒÅÓÕ
+   http://www.postgresql.org/books/. ëÒÏÍÅ ÔÏÇÏ, ÐÏ ÁÄÒÅÓÕ
+   http://techdocs.postgresql.org/ ×Ù ÍÏÖÅÔÅ ÎÁÊÔÉ ËÏÌÌÅËÃÉÀ ÔÅÈÎÉÞÅÓËÉÈ
+   ÓÔÁÔÅÊ ÐÏÓ×ÑÝÅÎÎÙÈ PostgreSQL.
+   
+   psql ÉÍÅÅÔ ÎÅÓËÏÌØËÏ ÐÒÅËÒÁÓÎÙÈ ËÏÍÁÎÄ \d ÄÌÑ ÏÔÏÂÒÁÖÅÎÉÑ ÉÎÆÏÒÍÁÃÉÉ
+   ÐÏ ÔÉÐÁÍ, ÏÐÅÒÁÔÏÒÁÍ, ÆÕÎËÃÉÑÍ, ÁÇÒÅÇÁÔÁÍ É Ô.Ä.
+   
+   îÁÛ ÓÁÊÔ ÓÏÄÅÒÖÉÔ ÅÝÅ ÂÏÌØÛÅ ÉÎÆÏÒÍÁÃÉÉ.
+   
+    1.9) ëÁË ÎÁÊÔÉ ÉÎÆÏÒÍÁÃÉÀ Ï ÉÚ×ÅÓÔÎÙÈ ÏÛÉÂËÁÈ ÉÌÉ ÏÔÓÕÔÓÔ×ÕÀÝÉÈ
+    ×ÏÚÍÏÖÎÏÓÔÑÈ?
+    
+   PostgreSQL ÐÏÄÄÅÒÖÉ×ÁÅÔ ÒÁÓÛÉÒÅÎÎÙÊ ÐÏÄËÌÁÓÓ SQL-92. óÍÏÔÒÉÔÅ ÎÁÛ
+   ÓÐÉÓÏË TODO ÎÁ ÐÒÅÄÍÅÔ ÉÚ×ÅÓÔÎÙÈ ÏÛÉÂÏË, ÏÔÓÕÔÓÔ×ÕÀÝÉÈ ÏÓÏÂÅÎÎÏÓÔÑÈ É
+   ÂÕÄÕÝÉÈ ÐÌÁÎÏ×.
+   
+    1.10) ëÁË ÍÎÅ ÎÁÕÞÉÔØÓÑ SQL?
+    
+   ëÎÉÇÁ ÐÏ PostgreSQL ÎÁ http://www.PostgreSQL.org/docs/awbook.html
+   ÎÁÕÞÉÔ SQL. óÕÝÅÓÔ×ÕÅÔ ÄÒÕÇÁÑ ËÎÉÇÁ ÐÏ PostgreSQL ÎÁ
+   http://www.commandprompt.com/ppbook. åÓÔØ ÐÒÅËÒÁÓÎÙÊ ÕÞÅÂÎÉË ÎÁ
+   http://www.intermedia.net/support/sql/sqltut.shtm, ÎÁ
+   http://ourworld.compuserve.com/homepages/graeme_birchall/HTM_COOK.HTM,
+   É ÎÁ http://sqlcourse.com.
+   
+   åÝÅ ÏÄÉΠÕÞÅÂÎÉË - ÜÔÏ ËÎÉÇÁ "Teach Yourself SQL in 21 Days, Second
+   Edition" (ïÓ×ÏÊ ÓÁÍÏÓÔÏÑÔÅÌØÎÏ SQL ÚÁ 21 ÄÅÎØ, ÷ÔÏÒÁÑ ÒÅÄÁËÃÉÑ) ÎÁ
+   http://members.tripod.com/er4ebus/sql/index.htm
+   
+   íÎÏÇÉÍ ÉÚ ÎÁÛÉÈ ÐÏÌØÚÏ×ÁÔÅÌÅÊ ÎÒÁ×ÉÔÓÑ ËÎÉÇÁ The Practical SQL
+   Handbook, Bowman, Judith S., et al., Addison-Wesley. äÒÕÇÉÍ ÎÒÁ×ÉÔÓÑ
+   The Complete Reference SQL, Groff et al., McGraw-Hill.
+   
+    1.11) òÅÛÅÎÁ ÌÉ × PostgreSQL ÐÒÏÂÌÅÍÁ 2000-ÇÏ ÇÏÄÁ (Y2K)?
+    
+   äÁ, ÍÙ ÌÅÇËÏ ÍÁÎÉÐÕÌÉÒÕÅÍ ÄÁÔÁÍÉ ÐÏÓÌÅ 2000 ÇÏÄÁ É ÐÅÒÅÄ 2000 ÇÏÄÏÍ.
+   
+    1.12) ëÁË ÐÒÉÓÏÅÄÉÎÉÔÓÑ Ë ËÏÍÁÎÄÅ ÒÁÚÒÁÂÏÔÞÉËÏ×?
+    
+   äÌÑ ÎÁÞÁÌÁ, ÓËÁÞÁÊÔÅ ÐÏÓÌÅÄÎÀÀ ×ÅÒÓÉÀ ÉÓÈÏÄÎÙÈ ÔÅËÓÔÏ× É ÐÒÏÞÔÉÔÅ
+   ÄÏËÕÍÅÎÔÁÃÉÀ ÒÁÚÒÁÂÏÔÞÉËÏ× PostgreSQL ÎÁ ÎÁÛÅÍ ÓÁÊÔÅ ÉÌÉ ×
+   ÄÉÓÔÒÉÂÕÔÉ×Å. úÁÔÅÍ, ÐÏÄÐÉÛÉÔÅÓØ ÎÁ ÓÐÉÓËÉ ÒÁÓÓÙÌËÉ pgsql-hackers É
+   pgsql-patches. äÁÌÅÅ, ÏÔÐÒÁ×ÌÑÊÔÅ ÉÓÐÒÁ×ÌÅÎÉÑ (patches) ×ÙÓÏËÏÇÏ
+   ËÁÞÅÓÔ×Á × ÓÐÉÓÏË pgsql-patches.
+   
+   óÕÝÅÓÔ×ÕÅÔ ÏÇÒÁÎÉÞÅÎÎÙÊ ÓÐÉÓÏË ÌÀÄÅÊ, ËÏÔÏÒÙÊ ÉÍÅÀÔ ÐÒÉ×ÅÌÅÇÉÀ ×ÎÏÓÉÔØ
+   ÉÚÍÅÎÅÎÉÑ × CVS ÁÒÈÉ× PostgreSQL. ëÁÖÄÙÊ ÉÚ ÜÔÉÈ ÌÀÄÅÊ × Ó×ÏÅ ×ÒÅÍÑ
+   ÏÔÐÒÁ×ÉÌ ÔÁË ÍÎÏÇÏ ×ÙÓÏËÏËÁÞÅÓÔ×ÅÎÎÙÈ ÉÓÐÒÁ×ÌÅÎÉÊ, ÞÔÏ ÉÈ ÂÙÌÏ
+   ÎÅ×ÏÚÍÏÖÎÏ ÏÓÔÁ×ÉÔØ ÂÅÚ ×ÎÉÍÁÎÉÑ É ÏÎÉ ÂÙÌÉ ÕÄÏÓÔÏÅÎÙ ÐÒÅ×ÉÌÅÇÉÉ
+   ×ÎÏÓÉÔØ ÉÚÍÅÎÅÎÉÑ, É ÍÙ Õ×ÅÒÅÎÙ, ÞÔÏ ÔÅ ÉÓÐÒÁ×ÌÅÎÉÑ, ËÏÔÏÒÙÅ ÏÎÉ
+   ×ÎÅÓÕÔ ÂÕÄÕÔ ×ÙÓÏËÏÇÏ ËÁÞÅÓÔ×Á.
+   
+    1.13) ëÁË ÏÔÒÁ×ÉÔØ ÓÏÏÂÝÅÎÉÅ Ï ÏÛÉÂËÅ??
+    
+   ðÏÖÁÌÕÊÓÔÁ ÐÏÓÅÔÉÔÅ ÓÔÒÁÎÉÞËÕ PostgreSQL BugTool, ÎÁ ËÏÔÏÒÏÊ
+   ÐÒÅÄÏÓÔÁ×ÌÅÎÙ ÄÅÔÁÌØÎÙÅ ÉÎÓÔÒÕËÃÉÉ Ï ÔÏÍ ËÁË ÏÔÐÒÁ×ÉÔØ ÓÏÏÂÝÅÎÉÅ ÏÂ
+   ÏÛÉÂËÅ.
+   
+   ôÁËÖÅ ÎÅ ÚÁÂÕÄØÔÅ ÐÏÓÍÏÔÒÅÔØ ÎÁ ftp://ftp.PostgreSQL.org/pub ÎÁ
+   ÐÒÅÄÍÅÔ ÂÏÌÅÅ Ó×ÅÖÉÈ ×ÅÒÓÉÊ PostgreSQL ÉÌÉ ÚÁÐÌÁÔ.
+   
+    1.14) ëÁË ÓÒÁ×ÎÉ×ÁÔØ PostgreSQL Ó ÄÒÕÇÉÍÉ óõâä?
+    
+   óÕÝÅÓÔ×ÕÅÔ ÎÅÓËÏÌØËÏ ÍÅÔÏÄÏ× ÓÒÁ×ÎÅÎÉÑ ÐÒÏÇÒÁÍÍÎÏÇÏ ÏÂÅÓÐÅÞÅÎÉÑ:
+   ×ÏÚÍÏÖÎÏÓÔÉ, ÐÒÏÉÚ×ÏÄÉÔÅÌØÎÏÓÔØ, ÎÁÄÅÖÎÏÓÔØ, ÐÏÄÄÅÒÖËÁ É ÃÅÎÁ.
+   
+   ÷ÏÚÍÏÖÎÏÓÔÉ
+          PostgreSQL ÉÍÅÅÔ ÂÏÌØÛÉÎÓÔ×Ï ×ÏÚÍÏÖÎÏÓÔÅÊ ÐÒÅÄÓÔÁ×ÌÅÎÎÙÈ ×
+          ÂÏÌØÛÉÈ ËÏÍÍÅÒÞÅÓËÉÈ óõâä, ÔÁËÉÅ ËÁË: ÔÒÁÎÚÁËÃÉÉ, ÐÏÄÚÁÐÒÏÓÙ,
+          ÔÒÉÇÇÅÒÙ, ÏÂÚÏÒÙ (views), ×ÎÅÛÎÉÊ ËÌÀÞ ÓÓÙÌÏÞÎÏÊ ÃÅÌÏÓÔÎÏÓÔÉ É
+          ÒÁÚÎÙÅ ÂÌÏËÉÒÏ×ËÉ. õ ÎÁÓ ÅÓÔØ ÎÅËÏÔÏÒÙÅ ×ÏÚÍÏÖÎÏÓÔÉ, ËÏÔÏÒÙÈ
+          ÎÅÔ Õ ÎÉÈ: ÔÉÐÙ, ÏÐÒÅÄÅÌÑÅÍÙÅ ÐÏÌØÚÏ×ÁÔÅÌÅÍ, ÍÅÈÁÎÉÚÍ
+          ÎÁÓÌÅÄÏ×ÁÎÉÑ, ÐÒÁ×ÉÌÁ É ËÏÎËÕÒÅÔÎÏÅ ÍÎÏÇÏ×ÅÒÓÉÏÎÎÏÅ ÕÐÒÁ×ÌÅÎÉÅ
+          ÄÌÑ ÒÁÂÏÔÙ Ó ÓÏÄÅÒÖÉÍÙÍ ÂÌÏËÉÒÏ×ÏË.
+          
+   ðÒÏÉÚ×ÏÄÉÔÅÌØÎÏÓÔØ
+          PostgreSQL ÍÏÖÅÔ ÒÁÂÏÔÁÔØ × Ä×ÕÈ ÒÅÖÉÍÁ. ÷ ÎÏÒÍÁÌØÎÏÍ fsync
+          ÒÅÖÉÍÅ, ËÁÖÄÁÑ ÚÁ×ÅÒÛÅÎÎÁÑ ÔÒÁÎÚÁËÃÉÑ ÓÂÒÁÓÙ×ÁÅÔÓÑ ÎÁ ÄÉÓË,
+          ÇÁÒÁÎÔÉÒÕÑ, ÞÔÏ ÅÓÌÉ ÏÐÅÒÁÃÉÏÎÎÁÑ ÓÉÓÔÅÍÁ ÉÌÉ ÐÉÔÁÎÉÅ ÒÕÈÎÅÔ ×
+          ÓÌÅÄÕÀÝÉÅ ÎÅÓËÏÌØËÏ ÓÅËÕÎÄ, ×ÓÅ ×ÁÛÉ ÄÁÎÎÙÅ ÂÅÚÏÐÁÓÎÏ
+          ÓÏÈÒÁÎÑÔÓÑ ÎÁ ÄÉÓËÅ. ÷ ÜÔÏÍ ÒÅÖÉÍÅ, ÍÙ ÒÁÂÏÔÁÅÍ ÍÅÄÌÅÎÅÅ, ÞÅÍ
+          ÂÏÌØÛÉÎÓÔ×Ï ËÏÍÍÅÒÞÅÓËÉÈ óõâä, ÏÔÞÁÓÔÉ ÐÏÔÏÍÕ, ÞÔÏ ÎÅËÏÔÏÒÙÅ ÉÚ
+          ÎÉÈ ÄÅÌÁÀÔ Õ ÓÅÂÑ ÐÏ ÕÍÏÌÞÁÎÉÀ ÔÁËÏÊ ËÏÎÓÅÒ×ÁÔÉ×ÎÙÊ ÓÂÒÏÓ ÎÁ
+          ÄÉÓË. ÷ ÒÅÖÉÍÅ no-fsync, ÍÙ ÏÂÙÞÎÏ ÂÙÓÔÒÅÅ ÞÅÍ ËÏÍÍÅÒÞÅÓËÉÅ
+          óõâä, ÎÏ × ÜÔÏÍ ÒÅÖÉÍÅ, ÐÁÄÅÎÉÅ ÏÐÅÒÁÃÉÏÏÎÏÊ ÓÉÓÔÅÍÙ ÍÏÖÅÔ
+          ÐÒÉ×ÅÓÔÉ Ë ÐÏÔÅÒÅ ÄÁÎÎÙÈ. íÙ ÒÁÂÏÔÁÅÍ ÎÁÄ ÔÅÍ ÞÔÏÂÙ
+          ÐÒÅÄÏÓÔÁ×ÉÔØ ÐÒÏÍÅÖÕÔÏÞÎÙÊ ÒÅÖÉÍ, ËÏÔÏÒÙÊ ÏÂÅÓÐÅÞÉ×ÁÌ ÂÏÌÅÅ
+          ×ÙÓÏËÕÀ ÐÒÏÉÚ×ÏÄÉÔÅÌØÎÏÓÔØ, ÞÅÍ fsync ÒÅÖÉÍ É ÐÏÚ×ÏÌÑÌ
+          ÓÏÈÒÁÎÉÔØ ÃÅÌÏÓÔÎÏÓÔØ ÄÁÎÎÙÈ ÚÁÐÉÓÁÎÎÙÈ × ÔÅÞÅÎÉÉ 30 ÓÅËÕÎÄ ÄÏ
+          ÐÁÄÅÎÉÑ ÏÐÅÒÁÃÉÏÎÎÏÊ ÓÉÓÔÅÍÙ.
+          ÷ ÓÒÁ×ÎÅÎÉÉ Ó MySQL ÉÌÉ ÌÉÎÅÊÎÙÍÉ óõâä, ÍÙ ÍÅÄÌÅÎÅÅ ÐÒÉ
+          ÏÐÅÒÁÃÉÑÈ ×ÓÔÁ×ËÉ/ÏÂÎÏ×ÌÅÎÉÑ, ÐÏÔÏÍÕ ÞÔÏ ÍÙ ÕÐÒÁ×ÌÑÅÍ
+          ÔÒÁÎÚÁËÃÉÑÍÉ. é ÒÁÚÕÍÅÅÔÓÑ, MySQL ÎÅ ÉÍÅÅÔ ËÁËÉÈ-ÌÉÂÏ
+          ×ÏÚÍÏÖÎÏÓÔÅÊ ÉÚ ÐÅÒÅÞÉÓÌÅÎÙÈ × ÓÅËÃÉÉ ÷ÏÚÍÏÖÎÏÓÔÉ. íÙ ÄÅÌÁÅÍ
+          ÕÐÏÒ ÎÁ ÕÄÏÂÓÔ×Å É ×ÏÚÍÏÖÎÏÓÔÑÈ, ÎÏ ÍÙ ÔÁËÖÅ ÐÒÏÄÏÌÖÁÅÍ
+          Õ×ÅÌÉÞÉ×ÁÔØ ÐÒÏÉÚ×ÏÄÉÔÅÌØÎÏÓÔØ ÐÕÔÅÍ ÐÒÏÆÉÌÉÒÏ×ÁÎÉÑ É ÁÎÁÌÉÚÁ
+          ÉÓÈÏÄÎÙÈ ÔÅËÓÔÏ×. óÕÝÅÓÔ×ÕÅÔ ÉÎÔÅÒÅÓÎÁÑ ÓÔÒÁÎÉÞËÁ × éÎÔÅÒÎÅÔ,
+          ÓÒÁ×ÎÉ×ÁÀÝÁÑ PostgreSQL É MySQL ÎÁ
+          http://openacs.org/why-not-mysql.html
+          íÙ ÕÐÒÁ×ÌÑÅÍ ËÁÖÄÙÍ ÐÏÌØÚÏ×ÁÔÅÌØÓËÉÍ ÓÏÅÄÉÎÅÎÉÅÍ, ÓÏÚÄÁ×ÁÑ Unix
+          backend ÐÒÏÃÅÓÓ. Backend ÐÒÏÃÅÓÓÙ ÒÁÚÄÅÌÑÀÔ ÂÕÆÅÒÙ ÄÁÎÎÙÈ É
+          ÉÎÆÏÒÍÁÃÉÀ Ï ÂÌÏËÉÒÏ×ËÁÈ. ðÒÉ ÎÁÌÉÞÉÉ ÎÅÓËÏÌØËÉÈ ÐÒÏÃÅÓÓÏÒÏ×,
+          ÎÅÓËÏÌØËÏ backend ÐÒÏÃÅÓÓÏ× ÌÅÇËÏ ÍÏÇÕÔ ÂÙÔØ ÚÁÐÕÝÅÎÙ ÎÁ ÒÁÚÎÙÈ
+          ÐÒÏÃÅÓÓÏÒÁÈ.
+          
+   îÁÄÅÖÎÏÓÔØ
+          íÙ ÐÏÎÉÍÁÌÉ, ÞÔÏ ÎÁÛÁ óõâä ÄÏÌÖÎÁ ÂÙÔØ ÎÁÄÅÖÎÏÊ ÉÌÉ ÏÎÁ ÎÉÞÅÇÏ
+          ÎÅ ÂÕÄÅÔ ÓÔÏÉÔØ. íÙ ÓÔÁÒÁÅÍÓÑ ×ÙÐÕÓËÁÔØ ÈÏÒÏÛÏ ÐÒÏ×ÅÒÅÎÎÙÊ,
+          ÓÔÁÂÉÌØÎÙÊ ËÏÄ, ËÏÔÏÒÙÊ ÓÏÄÅÒÖÉÔ ÍÉÎÉÍÕÍ ÏÛÉÂÏË. ëÁÖÄÙÊ ×ÙÐÕÓË
+          ÐÒÏÈÏÄÉÔ ÓÔÁÄÉÀ ÂÅÔÁ-ÔÅÓÔÉÒÏ×ÁÎÉÑ ÐÏ ËÒÁÊÎÅÊ ÍÅÒÅ × ÔÅÞÅÎÉÉ
+          ÏÄÎÏÇÏ ÍÅÓÑÃÁ É ÎÁÛÁ ÉÓÔÏÒÉÑ ×ÙÐÕÓËÏ× ÐÏËÁÚÙ×ÁÅÔ ÞÔÏ ÍÙ ÍÏÖÅÍ
+          ÐÒÅÄÏÓÔÁ×ÌÑÔØ ÓÔÁÂÉÌØÎÙÅ, ÍÏÎÏÌÉÔÎÙÅ ×ÙÐÕÓËÉ, ËÏÔÏÒÙÅ ÇÏÔÏ×Ù Ë
+          ÐÒÏÄÕËÔÉ×ÎÏÍÕ ÉÓÐÏÌØÚÏ×ÁÎÉÀ. íÙ ×ÅÒÉÍ, ÞÔÏ ÍÙ ÐÒÏÉÚ×ÏÄÉÍ
+          ÐÒÏ×ÅÒËÕ ÎÅ ÈÕÖÅ, ÞÅÍ Õ ÄÒÕÇÉÈ óõâä.
+          
+   ðÏÄÄÅÒÖËÁ
+          îÁÛ ÓÐÉÓÏË ÒÁÓÓÙÌËÉ ÐÒÅÄÓÔÁ×ÌÅΠÂÏÌØÛÏÊ ÇÒÕÐÐÏÊ ÒÁÚÒÁÂÏÔÞÉËÏ× É
+          ÐÏÌØÚÏ×ÁÔÅÌÅÊ, ËÏÔÏÒÙÅ ÍÏÇÕÔ ÐÏÍÏÞØ ÒÅÛÉÔØ ÌÀÂÙÅ ×ÏÚÎÉËÛÉÅ
+          ÐÒÏÂÌÅÍÙ. ÷ ÔÏ ÖÅ ×ÒÅÍÑ, ÍÙ ÎÅ ÇÁÒÁÎÔÉÒÕÅÍ ËÁËÉÅ-ÌÉÂÏ
+          ÉÓÐÒÁ×ÌÅÎÉÑ, ÎÏ É ÒÁÚÒÁÂÏÔÞÉËÉ ËÏÍÍÅÒÞÅÓËÉÈ óõâä ÎÅ ×ÓÅÇÄÁ
+          ÄÅÌÁÀÔ ÉÓÐÒÁ×ÌÅÎÉÑ. ðÒÑÍÏÊ ÄÏÓÔÕРˠÒÁÚÒÁÂÏÔÞÉËÁÍ, ÓÏÏÂÝÅÓÔ×Õ
+          ÐÏÌØÚÏ×ÁÔÅÌÅÊ, ÒÕËÏ×ÏÄÓÔ×ÁÍ É ÉÓÈÏÄÎÙÍ ÔÅËÓÔÁÍ ÞÁÓÔÏ ÄÅÌÁÀÔ
+          ÐÏÄÄÅÒÖËÕ PostgreSQL ÐÒÅ×ÏÓÈÏÄÑÝÅÊ ÄÒÕÇÉÅ óõâä. óÕÝÅÓÔ×ÕÅÔ
+          ËÏÍÍÅÒÞÅÓËÁÑ ÐÏÄÄÅÒÖËÁ ÐÏ ÒÅÚÕÌØÔÁÍ ×ÏÚÎÉËÛÉÈ ÉÎÃÉÄÅÎÔÏ×,
+          ËÏÔÏÒÁÑ ÄÏÓÔÕÐÎÁ ÄÌÑ ÔÅÈ ËÏÍÕ ÏÎÁ ÎÕÖÎÁ. (óÍÏÔÒÉÔÅ ëÁË ÐÏÌÕÞÉÔØ
+          ÐÏÄÄÅÒÖËÕ?.)
+          
+   ãÅÎÁ
+          îÁÛ ÐÒÏÄÕËÔ ÂÅÓÐÌÁÔÅΠËÁË ÄÌÑ ËÏÍÍÅÒÞÅÓËÏÇÏ ÔÁË, É ÎÅ ÄÌÑ
+          ËÏÍÍÅÒÞÅÓËÏÇÏ ÉÓÐÏÌØÚÏ×ÁÎÉÑ. ÷Ù ÍÏÖÅÔÅ ÄÏÂÁ×ÌÑÔØ Ó×ÏÊ ËÏÄ × ÎÁÛ
+          ÐÒÏÄÕËÔ ÂÅÚ ÏÇÒÁÎÉÞÅÎÉÊ, ÚÁ ÉÓËÌÀÞÅÎÉÅÍ ÔÅÈ, ÞÔÏ ÏÐÉÓÙ×ÁÀÔÓÑ ×
+          ÎÁÛÅÊ ÌÉÃÅÎÚÉÉ ÓÔÉÌÑ BSD, ËÏÔÏÒÁÑ ÐÒÉ×ÅÄÅÎÁ ×ÙÛÅ.
+          
+    1.15) ëÁË ÏËÁÚÁÔØ ÆÉÎÁÎÓÏ×ÕÀ ÐÏÍÏÝØ PostgreSQL?
+    
+   PostgreSQL ÉÍÅÅÔ ÏÄÎÏÒÁÎÇÏ×ÕÀ ÉÎÆÒÁÓÔÒÕËÔÕÒÕ Ó ÔÏÇÏ ÓÁÍÏÇÏ ×ÒÅÍÅÎÉ ËÁË
+   ÍÙ ÎÁÞÁÌÉ ÒÁÚÒÁÂÏÔËÕ 6 ÌÅÔ ÎÁÚÁÄ. íÙ ÄÏÌÖÎÙ ÂÌÁÇÏÄÁÒÉÔØ ÚÁ ÜÔÏ íÁÒËÁ
+   æÏÎÁÑ (Marc Fournier), ËÏÔÏÒÙÊ ÓÏÚÄÁÌ ÜÔÕ ÉÎÆÒÁÓÔÒÕËÔÕÒÕ É ÕÐÒÁ×ÌÑÅÔ
+   ÅÊ ÎÁ ÐÒÏÔÑÖÅÎÉÉ ÜÔÉÈ ÌÅÔ.
+   
+   ëÁÞÅÓÔ×ÅÎÎÁÑ ÉÎÆÒÁÓÔÒÕËÔÕÒÁ ÏÞÅÎØ ×ÁÖÎÁ ÄÌÑ ÐÒÏÅËÔÏ× Ó ÏÔËÒÙÔÙÍ
+   ÉÓÈÏÄÎÙÍ ËÏÄÏÍ. ïÎÁ ÐÒÅÄÏÔ×ÒÁÝÁÅÔ ÒÁÓËÏÌÙ, ËÏÔÏÒÙÅ ÍÏÇÕÔ ÓÉÌØÎÏ
+   ÚÁÄÅÒÖÁÔØ ÐÏÓÔÕÐÁÔÅÌØÎÏÅ Ä×ÉÖÅÎÉÅ ÐÒÏÅËÔÁ.
+   
+   òÁÚÕÍÅÅÔÓÑ, ÜÔÁ ÉÎÆÒÁÓÔÒÕËÔÕÒÁ ÎÅ Ñ×ÌÑÅÔÓÑ ÄÅÛÅ×ÏÊ. óÕÝÅÓÔ×ÕÅÔ
+   ÎÅËÏÔÏÒÏÅ ËÏÌÉÞÅÓÔ×Ï ÅÖÅÍÅÓÑÞÎÙÈ É ÏÄÎÏÒÁÚÏ×ÙÈ ÒÁÓÈÏÄÏ×, ËÏÔÏÒÙÅ
+   ÔÒÅÂÕÀÔ ÄÅÎÅÇ. åÓÌÉ ×Ù ÉÌÉ ×ÁÛÁ ËÏÍÐÁÎÉÑ ÉÍÅÅÔ ÄÅÎØÇÉ, ËÏÔÏÒÙÅ ÍÏÖÎÏ
+   ÐÅÒÅÄÁÔØ × ÐÏÍÏÝØ ÎÁÛÉÍ ÕÓÉÌÉÑÍ, ÐÏÖÁÌÕÊÓÔÁ ÐÏÓÅÔÉÔÅ ÓÔÒÁÎÉÞËÕ
+   http://www.pgsql.com/pg_goodies É ÓÄÅÌÁÊÔÅ Ó×ÏÊ ×ËÌÁÄ.
+   
+   èÏÔÑ ÎÁ ÓÔÒÁÎÉÞËÅ ÇÏ×ÏÒÉÔÓÑ Ï PostgreSQL, Inc, ÐÕÎËÔ "contributions"
+   ÐÒÅÄÎÁÚÎÁÞÅΠÉÓËÌÀÞÉÔÅÌØÎÏ ÄÌÑ ÐÏÄÄÅÒÖËÉ ÐÒÏÅËÔÁ PostgreSQL É ÎÅ
+   ÐÅÒÅÄÁÅÔÓÑ ËÁËÏÊ-ÌÉÂÏ ËÏÎËÒÅÔÎÏÊ ËÏÍÐÁÎÉÉ. åÓÌÉ ÈÏÔÉÔÅ, ÔÏ ÍÏÖÅÔÅ ÜÔÏ
+   ÐÒÏ×ÅÒÉÔØ, ÎÁÐÉÓÁ× ÐÉÓØÍÏ ÎÁ ËÏÎÔÁËÔÎÙÊ ÁÄÒÅÓ.
+     _________________________________________________________________
+   
+                 ÷ÏÐÒÏÓÙ ÐÏÌØÚÏ×ÁÔÅÌÅÊ ÐÏ ËÌÉÅÎÔÓËÏÊ ÞÁÓÔÉ
+                                      
+    2.1) óÕÝÅÓÔ×ÕÀÔ ÌÉ ODBC ÄÒÁÊ×ÅÒÁ ÄÌÑ PostgreSQL?
+    
+   óÕÝÅÓÔ×ÕÅÔ Ä×Á ODBC ÄÒÁÊ×ÅÒÁ, PsqlODBC É OpenLink ODBC.
+   
+   PsqlODBC ×ËÌÀÞÁÅÔÓÑ × ÄÉÓÔÒÉÂÕÔÉ×. âÏÌØÛÅ ÉÎÆÏÒÍÁÃÉÉ Ï ÜÔÏÍ ÄÒÁÊ×ÅÒÅ
+   ÍÏÖÎÏ ÎÁÊÔÉ ÎÁ ftp://ftp.PostgreSQL.org/pub/odbc/.
+   
+   OpenLink ODBC ÍÏÖÎÏ ×ÚÑÔØ ÎÁ http://www.openlinksw.com. üÔÏÔ ÄÒÁÊ×ÅÒ
+   ÒÁÂÏÔÁÅÔ Ó ÉÈ ÓÔÁÎÄÁÒÔÎÙÍ ËÌÉÅÎÔÓËÉÍ ÐÒÏÇÒÁÍÍÎÙÍ ÏÂÅÓÐÅÞÅÎÉÅÍ,
+   ÉÓÐÏÌØÚÕÀÝÉÍ ODBC, É ÔÁËÉÍ ÏÂÒÁÚÏÍ, ODBC ÄÒÁÊ×ÅÒÙ ÄÌÑ PostgreSQL
+   ÄÏÓÔÕÐÎÙ ÄÌÑ ËÁÖÄÏÊ ÉÚ ÐÏÄÄÅÒÖÉ×ÁÅÍÙÈ ÉÍÉ ÐÌÁÔÆÏÒÍ (Win, Mac, Unix,
+   VMS).
+   
+   ÷ÏÚÍÏÖÎÏ ÏÎÉ ÂÕÄÕÔ ÐÒÏÄÁ×ÁÔØ Ó×ÏÊ ÐÒÏÄÕËÔ ÔÅÍ ËÏÍÕ ÎÕÖÎÁ ËÏÍÍÅÒÞÅÓËÁÑ
+   ÐÏÄÄÅÒÖËÁ, ÎÏ ÂÅÓÐÌÁÔÎÁÑ ×ÅÒÓÉÑ ×ÓÅÇÄÁ ÂÕÄÅÔ ÄÏÓÔÕÐÎÁ. ðÏÖÁÌÕÊÓÔÁ,
+   ÎÁÐÒÁ×ÌÑÊÔÅ ×ÏÐÒÏÓÙ ÎÁ ÁÄÒÅÓ [email protected].
+   
+   ôÁËÖÅ ÐÏÓÍÏÔÒÉÔÅ ODBC ÒÁÚÄÅÌ × ÒÕËÏ×ÏÄÓÔ×Å ÐÒÏÇÒÁÍÍÉÓÔÁ.
+   
+    2.2) ëÁËÉÅ ÉÎÓÔÒÕÍÅÎÔÙ ÓÕÝÅÓÔ×ÕÀÔ ÄÌÑ ÉÓÐÏÌØÚÏ×ÁÎÉÑ PostgreSQL ÞÅÒÅÚ Web?
+    
+   ðÒÅËÒÁÓÎÏÅ ××ÅÄÅÎÉÅ ×Ï ×ÚÁÉÍÏÄÅÊÓÔ×ÉÅ ÂÁÚ ÄÁÎÎÙÈ É Web ÍÏÖÎÏ ÎÁÊÔÉ ÎÁ:
+   http://www.webreview.com
+   
+   ôÁËÖÅ ÚÁÇÌÑÎÉÔÅ ÎÁ http://www.phone.net/home/mwm/hotlist/.
+   
+   äÌÑ ÉÎÔÅÇÒÁÃÉÉ Ó Web, ÏÄÎÉÍ ÉÚ ÐÒÅ×ÏÓÈÏÄÎÙÈ ÉÎÓÔÒÕÍÅÎÔÏ× Ñ×ÌÑÅÔÓÑ PHP.
+   äÏÍÁÛÎÑÑ ÓÔÁÎÉÞËÁ http://www.php.net.
+   
+   äÌÑ ËÏÍÐÌÅËÓÎÙÈ ÒÅÛÅÎÉÊ, ÍÎÏÇÉÅ ÐÏÌØÚÕÀÔÓÑ Perl ÉÎÔÅÒÆÅÊÓÏÍ É CGI.pm.
+   
+    2.3) åÓÔØ ÌÉ Õ PostgreSQL ÇÒÁÆÉÞÅÓËÉÊ ÉÎÔÅÒÆÅÊÓ ÐÏÌØÚÏ×ÁÔÅÌÑ? çÅÎÅÒÁÔÏÒ
+    ÏÔÞÅÔÏ×? ÷ÓÔÒÏÅÎÎÙÊ ÉÎÔÅÒÆÅÊÓ ÄÌÑ ÑÚÙËÁ ÚÁÐÒÏÓÏ×?
+    
+   õ ÎÁÓ ÅÓÔØ ÐÒÅËÒÁÓÎÙÊ ÇÏÒÁÆÉÞÅÓËÉÊ ÉÎÔÅÒÆÅÊÓ, ÎÁÚÙ×ÁÅÍÙÊ pgaccess,
+   ËÏÔÏÒÙÊ Ñ×ÌÑÅÔÓÑ ÞÁÓÔØÀ ÄÉÓÔÒÉÂÕÔÉ×Á. pgaccess ÔÁËÖÅ ÅÍÅÅÔ ÇÅÎÅÒÁÔÏÒ
+   ÏÔÞÅÔÏ×. åÇÏ ÓÔÒÁÎÉÞËÁ http://www.flex.ro/pgaccess
+   
+   íÙ ÔÁËÖÅ ×ËÌÀÞÁÅÍ ecpg, ËÏÔÏÒÙÊ ÐÒÅÄÏÓÔÁ×ÌÑÅÔ ×ÓÔÒÏÅÎÎÙÊ ÉÎÔÅÒÆÅÊÓ Ë
+   ÑÚÙËÕ ÚÁÐÒÏÓÏ× SQL ÉÚ C.
+   
+    2.4) ëÁËÉÅ ÑÚÙËÉ ÍÏÇÕÔ ×ÚÁÉÍÏÄÅÊÓÔ×Ï×ÁÔØ Ó PostgreSQL?
+    
+   ÷ÏÔ ÜÔÉ:
+     * C (libpq)
+     * C++ (libpq++)
+     * Embedded C (ecpg)
+     * Java (jdbc)
+     * Perl (perl5)
+     * ODBC (odbc)
+     * Python (PyGreSQL)
+     * TCL (libpgtcl)
+     * C Easy API (libpgeasy)
+     * Embedded HTML (PHP from http://www.php.net)
+     _________________________________________________________________
+   
+                         ÷ÏÐÒÏÓÙ ÁÄÍÉÎÉÓÔÒÉÒÏ×ÁÎÉÑ
+                                      
+    3.1) ëÁË ÍÎÅ ÕÓÔÁÎÏ×ÉÔØ PostgreSQL × ÍÅÓÔÏ ÏÔÌÉÞÎÏÅ ÏÔ /usr/local/pgsql?
+    
+   úÁÄÁÊÔÅ ÏÐÃÉÀ --prefix ËÏÇÄÁ ÚÁÐÕÓËÁÅÔÅ configure.
+   
+    3.2) ëÏÇÄÁ Ñ ÚÁÐÕÓËÁÀ postmaster, Ñ ÐÏÌÕÞÁÀ ÓÏÏÂÝÅÎÉÅ Bad System Call ÉÌÉ
+    ÓÏÏÂÝÅÎÉÅ core dumped. ðÏÞÅÍÕ?
+    
+   üÔÏ ÍÏÖÅÔ ÂÙÔØ ×ÙÚ×ÁÎÏ ÒÁÚÎÙÍÉ ÐÒÏÂÌÅÍÁÍÉ, ÎÏ ÐÅÒ×ÏÅ, ÞÔÏ ÎÕÖÎÏ
+   ÓÄÅÌÁÔØ - ÜÔÏ ÕÂÅÄÉÔØÓÑ × ÔÏÍ, ÞÔÏ × ×ÁÛÅÍ ÑÄÒÅ ÕÓÔÁÎÏ×ÌÅÎÏ ÒÁÓÛÉÒÅÎÉÅ
+   System V. PostgreSQL ÔÒÅÂÕÅÔ, ÞÔÏÂÙ ÑÄÒÏ ÐÏÄÄÅÒÖÉ×ÁÌÏ ÒÁÚÄÅÌÑÅÍÕÀ
+   ÐÁÍÑÔØ É ÓÅÍÁÆÏÒÙ.
+   
+    3.3) ëÏÇÄÁ Ñ ÐÙÔÁÀÓØ ÚÁÐÕÓÔÉÔØ postmaster, Ñ ÐÏÌÕÞÁÀ ÏÛÉÂËÉ
+    IpcMemoryCreate. ðÏÞÅÍÕ?
+    
+   ìÉÂÏ Õ ×ÁÓ × ÑÄÒÅ ÎÅÐÒÁ×ÉÌØÎÙÅ ÎÁÓÔÒÏÊËÉ ÒÁÚÄÅÌÑÅÍÏÊ ÐÁÍÑÔÉ, ÌÉÂÏ
+   ×ÁÛÅÍÕ ÑÄÒÕ ÎÕÖÎÏ ÂÏÌØÛÅÅ ËÏÌÉÞÅÓÔ×Ï ÄÏÓÔÕÐÎÏÊ ÒÁÚÄÅÌÑÅÍÏÊ ÐÁÍÑÔÉ. ôÅ
+   ËÏÎËÒÅÔÎÙÅ ÄÅÊÓÔ×ÉÑ, ËÏÔÏÒÙÅ ×ÁÍ ÎÕÖÎÏ ÐÒÏÉÚ×ÅÓÔÉ ÚÁ×ÉÓÑÔ ÏÔ
+   ÁÒÈÉÔÅËÔÕÒÙ ×ÁÛÅÊ ÍÁÛÉÎÙ É ÏÔ ÔÏÇÏ ËÁË ÍÎÏÇÏ ÂÕÆÅÒÏ× É backend
+   ÐÒÏÃÅÓÓÏ× ×Ù ÎÁÓÔÒÏÉÌÉ ÄÌÑ postmaster. äÌÑ ÂÏÌØÛÉÎÓÔ×Á ÓÉÓÔÅÍ, Ó
+   ËÏÌÉÞÅÓÔ×ÏÍ ÂÕÆÅÒÏ× É ÐÒÏÃÅÓÓÏ× ÐÏ ÕÍÏÌÞÁÎÉÀ, ÎÅÏÂÈÏÄÉÍÙÊ ÍÉÎÉÍÕÍ -
+   ÜÔÏ ÏËÏÌÏ 1 ÍÅÇÁÂÁÊÔÁ. ðÏÄÒÏÂÎÏÓÔÉ Ï ÒÁÚÄÅÌÑÅÍÏÊ ÐÁÍÑÔÉ É ÓÅÍÁÆÏÒÁÈ
+   ÓÍÏÔÒÉÔÅ × òÕËÏ×ÏÄÓÔ×Å ÁÄÍÉÎÉÓÔÒÁÔÏÒÁ PostgreSQL.
+   
+    3.4) ëÏÇÄÁ Ñ ÐÙÔÁÀÓØ ÚÁÐÕÓÔÉÔØ postmaster, Ñ ÐÏÌÕÞÁÀ ÏÛÉÂËÉ
+    IpcSemaphoreCreate. ðÏÞÅÍÕ?
+    
+   åÓÌÉ ÜÔÏ ÓÏÏÂÝÅÎÉÅ IpcSemaphoreCreate: semget failed (No space left on
+   device) ÔÏ ÎÁÓÔÒÏÊËÉ ×ÁÛÅÇÏ ÑÄÒÁ ÔÁËÏ×Ù, ÞÔÏ ÅÍÕ ÎÅ È×ÁÔÁÅÔ ÓÅÍÁÆÏÒÏ×.
+   Postgres ÔÒÅÂÕÅÔ ÏÄÉΠÓÅÍÁÆÏÒ ÎÁ ÐÏÔÅÎÃÉÁÌØÎÙÊ backend ÐÒÏÃÅÓÓ.
+   ÷ÒÅÍÅÎÎÙÍ ÒÅÛÅÎÉÅÍ Ñ×ÌÑÅÔÓÑ ÚÁÐÕÓË postmaster Ó ÎÁÓÔÒÏÊËÁÍÉ ÎÁ ÍÅÛØÛÅÅ
+   ËÏÌÉÞÅÓÔ×Ï backend ÐÒÏÃÅÓÓÏ×. éÓÐÏÌØÚÕÊÔÅ -N Ó ÚÎÁÞÅÎÉÅÍ ÍÅÎØÛÉÍ ÞÅÍ
+   32, ËÏÔÏÒÏÅ ÐÒÉÎÑÔÏ ÐÏ ÕÍÏÌÞÁÎÉÀ. âÏÌÅÅ ÐÒÁ×ÉÌØÎÏÅ ÒÅÛÅÎÉÅ - ÜÔÏ
+   Õ×ÅÌÉÞÉÔØ ÚÎÁÞÅÎÉÑ SEMMNS É SEMMNI × ÎÁÓÔÒÊËÁÈ ÑÄÒÁ.
+   
+   îÅÉÓÐÒÁ×ÎÙÅ ÓÅÍÁÆÏÒÙ ÔÁËÖÅ ÍÏÇÕÔ ÐÒÉ×ÅÓÔÉ Ë ÐÁÄÅÎÉÀ óõâä ×Ï ×ÒÅÍÑ
+   ÄÏÓÔÕÐÁ Ë ÂÁÚÅ ÄÁÎÎÙÈ.
+   
+   åÓÌÉ ×Ù ÐÏÌÕÞÉÌÉ ËÁËÏÅ-ÌÉÂÏ ÄÒÕÇÏÅ ÓÏÏÂÝÅÎÉÅ Ï ÏÛÉÂËÅ, ÔÏ ×ÐÏÌÎÅ
+   ×ÏÚÍÏÖÎÏ, ÞÔÏ × ×ÁÛÅÍ ÑÄÒÅ ×ÏÏÂÝÅ ÎÅ ÎÁÓÔÒÏÅÎÁ ÐÏÄÄÅÒÖËÁ ÓÅÍÁÆÏÒÏ×.
+   óÍÏÔÒÉÔÅ ÐÏÄÒÏÂÎÏÓÔÉ Ï ÒÁÚÄÅÌÑÅÍÏÊ ÐÁÍÑÔÉ É ÓÅÍÁÆÏÒÁÈ × òÕËÏ×ÏÄÓÔ×Å
+   áÄÍÉÎÉÓÔÒÁÔÏÒÁ PostgreSQL.
+   
+    3.5) ëÁË ÍÎÅ ÕÐÒÁ×ÌÑÔØ ÓÏÅÄÉÎÅÎÉÑÍÉ Ó ÄÒÕÇÉÈ ËÏÍÐØÀÔÅÒÏ×?
+    
+   ðÏ ÕÍÏÌÞÁÎÉÀ, PostgreSQL ÒÁÚÒÅÛÁÅÔ ÔÏÌØËÏ ÓÏÅÄÉÎÅÎÉÑ ÎÁ ÌÏËÁÌØÎÏÊ
+   ÍÁÛÉÎÅ ÞÅÒÅÚ ÓÏËÅÔÙ ÄÏÍÅÎÁ Unix. äÒÕÇÉÅ ÍÁÛÉÎÙ ÎÅ ÓÍÏÇÕÔ ÐÏÄËÌÀÞÉÔØÓÑ
+   Ë ÂÁÚÅ ÐÏËÁ ÄÌÑ postmaster ÎÅ ÂÕÄÅÔ ÚÁÄÁΠÆÌÁÇ -i É ÐÏËÁ ÎÅ ÂÕÄÅÔ
+   ÒÁÚÒÅÛÅÎÁ host-Á×ÔÏÒÉÚÁÃÉÑ × ÆÁÊÌÅ $PGDATA/pg_hba.conf. üÔÉ ÄÅÊÓÔ×ÉÑ
+   ÄÅÌÁÀÔ ×ÏÚÍÏÖÎÙÍÉ TCP/IP ÓÏÅÄÉÎÅÎÉÑ.
+   
+    3.6) ëÁËÉÅ ÎÁÓÔÒÏÊËÉ ÍÎÅ ÎÕÖÎÏ ÓÄÅÌÁÔØ ÄÌÑ ÕÌÕÞÛÅÎÉÑ ÐÒÏÉÚ×ÏÄÉÔÅÌØÎÏÓÔÉ?
+    
+   îÅÓÏÍÎÅÎÎÏ, ÉÎÄÅËÓÙ ÍÏÇÕÔ Õ×ÅÌÉÞÉÔØ ÓËÏÒÏÓÔØ ×ÙÐÏÌÎÅÎÉÑ ÚÁÐÒÏÓÏ×.
+   ëÏÍÁÎÄÁ EXPLAIN ÐÏÚ×ÏÌÑÅÔ ×ÁÍ ÐÏÓÍÏÔÒÅÔØ ËÁË PostgreSQL ÉÎÔÅÒÐÒÅÔÉÒÕÅÔ
+   ×ÁÛ ÚÁÐÒÏÓ É ËÁËÉÅ ÉÎÄÅËÓÙ ÉÓÐÏÌØÚÕÀÔÓÑ.
+   
+   åÓÌÉ ×Ù ×ÙÐÏÌÎÑÅÔÅ ÍÎÏÇÏ ÏÐÅÒÁÔÏÒÏ× INSERT, ÒÁÓÓÍÏÔÒÉÔÅ ×ÏÚÍÏÖÎÏÓÔØ
+   ×ÙÐÏÌÎÑÔØ ÉÈ × ÂÏÌØÛÏÊ ÐÁÞËÅ, ÉÓÐÏÌØÚÕÑ ËÏÍÁÎÄÕ COPY. üÔÏ ÚÎÁÞÉÔÅÌØÎÏ
+   ÂÙÓÔÒÅÅ, ÞÅÍ ÏÔÄÅÌØÎÙÅ INSERT. ÷Ï-×ÔÏÒÙÈ, ÏÐÅÒÁÔÏÒÙ ×ÎÅ ÂÌÏËÁ
+   ÔÒÁÎÚÁËÃÉÉ BEGIN WORK/COMMIT ÓÁÍÉ ×ÙÐÏÌÎÑÀÔ ÔÒÁÎÚÁËÃÉÀ. ðÏÄÕÍÁÊÔÅ ÎÁÄ
+   ×ÙÐÏÌÎÅÎÉÅÍ ÎÅÓËÏÌØËÉÈ ÏÐÅÒÁÔÏÒÏ× × ÏÄÎÏÍ ÂÌÏËÅ ÔÒÁÎÚÁËÃÉÉ. üÔÏ
+   ÕÍÅÎØÛÉÔ ËÏÌÉÞÅÓÔ×Ï ÔÒÁÎÚÁËÃÉÊ. ôÁËÖÅ, ÚÁÄÕÍÁÊÔÅÓØ ÎÁÄ ÕÄÁÌÅÎÉÅÍ É
+   ÐÅÒÅÓÏÚÄÁÎÉÅÍ ÉÎÄÅËÓÏ×, ËÏÇÄÁ ×Ù ×ÙÐÏÌÎÑÅÔÅ ÂÏÌØÛÉÅ ÉÚÍÅÎÅÎÉÑ ÄÁÎÎÙÈ.
+   
+   óÕÝÅÓÔ×ÕÅÔ ÎÅÓËÏÌØËÏ ÏÐÃÉÊ ÎÁÓÔÒÏÊËÉ. ÷Ù ÍÏÖÅÔÅ ÚÁÐÒÅÔÉÔØ fsync() ÐÒÉ
+   ÓÔÁÒÔÅ postmaster Ó ÏÐÃÉÅÊ -o -F. üÔÏ ÐÒÅÄÏÔ×ÒÁÔÉÔ ×ÙÚÏ×Ù fsync(),
+   ËÏÔÏÒÙÅ ÐÒÉ×ÏÄÑÔ Ë ÓÂÒÏÓÕ ÄÁÎÎÙÈ ÎÁ ÄÉÓË ÐÏÓÌÅ ËÁÖÄÏÊ ÔÒÁÎÚÁËÃÉÉ.
+   
+   ÷Ù ÍÏÖÅÔÅ ÔÁËÖÅ ÉÓÐÏÌØÚÏ×ÁÔØ ÄÌÑ postmaster ÏÐÃÉÀ -B ÄÌÑ Õ×ÅÌÉÞÅÎÉÑ
+   ËÏÌÉÞÅÓÔ×Á ÂÕÆÅÒÏ× ÒÁÚÄÅÌÑÅÍÏÊ ÐÁÍÑÔÉ, ËÏÔÏÒÁÑ ÉÓÐÏÌØÚÕÅÔÓÑ backend
+   ÐÒÏÃÅÓÓÁÍÉ. åÓÌÉ ×Ù ÓÄÅÌÁÅÔÅ ÚÎÁÞÅÎÉÅ ÜÔÏÇÏ ÐÁÒÁÍÅÔÒÁ ÓÌÉÛËÏÍ ÂÏÌØÛÉÍ,
+   ÔÏ postmaster ÍÏÖÅÔ ÎÅ ÚÁÐÕÓÔÉÔÓÑ ÐÏÔÏÍÕ ÞÔÏ ×Ù ÉÓÞÅÒÐÁÅÔÅ ÏÇÒÁÎÉÞÅÎÉÅ
+   ÑÄÒÁ ÎÁ ÏÂßÅÍ ÒÁÚÄÅÌÑÅÍÏÊ ÐÁÍÑÔÉ. ëÁÖÄÙÊ ÂÕÆÅÒ ÉÍÅÅÔ ÒÁÚÍÅÒ × 8
+   ËÉÌÏÂÁÊÔ É ÐÏ ÕÍÏÌÞÁÎÉÀ ×ÙÄÅÌÑÅÔÓÑ 64 ÂÕÆÅÒÁ.
+   
+   ÷Ù ÍÏÖÅÔÅ ÔÁËÖÅ ÉÓÐÏÌØÚÏ×ÁÔØ backend ÏÐÃÉÀ -S ÄÌÑ Õ×ÅÌÉÞÅÎÉÑ
+   ÍÁËÓÉÍÁÌØÎÏÇÏ ËÏÌÉÞÅÓÔ×Á ÐÁÍÑÔÉ, ËÏÔÏÒÏÅ ÉÓÐÏÌØÚÕÅÔÓÑ backend
+   ÐÒÏÃÅÓÓÏÍ ÄÌÑ ×ÒÅÍÅÎÎÙÈ ÓÏÒÔÉÒÏ×ÏË. úÎÁÞÅÎÉÅ ÄÌÑ ÏÐÃÉÉ -S ÚÁÄÁÅÔÓÑ ×
+   ËÉÌÏÂÁÊÔÁÈ É ÐÏ ÕÍÏÌÞÁÎÉÀ ÒÁ×ÎÏ 512 (Ô.Å. 512K).
+   
+   ÷Ù ÔÁËÖÅ ÍÏÖÅÔÅ ÉÓÐÏÌØÚÏ×ÁÔØ ËÏÍÁÎÄÕ CLUSTER ÄÌÑ ÇÒÕÐÐÉÒÏ×ËÉ ÄÁÎÎÙÈ ×
+   ÔÁÂÌÉÃÁÈ ÎÁ ÓÏ×ÐÁÄÁÀÝÉÊ ÉÎÄÅËÓ. ðÏÄÒÏÂÎÏÓÔÉ ÓÍÏÔÒÉÔÅ ÎÁ ÓÔÒÁÎÉÃÅ
+   ÒÕËÏ×ÏÄÓÔ×Á ÐÏ ËÏÍÁÎÄÅ CLUSTER.
+   
+    3.7) ëÁËÉÅ ×ÏÚÍÏÖÎÏÓÔÉ ÄÌÑ ÏÔÌÁÄËÉ ÅÓÔØ × ÎÁÌÉÞÉÉ?
+    
+   PostgreSQL ÉÍÅÅÔ ÎÅÓËÏÌØËÏ ×ÏÚÍÏÖÎÏÓÔÅÊ, ÐÏÚ×ÏÌÑÀÝÉÅ ÐÏÌÕÞÉÔØ
+   ÉÎÆÏÒÍÁÃÉÀ Ï ÓÏÓÔÏÑÎÉÉ, ËÏÔÏÒÁÑ ÍÏÖÅÔ ÂÙÔØ ÉÓÐÏÌØÚÏ×ÁÎÁ × ÏÔÌÁÄÏÞÎÙÈ
+   ÃÅÌÑÈ.
+   
+   ÷Ï-ÐÅÒ×ÙÈ, ÐÒÉ ÚÁÐÕÓËÅ configure Ó ÏÐÃÉÅÊ --enable-cassert, ÍÎÏÇÉÅ
+   ×ÙÚÏ×Ù assert() ÐÏÚ×ÏÌÑÀÔ ÏÔÓÌÅÖÉ×ÁÔØ ÒÁÂÏÔÕ backend ÐÒÏÃÅÓÓÁ É
+   ÏÓÔÁÎÏ×ËÕ ÐÒÏÇÒÁÍÍÙ ÐÒÉ ×ÏÚÎÉËÎÏ×ÅÎÉÉ ËÁËÉÈ-ÌÉÂÏ ÎÅÏÖÉÄÁÎÎÏÓÔÅÊ.
+   
+   é postmaster, É postgres ÉÍÅÀÔ ÎÅÓËÏÌØËÏ ÏÔÌÁÄÏÞÎÙÈ ÏÐÃÉÊ. ÷Ï-ÐÅÒ×ÙÈ,
+   ÐÒÉ ÚÁÐÕÓËÅ postmaster, ÕÂÅÄÉÔÅÓØ, ÞÔÏ ÓÔÁÎÄÁÒÔÎÙÊ ×Ù×ÏÄ É ×Ù×ÏÄ
+   ÏÛÉÂÏË ÏÓÕÝÅÓÔ×ÌÑÀÔÓÑ × ÆÁÊÌ ÖÕÒÎÁÌÁ:
+    cd /usr/local/pgsql
+    ./bin/postmaster >server.log 2>&1 &
+
+   üÔÏ ÐÒÉ×ÅÄÅÔ Ë ÐÏÑ×ÌÅÎÉÀ ÆÁÊÌÁ server.log × ÇÌÁ×ÎÏÍ ËÁÔÁÌÏÇÅ
+   PostgreSQL. üÔÏÔ ÆÁÊÌ ÓÏÄÅÒÖÉÔ ÐÏÌÅÚÎÕÀ ÉÎÆÏÒÍÁÃÉÀ Ï ÐÒÏÂÌÅÍÁÈ ÉÌÉ
+   ÏÛÉÂËÁÈ, ×ÏÚÎÉËÛÉÈ ÎÁ ÓÅÒ×ÅÒÅ. Postmaster ÉÍÅÅÔ ÏÐÃÉÀ -d, ËÏÔÏÒÁÑ
+   ÐÏÚ×ÏÌÑÅÔ ÐÏÌÕÞÁÔØ ÐÒÉ ÐÒÏÔÏËÏÌÉÒÏ×ÁÎÉÉ ÂÏÌÅÅ ÄÅÔÁÌØÎÕÀ ÉÎÆÒÍÁÃÉÀ. äÌÑ
+   ÏÐÃÉÉ -d ÕËÁÚÙ×ÁÅÔÓÑ ÞÉÓÌÏ, ËÏÔÏÒÏÅ ÚÁÄÁÅÔ ÕÒÏ×ÅÎØ ÏÔÌÁÄËÉ. âÕÄØÔÅ
+   ÏÓÔÏÒÏÖÎÙ, ÔÁË ËÁË ×ÙÓÏËÉÊ ÕÒÏ×ÅÎØ ÏÔÌÁÄËÉ ÐÒÉ×ÏÄÉÔ Ë ÇÅÎÅÒÁÃÉÉ ÆÁÊÌÏ×
+   ÖÕÒÎÁÌÁ ÂÏÌØÛÏÇÏ ÒÁÚÍÅÒÁ.
+   
+   åÓÌÉ postmaster ÎÅ ÚÁÐÕÝÅÎ, ×Ù ÍÏÖÅÔÅ ÚÁÐÕÓÔÉÔØ postgres backend ÉÚ
+   ËÏÍÁÎÄÎÏÊ ÓÔÒÏËÉ É ××ÅÓÔÉ ×ÁÛ ÏÐÅÒÁÔÏÒ SQL ÎÁÐÒÑÍÕÀ. üÔÏ ÒÅËÏÍÅÎÄÕÅÔÓÑ
+   ÔÏÌØËÏ ÄÌÑ ÃÅÌÅÊ ÏÔÌÁÄËÉ. úÁÍÅÔÉÍ, ÞÔÏ × ÜÔÏÍ ÒÅÖÉÍÅ, ÚÁÐÒÏÓ
+   ÚÁ×ÅÒÛÁÅÔÓÑ ÓÉÍ×ÏÌÏÍ ÎÏ×ÏÊ ÓÔÒÏËÉ, Á ÎÅ ÔÏÞËÏÊ Ó ÚÁÐÑÔÏÊ. åÓÌÉ ×Ù
+   ÐÒÏÉÚ×ÏÄÉÌÉ ËÏÍÐÉÌÑÃÉÀ Ó ÏÔÌÁÄÏÞÎÙÍÉ ÓÉÍ×ÏÌÏÁÍÉ, ×Ù ÍÏÖÅÔÅ
+   ÉÓÐÏÌØÚÏ×ÁÔØ ÌÀÂÏÊ ÏÔÌÁÄÞÉË, ÞÔÏÂÙ ÐÏÓÍÏÔÒÅÔØ, ÞÔÏ ÓÌÕÞÉÌÏÓØ.
+   ðÏÓËÏÌØËÕ backend ÚÁÐÕÓËÁÅÔÓÑ ÎÅ ÉÚ postmaster, ÏΠÎÅ ÚÁÐÕÓËÁÅÔÓÑ ×
+   ÉÄÅÎÔÉÞÎÏÍ ÏËÒÕÖÅÎÉÉ É ÚÎÁÞÉÔ ÐÒÏÂÌÅÍÙ ÉÔÅÒÁÃÉÊ ÂÌÏËÉÒÏ×ÏË/backend ÎÅ
+   ÍÏÇÕÔ ÂÙÔØ ×ÏÓÐÒÏÉÚ×ÅÄÅÎÙ.
+   
+   åÓÌÉ postmaster ÚÁÐÕÝÅÎ, ÚÁÐÕÓÔÉÔÅ psql × ÏÄÎÏÍ ÏËÎÅ, ÚÁÔÅÍ ÎÁÊÄÉÔÅ
+   PID ÐÒÏÃÅÓÓÁ postgres, ÉÓÐÏÌØÚÕÅÍÙÊ psql. éÓÐÏÌØÚÕÊÔÅ ÏÔÄÁÄÞÉË ÄÌÑ
+   ÐÏÄËÌÀÞÅÎÉÑ Ë postgres PID. ÷Ù ÍÏÖÅÔÅ ÕÓÔÁÎÏ×ÉÔØ ÔÏÞËÉ ÐÒÅÒÙ×ÁÎÉÑ ×
+   ÏÔÌÁÄÞÉËÅ É ÚÁÐÕÓÔÉÔØ ÚÁÐÒÏÓ ÉÚ psql. åÓÌÉ ×Ù ÐÒÏÉÚ×ÏÄÉÔÅ ÏÔÌÁÄËÕ
+   ÚÁÐÕÓËÁ postgres, ×Ù ÍÏÖÅÔÅ ÕÓÔÁÎÏ×ÉÔØ PGOPTIONS="-W n", É ÚÁÔÅÍ
+   ÚÁÐÕÓÔÉÔØ psql. üÔÁ ÏÐÃÉÑ ÐÒÉ×ÏÄÉÔ Ë ÚÁÄÅÒÖËÅ ÐÒÏÃÅÓÓÁ ÚÁÐÕÓËÁ ÎÁ n
+   ÓÅËÕÎÄ, × ÔÅÞÅÎÉÅ ËÏÔÏÒÙÈ ×Ù ÍÏÖÅÔÅ ÐÏÄËÌÀÞÉÔØ Ë ÐÒÏÃÅÓÓÕ ÏÔÌÁÄÞÉË,
+   ÕÓÔÁÎÏ×ÉÔØ ÌÀÂÙÅ ÔÏÞËÉ ÐÒÅÒÙ×ÁÎÉÑ É ÐÒÏÄÏÌÖÉÔØ ÚÁÐÕÓË.
+   
+   ðÒÏÇÒÁÍÍÁ postgres ÉÍÅÅÔ ÏÐÃÉÉ -s, -A, É -t ËÏÔÏÒÙÅ ÍÏÇÕÔ ÂÙÔØ ÏÞÅÎØ
+   ÐÏÌÅÚÎÙÍÉ ÄÌÑ ÏÔÌÁÄËÉ É ÉÚÍÅÒÅÎÉÑ ÐÒÏÉÚ×ÏÄÉÔÅÌØÎÏÓÔÉ.
+   
+   ÷Ù ÔÁËÖÅ ÍÏÖÅÔÅ ÓËÏÍÐÉÌÉÒÏ×ÁÔØ PostgreSQL Ó ÐÒÏÆÉÌÉÒÏ×ÁÎÉÅÍ ÄÌÑ ÔÏÇÏ,
+   ÞÔÏÂÙ Õ×ÉÄÅÔØ ËÁËÉÅ ÆÕÎËÃÉÉ ÓËÏÌØËÏ ×ÒÅÍÅÎÉ ×ÙÐÏÌÎÑÀÔÓÑ. æÁÊÌÙ
+   ÐÒÏÆÉÌÉÒÏ×ÁÎÉÑ backend'Á ÎÁÈÏÄÑÔÓÑ × ËÁÔÁÌÏÇÅ pgsql/data/base/dbname.
+   æÁÊÌ ÐÒÏÆÉÌÉÒÏ×ÁÎÉÑ ËÌÉÅÎÔÁ ÂÕÄÅÔ ÐÏÍÅÝÅΠנÔÅËÕÝÉÊ ËÁÔÁÌÏÇ ËÌÉÅÎÔÁ.
+   
+    3.8) ðÏÞÅÍÕ Ñ ÐÏÌÕÞÁÀ ÓÏÏÂÝÅÎÉÅ "Sorry, too many clients" ËÏÇÄÁ ÐÙÔÁÀÓØ
+    ÐÏÄËÌÀÞÉÔØÓÑ Ë ÂÁÚÅ?
+    
+   ÷ÁÍ ÎÕÖÎÏ Õ×ÅÌÉÞÉÔØ ÏÇÒÁÎÉÞÅÎÉÅ ÎÁ ËÏÌÉÞÅÓÔ×Ï ËÏÎËÕÒÅÔÎÙÈ backend
+   ÐÒÏÃÅÓÓÏ× ÐÒÉ ÚÁÐÕÓËÅ postmaster.
+   
+   ðÏ ÕÍÏÌÞÁÎÉÀ ÕÓÔÁÎÏ×ÌÅΠÌÉÍÉÔ ÎÁ 32 ÐÒÏÃÅÓÓÁ. ÷Ù ÍÏÖÅÔÅ Õ×ÅÌÉÞÉÔØ ÜÔÏÔ
+   ÌÉÍÉÔ ÐÅÒÅÚÁÐÕÓÔÉ× postmaster Ó ÎÕÖÎÙÍ ÚÎÁÞÅÎÉÅÍ ÐÒÏÃÅÓÓÏ×, ËÏÔÏÒÏÅ
+   ÕËÁÚÙ×ÁÅÔÓÑ × ÏÐÃÉÉ -N ÉÌÉ ÉÚÍÅÎÉ× ÆÁÊÌ postgresql.conf.
+   
+   úÁÍÅÔÉÍ, ÞÔÏ ÅÓÌÉ ×Ù ÚÁÄÁÄÉÔÅ × ÏÐÃÉÉ -N ÚÎÁÞÅÎÉÅ ÂÏÌØÛÅ 32, ÔÏ ×Ù
+   ÔÁËÖÅ ÄÏÌÖÎÙ Õ×ÅÌÉÞÉÔØ ÚÎÁÞÅÎÉÅ × ÏÐÃÉÉ -B ËÏÔÏÒÏÅ ÐÏ ÕÍÏÌÞÁÎÉÀ
+   ÕÓÔÁÎÏ×ÌÅÎÏ × 64; úÎÁÞÅÎÉÅ ÏÐÃÉÉ -B ÄÏÌÖÎÏ ÂÙÔØ ÐÏ ËÒÁÊÎÅÊ ÍÅÒÅ ×Ä×ÏÅ
+   ÂÏÌØÛÅ ÚÎÁÞÅÎÉÑ ÏÐÃÉÉ -N, É ×ÏÚÍÏÖÎÏ ÅÝ£ ÂÏÌØÛÅ ÄÌÑ ÌÕÞÛÅÊ
+   ÐÒÏÉÚ×ÏÄÉÔÅÌØÎÏÓÔÉ. äÌÑ ÂÏÌØÛÅÇÏ ËÏÌÉÞÅÓÔ×Á backend ÐÒÏÃÅÓÓÏ×, ×ÁÍ
+   ÔÁËÖÅ ÎÅÐÌÏÈÏ ÂÙÌÏ ÂÙ Õ×ÅÌÉÞÉÔØ ÎÅËÏÔÏÒÙÅ ÐÁÒÁÍÅÔÒÙ ÑÄÒÁ Unix. üÔÏ
+   ÔÁËÉÅ ÐÁÒÁÍÅÔÒÙ, ËÁË ÍÁËÓÉÍÁÌØÎÏÅ ËÏÌÉÞÅÓÔ×Ï ÂÌÏËÏ× ÒÁÚÄÅÌÑÅÍÏÊ
+   ÐÁÍÑÔÉ, SHMMAX; ÍÁËÓÉÍÁÌØÎÏÅ ËÏÌÉÞÅÓÔ×Ï ÓÅÍÁÆÏÒÏ×, SEMMNS É SEMMNI;
+   ÍÁËÓÉÍÁÌØÎÏÅ ËÏÌÉÞÅÓÔ×Ï ÐÒÏÃÅÓÓÏ×, NPROC; ÍÁËÓÉÍÁÌØÎÏÅ ËÏÌÉÞÅÓÔ×Ï
+   ÐÒÏÃÅÓÓÏ× ÎÁ ÐÏÌØÚÏ×ÁÔÅÌÑ, MAXUPRC; É ÍÁËÓÉÍÁÌØÎÏÅ ËÏÌÉÞÅÓÔ×Ï ÏÔËÒÙÔÙÈ
+   ÆÁÊÌÏ×, NFILE É NINODE. ðÒÉÞÉÎÁ ÓÏÚÄÁÎÉÑ ÏÇÒÁÎÉÞÅÎÉÑ ÎÁ ËÏÌÉÞÅÓÔ×Ï
+   backend ÐÒÏÃÅÓÓÏ× ËÁË ÒÁÚ É ÓÏÓÔÏÉÔ × ÔÏÍ, ÞÔÏÂÙ ×ÁÛÅÊ ÓÉÓÔÅÍÅ È×ÁÔÉÌÏ
+   ÒÅÓÕÒÓÏ×.
+   
+   ÷ PostgreSQL ÄÏ ×ÅÒÓÉÉ 6.5, ÍÁËÓÉÍÁÌØÎÏÅ ËÏÌÉÞÅÓÔ×Ï backend ÐÒÏÃÅÓÓÏ×
+   ÂÙÌÏ 64, É ÉÚÍÅÎÅÎÉÅ ÜÔÏÇÏ ËÏÌÉÞÅÓÔ×Á ÔÒÅÂÏ×ÁÌÏ ÐÅÒÅËÏÍÐÉÌÑÃÉÉ ÐÏÓÌÅ
+   ÕÓÔÁÎÏ×ËÉ ËÏÎÓÔÁÎÔÙ MaxBackendId × include/storage/sinvaladt.h.
+   
+    3.9) þÔÏ ÜÔÏ ÚÁ ÆÁÊÌÙ pg_sorttempNNN.NN × ÍÏÅÍ ËÁÔÁÌÏÇÅ Ó ÂÁÚÏÊ ÄÁÎÎÙÈ?
+    
+   üÔÏ ×ÒÅÍÅÎÎÙÅ ÆÁÊÌÙ, ÇÅÎÅÒÉÒÕÅÍÙÅ ×Ï ×ÒÅÍÑ ×ÙÐÏÌÎÅÎÉÑ ÚÁÐÒÏÓÁ.
+   îÁÐÒÉÍÅÒ, ÅÓÌÉ ÄÌÑ ÏÐÅÒÁÔÏÒÁ ORDER BY ÄÏÌÖÎÁ ÂÙÔØ ×ÙÐÏÌÎÅÎÁ
+   ÓÏÒÔÉÒÏ×ËÁ, ËÏÔÏÒÁÑ ÔÒÅÂÕÅÔ ÂÏÌØÛÅ ÍÅÓÔÁ ÞÅÍ ×ÙÄÅÌÅÎÎÏ ÄÌÑ backend
+   ÐÒÏÃÅÓÓÁ × ÏÐÃÉÉ -S, ÔÏ ÓÏÚÄÁÅÔÓÑ ×ÒÅÍÅÎÎÙÊ ÆÁÊÌ ÄÌÑ ÈÒÁÎÅÎÉÑ
+   ÄÏÐÏÌÎÉÔÅÌØÎÙÈ ÄÁÎÎÙÈ.
+   
+   ÷ÒÅÍÅÎÎÙÅ ÆÁÊÌÙ ÄÏÌÖÎÙ ÕÄÁÌÑÔØÓÑ Á×ÔÏÍÁÔÉÞÅÓËÉ, ÎÏ ÜÔÏÇÏ ÍÏÖÅÔ ÎÅ
+   ÐÒÏÉÓÈÏÄÉÔØ, ÅÓÌÉ backend ÐÒÏÃÅÓÓ ÐÁÄÁÅÔ ×Ï ×ÒÅÍÑ ÓÏÒÔÉÒÏ×ËÉ. åÓÌÉ Õ
+   ×ÁÓ ÎÅ ÚÁÐÕÝÅÎÏ ÎÉ ÏÄÎÏÇÏ backend ÐÒÏÃÅÓÓÁ, ÔÏ ×Ù ÍÏÖÅÔÅ ÓÐÏËÏÊÎÏ
+   ÕÄÁÌÉÔØ ÆÁÊÌÙ pg_tempNNN.NN.
+     _________________________________________________________________
+   
+                            ÷ÏÐÒÏÓÙ ÜËÓÐÌÕÁÔÁÃÉÉ
+                                      
+    4.1) ÷ ÞÅÍ ÏÔÌÉÞÉÅ ÍÅÖÄÕ ÂÉÎÁÒÎÙÍ É ÎÏÒÍÁÌØÎÙÍ ËÕÒÓÏÒÏÍ?
+    
+   óÍÏÔÒÉÔÅ ÏÐÉÓÁÎÉÅ ÎÁ ÓÔÒÁÎÉÃÁÈ ÒÕËÏ×ÏÄÓÔ×Á ÐÏÓ×ÑÝÅÎÎÙÍ DECLARE.
+   
+    4.2) ëÁË ×ÙÐÏÌÎÉÔØ SELECT ÔÏÌØËÏ ÄÌÑ ÎÅÓËÏÌØËÉÈ ÐÅÒ×ÙÈ ÓÔÒÏÞÅË ÚÁÐÒÏÓÁ?
+    
+   óÍÏÔÒÉÔÅ ÓÔÁÎÉÃÕ ÒÕËÏ×ÏÄÓÔ×Á ÐÏÓ×ÑÝÅÎÎÕÀ FETCH ÉÌÉ ÉÓÐÏÌØÚÕÊÔÅ SELECT
+   ... LIMIT....
+   
+   äÁÖÅ ÅÓÌÉ ×Ù ÈÏÔÉÔÅ ÐÏÌÕÞÉÔØ ÔÏÌØËÏ ÐÅÒ×ÙÅ ÎÅÓËÏÌØËÏ ÚÁÐÉÓÅÊ, ÂÕÄÅÔ
+   ×ÙÐÏÌÎÅΠ×ÅÓØ ÚÁÐÒÏÓ. òÁÓÓÍÏÔÒÉÍ ÚÁÐÒÏÓ, ËÏÔÏÒÙÊ ÉÍÅÅÔ ORDER BY. åÓÌÉ
+   ÅÓÔØ ËÁËÏÊ-ÌÉÂÏ ÉÎÄÅËÓ, ËÏÔÏÒÙÊ ÓÏ×ÐÁÄÁÅÔ Ó ORDER BY, PostgreSQL ÍÏÖÅÔ
+   ×ÙÄÁÔØ ÔÏÌØËÏ ÎÅÓËÏÌØËÏ ÐÅÒ×ÙÈ ÚÁÐÒÏÛÅÎÎÙÈ ÚÁÐÉÓÅÊ ÉÌÉ ÍÏÖÅÔ ×ÙÐÏÌÎÑÔØ
+   ÚÁÐÒÏÓ ÐÏËÁ ÎÅ ÂÕÄÕÔ ×ÙÄÁÎÙ ÖÅÌÁÅÍÙÅ ÚÁÐÉÓÉ.
+   
+    4.3) ëÁË ÐÏÌÕÞÉÔØ ÓÐÉÓÏË ÔÁÂÌÉàÉÌÉ ÄÒÕÇÉÈ ËÏÍÐÏÎÅÎÔÏ× × psql?
+    
+   ÷Ù ÍÏÖÅÔÅ ÐÏÓÍÏÔÒÅÔØ ÉÓÈÏÄÎÙÊ ËÏÄ psql × ÆÁÊÌÅ
+   pgsql/src/bin/psql/describe.c. ïΠÓÏÄÅÒÖÉÔ ËÏÍÁÎÄÙ SQL ËÏÔÏÒÙÅ
+   ÇÅÎÅÒÉÒÕÀÔÓÑ ÐÒÉ ××ÏÄÅ × psql ËÏÍÁÎÄ, ÎÁÞÉÎÁÀÝÉÈÓÑ Ó ÏÂÒÁÔÎÏÊ ËÏÓÏÊ
+   ÞÅÒÔÙ. ÷Ù ÔÁËÖÅ ÍÏÅÖÅÔÅ ÚÁÐÕÓÔÉÔØ psql Ó ÏÐÃÉÅÊ -E ÔÁË, ÞÔÏÂÙ ÜÔÁ
+   ÐÒÏÇÒÁÍÍÁ ×ÙÄÁ×ÁÌÁ ÚÁÐÒÏÓÙ, ËÏÔÏÒÙÅ ÏÎÁ ÉÓÐÏÌØÚÕÅÔ ÄÌÑ ×ÙÐÏÌÎÅÎÉÑ
+   ÚÁÄÁÎÎÙÈ ×ÁÍÉ ËÏÍÁÎÄ.
+   
+    4.4) ëÁË ÕÄÁÌÉÔØ ËÏÌÏÎËÕ ÉÚ ÔÁÂÌÉÃÙ?
+    
+   íÙ ÎÅ ÐÏÄÄÅÒÖÉ×ÁÅÍ ALTER TABLE DROP COLUMN, ÎÏ ÍÏÖÎÏ ÓÄÅÌÁÔØ ÔÁË:
+    SELECT ...  -- ×ÙÂÏÒËÁ ×ÓÅÈ ËÏÌÏÎÏË ÚÁ ÉÓËÌÀÞÅÎÉÅÍ ÔÏÊ, ËÏÔÏÒÕÀ ÈÏÔÉÔÅ ÕÄÁÌ
+ÉÔØ
+    INTO TABLE new_table
+    FROM old_table;
+    DROP TABLE old_table;
+    ALTER TABLE new_table RENAME TO old_table;
+
+    4.5) ëÁËÏ×Ù ÍÁËÓÉÍÁÌØÎÙÅ ÒÁÚÍÅÒÙ ÄÌÑ ÚÁÐÉÓÅÊ, ÔÁÂÌÉàɠÂÁÚÙ ÄÁÎÎÙÈ?
+    
+   óÕÝÅÓÔ×ÕÀÔ ÓÌÅÄÕÀÝÉÅ ÏÇÒÁÎÉÞÅÎÉÑ:
+    íÁËÓÉÍÁÌØÎÙÊ ÒÁÚÍÅÒ ÂÁÚÙ?              ÎÅÏÇÒÁÎÉÞÅΠ(ÓÕÝÅÓÔ×ÕÀÔ ÂÁÚÙ ÎÁ 60 G
+B)
+    íÁËÓÉÍÁÌØÎÙÊ ÒÁÚÍÅÒ ÔÁÂÌÉÃÙ?           16 TB
+    íÁËÓÉÍÁÌØÎÙÊ ÒÁÚÍÅÒ ÚÁÐÉÓÉ?            ÎÅÏÇÒÁÎÉÞÅΠÎÁÞÉÎÁÑ Ó ×ÅÒÓÉÉ 7.1
+    íÁËÓÉÍÁÌØÎÙÊ ÒÁÚÍÅÒ ÐÏÌÑ?              1 GB ÎÁÞÉÎÁÑ Ó ×ÅÒÓÉÉ 7.1
+    íÁËÓÉÍÁÌØÎÏÅ ËÏÌÉÞÅÓÔ×Ï ÚÁÐÉÓÅÊ × ÔÁÂÌÉÃÅ?      ÎÅÏÇÒÁÎÉÞÅÎÏ
+    íÁËÓÉÍÁÌØÎÏÅ ËÏÌÉÞÅÓÔ×Ï ËÏÌÏÎÏË × ÔÁÂÌÉÃÅ?    250-1600 × ÚÁ×ÉÓÉÍÏÓÔÉ ÏÔ ÔÉÐ
+    íÁËÓÉÍÁÌØÎÏÅ ËÏÌÉÞÅÓÔ×Ï ÉÎÄÅËÓÏ× × ÔÁÂÌÉÃÅ?   ÎÅÏÇÒÁÎÉÞÅÎÏ
+
+   òÁÚÕÍÅÅÔÓÑ, ÐÏÎÑÔÉÅ "ÎÅÏÇÒÁÎÉÞÅÎÏ" ÎÁ ÓÁÍÏÍ ÄÅÌÅ ÏÇÒÁÎÉÞÉ×ÁÅÔÓÑ
+   ÄÏÓÔÕÐÎÙÍ ÄÉÓËÏ×ÙÍ ÐÒÏÓÔÒÁÎÉÓÔ×ÏÍ É ÒÁÚÍÅÒÁÍÉ ÐÁÍÑÔÉ/Ó×ÏÐÐÉÎÇÁ. ëÏÇÄÁ
+   ÚÎÁÞÅÎÉÑ ÐÅÒÅÞÉÓÌÅÎÎÙÅ ×ÙÛÅ ÎÅÏÐÒÁ×ÄÁÎÏ ÂÏÌØÛÉÅ, ÍÏÖÅÔ ÐÏÓÔÒÁÄÁÔØ
+   ÐÒÏÉÚ×ÏÄÉÔÅÌØÎÏÓÔØ.
+   
+   íÁËÓÉÍÁÌØÎÙÊ ÒÁÚÍÅÒ ÔÁÂÌÉÃÙ × 16 TB ÎÅ ÔÒÅÂÕÅÔ ÞÔÏÂÙ ÏÐÅÒÁÃÉÏÎÎÁÑ
+   ÓÉÓÔÅÍÁ ÐÏÄÄÅÒÖÉ×ÁÌÁ ÆÁÊÌÙ ÂÏÌØÛÉÈ ÒÁÚÍÅÒÏ×. âÏÌØÛÉÅ ÔÁÂÌÉÃÙ ÈÒÁÎÑÔÓÑ
+   ËÁË ÍÎÏÖÅÓÔ×Ï ÆÁÊÌÏ× ÒÁÚÍÅÒÏÍ × 1 GB, ÔÁË ÞÔÏ ÏÇÒÁÎÉÞÅÎÉÑ, ËÏÔÏÒÙÅ
+   ÎÁËÌÁÄÙ×ÁÅÔ ÆÁÊÌÏ×ÁÑ ÓÉÓÔÅÍÁ ÎÅ ×ÁÖÎÙ.
+   
+   íÁËÓÉÍÁÌØÎÙÊ ÒÁÚÍÅÒ ÔÁÂÌÉÃÙ É ÍÁËÓÉÍÁÌØÎÏÅ ËÏÌÉÞÅÓÔ×Ï ËÏÌÏÎÏË ÍÏÇÕÔ
+   ÂÙÔØ Õ×ÅÌÉÞÅÎÙ, ÅÓÌÉ ÒÁÚÍÅÒ ÂÌÏËÁ ÐÏ ÕÍÏÌÞÁÎÉÀ ÂÕÄÅÔ Õ×ÅÌÉÞÅΠÄÏ 32k.
+   
+    4.6) ëÁË ÍÎÏÇÏ ÄÉÓËÏ×ÏÇÏ ÐÒÏÓÔÒÁÎÓÔ×Á × ÂÁÚÅ ÄÁÎÎÙÈ ÎÕÖÎÏ ÄÌÑ ÓÏÈÒÁÎÅÎÉÑ
+    ÄÁÎÎÙÈ ÉÚ ÏÂÙÞÎÏÇÏ ÔÅËÓÔÏ×ÏÇÏ ÆÁÊÌÁ?
+    
+   óõâä PostgreSQL ÍÏÖÅÔ ÐÏÔÒÅÂÏ×ÁÔØÓÑ ÄÉÓËÏ×ÏÇÏ ÐÒÏÓÔÒÁÎÓÔ×Á ÄÏ 5 ÒÁÚ
+   ÂÏÌØÛÅ ÄÌÑ ÓÏÈÒÁÎÅÎÉÑ ÄÁÎÎÙÈ ÉÚ ÐÒÏÓÔÏÇÏ ÔÅËÓÔÏ×ÏÇÏ ÆÁÊÌÁ.
+   
+   ÷ ËÁÞÅÓÔ×Å ÐÒÉÍÅÒÁ, ÒÁÓÓÍÏÔÒÉÍ ÆÁÊÌ × 100,000 ÓÔÒÏË × ËÁÖÄÏÊ, ÉÚ
+   ËÏÔÏÒÙÈ ÃÅÌÏÅ ÞÉÓÌÏ É ÔÅËÓÔÏ×ÏÅ ÏÐÉÓÁÎÉÅ. ðÒÉ ÜÔÏÍ ÄÌÉÎÁ ÔÅËÓÔÁ, ×
+   ÓÒÅÄÎÅÍ, ÓÏÓÔÁ×ÌÑÅÔ 20 ÂÁÊÔ. òÁÚÍÅÒ ÐÒÏÓÔÏÇÏ ÆÁÊÌÁ ÓÏÓÔÁ×ÉÔ 2.8 MB.
+   òÁÚÍÅÒ ÂÁÚÙ PostgreSQL, ÓÏÄÅÒÖÁÝÅÊ ÜÔÉ ÖÅ ÄÁÎÎÙÅ ÓÏÓÔÁ×ÉÔ
+   ÐÒÉÂÌÉÚÉÔÅÌØÎÏ 6.4 MB ÉÚ ËÏÔÏÒÙÈ:
+    36 ÂÁÊÔ: ÎÁ ËÁÖÄÙÊ ÚÁÇÏÌÏ×ÏË ÚÁÐÉÓÉ (ÐÒÉÂÌÉÚÉÔÅÌØÎÏ)
+  + 24 ÂÁÊÔÁ: ÏÄÎÏ ÐÏÌÅ Ó ÃÅÌÏÞÉÓÌÅÎÎÙÍ ÔÉÐÏÍ É ÏÄÎÏ ÔÅËÓÔÏ×ÏÅ ÐÏÌÅ
+   + 4 ÂÁÊÔÁ: ÕËÁÚÁÔÅÌØ ÎÁ ÓÔÒÁÎÉÃÅ ÄÌÑ ×ÓÅÊ ÚÁÐÉÓÉ
+   ----------------------------------------
+    64 ÂÁÊÔ ÎÁ ÚÁÐÉÓØ
+
+   òÁÚÍÅÒ ÓÔÒÁÎÉÃÙ ÄÁÎÎÙÈ × PostgreSQL ÓÏÓÔÁ×ÌÑÅÔ 8192 ÂÁÊÔ (8 KB), ÔÁË ÞÔÏ:
+
+   8192 ÂÁÊÔ ÎÁ ÓÔÒÁÎÉÃÕ
+   -------------------   =  128 ÚÁÐÉÓÅÊ ÎÁ ÓÔÒÁÎÉÃÕ âä (Ó ÏËÒÕÇÌÅÎÉÅÍ)
+     64 ÂÁÊÔ ÎÁ ÚÁÐÉÓØ
+
+   100000 ÓÔÒÏË ÄÁÎÎÙÈ
+   --------------------  =  782 ÓÔÒÁÎÉÃÙ × âä
+  128 ÚÁÐÉÓÅÊ ÎÁ ÓÔÒÁÎÉÃÕ
+
+782 ÓÔÒÁÎÉÃÙ âä * 8192 ÂÁÊÔ ÎÁ ÓÔÒÁÎÉÃÕ  =  6,406,144 ÂÁÊÔ (6.4 MB)
+
+   éÎÄÅËÓÙ ÎÅ ÔÒÅÂÕÀÔ ÔÁË ÍÎÏÇÏ, ÎÏ ÐÏÓËÏÌØËÕ ÏÎÉ ÓÏÚÄÁÀÔÓÑ ÄÌÑ ÂÏÌØÛÏÇÏ
+   ËÏÌÉÞÅÓÔ×Á ÄÁÎÎÙÈ, ÏÎÉ ÔÁËÖÅ ÍÏÇÕÔ ÂÙÔØ ×ÅÌÉËÉ.
+   
+    4.7) ëÁË ÍÎÅ ÕÂÅÄÉÔØÓÑ, ÞÔÏ ÎÕÖÎÙÅ ÍÎÅ ÔÁÂÌÉÃÙ ÉÌÉ ÉÎÄÅËÓÙ ÏÐÒÅÄÅÌÅÎÙ ×
+    ÂÁÚÅ ÄÁÎÎÙÈ?
+    
+   psql ÉÍÅÅÔ ÎÅÓËÏÌØËÏ ËÏÍÁÎÄ, ÎÁÞÉÎÁÀÝÉÈÓÑ Ó ÏÂÒÁÔÎÏÊ ËÏÓÏÊ ÞÅÒÔÙ, ÄÌÑ
+   ÔÏÇÏ ÞÔÏÂÙ ÐÒÏÓÍÁÔÒÉ×ÁÔØ ÔÁËÕÀ ÉÎÆÏÒÍÁÃÉÀ. éÓÐÏÌØÚÕÊÔÅ \? ÄÌÑ ÔÏÇÏ,
+   ÞÔÏÂÙ Õ×ÉÄÅÔØ ÜÔÉ ËÏÍÁÎÄÙ.
+   
+   ôÁËÖÅ ÓÍÏÔÒÉÔÅ ÆÁÊÌ pgsql/src/tutorial/syscat.source. ÷ ÎÅÍ
+   ÐÒÅÄÓÔÁ×ÌÅÎÙ ÍÎÏÇÉÅ ÏÐÅÒÁÔÏÒÙ SELECT ËÏÔÏÒÙÅ ÎÕÖÎÙ ÄÌÑ ÐÏÌÕÞÅÎÉÑ
+   ÉÎÆÏÒÍÁÃÉÉ ÉÚ ÓÉÓÔÅÍÎÙÈ ÔÁÂÌÉàÂÁÚÙ ÄÁÎÎÙÈ.
+   
+    4.8) õ ÍÅÎÑ ÍÅÄÌÅÎÎÏ ÒÁÂÏÔÁÀÔ ÚÁÐÒÏÓÙ ÉÌÉ ÎÅ ÐÒÏÉÓÈÏÄÉÔ ÉÓÐÏÌØÚÏ×ÁÎÉÑ
+    ÉÎÄÅËÓÏ×. ðÏÞÅÍÕ?
+    
+   éÎÄÅËÓÙ ÎÅ ÉÓÐÏÌØÚÕÀÔÓÑ ÄÌÑ ËÁÖÄÏÇÏ ÚÁÐÒÏÓÁ Á×ÔÏÍÁÔÉÞÅÓËÉ. ïÎÉ
+   ÉÓÐÏÌØÚÕÀÔÓÑ ÔÏÌØËÏ ÅÓÌÉ ÔÁÂÌÉÃÁ ÂÏÌØÛÅ ÍÉÎÉÍÁÌØÎÏÇÏ ÒÁÚÍÅÒÁ É ÚÁÐÒÏÓ
+   ×ÙÂÉÒÁÅÔ ÔÏÌØËÏ ÍÁÌÅÎØËÉÊ ÐÒÏÃÅÎÔ ÚÁÐÉÓÅÊ × ÔÁÂÌÉÃÅ. ôÁË ÕÓÔÒÏÅÎÏ,
+   ÐÏÔÏÍÕ ÞÔÏ ÄÏÓÔÕРˠÄÉÓËÕ Ó ÐÒÉÍÅÎÅÎÉÅÍ ÒÁÎÄÏÍÉÚÁÃÉÉ ÐÒÉ ÓËÁÎÉÒÏ×ÁÎÉÉ
+   ÉÎÄÅËÓÏ× ÉÎÏÇÄÁ ÍÅÄÌÅÎÎÅÅ, ÞÅÍ ÐÒÏÓÔÏÅ ÞÔÅÎÉÅ ÔÁÂÌÉÃÙ ÉÌÉ ÅÅ
+   ÐÏÓÌÅÄÏ×ÁÔÅÌØÎÏÅ ÓËÁÎÉÒÏ×ÁÎÉÅ.
+   
+   þÔÏÂÙ ÏÐÒÅÄÅÌÉÔØ ÎÅÏÂÈÏÄÉÍÏÓÔØ ÉÓÐÏÌØÚÏ×ÁÎÉÑ ÉÎÄÅËÓÁ ÄÌÑ ËÁËÏÊ-ÌÉÂÏ
+   ÔÁÂÌÉÃÙ, PostgreSQL ÄÏÌÖÅΠÉÍÅÔØ ÓÔÁÔÉÓÔÉËÕ ÐÏ ÜÔÏÊ ÔÁÂÌÉÃÅ. üÔÁ
+   ÓÔÁÔÉÓÔÉËÁ ÓÏÂÉÒÁÅÔÓÑ ÐÒÉ ÉÓÐÏÌØÚÏ×ÁÎÉÉ VACUUM ANALYZE ÉÌÉ ÐÒÏÓÔÏ
+   ANALYZE. éÓÐÏÌØÚÕÑ ÓÔÁÔÉÓÔÉËÕ, ÏÐÔÉÍÉÚÁÔÏÒ ÕÚÎÁÅÔ Ï ÔÏÍ ËÁË ÍÎÏÇÏ
+   ÚÁÐÉÓÅÊ × ÔÁÂÌÉÃÅ É ÅÓÌÉ ÏΠÄÏÌÖÅΠÉÓÐÏÌØÚÏ×ÁÔØ ÉÎÄÅËÓÙ, ÔÏ ÏΠÍÏÖÅÔ
+   ÐÒÉÎÉÍÁÔØ ÌÕÞÛÉÅ ÒÅÛÅÎÉÑ. óÔÁÔÉÓÔÉËÁ ÔÁËÖÅ ×ÌÉÑÅÔ ÎÁ ÏÐÒÅÄÅÌÅÎÉÅ
+   ÏÐÔÉÍÁÌØÎÏÇÏ ÐÏÒÑÄËÁ Ó×ÑÚÙ×ÁÎÉÑ É ÍÅÔÏÄÁ Ó×ÑÚÙ×ÁÎÉÑ. óÂÏÒ ÓÔÁÔÉÓÔÉËÉ
+   ÄÏÌÖÅΠÐÅÒÉÏÄÉÞÅÓËÉ ×ÙÐÏÌÎÑÔÓÑ ÐÒÉ ÉÚÍÅÎÅÎÉÉ ÓÏÄÅÒÖÉÍÏÇÏ ÔÁÂÌÉÃÙ.
+   
+   ïÂÙÞÎÏ ÉÎÄÅËÓÙ ÎÅ ÉÓÐÏÌØÚÕÀÔÓÑ ÄÌÑ ORDER BY ÉÌÉ ÄÌÑ ×ÙÐÏÌÎÅÎÉÑ
+   Ó×ÑÚÙ×ÁÎÉÊ. ðÏÓÌÅÄÏ×ÁÔÅÌØÎÙÊ ÐÅÒÅÂÏÒ ÓÌÅÄÕÀÝÉÊ ÚÁ Ñ×ÎÏÊ ÓÏÒÔÉÒÏ×ËÏÊ
+   ÏÂÙÞÎÏ ÂÙÓÔÒÅÅ, ÞÅÍ ÐÏÉÓË ÐÏ ÉÎÄÅËÓÁÍ × ÂÏÌØÛÏÊ ÔÁÂÌÉÃÅ. ïÄÎÁËÏ, ORDER
+   BY ÞÁÓÔÏ ËÏÍÂÉÎÉÒÕÅÔÓÑ Ó LIMIT É × ÜÔÏÍ ÓÌÕÞÁÅ ÉÎÄÅËÓ ÂÕÄÅÔ
+   ÉÓÐÏÌØÚÏ×ÁÔØÓÑ, ÐÏÓËÏÌØËÕ ÐÒÉ ×ÙÐÏÌÎÅÎÉÉ ÂÕÄÅÔ ×ÏÚ×ÒÁÝÁÔØÓÑ ÎÅÂÏÌØÛÁÑ
+   ÞÁÓÔØ ÔÁÂÌÉÃÙ.
+   
+   ëÏÇÄÁ ÉÓÐÏÌØÚÕÀÔÓÑ ÏÐÅÒÁÃÉÉ Ó ÛÁÂÌÏÎÁÍÉ, ÎÁÐÒÉÍÅÒ LIKE ÉÌÉ ~, ÉÎÄÅËÓÙ
+   ÍÏÇÕÔ ÂÙÔØ ÉÓÐÏÌØÚÏ×ÁÎÙ ÔÏÌØËÏ ÅÓÌÉ ÎÁÞÁÌÏ ÓÔÒÏËÉ-ÛÁÂÌÏÎÁ ÄÌÑ ÐÏÉÓËÁ,
+   ÓÏÏÔ×ÅÔÓÔ×ÕÅÔ ÎÁÞÁÌÕ ÉÓËÏÍÏÊ ÓÔÒÏËÉ. óÌÅÄÏ×ÁÔÅÌØÎÏ, ÄÌÑ ÔÏÇÏ, ÞÔÏÂÙ
+   ÉÓÐÏÌØÚÏ×ÁÔØ ÉÎÄÅËÓÙ, ÛÁÂÌÏΠנLIKE ÎÅ ÄÏÌÖÅΠÎÁÞÉÎÁÔØÓÑ ÎÁ %, Á × ~
+   (ÐÏÉÓË ÒÅÇÕÌÑÒÎÏÇÏ ×ÙÒÁÖÅÎÉÑ) ÄÏÌÖÅΠÎÁÞÉÎÁÔØÓÑ ÎÁ ^.
+   
+    4.9) ëÁË ÐÏÓÍÏÔÒÅÔØ ÎÁ ÔÏ, ËÁË ÏÐÔÉÍÉÚÁÔÏÒ ×ÙÐÏÌÎÑÅÔ ÍÏÊ ÚÁÐÒÏÓ?
+    
+   óÍÏÔÒÉÔÅ ÓÔÒÁÎÉÃÕ ÒÕËÏ×ÏÄÓÔ×Á ÐÏÓ×ÑÝÅÎÎÕÀ EXPLAIN.
+   
+    4.10) þÔÏ ÔÁËÏÅ R-tree ÉÎÄÅËÓ?
+    
+   R-tree ÉÎÄÅËÓ ÉÓÐÏÌØÚÕÅÔÓÑ ÄÌÑ ÉÎÄÅËÓÉÒÏ×ÁÎÉÑ ÐÒÏÓÔÒÁÎÓÔ×ÅÎÎÙÈ ÄÁÎÎÙÈ.
+   éÎÄÅËÓ ÈÜÛÁ ÎÅ ÍÏÖÅÔ ÕÐÒÁ×ÌÑÔØ ÐÏÉÓËÁÍÉ ÄÉÁÐÁÚÏÎÁ. B-tree ÉÎÄÅËÓ
+   ÕÐÒÁ×ÌÑÅÔ ÔÏÌØËÏ ÐÏÉÓËÁÍÉ ÄÉÁÐÁÚÏÎÁ × ÏÄÎÏÍ ÉÚÍÅÒÅÎÉÉ. R-tree ÉÎÄÅËÓ
+   ÍÏÖÅÔ ÕÐÒÁ×ÌÑÔØ ÍÎÏÇÏÒÁÚÍÅÒÎÙÍÉ ÄÁÎÎÙÍÉ. îÁÐÒÉÍÅÒ, ÅÓÌÉ R-tree ÉÎÄÅËÓ
+   ÍÏÖÅÔ ÂÙÔØ ×ÓÔÒÏÅΠנÁÔÒÉÂÕÔ ÔÉÐÁ point, ÔÏ ÓÉÓÔÅÍÁ ÍÏÖÅÔ ÂÏÌÅÅ
+   ÜÆÆÅËÔÉ×ÎÏ ÏÔ×ÅÔÉÔØ ÎÁ ÚÁÐÒÏÓ ÔÉÐÁ "×ÙÂÒÁÔØ ×ÓÅ ÔÏÞËÉ ×ÎÕÔÒÉ ÚÁÄÁÎÎÏÇÏ
+   ÞÅÔÙÒÅÈÕÇÏÌØÎÉËÁ."
+   
+   ëÁÎÏÎÉÞÅÓËÉÊ ÉÓÔÏÞÎÉË, ÏÐÉÓÙ×ÁÀÝÉÊ ÐÅÒ×ÏÎÁÞÁÌØÎÏÅ ÓÏÚÄÁÎÉÅ R-tree ÜÔÏ:
+   
+   Guttman, A. "R-trees: A Dynamic Index Structure for Spatial
+   Searching." Proceedings of the 1984 ACM SIGMOD Int'l Conf on Mgmt of
+   Data, 45-57.
+   
+   ÷Ù ÍÏÖÅÔÅ ÎÁÊÔÉ ÜÔÏÔ ÄÏËÕÍÅÎÔ × ËÎÉÇÅ Stonebraker'Á "Readings in
+   Database Systems".
+   
+   ÷ÓÔÒÏÅÎÎÎÙÅ R-tree ÍÏÇÕÔ ÕÐÒÁ×ÌÑÔØ ÐÏÌÉÇÏÎÁÍÉ É ÂÏËÓÁÍÉ. ÷ ÔÅÏÒÉÉ,
+   R-tree ÍÏÇÕÔ ÂÙÔØ ÒÁÓÛÉÒÅÎÙ ÄÌÑ ÕÐÒÁ×ÌÅÎÉÑ ÂÏÌØÛÉÍ ËÏÌÉÞÅÓÔ×ÏÍ
+   ÉÚÍÅÒÅÎÉÊ. îÁ ÐÒÁËÔÉËÅ, ÒÁÓÛÉÒÅÎÉÅ R-tree ÔÒÅÂÕÅÔ ÎÅËÏÔÏÒÙÈ ÕÓÉÌÉÊ É Õ
+   ÎÁÓ, × ÄÁÎÎÙÊ ÍÏÍÅÎÔ, ÎÅÔ ËÁËÏÊ-ÌÉÂÏ ÄÏËÕÍÅÎÔÁÃÉÉ Ï ÔÏÍ, ËÁË ÜÔÏ
+   ÓÄÅÌÁÔØ.
+   
+    4.11) þÔÏ ÔÁËÏÅ Genetic Query Optimizer?
+    
+   íÏÄÕÌØ GEQO ÐÒÏÉÚ×ÏÄÉÔ ÂÙÓÔÒÕÀ ÏÐÔÉÍÉÚÁÃÉÀ ÚÁÐÒÏÓÁ, ËÏÇÄÁ ÐÒÏÉÓÈÏÄÉÔ
+   Ó×ÑÚÙ×ÁÎÉÅ ÍÎÏÇÉÈ ÔÁÂÌÉàÞÅÒÅÚ Genetic Algorithm (GA). üÔÏ ÐÏÚ×ÏÌÑÅÔ
+   ÕÐÒÁ×ÌÑÔØ ÂÏÌØÛÉÍÉ ÚÁÐÒÏÓÁÍÉ ÎÁ Ó×ÑÚÙ×ÁÎÉÅ ÞÅÒÅÚ ÎÅÉÓÔÏÝÁÀÝÉÊ ÐÏÉÓË.
+   
+    4.12) ëÁË ÍÎÅ ×ÙÐÏÌÎÉÔØ ÐÏÉÓË ÒÅÇÕÌÑÒÎÏÇÏ ×ÙÒÁÖÅÎÉÑ É ÐÏÉÓË ÎÅÚÁ×ÉÓÉÍÙÊ ÏÔ
+    ÒÅÇÉÓÔÒÁ ÂÕË× ÐÏÉÓË ÒÅÇÕÌÑÒÎÏÇÏ ×ÙÒÁÖÅÎÉÑ? ëÁË ÍÎÅ ÉÓÐÏÌØÚÏ×ÁÔØ ÉÎÄÅËÓ ÄÌÑ
+    ÐÏÉÓËÁ ÎÅÚÁ×ÉÓÉÍÏÇÏ ÏÔ ÒÅÇÉÓÔÒÁ ÂÕË×?
+    
+   ïÐÅÒÁÔÏÒ ~ ÐÒÏÉÚ×ÏÄÉÔ ÐÏÉÓË ÒÅÇÕÌÑÒÎÏÇÏ ×ÙÒÁÖÅÎÉÑ, Á ÏÐÅÒÁÔÏÒ ~*
+   ÐÒÏÉÚ×ÏÄÉÔ ÎÅÚÁ×ÉÓÉÍÙÊ ÏÔ ÒÅÇÉÓÔÒÁ ÂÕË× ÐÏÉÓË ÒÅÇÕÌÑÒÎÏÇÏ ×ÙÒÁÖÅÎÉÑ.
+   îÅÚÁ×ÉÓÉÍÙÊ ÏÔ ÒÅÇÉÓÔÒÁ ×ÁÒÉÁÎÔ LIKE ÎÁÚÙ×ÁÅÔÓÑ ILIKE × PostgreSQL
+   ÎÁÞÉÎÁÑ Ó ×ÅÒÓÉÉ 7.1.
+   
+   îÅÚÁ×ÉÓÉÍÏÅ ÏÔ ÒÅÇÉÓÔÒÁ ÓÒÁ×ÎÅÎÉÅ ÏÂÙÞÎÏ ×ÙÒÁÖÁÅÔÓÑ ÔÁË:
+    SELECT *
+    FROM tab
+    WHERE lower(col) = 'abc'
+
+   üÔÁ ËÏÎÓÔÒÕËÃÉÑ ÎÅ ÂÕÄÅÔ ÉÓÐÏÌØÚÏ×ÁÔØ ÓÔÁÎÄÁÒÔÎÙÊ ÉÎÄÅËÓ. ïÄÎÁËÏ, ÅÓÌÉ
+   ×Ù ÓÏÚÄÁÄÉÔÅ ÆÕÎËÃÉÏÎÁÌØÎÙÊ ÉÎÄÅËÓ, ÏΠÂÕÄÅÔ ÉÓÐÏÌØÚÏ×ÁÎ:
+    CREATE INDEX tabindex on tab (lower(col));
+
+    4.13) ëÁË Ñ ÍÏÇÕ ÏÐÒÅÄÅÌÉÔØ, ÞÔÏ ÚÎÁÞÅÎÉÅ ÐÏÌÑ ÒÁ×ÎÏ NULL × ËÁËÏÍ-ÌÉÂÏ
+    ÚÁÐÒÏÓÅ?
+    
+   ÷Ù ÐÒÏÓÔÏ ÓÒÁ×ÎÉ×ÁÅÔÅ ÚÎÁÞÅÎÉÅ Ó IS NULL É IS NOT NULL.
+   
+    4.14) ëÁËÏ×Ù ÏÔÌÉÞÉÑ ÍÅÖÄÕ ÒÁÚÎÙÍÉ ÓÉÍ×ÏÌØÎÙÍÉ ÔÉÐÁÍÉ?
+    
+ôÉР           ÷ÎÕÔÒÅÎÎÅÅ ÉÍÑ   úÁÍÅÞÁÎÉÑ
+--------------------------------------------------
+"char"          char            1 ÓÉÍ×ÏÌ
+CHAR(#)         bpchar          ÚÁÐÏÌÎÑÅÔÓÑ ÐÕÓÔÏÔÏÊ ÄÏ ÆÉËÓÉÒÏ×ÁÎÎÏÊ ÄÌÉÎÙ
+VARCHAR(#)      varchar         ÒÁÚÍÅÒ ÚÁÄÁÅÔ ÍÁËÓÉÍÁÌØÎÕÀ ÄÌÉÎÕ, ÎÅÔ ÚÁÐÏÌÎÅÎÉ
+TEXT            text            ÎÅÔ ÚÁÄÁ×ÁÅÍÏÇÏ ×ÅÒÈÎÅÇÏ ÏÇÒÁÎÉÞÅÎÉÑ ÉÌÉ ÄÌÉÎÙ
+BYTEA           bytea           ÍÁÓÓÉ× ÂÁÊÔ ÐÅÒÅÍÅÎÎÏÊ ÄÌÉÎÙ (ÍÏÖÎÏ ÉÓÐÏÌØÚÏ×ÁÔ
+Ø null-ÂÁÊÔ ÂÅÚ ÏÐÁÓËÉ)
+
+   ÷ÎÕÔÒÅÎÎÅÅ ÉÍÑ ×Ù ÍÏÖÅÔÅ Õ×ÉÄÅÔØ, ËÏÇÄÁ ÓÍÏÔÒÉÔÅ ÓÉÓÔÅÍÎÙÅ ËÁÔÁÌÏÇÉ É
+   × ÎÅËÏÔÏÒÙÈ ÓÏÏÂÝÅÎÉÑÈ Ï ÏÛÉÂËÁÈ.
+   
+   ðÏÓÌÅÄÎÉÅ ÞÅÔÙÒÅ ÔÉÐÁ Ñ×ÌÑÀÔÓÑ "varlena" ÔÉÐÁÍÉ (Ô.Å., ÐÅÒ×ÙÅ ÞÅÔÙÒÅ
+   ÂÁÊÔÁ ÎÁ ÄÉÓËÅ Ñ×ÌÑÀÔÓÑ ÄÌÉÎÎÏÊ, ÚÁ ËÏÔÏÒÏÊ ÓÌÅÄÕÀÔ ÄÁÎÎÙÅ). ôÁËÉÍ
+   ÏÂÒÁÚÏÍ, ÆÁËÔÉÞÅÓËÉ ÉÓÐÏÌØÚÕÅÍÏÅ ÐÒÏÓÔÒÁÎÓÔ×Ï ÂÏÌØÛÅ, ÞÅÍ ÏÂÏÚÎÁÞÅÎÎÙÊ
+   ÒÁÚÍÅÒ. ïÄÎÁËÏ, ÜÔÉ ÔÉÐÙ ÄÁÎÎÙÈ ÔÁËÖÅ ÐÏÄÄÁÀÔÓÑ ÓÖÁÔÉÀ ÉÌÉ ÍÏÇÕÔ ÂÙÔØ
+   ÓÏÈÒÁÎÅÎÙ ÎÅ × ÓÔÒÏËÏÍ ×ÉÄÅ ÞÅÒÅÚ TOAST, ÔÁË ÞÔÏ ÚÁÎÉÍÁÅÍÏÅ ÄÉÓËÏ×ÏÅ
+   ÐÒÏÓÔÒÁÎÓÔ×Ï ÍÏÖÅÔ ÔÁËÖÅ ÂÙÔØ É ÍÅÎØÛÅ, ÞÅÍ ÏÖÉÄÁÌÏÓØ.
+   
+   CHAR() - ÜÔÏ ÌÕÞÛÅÅ ÒÅÛÅÎÉÅ ÄÌÑ ÈÒÁÎÅÎÉÑ ÓÔÒÏË, ËÏÔÏÒÙÅ ÏÂÙÞÎÏ ÉÍÅÀÔ
+   ÏÄÉÎÁËÏ×ÕÀ ÄÌÉÎÕ. VARCHAR() - ÜÔÏ ÌÕÞÛÅÅ ÒÅÛÅÎÉÅ, ËÏÇÄÁ ÎÕÖÎÏ ÈÒÁÎÉÔØ
+   ÓÔÒÏËÉ ÐÅÒÅÍÅÎÎÏÊ ÄÌÉÎÙ, ÎÏ ÎÅ ÐÒÅ×ÙÛÁÀÝÉÅ ÏÐÒÅÄÅÌÅÎÎÏÇÏ ÒÁÚÍÅÒÁ. TEXT
+   - ÜÔÏ ÌÕÞÛÅÅ ÒÅÛÅÎÉÅ ÄÌÑ ÓÔÒÏË ÎÅÏÇÒÁÎÉÞÅÎÎÏÊ ÄÌÉÎÙ, Ó ÍÁËÓÉÍÁÌØÎÏ
+   ÄÏÐÕÓÔÉÍÏÊ ÄÌÉÎÏÊ × 1 ÇÉÇÁÂÁÊÔ. BYTEA ÄÌÑ ÈÒÁÎÅÎÉÑ ÂÉÎÁÒÎÙÈ ÄÁÎÎÙÈ,
+   ÚÎÁÞÅÎÉÑ ËÏÔÏÒÙÈ ÍÏÇÕÔ ×ËÌÀÞÁÔØ NULL ÂÁÊÔÙ.
+   
+    4.15.1) ëÁË ÍÎÅ ÓÏÚÄÁÔØ ÐÏÌÅ serial/Ó-Á×ÔÏ-Õ×ÅÌÉÞÅÎÉÅÍ?
+    
+   PostgreSQL ÐÏÄÄÅÒÖÉ×ÁÅÔ ÔÉРÄÁÎÎÙÈ SERIAL. ïΠÁ×ÔÏÍÁÔÉÞÅÓËÉ ÓÏÚÄÁÅÔ
+   ÐÏÓÌÅÄÏ×ÁÔÅÌØÎÏÓÔØ É ÉÎÄÅËÓ ÄÌÑ ËÏÌÏÎËÉ. îÁÐÒÉÍÅÒ:
+    CREATE TABLE person (
+        id   SERIAL,
+        name TEXT
+    );
+
+   Á×ÔÏÍÁÔÉÞÅÓËÉ ÔÒÁÎÓÌÉÒÕÅÔÓÑ ×:
+    CREATE SEQUENCE person_id_seq;
+    CREATE TABLE person (
+        id   INT4 NOT NULL DEFAULT nextval('person_id_seq'),
+        name TEXT
+    );
+    CREATE UNIQUE INDEX person_id_key ON person ( id );
+
+   óÍÏÔÒÉÔÅ ÐÏÄÒÏÂÎÏÓÔÉ Ï ÐÏÓÌÅÄÏ×ÁÔÅÌØÎÏÓÔÑÈ ÎÁ ÓÔÒÁÎÉÃÅ ÒÕËÏ×ÏÄÓÔ×Á
+   ÐÏÓ×ÑÝÅÎÎÏÊ create_sequence. ÷Ù ÔÁËÖÅ ÍÏÖÅÔÅ ÉÓÐÏÌØÚÏ×ÁÔØ ËÁÖÄÏÅ ÐÏÌÅ
+   OID × ÚÁÐÉÓÉ ËÁË ÕÎÉËÁÌØÎÏÅ ÚÎÁÞÅÎÉÅ. ïÄÎÁËÏ, ÅÓÌÉ ×ÁÍ ÎÕÖÅΠÄÁÍРÉ
+   ÐÅÒÅÚÁÇÒÕÚËÁ ÂÁÚÙ ÄÁÎÎÙÈ, ×ÁÍ ÎÅÏÂÈÏÄÉÍÏ ÉÓÐÏÌØÚÏ×ÁÔØ ËÏÍÁÎÄÕ pg_dump
+   Ó ÏÐÃÉÅÊ -o ÉÌÉ ÏÐÃÉÀ COPY WITH OIDS ÄÌÑ ÓÏÈÒÁÎÅÎÉÑ ÚÎÁÞÅÎÉÊ ÐÏÌÑ OID.
+   
+    4.15.2) ëÁË ÍÎÅ ÐÏÌÕÞÉÔØ ÚÎÁÞÅÎÉÅ ÐÒÉ ×ÓÔÁ×ËÅ SERIAL?
+    
+   ïÄÉΠÉÚ ÓÐÏÓÏÂÏ× ÓÏÓÔÏÉÔ × ÐÏÌÕÞÅÎÉÉ ÓÌÅÄÕÀÝÅÇÏ ÚÎÁÞÅÎÉÑ SERIAL ÉÚ
+   ÏÂßÅËÔÁ sequence Ó ÐÏÍÏÝØÀ ÆÕÎËÃÉÉ nextval() ÐÅÒÅÄ ×ÓÔÁ×ËÏÊ É ÚÁÔÅÍ
+   ×ÓÔÁ×ÌÑÔØ ÜÔÏ ÚÎÁÞÅÎÉÅ Ñ×ÎÏ. éÓÐÏÌØÚÕÊÔÅ ÔÁÂÌÉÃÕ-ÐÒÉÍÅÒ × 4.15.1,
+   ÞÔÏÂÙ Õ×ÉÄÅÔØ ËÁË ÜÔÏ ÄÅÌÁÅÔÓÑ × Perl:
+    new_id = output of "SELECT nextval('person_id_seq')"
+    INSERT INTO person (id, name) VALUES (new_id, 'Blaise Pascal');
+
+   úÁÔÅÍ ×Ù ÄÏÌÖÎÙ ÔÁËÖÅ ÓÏÈÒÁÎÉÔØ ÎÏ×ÏÅ ÚÎÁÞÅÎÉÅ × ÐÅÒÅÍÅÎÎÏÊ new_id ÄÌÑ
+   ÅÇÏ ÉÓÐÏÌØÚÏ×ÁÎÉÑ × ÄÒÕÇÉÈ ÚÁÐÒÏÓÁÈ (ÎÁÐÒÉÍÅÒ ÔÁËÉÈ ËÁË ×ÎÅÛÎÉÊ ËÌÀÞ
+   ÄÌÑ ÔÁÂÌÉÃÙ person). úÁÍÅÔÉÍ, ÞÔÏ ÉÍÑ Á×ÔÏÍÁÔÉÞÅÓËÉ ÓÏÚÄÁÎÎÏÇÏ ÏÂßÅËÔÁ
+   SEQUENCE ÂÕÄÅÔ __seq, ÇÄÅ table É serialcolumn
+   Ñ×ÌÑÀÔÓÑ ÓÏÏÔ×ÅÔÓÔ×ÅÎÎÏ ÉÍÅÎÁÍÉ ×ÁÛÅÊ ÔÁÂÌÉÃÙ É ×ÁÛÅÊ ËÏÌÏÎËÉ SERIAL.
+   
+   ÷ ËÁÞÅÓÔ×Å ÁÌØÔÅÒÎÁÔÉ×Ù, ×Ù ÍÏÖÅÔÅ ÐÏÌÕÞÉÔØ ÎÁÚÎÁÞÅÎÎÏÅ ÚÎÁÞÅÎÉÅ
+   SERIAL Ó ÐÏÍÏÝØÀ ÆÕÎËÃÉÉ currval() ÐÏÓÌÅ ÐÒÏ×ÅÄÅÎÉÑ ÏÂÙÞÎÏÊ ÏÐÅÒÁÃÉÉ
+   ×ÓÔÁ×ËÉ, ÎÁÐÒÉÍÅÒ
+    INSERT INTO person (name) VALUES ('Blaise Pascal');
+    new_id = output of "SELECT currval('person_id_seq')";
+
+   é ÎÁËÏÎÅÃ, ×Ù ÍÏÖÅÔÅ ÉÓÐÏÌØÚÏ×ÁÔØ ÚÎÁÞÅÎÉÅ OID, ×ÏÚÒÁÝÁÅÍÏÅ ÉÚ
+   ÏÐÅÒÔÏÒÁ INSERT ÞÔÏÂÙ Õ×ÉÄÅÔØ ÚÎÁÞÅÎÉÅ ÐÏ ÕÍÏÌÞÁÎÉÀ, ÞÔÏ
+   ÐÒÅÄÐÏÌÏÖÉÔÅÌØÎÏ Ñ×ÌÑÅÔÓÑ ÎÁÉÍÅÎÅÅ ÐÅÒÅÎÏÓÉÍÙÍ ÎÁ ÄÒÕÇÉÅ ÐÌÁÔÆÏÒÍÙ
+   ÒÅÛÅÎÉÅÍ. ÷ Perl, ÉÓÐÏÌØÚÕÑ DBI Ó ÍÏÄÕÌÅÉ Edmund Mergl'Ñ DBD::Pg,
+   ÚÎÁÞÅÎÉÅ oid ÓÔÁÎÏ×ÉÔÓÑ ÄÏÓÔÕÐÎÙÍ ÞÅÒÅÚ $sth->{pg_oid_status} ÐÏÓÌÅ
+   $sth->execute().
+   
+    4.15.3) îÅ ÍÏÖÅÔ ÌÉ ÐÏÌÕÞÉÔØÓÑ ÔÁË, ÞÔÏ ÉÓÐÏÌØÚÏ×ÁÎÉÅ currval() É nextval()
+    ÐÒÉ×ÅÄÅÔ Ë ÚÁÃÉËÌÉÒÏ×ÁÎÉÀ Ó ÄÒÕÇÉÍÉ ÐÏÌØÚÏ×ÁÔÅÌÑÍÉ?
+    
+   îÅÔ. Currval() ×ÏÚ×ÒÁÝÁÅÔ ÔÅËÕÝÅÅ ÚÎÁÞÅÎÉÅ, ÎÁÚÎÁÞÅÎÎÏÅ ×ÁÛÅÍ
+   backend'ÏÍ, Á ÎÅ ÄÒÕÇÉÍÉ ÐÏÌØÚÏ×ÁÔÅÌÑÍÉ.
+   
+    4.15.4) ðÏÞÅÍÕ ÞÉÓÌÁ ÉÚ ÍÏÅÊ ÐÏÓÌÅÄÏ×ÁÔÅÌØÎÏÓÔÉ ÎÅ ÉÓÐÏÌØÚÕÀÔÓÑ ÓÎÏ×Á ÐÒÉ
+    ÏÔÍÅÎÅ ÔÒÁÎÚÁËÃÉÉ? ðÏÞÅÍÕ ÓÏÚÄÁÀÔÓÑ ÒÁÚÒÙ×Ù ÐÒÉ ÎÕÍÅÒÁÃÉÉ × ËÏÌÏÎËÅ, ÇÄÅ Ñ
+    ÉÓÐÏÌØÚÕÀ ÐÏÓÌÅÄÏ×ÁÔÅÌØÎÏÓÔØ/SERIAL?
+    
+   äÌÑ ÒÅÁÌÉÚÁÃÉÉ ËÏÎËÕÒÅÔÎÏÓÔÉ, ÚÎÁÞÅÎÉÑ ÐÏÓÌÅÄÏ×ÁÔÅÌØÎÏÓÔÅÊ, ÐÒÉ
+   ÎÅÏÂÈÏÄÉÍÏÓÔÉ ×ÙÄÁÀÔÓÑ ×Ï ×ÒÅÍÑ ÚÁÐÕÓËÁ ÔÒÁÎÚÁËÃÉÊ É ÎÅ ÂÌÏËÉÒÕÀÔÓÑ ÄÏ
+   ÐÏÌÎÏÇÏ ×ÙÐÏÌÎÅÎÉÑ ÔÒÁÎÚÁËÃÉÊ. üÔÏ ÍÏÖÅÔ ×ÙÚÙ×ÁÔØ ÒÁÚÒÙ×Ù × ÎÕÍÅÒÁÃÉÉ
+   ÐÒÉ ÏÔÍÅÎÅ ÔÒÁÎÚÁËÃÉÊ.
+   
+    4.16) þÔÏ ÔÁËÏÅ OID? þÔÏ ÔÁËÏÅ TID?
+    
+   ðÏÌÑ OID ÓÌÕÖÁÔ ÕÎÉËÁÌØÎÙÍÉ ÉÄÅÔÉÆÉËÁÔÏÒÁÍÉ ÚÁÐÉÓÅÊ × PostgreSQL.
+   ëÁÖÄÁÑ ÚÁÐÉÓØ, ËÏÔÏÒÁÑ ÓÏÚÄÁ£ÔÓÑ × PostgreSQL ÐÏÌÕÞÁÅÔ ÕÎÉËÁÌØÎÙÊ OID.
+   ÷ÓÅ ÚÎÁÞÅÎÉÑ OID ÇÅÎÅÒÉÒÕÅÍÙÅ ×Ï ×ÒÅÍÑ initdb ÉÍÅÀÔ ÚÎÁÞÅÎÉÑ ÍÅÎØÛÅ
+   16384 (ÉÚ backend/access/transam.h). ÷ÓÅ ÓÏÚÄÁÎÎÙÅ ÐÏÌØÚÏ×ÁÔÅÌÅÍ OID
+   ÉÍÅÀÔ ÂïÌØÛÉÅ ÚÎÁÞÅÎÉÅ. ðÏ ÕÍÏÌÞÁÎÉÀ, ×ÓÅ ÜÔÉ OID Ñ×ÌÑÀÔÓÑ ÕÎÉËÁÌØÎÙÍÉ
+   ÎÅ ÔÏÌØËÏ ×ÎÕÔÒÉ ËÁËÏÊ-ÌÉÂÏ ÔÁÂÌÉÃÙ ÉÌÉ ÂÁÚÙ ÄÁÎÎÙÈ, ÎÏ É ×ÎÕÔÒÉ ×ÓÅÊ
+   óõâä PostgreSQL.
+   
+   PostgreSQL ÉÓÐÏÌØÚÕÅÔ OID × Ó×ÏÉÈ ×ÎÕÔÒÅÎÎÉÈ ÓÉÓÔÅÍÎÙÈ ÔÁÂÌÉÃÁÈ ÄÌÑ
+   Ó×ÑÚÉ ÚÁÐÉÓÅÊ É ÔÁÂÌÉÃ. úÎÁÞÅÎÉÑ OID ÍÏÇÕÔ ÂÙÔØ ÉÓÐÏÌØÚÏ×ÁÎÙ ÄÌÑ
+   ÉÄÅÎÔÉÆÉËÁÃÉÉ ÚÁÄÁÎÎÙÈ ÐÏÌØÚÏ×ÁÔÅÌÅÍ ÚÁÐÉÓÅÊ, Á ÔÁËÖÅ ÉÓÐÏÌØÚÏ×ÁÔØÓÑ
+   ÐÒÉ Ó×ÑÚÙ×ÁÎÉÑÈ. òÅËÏÍÅÎÄÕÅÔÓÑ ÉÓÐÏÌØÚÏ×ÁÔØ ÔÉРËÏÌÏÎËÉ OID ÄÌÑ
+   ÈÒÁÎÅÎÉÑ ÚÎÁÞÅÎÉÊ OID ÷Ù ÍÏÖÅÔÅ ÓÏÚÄÁÔØ ÉÎÄÅËÓ ÎÁ ÐÏÌÅ OID ÄÌÑ ÂÏÌÅÅ
+   ÂÙÓÔÒÏÇÏ ÄÏÓÔÕÐÁ.
+   
+   úÎÁÞÅÎÉÑ OID ÎÁÚÎÁÞÁÀÔÓÑ ÄÌÑ ×ÓÅÈ ÎÏ×ÙÈ ÚÁÐÉÓÅÊ ÉÚ ÃÅÎÔÒÁÌØÎÏÊ
+   ÏÂÌÁÓÔÉ, ËÏÔÏÒÙÅ ÉÓÐÏÌØÚÕÀÔÓÑ ×ÓÅÍÉ ×ÓÅÍÉ ÂÁÚÁÍÉ ÄÁÎÎÙÈ. åÓÌÉ ×Ù
+   ÈÏÔÉÔÅ ÉÚÍÅÎÉÔØ OID ÎÁ ËÁËÏÅ-ÌÉÂÏ ÄÒÕÇÏÅ ÚÎÁÞÅÎÉÅ ÉÌÉ ÅÓÌÉ ×Ù ÈÏÔÉÔÅ
+   ÓÏÚÄÁÔØ ËÏÐÉÀ ÔÁÂÌÉÃÙ Ó ÔÁËÉÍÉÖÅ OID, ÔÏ ÜÔÏ ÍÏÖÎÏ ÓÄÅÌÁÔØ ÔÁË:
+        CREATE TABLE new_table(old_oid oid, mycol int);
+        SELECT old_oid, mycol INTO new FROM old;
+        COPY new TO '/tmp/pgtable';
+        DELETE FROM new;
+        COPY new WITH OIDS FROM '/tmp/pgtable';
+
+   OID ÈÒÁÎÉÔÓÑ ËÁË 4-È ÂÁÊÔÎÏÅ ÃÅÌÏÅ É ÎÅ ÍÏÖÅÔ ÐÒÅ×ÙÛÁÔØ ÚÎÁÞÅÎÉÅ × 4
+   ÍÉÌÌÉÁÒÄÁ. ïÄÎÁËÏ, ÅÝÅ ÎÉËÔÏ ÎÅ ÓÏÏÂÝÉÌ Ï ÔÏÍ, ÞÔÏ ÔÁËÏÅ ÐÒÏÉÚÏÛÌÏ, ÎÏ
+   ÍÙ ÐÌÁÎÉÒÕÅÍ ÄÏ ÔÏÇÏ ËÁË ÜÔÏ ÓÌÕÞÉÔØÓÑ ÉÚÂÁ×ÉÔÓÑ ÏÔ ÜÔÏÇÏ ÏÇÒÁÎÉÞÅÎÉÑ.
+   
+   TID ÉÓÐÏÌØÚÕÅÔÓÑ ÄÌÑ ÉÄÅÎÔÉÆÉËÁÃÉÉ ÓÐÅÃÉÁÌØÎÙÈ ÆÉÚÉÞÅÓËÉÈ ÚÁÐÉÓÅÊ Ó
+   ÂÌÏÞÎÙÍÉ É offset ÚÎÁÞÅÎÉÑÍÉ. TID ÉÚÍÅÎÑÅÔÓÑ ÐÏÓÌÅ ÔÏÇÏ ËÁË ÚÁÐÉÓÉ
+   ÂÙÌÉ ÉÚÍÅÎÅÎÙ ÉÌÉ ÐÅÒÅÇÒÕÖÅÎÙ.
+   
+   TID ÉÓÐÏÌØÚÕÅÔÓÑ ÉÎÄÅËÓÎÙÍÉ ÚÁÐÉÓÑÍÉ × ËÁÞÅÓÔ×Å ÕËÁÚÁÔÅÌÑ ÎÁ
+   ÆÉÚÉÞÅÓËÉÅ ÚÁÐÉÓÉ.
+   
+    4.17) þÔÏ ÏÚÎÁÞÁÀÔ ÎÅËÏÔÏÒÙÅ ÔÅÒÍÉÎÙ ÉÓÐÏÌØÚÕÅÍÙÅ × PostgreSQL?
+    
+   îÅËÏÔÏÒÙÊ ÉÓÈÏÄÎÙÊ ËÏÄ É ÓÔÁÒÁÑ ÄÏËÕÍÅÎÔÁÃÉÑ ÉÓÐÏÌØÚÕÀÔ
+   ÏÂÝÅÕÐÏÔÒÅÂÉÔÅÌØÎÙÅ ÔÅÒÍÉÎÙ. ÷ÏÔ ÎÅËÏÔÏÒÙÅ ÉÚ ÎÉÈ:
+     * table, relation, class
+     * row, record, tuple
+     * column, field, attribute
+     * retrieve, select
+     * replace, update
+     * append, insert
+     * OID, serial value
+     * portal, cursor
+     * range variable, table name, table alias
+       
+   óÐÉÓÏË ÏÂÝÉÈ ÔÅÒÍÉÎÏ× ÐÏ ÂÁÚÁÍ ÄÁÎÎÙÈ ÍÏÖÎÏ ÎÁÊÔÉ ÎÁ
+   http://www.comptechnews.com/~reaster/dbdesign.html
+   
+    4.18) ðÏÞÅÍÕ Ñ ÐÏÌÕÞÁÀ ÏÛÉÂËÕ "ERROR: Memory exhausted in AllocSetAlloc()"?
+    
+   åÓÌÉ Õ ×ÁÓ ×ÅÒÓÉÑ ÎÉÖÅ 7.1, ÔÏ ÏÂÎÏ×ÌÅÎÉÅ ×ÅÒÓÉÉ ÍÏÖÅÔ ÒÅÛÉÔØ ÜÔÕ
+   ÐÒÏÂÌÅÍÕ. ôÁËÖÅ ×ÏÚÍÏÖÎÏ, ÞÔÏ Õ ×ÁÓ ÚÁËÏÎÞÉÌÁÓØ ×ÉÒÔÕÁÌØÎÁÑ ÐÁÍÑÔØ ÉÌÉ
+   ÞÔÏ ×ÁÛÅ ÑÄÒÏ ÉÍÅÅÔ ÍÁÌÅÎØËÉÊ ÌÉÍÉÔ ÎÁ ÏÐÒÅÄÅÌÅÎÎÙÅ ÒÅÓÕÒÓÙ.
+   ðÏÐÙÔÁÊÔÅÓØ ÐÅÒÅÄ ÚÁÐÕÓËÏÍ postmaster ×ÙÐÏÌÎÉÔØ ÓÌÅÄÕÀÝÉÅ ËÏÍÁÎÄÙ:
+    ulimit -d 262144
+    limit datasize 256m
+
+   ÷ ÚÁ×ÉÓÉÍÏÓÔÉ ÏÔ ËÏÍÁÎÄÎÏÇÏ ÉÎÔÅÒÐÒÅÔÁÔÏÒÁ shell, ÔÏÌØËÏ ÏÄÎÁ ÉÚ
+   ÄÁÎÎÙÈ ËÏÍÁÎÄ ×ÙÐÏÌÎÉÔÓÑ ÕÓÐÅÛÎÏ, ÎÏ ÏÎÁ ÐÏÚ×ÏÌÉÔ ×ÁÍ ÕÓÔÁÎÏ×ÉÔØ
+   ÂÏÌØÛÉÊ ÓÅÇÍÅÎÔ ÄÁÎÎÙÈ ÐÒÏÃÅÓÓÁ É ×ÏÚÍÏÖÎÏ ÒÅÛÉÔ ÐÒÏÂÌÅÍÕ. üÔÁ ËÏÍÁÎÄÁ
+   ÉÚÍÅÎÑÅÔ ÐÁÒÁÍÅÔÒÙ ÔÅËÕÝÅÇÏ ÐÒÏÃÅÓÓÁ É ×ÓÅÈ ÅÇÏ ÐÏÔÏÍËÏ×, ÓÏÚÄÁÎÎÙÈ
+   ÐÏÓÌŠţ ÚÁÐÕÓËÁ. åÓÌÉ Õ ×ÁÓ ×ÏÚÎÉËÌÁ ÐÒÏÂÌÅÍÁ Ó SQL ËÌÉÅÎÔÏÍ, ÐÏÔÏÍÕ
+   ÞÔÏ backend ×ÏÚ×ÒÁÝÁÅÔ ÓÌÉÛËÏÍ ÂÏÌØÛÏÊ ÏÂßÅÍ ÄÁÎÎÙÈ, ÐÏÐÙÔÁÊÔÅÓØ
+   ×ÙÐÏÌÎÉÔØ ÜÔÕ ËÏÍÁÎÄÕ ÐÅÒÅÄ ÚÁÐÕÓËÏÍ ËÌÉÅÎÔÁ.
+   
+    4.19) ëÁË ÍÎÅ ÕÚÎÁÔØ, ËÁËÁÑ ×ÅÒÓÉÑ PostgreSQL ÚÁÐÕÝÅÎÁ?
+    
+   éÚ psql, ÎÁÂÅÒÉÔÅ select version();
+   
+    4.20) ðÏÞÅÍÕ ÐÒÉ ÒÁÂÏÔÅ Ó ÍÏÉÍ ÂÏÌØÛÉÍ ÏÂßÅËÔÏÍ Ñ ÐÏÌÕÞÁÀ ÏÛÉÂËÕ "invalid
+    large obj descriptor"?
+    
+   ÷ÁÍ ÎÕÖÎÏ ÐÒÉ ÉÓÐÏÌØÚÏ×ÁÎÉÉ ÂÏÌØÛÏÇÏ ÏÂßÅËÔÁ ÐÏÍÅÓÔÉÔØ × ÎÁÞÁÌÅ BEGIN
+   WORK É × ËÏÎÃÅ COMMIT, Á ×ÎÕÔÒÉ ÐÏÌÕÞÉ×ÛÅÇÏÓÑ ÂÌÏËÁ lo_open ...
+   lo_close.
+   
+   ÷ ÎÁÓÔÏÑÝÉÊ ÍÏÍÅÎÔ PostgreSQL ÔÒÅÂÕÅÔ, ÞÔÏÂÙ ÐÒÉ ÚÁËÒÙÔÉÉ ÂÏÌØÛÏÇÏ
+   ÏÂßÅËÔÁ ÐÒÏÉÓÈÏÄÉÌÏ ×ÙÐÏÌÎÅÎÉÅ ÔÒÁÎÚÁËÃÉÉ. ôÁËÉÍ ÏÂÒÁÚÏÍ, ÐÅÒ×ÁÑ ÖÅ
+   ÐÏÐÙÔËÁ ÓÄÅÌÁÔØ ÞÔÏ-ÌÉÂÏ Ó ÂÏÌØÛÉÍ ÏÂßÅËÔÏÍ, ÎÅ ÓÏÂÌÀÄÁÑ ÄÁÎÎÏÇÏ
+   ÐÒÁ×ÉÌÁ ÐÒÉ×ÅÄÅÔ Ë ÓÏÏÂÝÅÎÉÀ invalid large obj descriptor, ÔÁË ËÁË ËÏÄ
+   ×ÙÐÏÌÎÑÀÝÉÊ ÒÁÂÏÔÕ ÎÁÄ ÂÏÌØÛÉÍ ÏÂßÅËÔÏÍ (ÐÏ ËÒÁÊÎÅÊ ÍÅÒÅ × ÎÁÓÔÏÑÝÉÊ
+   ÍÏÍÅÎÔ) ÂÕÄÅÔ ÇÅÎÅÒÉÒÏ×ÁÔØ ÓÏÏÂÝÅÎÉÅ Ï ÏÛÉÂËÅ ÅÓÌÉ ×Ù ÎÅ ÉÓÐÏÌØÚÕÅÔÅ
+   ÔÒÁÎÚÁËÃÉÀ.
+   
+   åÓÌÉ ×Ù ÉÓÐÏÌØÚÕÅÔÅ ÔÁËÏÊ ÉÎÔÅÒÆÅÊÓ ËÌÉÅÎÔÁ ËÁË ODBC, ×ÁÍ ×ÏÚÍÏÖÎÏ
+   ÐÏÎÁÄÏÂÉÔÓÑ ÕÓÔÁÎÏ×ÉÔØ auto-commit off.
+   
+    4.21) ëÁË ÍÎÅ ÓÏÚÄÁÔØ ËÏÌÏÎËÕ ËÏÔÏÒÁÑ ÐÏ ÕÍÏÌÞÁÎÉÀ ÂÕÄÅÔ ÓÏÄÅÒÖÁÔØ ÔÅËÕÝÅÅ
+    ×ÒÅÍÑ?
+    
+   éÓÐÏÌØÚÕÊÔÅ CURRENT_TIMESTAMP:
+CREATE TABLE test (x int, modtime timestamp DEFAULT CURRENT_TIMESTAMP );
+
+    4.22) ðÏÞÅÍÕ ÍÏÉ ÐÏÄÚÁÐÒÏÓÙ, ÉÓÐÏÌØÚÕÀÝÉÅ IN ÔÁË ÍÅÄÌÅÎÎÏ ÒÁÂÏÔÁÅÀÔ?
+    
+   ÷ ÎÁÓÔÏÑÝÉÊ ÍÏÍÅÎÔ, ÍÙ Ó×ÑÚÙ×ÁÅÍ ÐÏÚÁÐÒÏÓÙ ÄÌÑ ×ÎÅÛÎÉÈ ÚÁÐÒÏÓÏ× ÞÅÒÅÚ
+   ÐÏÓÌÅÄÏ×ÁÔÅÌØÎÙÊ ÐÅÒÅÂÏÒ ÒÅÚÕÌØÔÁÔÁ ÐÏÄÚÁÐÒÏÓÁ ÄÌÑ ËÁÖÄÏÊ ÚÁÐÉÓÉ
+   ×ÎÅÛÎÅÇÏ ÚÁÐÒÏÓÁ. ðÏÐÒÏÂÕÊÔÅ ÚÁÍÅÎÉÔØ IN ÎÁ EXISTS:
+SELECT *
+    FROM tab
+    WHERE col1 IN (SELECT col2 FROM TAB2)
+
+   ÎÁ:
+SELECT *
+    FROM tab
+    WHERE EXISTS (SELECT col2 FROM TAB2 WHERE col1 = col2)
+
+   íÙ ÎÁÄÅÅÍÓÑ ÕÂÒÁÔØ ÜÔÏ ÏÇÒÁÎÉÞÅÎÉÅ × ÂÕÄÕÝÅÍ ×ÙÐÕÓËÅ.
+   
+    4.23) ëÁË ÍÎÅ ×ÙÐÏÌÎÉÔØ ×ÎÅÛÎÅÅ Ó×ÑÚÙ×ÁÎÉÅ?
+    
+   PostgreSQL ÎÁÞÉÎÁÑ Ó ×ÅÒÓÉÉ 7.1 ÐÏÄÄÅÒÖÉ×ÁÅÔ ×ÎÅÛÎÅÅ Ó×ÑÚÙ×ÁÎÉÅ,
+   ÉÓÐÏÌØÚÕÑ ÓÔÁÎÄÁÒÔÎÙÊ ÓÉÎÔÁËÓÉÓ SQL. ÷ÏÔ Ä×Á ÐÒÉÍÅÒÁ:
+    SELECT *
+    FROM t1 LEFT OUTER JOIN t2 ON (t1.col = t2.col);
+
+   or
+    SELECT *
+    FROM t1 LEFT OUTER JOIN t2 USING (col);
+
+   üÔÏ ÉÄÅÎÔÉÞÎÙÅ ÚÁÐÒÏÓÙ Ó×ÑÚÙ×ÁÎÉÑ t1.col É t2.col, ÔÁËÖÅ ×ÏÚ×ÒÁÝÁÀÔ
+   ÌÀÂÙÅ ÎÅÓ×ÑÚÁÎÎÙÅ ÚÁÐÉÓÉ × t1 (ËÏÔÏÒÙÅ ÎÅ ÓÏ×ÐÁÄÁÀÔ Ó t2). RIGHT
+   Ó×ÑÚÙ×ÁÎÉÅ ÄÏÌÖÎÏ ÄÏÂÁ×ÉÔØ ÎÅÓ×ÑÚÁÎÎÙÅ ÚÁÐÉÓÉ t2. FULL Ó×ÑÚÙ×ÁÎÉÅ
+   ÄÏÌÖÎÏ ×ÏÚ×ÒÁÔÉÔØ ÓÏ×ÐÁ×ÛÉÅ ÚÁÐÉÓÉ ÐÌÀÓ ×ÓÅ ÎÅÓ×ÑÚÁÎÎÙÅ ÚÁÐÉÓÉ ÉÚ t1 É
+   t2. óÌÏ×Ï OUTER Ñ×ÌÑÅÔÓÑ ÎÅÏÂÑÚÁÔÅÌØÎÙÍ É ÎÁÚÎÁÞÁÅÔÓÑ × LEFT, RIGHT É
+   FULL Ó×ÑÚÙ×ÁÎÉÑÈ. ïÂÙÞÎÙÅ Ó×ÑÚÙ×ÁÎÉÑ ÎÁÚÙ×ÁÀÔÓÑ INNER Ó×ÑÚÙ×ÁÎÉÑ.
+   
+   ÷ ÐÒÅÄÙÄÕÝÉÈ ×ÅÒÓÉÑÈ, ×ÎÅÛÎÉÅ Ó×ÑÚÙ×ÁÎÉÑ ÍÏÇÌÉ ÂÙÔØ ÜÍÕÌÉÒÏ×ÁÎÙ
+   ÉÓÐÏÌØÚÕÑ UNION É NOT IN. îÁÐÒÉÍÅÒ, ËÏÇÄÁ ÐÒÏÉÓÈÏÄÉÔ Ó×ÑÚÙ×ÁÎÉÅ tab1 É
+   tab2, ÓÌÅÄÕÀÝÉÊ ÚÁÐÒÏÓ ×ÙÐÏÌÎÑÅÔ ×ÎÅÛÎÅÅ Ó×ÑÚÙ×ÁÎÉÅ Ä×ÕÈ ÔÁÂÌÉÃ:
+    SELECT tab1.col1, tab2.col2
+    FROM tab1, tab2
+    WHERE tab1.col1 = tab2.col1
+    UNION ALL
+    SELECT tab1.col1, NULL
+    FROM tab1
+    WHERE tab1.col1 NOT IN (SELECT tab2.col1 FROM tab2)
+    ORDER BY col1
+
+    4.24) ëÁË ×ÙÐÏÌÎÑÔØ ÚÁÐÒÏÓÙ, ÉÓÐÏÌØÚÕÀÝÉÅ ÎÅÓËÏÌØËÏ ÂÁÚ ÄÁÎÎÙÈ?
+    
+   îÅ ÓÕÝÅÓÔ×ÕÅÔ ÓÐÏÓÏÂÁ ÓÏÚÄÁÔØ ÚÁÐÒÏÓ Ë ÂÁÚÁÍ ÄÁÎÎÙÈ ÏÔÌÉÞÎÙÍ ÏÔ
+   ÔÅËÕÝÅÊ. ðÏÓËÏÌØËÕ PostgreSQL ÚÁÇÒÕÖÁÅÔ ÓÉÓÔÅÍÎÙÅ ËÁÔÁÌÏÇÉ ÓÐÅÃÉÆÉÞÎÙÅ
+   ÄÌÑ ÂÁÚÙ ÄÁÎÎÙÈ, ÎÅÐÏÎÑÔÎÏ ÄÁÖÅ, ËÁË ÄÏÌÖÅΠÓÅÂÑ ×ÅÓÔÉ ÔÁËÏÊ
+   ÍÅÖÂÁÚÏ×ÙÊ ÚÁÐÒÏÓ.
+   
+   òÁÚÕÍÅÅÔÓÑ, ËÌÉÅÎÔ ÍÏÖÅÔ ÏÄÎÏ×ÒÅÍÅÎÎÏ ÕÓÔÁÎÁ×ÌÉ×ÁÔØ ÓÏÅÄÉÅÎÅÎÉÑ Ó
+   ÒÁÚÌÉÞÎÙÍÉ ÂÁÚÁÍÉ ÄÁÎÎÙÈ É ÔÁËÉÈ ÏÂÒÁÚÏÍ ÏÂßÅÄÉÎÑÔØ ÉÎÆÏÒÍÁÃÉÀ ÉÚ ÎÉÈ.
+   
+    4.25) ëÁË ÍÎÅ ×ÅÒÎÕÔØ ÉÚ ÆÕÎËÃÉÉ ÎÅÓËÏÌØËÏ ÚÁÐÉÓÅÊ?
+    
+   ÷Ù ÍÏÖÅÔÅ ×ÏÚ×ÒÁÝÁÔØ ÉÚ ÆÕÎËÃÉÊ PL/pgSQL ÓÐÉÓËÉ ÒÅÚÕÌØÔÁÔÏ×, ÉÓÐÏÌØÚÕÑ
+   refcursors. óÍÏÔÒÉÔÅ
+   http://developer.postgresql.org/docs/postgres/plpgsql-cursors.html,
+   ÓÅËÃÉÀ 23.7.3.3.
+     _________________________________________________________________
+   
+                           òÁÓÛÉÒÅÎÉÑ PostgreSQL
+                                      
+    5.1) ñ ÎÁÐÉÓÁÌ ÆÕÎËÃÉÀ ÏÐÒÅÄÅÌÑÅÍÕÀ ÐÏÌØÚÏ×ÁÔÅÌÅÍ. ëÏÇÄÁ Ñ ÚÁÐÕÓËÁÀ ÅÅ ×
+    psql, ÐÏÞÅÍÕ Ñ ÐÏÌÕÞÁÀ dump core?
+    
+   ðÒÏÂÌÅÍÁ ÍÏÖÅÔ ÚÁËÌÀÞÁÔØÓÑ × ÎÅÓËÏÌØËÉÈ ×ÅÝÁÈ. ðÏÐÙÔÁÊÔÅÓØ ÓÐÅÒ×Á
+   ÐÒÏÔÅÓÔÉÒÏ×ÁÔØ ×ÁÛÕ ÆÕÎËÃÉÀ × ÏÔÄÅÌØÎÏÊ ÓÁÍÏÓÔÏÑÔÅÌØÎÏÊ ÐÒÏÇÒÁÍÍÅ.
+   
+    5.2) ëÁË Ñ ÍÏÇÕ ×ÎÅÓÔÉ ÎÅËÏÔÏÒÙÅ ËÌÁÓÓÎÙÅ ÎÏ×ÙÅ ÔÉÐÙ É ÆÕÎËÃÉÉ ×
+    PostgreSQL?
+    
+   ïÔÐÒÁרÔÅ ×ÁÛÉ ÒÁÓÛÉÒÅÎÉÑ × ÓÐÉÓÏË ÒÁÓÓÙÌËÉ pgsql-hackers É ÏÎÉ ÐÏ
+   ×ÏÚÍÏÖÎÏÓÔÉ ÂÕÄÕÔ ÐÏÍÅÝÅÎÙ × ÐÏÄËÁÔÁÌÏÇ contrib/.
+   
+    5.3) ëÁË ÍÎÅ ÎÁÐÉÓÁÔØ C ÆÕÎËÃÉÀ, ×ÏÚ×ÒÁÝÁÀÝÕÀ ÚÁÐÉÓØ?
+    
+   üÔÏ ÔÒÅÂÕÅÔ ÎÅËÏÅÇÏ ÛÁÍÁÎÓÔ×Á ÔÁË ËÁË Á×ÔÏÒÙ ÎÉËÏÇÄÁ ÎÅ ÐÒÏÂÏ×ÁÌÉ
+   ÄÅÌÁÔØ ÜÔÏ, ÈÏÔÑ × ÐÒÉÎÉÃÐÅ ÜÔÏ ×ÏÚÍÏÖÎÏ.
+   
+    5.4) ñ ÉÚÍÅÎÉÌ ÉÓÈÏÄÎÙÊ ÆÁÊÌ. ðÏÞÅÍÕ ÐÏÓÌÅ ÐÅÒÅËÏÍÐÉÌÑÃÉÉ Ñ ÎÅ ×ÉÖÕ
+    ÉÚÍÅÎÅÎÉÊ?
+    
+   æÁÊÌÙ Makefile ÎÅ ÉÍÅÀÔ ÐÒÁ×ÉÌØÎÙÈ ÚÁ×ÉÓÉÍÏÓÔÅÊ ÄÌÑ include ÆÁÊÌÏ×. ÷Ù
+   ÄÏÌÖÎÙ ×ÙÐÏÌÎÉÔØ make clean É ÚÁÔÅÍ make. åÓÌÉ ×Ù ÉÓÐÏÌØÚÕÅÔÅ GCC ×Ù
+   ÍÏÖÅÔÅ ÉÓÐÏÌØÚÏ×ÁÔØ ÏÐÃÉÀ --enable-depend × configure ÞÔÏÂÙ ÐÏÒÕÞÉÔØ
+   ËÏÍÐÉÌÑÔÏÒÕ Á×ÔÏÍÁÔÉÞÅÓËÉ ÏÔÓÌÅÖÉ×ÁÔØ ÚÁ×ÉÓÉÍÏÓÔÉ.
index 7c8494c465ac0b0f3aba67721baf176a54ed1a86..e95ec5b7c062b704d0cc96dbf7c849d88cf534da 100644 (file)
@@ -14,7 +14,7 @@
   alink="#0000ff">
     

ïÔ×ÅÔÙ ÎÁ ÞÁÓÔÏ ÚÁÄÁ×ÁÅÍÙÅ ×ÏÐÒÏÓÙ ÐÏ PostgreSQL

 
-    

äÁÔÁ ÐÏÓÌÅÄÎÅÇÏ ÏÂÎÏ×ÌÅÎÉÑ: ÷ÏÓËÒÅÓÅÎØÅ 3 íÁÒÔÁ 13:35:39 EST 2002

+    

äÁÔÁ ÐÏÓÌÅÄÎÅÇÏ ÏÂÎÏ×ÌÅÎÉÑ: ÷ÔÏÒÎÉË 9 áÐÒÅÌÑ 10:53:30 EDT 2002

 
     

áÎÇÌÉÊÓËÉÊ ×ÁÒÉÁÎÔ ÓÏÐÒÏ×ÏÖÄÁÅÔ: âÒÀÓ íÏÍØÑΠ(Bruce Momjian) (

      4.23) ëÁË ×ÙÐÏÌÎÉÔØ ×ÎÅÛÎÅÅ Ó×ÑÚÙ×ÁÎÉÅ?
      4.24) ëÁË ×ÙÐÏÌÎÑÔØ ÚÁÐÒÏÓÙ, ÉÓÐÏÌØÚÕÀÝÉÅ ÎÅÓËÏÌØËÏ
      ÂÁÚ ÄÁÎÎÙÈ?
+     4.25) ëÁË ÍÎÅ ×ÅÒÎÕÔØ ÉÚ ÆÕÎËÃÉÉ ÎÅÓËÏÌØËÏ ÚÁÐÉÓÅÊ?
      
 
     òÁÓÛÉÒÅÎÉÑ PostgreSQL
      É http://www.commandprompt.com/ppbook/.
      óÐÉÓÏË ËÎÉÇ ÐÏ PostgreSQL, ËÏÔÏÒÙÅ ÍÏÖÎÏ ËÕÐÉÔØ ÄÏÓÔÕÐÅΠÐÏ ÁÄÒÅÓÕ
      http://www.postgresql.org/books/.
-     ëÒÏÍÅ ÔÏÇÏ, ÐÏ ÁÄÒÅÓÕ /">http://techdocs.postgresql.org/
+     ëÒÏÍÅ ÔÏÇÏ, ÐÏ ÁÄÒÅÓÕ http://techdocs.postgresql.org/
      ×Ù ÍÏÖÅÔÅ ÎÁÊÔÉ ËÏÌÌÅËÃÉÀ ÔÅÈÎÉÞÅÓËÉÈ ÓÔÁÔÅÊ ÐÏÓ×ÑÝÅÎÎÙÈ PostgreSQL.

 
 
@@ -1340,6 +1341,14 @@ BYTEA           bytea           
 
     

òÁÚÕÍÅÅÔÓÑ, ËÌÉÅÎÔ ÍÏÖÅÔ ÏÄÎÏ×ÒÅÍÅÎÎÏ ÕÓÔÁÎÁ×ÌÉ×ÁÔØ ÓÏÅÄÉÅÎÅÎÉÑ Ó

     ÒÁÚÌÉÞÎÙÍÉ ÂÁÚÁÍÉ ÄÁÎÎÙÈ É ÔÁËÉÈ ÏÂÒÁÚÏÍ ÏÂßÅÄÉÎÑÔØ ÉÎÆÏÒÍÁÃÉÀ ÉÚ ÎÉÈ.

+
+    

4.25) ëÁË ÍÎÅ ×ÅÒÎÕÔØ ÉÚ ÆÕÎËÃÉÉ ÎÅÓËÏÌØËÏ ÚÁÐÉÓÅÊ?

+
+    

÷Ù ÍÏÖÅÔÅ ×ÏÚ×ÒÁÝÁÔØ ÉÚ ÆÕÎËÃÉÊ PL/pgSQL ÓÐÉÓËÉ ÒÅÚÕÌØÔÁÔÏ×, ÉÓÐÏÌØÚÕÑ

+    refcursors. óÍÏÔÒÉÔÅ 
+     href="http://developer.postgresql.org/docs/postgres/plpgsql-cursors.html">
+     http://developer.postgresql.org/docs/postgres/plpgsql-cursors.html,
+     ÓÅËÃÉÀ 23.7.3.3.

     
 
     òÁÓÛÉÒÅÎÉÑ PostgreSQL
index ed87b00b75783e2ea5b010783267444164cbc64b..7e2be17edeafd308b560b5cd5a4407b53d07c351 100644 (file)
@@ -10,7 +10,7 @@
  *
  *
  * IDENTIFICATION
- *   $Header: /cvsroot/pgsql/src/backend/tcop/utility.c,v 1.146 2002/04/09 20:35:53 tgl Exp $
+ *   $Header: /cvsroot/pgsql/src/backend/tcop/utility.c,v 1.147 2002/04/12 09:17:10 momjian Exp $
  *
  *-------------------------------------------------------------------------
  */
@@ -423,7 +423,7 @@ ProcessUtility(Node *parsetree,
                                            (ColumnDef *) stmt->def);
                        break;
                    case 'T':   /* ALTER COLUMN DEFAULT */
-                       /* 
+                       /*
                         * Recursively alter column default for table and,
                         * if requested, for descendants
                         */
@@ -455,7 +455,7 @@ ProcessUtility(Node *parsetree,
                                                   &(stmt->subtype));
                        break;
                    case 'D':   /* DROP COLUMN */
-                       /* 
+                       /*
                         * XXX We don't actually recurse yet, but what we should do would be:
                         * Recursively drop column from table and,
                         * if requested, from descendants
@@ -471,16 +471,16 @@ ProcessUtility(Node *parsetree,
                         * if requested, to descendants
                         */
                        AlterTableAddConstraint(RangeVarGetRelid(stmt->relation, false),
-                                               interpretInhOption(stmt->relation->inhOpt),
+                                               interpretInhOption(stmt->relation->inhOpt),
                                                (List *) stmt->def);
                        break;
                    case 'X':   /* DROP CONSTRAINT */
-                       /* 
+                       /*
                         * Recursively drop constraint from table and,
                         * if requested, from descendants
                         */
                        AlterTableDropConstraint(RangeVarGetRelid(stmt->relation, false),
-                                                interpretInhOption(stmt->relation->inhOpt),
+                                                interpretInhOption(stmt->relation->inhOpt),
                                                 stmt->name,
                                                 stmt->behavior);
                        break;