From: Bruce Momjian
Date: Fri, 27 May 2005 22:09:42 +0000 (+0000)
Subject: Update Farsi FAQ.
X-Git-Tag: REL8_1_0BETA1~717
X-Git-Url: http://git.ipfire.org/?a=commitdiff_plain;h=dd67cf365a76ee875d7bc3aa3788a243fce4776f;p=thirdparty%2Fpostgresql.git
Update Farsi FAQ.
Mahmoud Taghizadeh
---
diff --git a/doc/FAQ_farsi b/doc/FAQ_farsi
index b7cbb205750..95b28bb9b65 100644
--- a/doc/FAQ_farsi
+++ b/doc/FAQ_farsi
@@ -1,1566 +1,1171 @@
+PostgreSQL FAQóÃËçÃâçêÃÅ ÃÆÃ⡠çúÃâè ïñ Ãâ¦ÃËñï PostgreSQLââ¬Å
+þñóÊïÃâ¡ Ãâ¦ÃŠôÃËÃâ ï
+êçñÊî âîñÃÅ Ãâ çõÃâçàçÃÅ Ãâ ÃÂçÃÅ Ãâ: 28 ôÃâ¡Ã±ÃÅÃËñ 1383 Ãâ¡Ã¬Ã±ÃÅ
+ôÃâ¦Ã³ÃÅ
+Ãâ ïÃâ¡Ã¯Ã§Ã±Ãâ ïÃ⡠çõÃâÃÅ ÃÂçÃÅ Ãâ (òèçÃâ çÃâ ïÃâÊóÃÅ )ïñ ÃÂçÃâ
+ÃÂçöñ : Bruce Momjian pgman@candle.pha.pa.us
+Ãâ ïÃâ¡Ã¯Ã§Ã±Ãâ ïÃâ¡ ÃÂçÃÅ Ãâ èÃ⡠òèçÃâ ÃÂçñóÃÅ : m.taghizadeh@imenafzar.net
+ Ãâ¦ÃÂÃâ¦ÃËï êÃâÊââ¬ÅòçïÃâ¡ Ãâ¦Ãâ¡Ã±Ã¬Ã±Ã¯ÃÅ
-s+w+a+l+a+t+y+ k+h+ a+i+l+b+ d+r+ m+w+r+d+ PostgreSQL p+r+s+y+d+h+ m+y+ snw+n+d +
-
- t+a+r+y+x+ aMx+r+y+n+ a+c+l+a+hk a+y+n+ f+a+y+l+: 28 snh+r+یw+r+
- 1383 h+g+r+ی snm+s+ی
-
- n+gfh+d+a+r+n+d+h+ a+c+l+y+ f+a+y+l+ (z+b+a+n+ a+n+gfl+y+s+y+)d+r+
- hka+l+ hka+ddr+ : Bruce Momjian pgman@candle.pha.pa.us
-
- n+gfh+d+a+r+n+d+h+ f+a+y+l+ b+h+ z+b+a+n+ f+a+r+s+y+:
- m.taghizadeh@imenafzar.net m+hkm+w+d+ t+q+y+z+a+d+h+
- m+h+r+g+r+d+ی
-
- aMx+r+y+n+ n+s+x+h+ a+y+n+ f+a+y+l+ r+a+ m+y+t+w+a+n+y+d+ a+z+ a+y+n+
- aMd+r+s+ b+gfy+r+y+d+ http://www.PostgreSQL.org/docs/faqs/FAQ.html
-
- s+w+a+l+a+t+y+ k+h+ d+r+ m+w+r+d+ y+k+
- s+کw+ی(p+l+t+f+r+m+) x+a+c+ a+s+t+ d+r+ a+y+n+ aMd+r+s+
- g+w+a+b+ d+a+d+h+ snd+h+ a+n+d+
- http://www.PostgreSQL.org/docs/index.html
- _________________________________________________________________
-
- s+w+a+l+a+t+ e+m+w+m+y+
-
- 1.1) PostgreSQL tcy+s+t+ w+ tcgfw+n+h+ b+a+y+d+ aMn+ r+a+ t+l+f+zH
- k+r+d+?+
- 1.2) q+a+n+w+n+ k+p+y+ r+a+y+t+ (hkq+w+q+ m+e+n+w+y+) d+r+ m+w+r+d+
- PostgreSQL b+h+ tch+ c+w+r+t+ a+s+t+?+
- 1.3) PostgreSQL r+w+y+ tch+ n+w+e+ y+w+n+y+k+s+h+a+y+y+ a+g+r+a+ m+y+
- snw+d+?+
- 1.4) r+w+y+ tch+ m+hky+tjh+a+y+ i+y+r+ y+w+n+y+k+s+y+ m+y+t+w+a+n+
- aMn+ r+a+ a+g+r+a+ k+r+d+?+
- 1.5) PostgreSQL r+a+ a+z+ k+g+a+ m+y+t+w+a+n+m+ b+gfy+r+m+?+
- 1.6) a+z+ k+g+a+ x+d+m+a+t+ p+snt+y+b+a+n+y+ b+gfy+r+m+?+
- 1.7) aMx+r+y+n+ n+s+x+h+ a+e+l+a+m+ snd+h+ tcy+s+t+?+
- 1.8) tch+ m+s+t+n+d+a+t+ w+ r+a+h+n+m+a+yHy+h+a+y+y+ w+g+w+d+
- d+a+r+n+d+?+
- 1.9) tcgfw+n+h+ m+y+t+w+a+n+m+ a+z+a+snk+a+l+a+t+ snn+a+x+t+h+ snd+h+
- w+ y+a+ a+m+k+a+n+a+t+y+ k+h+ d+r+ a+y+n+ p+a+y+gfa+h+ d+a+d+h+
- w+g+w+d+ n+d+a+r+d+ m+tjl+e+ snw+m+?+
- 1.10) tcgfw+n+h+ m+y+t+w+a+n+m+ z+b+a+n+ SQL r+a+ y+a+d+ b+gfy+r+m+?+
- 1.11) aMy+a+ PostgreSQL m+snk+l+ Y2K d+a+r+d+ y+a+ x+y+r+?+
- 1.12) tcgfw+n+h+ m+y+t+w+a+n+m+ b+h+ t+y+m+ b+r+n+a+m+h+ n+w+y+s+
- PostgreSQL m+l+hkq+ snw+m+?+
- 1.13) tcgfw+n+h+ m+y+t+w+a+n+m+ y+k+ a+snk+a+l+ r+a+ b+h+ gfr+w+h+
- b+r+n+a+m+h+ n+w+y+s+ a+e+l+a+m+ k+n+m+?+
- 1.14) w+dde+y+t+ PostgreSQL d+r+ m+q+a+y+s+h+ b+a+ s+a+y+r+ DBMSh+a+
- b+h+ tch+ c+w+r+t+ a+s+t+?+
- 1.15) m+n+ tcgfw+n+h+ m+y+t+w+a+n+m+ a+z+ n+zHr+ m+a+l+y+ b+h+
- PostgreSQL k+m+k+ k+n+m+?+
-
- s+w+a+l+a+t+ m+r+b+w+tj b+h+ a+s+t+f+a+d+h+ a+z+ p+a+y+gfa+h+ d+a+d+h+
-
- 2.1) aMy+a+ h+y+tc d+r+a+y+w+r+ ODBC b+r+a+y+ PostgreSQL w+g+w+d+
- d+a+r+d+?+
- 2.2) tch+ a+b+z+a+r+h+a+y+y+ b+r+a+y+ a+s+t+f+a+d+h+ a+z+ PostgreSQL
- b+a+ c+f+hka+t+ w+b+ w+g+w+d+ d+a+r+d+?+
- 2.3) aMy+a+ PostgreSQL y+k+ w+a+s+tj k+a+r+b+r+y+ gfr+a+f+y+k+y+
- d+a+r+d+?+
- 2.4) b+a+ tch+ z+b+a+n+h+a+y+ b+r+n+a+m+h+n+w+y+s+y+ m+y+t+w+a+n+ b+a+
- PostgreSQL a+r+t+b+a+tj b+r+q+r+a+r+ k+r+d+?+
-
- s+w+a+l+a+t+ m+r+b+w+tj b+h+ r+a+h+b+r+y+
-
- 3.1) tcgfw+n+h+ m+y+t+w+a+n+m+ PostgreSQL r+a+ d+r+ sna+x+h+a+y+
- i+y+r+ a+z+ /usr/local/pgsql/ n+c+b+ k+n+m+?+
- 3.2) tcr+a+ m+w+q+e+y+ k+h+ m+n+ b+r+n+a+m+h+ postmaster r+a+ a+g+r+a+
- m+y+ k+n+m+ p+y+a+m+ Bad system call w+ y+a+ core dump m+y+gfy+r+m+?+
- 3.3) tcr+a+ m+w+q+e+y+ k+h+ m+n+ s+e+y+ m+y+k+n+m+ b+r+n+a+m+h+
- postmaster r+a+ a+g+r+a+ k+n+m+ x+tja+y+ IpcMemoryCreate m+y+
- gfy+r+m+?+
- 3.4) tcr+a+ m+w+q+e+y+ k+h+ m+n+ s+e+y+ m+y+k+n+m+ b+r+n+a+m+h+
- postmaster r+a+ a+g+r+a+ k+n+m+ x+tja+y+ IpcSemaphoreCreate m+y+
- gfy+r+m+?+
- 3.5) tcgfw+n+h+ m+y+t+w+a+n+m+ a+t+c+a+l+a+t+ s+a+y+r+ m+a+sny+n+h+a+
- r+a+ k+n+t+r+l+ k+n+m+?+
- 3.6) b+r+a+y+ k+a+r+a+y+y+ b+a+l+a+t+r+ w+ b+h+t+r+ p+a+y+gfa+h+
- d+a+d+h+ m+n+ tch+ t+n+zHy+m+a+t+y+ r+a+ b+a+y+d+ a+n+g+a+m+ d+h+m+?+
- 3.7) tch+ a+m+k+a+n+a+t+y+ b+r+a+y+ p+y+d+a+ k+r+d+n+ a+snk+a+l+
- w+g+w+d+ d+a+r+d+?+
- 3.8) tcr+a+ m+w+q+e+y+ k+h+ m+n+ m+y+x+w+a+h+m+ b+h+ p+a+y+gfa+h+
- d+a+d+h+ w+c+l+ snw+m+ p+y+a+m+ "Sorry, too many clients" m+y+
- gfy+r+m+?+
- 3.9) d+r+ sna+x+h+ pgsql_tmp tch+ tcy+z+y+ q+r+a+r+ d+a+r+d+?+
- 3.10) tcr+a+ b+r+a+y+ b+h+ r+w+z+ k+r+d+n+ n+s+x+h+ p+a+y+gfa+h+
- d+a+d+h+ m+n+ b+a+y+d+ k+l+ d+a+d+h+ h+a+ r+a+ dump w+ m+g+d+d+a+:+
- restore k+n+m+?+
- 3.11) a+z+ tch+ s+x+t+ a+f+z+a+r+y+ b+a+y+d+ a+s+t+f+a+d+h+ k+n+m+?+
-
- s+w+a+l+a+t+ e+m+l+y+a+t+y+
-
- 4.1) t+f+a+w+t+ b+y+n+ binary cursors w+ Normal cursors tcy+s+t+?+
- 4.2) m+n+ tcgfw+n+h+ m+y+t+w+a+n+m+ f+q+tj r+w+y+ tcn+d+ r+d+y+f+
- a+w+l+ y+a+ y+k+ r+d+y+f+ t+c+a+d+f+y+ d+r+x+w+a+s+t+ SELECT
- b+z+n+m+?+
- 4.3) m+n+ tcgfw+n+h+ m+y+t+w+a+n+m+ l+y+s+t+y+ a+z+ g+d+a+w+l+ y+a+
- s+a+y+r+ tcy+z+h+a+y+y+ k+h+ d+r+ psql w+g+w+d+ d+a+r+d+ r+a+
- b+b+y+n+m+?+
- 4.4) tcgfw+n+h+ y+k+ s+t+w+n+ g+d+w+l+ r+a+ hkdkf+ m+y+k+n+y+d+?+
- tcgfw+n+h+ n+w+e+ d+a+d+h+ aMn+ r+a+ e+w+dd k+n+y+m+?+
- 4.5) hkd+a+k+tkr+ a+n+d+a+z+h+ y+k+ r+d+y+f+,+ g+d+w+l+ w+ x+w+d+
- p+a+y+gfa+h+ d+a+d+h+ tcq+d+r+ a+s+t+?+
- 4.6) tcq+d+r+ f+dda+y+ d+y+s+k+ s+x+t+ b+r+a+y+ dkx+y+r+h+ k+r+d+n+
- d+a+d+h+h+a+y+ y+k+ f+a+y+l+ m+t+n+y+ m+w+r+d+ n+y+a+z+ a+s+t+?+
- 4.7) tcgfw+n+h+ m+y+t+w+a+n+m+ b+f+h+m+m+ k+h+ tch+ k+a+r+b+r+a+n+,+
- p+a+y+gfa+h+ d+a+d+h+,+ n+m+a+y+h+ w+ g+d+a+w+l+y+ d+r+ s+y+s+t+m+
- t+e+r+y+f+ snd+h+ a+s+t+?+
- 4.8) tcr+a+ d+r+x+w+a+s+t+h+a+y+ m+n+ k+n+d+ a+g+r+a+ m+y+snw+n+d+
- y+a+ tcr+a+ a+z+ n+m+a+y+h+ h+a+ a+s+t+f+a+d+h+ n+m+y+k+n+n+d+?+
- 4.9) tcgfw+n+h+ m+y+t+w+a+n+m+ n+hkw+h+ b+r+r+s+y+ d+r+x+w+a+s+t+ r+a+
- t+w+s+tj b+h+y+n+h+s+a+z+ d+r+x+w+a+s+t+h+a+ m+sna+h+d+h+ k+n+m+?+
- 4.10) n+m+a+y+h+ R-tree tcy+s+t+?+
- 4.11) b+h+y+n+h+ s+a+z+ t+k+w+y+n+y+ d+r+x+w+a+s+t+ tcy+s+t+?+
- (Genetic Query Optimizer)
- 4.12) tcgfw+n+h+ a+z+ e+b+a+r+a+t+ m+n+zHm+ b+r+a+y+ g+s+t+g+w+
- a+s+t+f+a+d+h+ k+n+m+?+ tcgfw+n+h+ g+s+t+g+w+y+y+ a+n+g+a+m+ d+h+m+
- k+h+ hks+a+s+ b+h+ m+t+n+ n+b+a+snd+?+ tcgfw+n+h+ b+r+a+y+ y+k+
- g+s+t+g+w+y+ i+y+r+ hks+a+s+ b+h+ m+t+n+ a+z+ n+m+a+y+h+
- a+s+t+f+a+d+h+ k+n+m+?+
- 4.13) tcgfw+n+h+ m+y+t+w+a+n+m+ d+r+ y+k+ d+r+x+w+a+s+t+ t+snx+y+c+
- d+h+m+ k+h+ y+k+ f+y+l+d+ NULL a+s+t+?+
- 4.14) t+f+a+w+t+ b+y+n+ gfw+n+h+h+a+y+ m+x+t+l+f+ character tcy+s+t+?+
- 4.15.1) tcgfw+n+h+ m+y+t+w+a+n+m+ y+k+ f+y+l+d+ s+r+y+a+l+ y+a+
- a+f+z+a+y+sny+ a+y+g+a+d+ k+n+m+?+
- 4.15.2) tcgfw+n+h+ m+y+t+w+a+n+m+ m+q+d+a+r+ y+k+ d+r+g+ s+r+y+a+l+y+
- r+a+ b+d+a+n+m+?+
- 4.15.3) aMیa+ t+w+a+b+e+ ()nextval w+ ()currval m+n+g+r+ b+h+
- a+یg+a+d+ snr+a+یtj race b+r+a+ی s+a+یr+
- کa+r+b+r+a+n+ m+ی snw+n+d+?+
- 4.15.4) tcr+a+ a+e+d+a+d+ s+r+یa+l+ی m+r+b+w+tj b+h+
- t+r+a+کn+snh+a+ی abort snd+h+ m+g+d+d+a+:+ a+s+t+f+a+d+h+
- n+m+ی snw+d+?+ tcr+a+ b+یn+ a+e+d+a+d+
- s+r+یa+l+ی یک f+a+c+l+h+ x+a+l+ی
- a+یg+a+d+ m+ی snw+d+?+
- 4.16) OID w+ TID tch+ h+s+t+n+d+?+
- 4.17) m+e+n+y+ b+e+ddy+ a+z+ t+r+m+h+a+ w+ k+l+m+a+t+y+ k+h+ d+r+
- PostgreSQL a+s+t+f+a+d+h+ m+y+snw+d+ tcy+s+t+?+
- 4.18) tcr+a+ m+n+ x+tja+y+ "ERROR: Memory exhausted in AllocSetAlloc"
- m+y+gfy+r+m+?+
- 4.19) a+z+ k+g+a+ t+snx+y+c+ d+h+m+ k+h+ w+y+r+a+y+sn y+a+ n+s+x+h+
- PostgreSQLy+y+ k+h+ m+n+ a+s+t+f+a+d+h+ m+y+k+n+m+ tcy+s+t+?+
- 4.20) tcr+a+ d+r+ hkیn+ a+g+r+a+ی e+m+l+یa+t+
- r+w+ی large-objecth+a+ x+tja+ی "invalid large obj
- descriptor"b+h+ w+g+w+d+ m+ی aMیd+?+
- 4.21) tcgfw+n+h+ y+k+ s+t+w+n+ a+y+g+a+d+ k+n+m+ k+h+ m+q+d+a+r+
- z+m+a+n+ g+a+r+y+ r+a+ b+h+ e+n+w+a+n+ m+q+d+a+r+ p+y+snf+r+dd
- d+a+snt+h+ b+a+snd+?+
- 4.22) tcr+a+ z+y+r+ d+r+x+w+a+s+t+h+a+y+y+ k+h+ a+z+ IN a+s+t+f+a+d+h+
- m+y+k+n+n+d+ k+n+d+ h+s+t+n+d+?+
- 4.23) tcgfw+n+h+ m+y+t+w+a+n+m+ y+k+ a+l+hka+q+ x+a+r+g+y+ (outer
- join) a+n+g+a+m+ d+h+m+?+
- 4.24) tcgfw+n+h+ m+y+t+w+a+n+ d+r+x+w+a+s+t+h+a+y+y+ a+z+ tcn+d+
- p+a+y+gfa+h+ d+a+d+h+ t+w+l+y+d+ k+r+d+?+
- 4.25) tcgfw+n+h+ x+r+w+g+y+ y+k+ t+a+b+e+ m+y+t+w+a+n+d+ tcn+d+
- r+d+y+f+ y+a+ s+t+w+n+ b+a+snd+?+
- 4.26) d+r+ t+w+a+b+e+ PL/PgSQL tcr+a+ n+m+y+t+w+a+n+ b+a+
- a+tjm+y+n+a+n+ g+d+a+w+l+ m+w+q+t+ r+a+ a+y+g+a+d+ y+a+ hkdkf+
- k+r+d+?+
- 4.27) tch+ gfz+y+n+h+h+a+y+y+ b+r+a+y+ t+k+r+a+r+ (replication)
- w+g+w+d+ d+a+r+d+?+
- 4.28) tch+ gfz+y+n+h+h+a+y+y+ b+r+a+y+ r+m+z+n+gfa+r+y+ w+g+w+d+
- d+a+r+d+?+
-
- t+w+s+e+h+ PostgreSQL
-
- 5.1) m+n+ y+k+ t+a+b+e+ n+w+snt+h+a+m+. tcgfw+n+h+ aMn+ r+a+ d+r+ psql
- a+g+r+a+ k+n+m+?+ tcr+a+ b+a+ a+g+r+a+y+ aMn+ core dump m+y+gfy+r+m+?+
- 5.2) tcgfw+n+h+ m+y+t+w+a+n+m+ d+r+ t+w+l+y+d+ n+w+e+h+a+ w+
- t+w+a+b+e+ g+d+y+d+ w+ g+a+l+b+ b+r+a+y+ PostgreSQL h+m+k+a+r+y+ w+
- m+sna+r+k+t+ d+a+snt+h+ b+a+snm+.
- 5.3) tcgfw+n+h+ m+y+t+w+a+n+m+ y+k+ t+a+b+e+ b+h+ z+b+a+n+ C
- b+n+w+y+s+m+ k+h+ x+r+w+g+y+ aMn+ y+k+ tuple (tcn+d+ t+a+y+y+)
- b+a+snd+?+
- 5.4) m+n+ y+k+ f+a+y+l+ m+n+b+e+ r+a+ e+w+dd k+r+d+h+ a+m+ tcr+a+ d+r+
- e+m+l+y+a+t+ k+a+m+p+y+l+ m+g+d+d+ aMn+ t+i+y+y+r+ d+y+d+h+ n+m+y+
- snw+d+?+
- _________________________________________________________________
-
- s+w+a+l+a+t+ e+m+w+m+y+
-
- 1.1) PostgreSQL tcy+s+t+ w+ tcgfw+n+h+ aMn+ r+a+ b+a+y+d+ t+l+f+zH k+r+d+?+
-
- PostgreSQL b+h+ c+w+r+t+ Post-Gres-Q-L t+l+f+zH m+y+snw+d+. y+k+
- f+a+y+l+ c+w+t+y+ d+r+ aMd+r+s+
- http://www.postfresql.org/postgresql.mp3 b+r+a+y+ k+s+a+n+y+ k+h+
- m+a+y+l+n+d+ t+l+f+zH c+hky+hk r+a+ b+snn+w+n+d+ w+g+w+d+ d+a+r+d+.
-
- PostgreSQL a+z+ r+w+y+ s+y+s+t+m+ m+d+y+r+y+t+ p+a+y+gfa+h+ d+a+d+h+
- POSTGRES t+w+s+e+h+ d+a+d+h+ snd+h+ a+s+t+ (h+n+w+z+ h+m+ b+e+ddy+
- m+w+a+q+e+ b+r+a+y+ s+a+d+gfy+ b+h+ aMn+ Postgres gff+t+h+ m+y+snw+d+)
- k+h+ y+k+ n+m+w+n+h+ t+hkq+y+q+a+t+y+ a+z+ p+a+y+gfa+h+ d+a+d+h+h+a+y+
- n+s+l+ b+e+d+ a+s+t+. PostgreSQL h+m+a+n+ a+l+gfw+y+ d+a+d+h+ q+w+y+
- w+ a+n+w+a+e+ d+a+d+h+ r+a+ hkf+zH k+r+d+h+ a+s+t+ w+l+y+ z+b+a+n+
- PostQuel r+a+ b+a+ y+k+ z+y+r+m+g+m+w+e+h+ p+y+snr+f+t+h+ a+z+ SQL
- g+a+y+gfz+y+n+ k+r+d+h+ a+s+t+. PostgreSQL m+t+n+ b+a+z+ b+w+d+h+ w+
- m+t+n+ k+a+m+l+ aMn+ d+r+ d+s+t+r+s+ a+s+t+.
-
- PostgreSQL t+w+s+tj y+k+ t+y+m+ b+r+n+a+m+h+n+w+y+s+ k+h+ h+m+gfy+
- d+r+ gfr+w+h+ p+s+t+ a+l+k+t+r+w+n+y+k+ b+r+n+a+m+h+n+w+y+s+a+n+
- PostgreSQL e+ddw+ h+s+t+n+d+,+ a+n+g+a+m+ m+y+snw+d+. h+m+a+h+n+gf
- k+n+n+d+h+ a+c+l+y+ d+r+ hka+l+ hka+ddr+ Marc G. Fournier b+h+
- aMd+r+s+ scrappy@PostgreSQL.org m+y+b+a+snd+. (b+r+a+y+ d+y+d+n+
- n+hkw+h+ m+l+hkq+ snd+n+ b+h+ a+y+n+ t+y+m+ q+s+m+t+ 1.6 r+a+
- b+b+y+n+y+d+). a+y+n+ t+y+m+ d+r+ hka+ddr+ m+s+yHw+l+y+t+ t+m+a+m+
- m+s+a+yHl+ m+r+b+w+tj b+h+ b+r+n+a+m+h+n+w+y+s+y+ PostgreSQL r+a+ b+r+
- e+h+d+h+ d+a+r+d+. a+y+n+ y+k+ p+r+w+zjh+ gfr+w+h+y+ a+s+t+ w+ t+hkt+
- k+n+t+r+l+ h+y+tc snr+k+t+y+ n+y+s+t+. b+r+a+y+ a+tjl+a+e+a+t+
- b+y+snt+r+ d+r+ m+w+r+d+ a+y+n+ t+y+m+ b+h+ aMd+r+s+
- http://www.PostgreSQL.org/docs/faqs/FAQ_DEV.html m+r+a+g+e+h+
- k+n+y+d+.
-
- a+w+l+y+n+ n+s+x+h+ PostgreSQL t+w+s+tj Andrew Yu and Jolly Chen b+h+
- w+g+w+d+ aMm+d+. a+f+r+a+d+ b+s+y+a+r+y+ d+r+ t+w+s+e+h+ w+ r+f+e+
- a+snk+a+l+ w+ a+n+t+q+a+l+ aMn+ snr+k+t+ k+r+d+h+a+n+d+. m+t+n+
- a+c+l+y+ Postgres k+h+ PostgreSQL a+z+ r+w+y+ aMn+ n+w+snt+h+ snd+h+
- a+s+t+,+ t+w+s+tj t+e+d+a+d+ z+y+a+d+y+ d+a+n+sng+w+y+
- k+a+r+snn+a+s+y+ a+r+snd+w+ d+a+n+sng+w+y+ k+a+r+snn+a+s+y+ w+ t+y+m+
- b+r+n+a+m+h+n+w+y+s+y+ k+h+ t+hkt+ n+zHr+ p+r+w+f+s+w+r+ Michael
- Stonebrake d+r+ d+a+n+sngfa+h+ b+r+k+l+y+,+k+a+l+y+f+r+n+y+a+ k+a+r+
- m+y+k+r+d+h+a+n+d+ n+w+snt+h+ snd+h+ a+s+t+.
-
- n+a+m+ a+c+l+y+ n+r+m+ a+f+z+a+r+ d+r+ d+a+n+sngfa+h+ b+r+k+l+y+
- Postgres b+w+d+. d+r+ s+a+l+ 1995 b+e+d+ a+z+ a+dda+f+h+ snd+n+ SQL
- n+a+m+ aMn+ b+h+ Postgres95 t+i+y+y+r+ d+a+d+h+ snd+. d+r+ s+a+l+ 1996
- n+a+m+ aMn+ b+h+ PostgreSQL t+i+y+y+r+ d+a+d+h+ snd+.
-
- 1.2) q+w+a+n+y+n+ k+p+y+ r+a+y+t+ d+r+ m+w+r+d+ PostgreSQL b+h+ tch+
- c+w+r+t+ a+s+t+?+
-
- PostgreSQL t+hkt+ q+a+n+w+n+ k+p+y+ r+a+y+t+ z+y+r+ q+r+a+r+ d+a+r+d+:
-
- PostgreSQL Data Base Management System
-
- Portions Copyright (c) 1996-2005, PostgreSQL Global Development Group
- Portions Copyright (c) 1994-6 Regents of the University of California
-
- Permission to use, copy, modify, and distribute this software and its
- documentation for any purpose, without fee, and without a written
- agreement is hereby granted, provided that the above copyright notice
- and this paragraph and the following two paragraphs appear in all
- copies.
-
- IN NO EVENT SHALL THE UNIVERSITY OF CALIFORNIA BE LIABLE TO ANY PARTY
- FOR DIRECT, INDIRECT, SPECIAL, INCIDENTAL, OR CONSEQUENTIAL DAMAGES,
- INCLUDING LOST PROFITS, ARISING OUT OF THE USE OF THIS SOFTWARE AND
- ITS DOCUMENTATION, EVEN IF THE UNIVERSITY OF CALIFORNIA HAS BEEN
- ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
-
- THE UNIVERSITY OF CALIFORNIA SPECIFICALLY DISCLAIMS ANY WARRANTIES,
- INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF
- MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE. THE SOFTWARE
- PROVIDED HEREUNDER IS ON AN "AS IS" BASIS, AND THE UNIVERSITY OF
- CALIFORNIA HAS NO OBLIGATIONS TO PROVIDE MAINTENANCE, SUPPORT,
- UPDATES, ENHANCEMENTS, OR MODIFICATIONS.
-
- q+a+n+w+n+ b+a+l+a+ l+y+s+a+n+s+ BSD k+h+ y+k+ l+y+s+a+n+s+
- k+l+a+s+y+k+ b+r+a+y+ m+t+n+h+a+y+ b+a+z+ a+s+t+ m+y+b+a+snd+. h+y+tc
- m+hkd+w+d+y+t+y+ d+r+ m+w+r+d+ n+hkw+h+ a+s+t+f+a+d+h+ a+z+ m+t+n+
- d+r+ aMn+ d+y+d+h+ n+m+y+snw+d+. m+a+ aMn+ r+a+ d+w+s+t+ d+a+r+y+m+ w+
- h+y+tc q+c+d+y+ b+r+a+y+ t+i+y+y+r+ aMn+ n+d+a+r+y+m+.
-
- 1.3) PostgreSQL r+w+y+ tch+ n+w+e+ y+w+n+y+k+s+h+a+y+y+ a+g+r+a+ m+y+
- snw+d+?+
-
- d+r+ hka+l+t+ k+l+y+ PostgreSQL r+w+y+ h+r+ p+l+t+f+r+m+ (s+k+w+y+)
- s+a+z+gfa+r+ b+a+ y+w+n+y+k+s+ a+g+r+a+ m+y+snw+d+. l+y+s+t+
- p+l+t+f+r+m+h+a+y+y+ k+h+ t+a+k+n+w+n+ PostgreSQL r+w+y+ aMn+h+a+
- n+c+b+ w+ t+s+t+ snd+h+ a+s+t+ d+r+q+s+m+t+ d+s+t+w+r+a+l+e+m+l+h+a+y+
- n+c+b+ aMm+d+h+ a+s+t+.
-
- 1.4) r+w+y+ tch+ m+hky+tjh+a+y+ i+y+r+ y+w+n+y+k+s+y+ m+y+t+w+a+n+ aMn+
- r+a+ a+g+r+a+ k+r+d+?+
-
- Client
-
- m+y+t+w+a+n+ psql, k+t+a+b+x+a+n+h+ libpq w+ s+a+y+r+ w+a+s+tjh+a+ w+
- b+r+n+a+m+h+h+a+y+ k+a+r+b+r+d+y+ r+a+ tjw+r+y+ k+a+m+p+y+l+ k+r+d+
- k+h+ r+w+y+ m+hky+tjh+a+y+ w+y+n+d+w+z+ n+y+z+ a+g+r+a+ snw+n+d+. d+r+
- a+y+n+ hka+l+t+ Client r+w+y+ w+y+n+d+w+z+ a+g+r+a+ m+y+snw+d+ w+ a+z+
- tjr+b+q+ snb+k+h+ w+ p+r+w+t+k+l+ TCP/IP b+a+ y+k+ s+r+w+r+ k+h+
- r+w+y+ y+k+ p+l+t+f+r+m+ l+y+n+w+k+s+ d+r+ hka+l+ a+g+r+a+s+t+
- a+r+t+b+a+tj b+r+q+r+a+r+ m+y+k+n+d+.y+k+ f+a+y+l+ win32.mak
- h+m+r+a+h+ b+a+ k+d+h+a+y+ PostgreSQL w+g+w+d+ d+a+r+d+ k+h+ b+r+a+y+
- k+a+m+p+y+l+ k+r+d+n+ k+t+a+b+x+a+n+h+ libpq w+ b+r+n+a+m+h+ psql m+y+
- b+a+snd+. PostgreSQL h+m+tcn+y+n+ a+m+k+a+n+ a+r+t+b+a+tj b+h+
- c+w+r+t+ ODBC r+a+ n+y+z+ d+a+r+d+.
-
- Server
-
- b+a+ a+s+t+f+a+d+h+ a+z+ Cygwin w+ k+t+a+b+x+a+n+h+ Cygnus m+y+
- t+w+a+n+ p+a+y+gfa+h+ d+a+d+h+ r+a+ r+w+y+ w+y+n+d+w+z+ NT w+ y+a+
- Win2K a+g+r+a+ k+r+d+.b+r+a+y+ d+y+d+n+ a+tjl+a+e+a+t+ b+y+snt+r+
- f+a+y+l+ pgsql/doc/FAQ_MSWIN r+a+ k+h+ b+h+m+r+a+h+ t+w+z+b+e+h+a+y+
- PostgreSQL aMm+d+h+ a+s+t+ b+b+y+n+y+d+ w+ y+a+ a+y+n+k+h+ b+h+ a+y+n+
- c+f+hkh+ http://www.PostgreSQL.org/docs/faqs/text/FAQ_MSWIN
- m+r+a+g+e+h+ k+n+y+d+.
-
- d+r+ hka+l+ hka+ddr+ y+k+ e+m+l+y+a+t+ a+n+t+q+a+l+ PostgreSQL b+h+
- r+w+y+ s+k+w+h+a+y+ Win NT/2000/XP d+r+ g+r+y+a+n+ a+s+t+. b+r+a+y+
- d+y+d+n+ w+dde+y+t+ a+y+n+ p+r+w+zjh+ b+h+ s+a+y+t+h+a+y+
- http://momjian.postgresql.org/main/writings/pgsql/win32.htm w+
- http://techdocs.postgresql.org/guides/Windows m+r+a+g+e+h+ k+n+y+d+.
-
- h+m+tcn+y+n+ y+k+ e+m+l+y+a+t+ a+n+t+q+a+l+ b+r+ r+w+y+ Novell Netware
- 6 n+y+z+ d+r+ hka+l+ a+n+g+a+m+ a+s+t+ k+h+ d+r+ s+a+y+t+
- http://forge.novell.com m+y+t+w+a+n+y+d+ a+tjl+a+e+a+t+ b+y+snt+r+
- r+a+ b+b+y+n+y+d+.
-
- 1.5) PostgreSQL r+a+ a+z+ k+g+a+ m+y+t+w+a+n+m+ b+gfy+r+m+?+
-
- PostgreSQL r+a+ a+z+ s+a+y+t+ a+c+l+y+ aMn+
- ftp://ftp.PostgreSQL.org/pub m+y+t+w+a+n+y+d+ b+gfy+r+y+d+. d+r+
- c+f+hkh+ a+c+l+y+ s+a+y+t+ l+y+s+t+ s+a+y+r+ aMd+r+s+h+a+y+y+ k+h+
- m+y+t+w+a+n+y+d+ PostgreSQL r+a+ a+z+ aMn+h+a+ b+gfy+r+y+d+ aMm+d+h+
- a+s+t+.
-
- 1.6) a+z+ k+g+a+ x+d+m+a+t+ p+snt+y+b+a+n+y+ b+gfy+r+m+?+
-
- gfr+w+h+ p+s+t+y+ a+c+l+y+ pgsql-general@PostgreSQL.org m+y+b+a+snd+.
- a+y+n+ gfr+w+h+ b+r+a+y+ b+hktk d+r+ m+w+r+d+ m+w+ddw+e+a+t+
- m+x+t+l+f+ d+r+ z+m+y+n+h+ PostgreSQL a+s+t+. b+r+a+y+ e+ddw+ snd+n+
- d+r+ a+y+n+ gfr+w+h+ p+s+t+y+ y+k+ n+a+m+h+ a+l+k+t+r+w+n+y+k+y+ b+h+
- aMd+r+s+ gfr+w+h+ b+a+ m+hkt+w+y+a+t+ی k+h+ d+r+ a+d+a+m+h+
- aMm+d+h+ a+s+t+ a+r+s+a+l+ k+n+y+d+. d+r+ q+s+m+t+ Subject tcy+z+y+
- n+n+w+y+s+y+d+.
-
+âîñÃÅ Ãâ Ãâ óîÃ⡠çÃÅ Ãâ ÃÂçÃÅ Ãâ ñç Ãâ¦ÃŠââ¬ÅêÃËçÃâ Êï çò çÃÅ Ãâ
+âïñó èïÊñÊï http://www.PostgreSQL.org/docs/faqs/FAQ.html
+óÃËçÃâçêÃÅ ÃÆÃ⡠ïñ Ãâ¦ÃËñï ÃÅ ÃÆ óéÃËÃÅ(þÃâêÃÂñÃâ¦) îçõ çóê ïñ
+çÃÅ Ãâ âïñó ìÃËçè ïçïÃ⡠ôïÃ⡠çÃâ ï
+http://www.PostgreSQL.org/docs/index.html
+
+
+
+óÃËçÃâçê ùÃâ¦ÃËÃâ¦ÃÅ
+1.1) PostgreSQL Ãâ Êóê ÃË Ãâ ïÃËÃâ Ã⡠èçÊï âÃâ ñç êÃâÃÂø ÃÆÃ±Ã¯ÃŸ
+1.2) ÃâçÃâ ÃËÃâ ÃÆÃ¾ÃŠñçÊêââ¬Å (ÃÂÃâÃËÃâ Ãâ¦Ã¹Ãâ ÃËÃÅ ) ïñ Ãâ¦ÃËñï
+PostgreSQL èÃâ¡ Ãâ Ã⡠õÃËñê çóêß
+1.3) PostgreSQLââ¬Å ñÃËÃÅ Ãâ Ãâ¡ Ãâ ÃËù ÃÅ ÃËÃâ ÃÅ ÃÆÃ³Ãâ¡Ã§ÃŠÊçìñç
+Ãâ¦ÃŠââ¬ÅôÃËïß
+1.4) ñÃËÃÅ Ãâ Ãâ¡ Ãâ¦ÃÂÊ÷Ãâ¡Ã§ÃŠúÊñ ÃÅ ÃËÃâ ÃÅ ÃÆÃ³ÃÅ Ãâ¦ÃŠââ¬ÅêÃËçÃâ âÃâ ñç
+çìñç ÃÆÃ±Ã¯ÃŸ
+1.5) PostgreSQL ñç çò ÃÆÃ¬Ã§ Ãâ¦ÃŠââ¬ÅêÃËçÃâ Ã⦠èïÊñÃâ¦ÃŸ
+1.6) çò ÃÆÃ¬Ã§ îïÃâ¦Ã§Ãª þôêÊèçÃâ ÊèïÊñÃâ¦ÃŸ
+1.7) âîñÃÅ Ãâ Ãâ óîÃ⡠çùÃâçÃ⦠ôïÃâ¡ Ãâ Êóêß
+1.8) Ãâ Ãâ¡ Ãâ¦Ã³ÃªÃâ ïçê ÃË Ã±Ã§Ãâ¡Ãâ Ãâ¦Ã§Ã¦ÃÅ Ãâ¡Ã§ÃÅ ÃÅ ÃËìÃËï ïçñÃâ ïß
+1.9) Ãâ ïÃËÃâ Ãâ¡ Ãâ¦ÃŠââ¬ÅêÃËçÃâ Ã⦠çòçÃÂ´ÃÆÃ§Ãâçê ôÃâ çîêÃ⡠ôïÃâ¡ ÃË ÃŠç
+çÃâ¦ÃÆÃ§Ãâ çêÃÅ ÃÆÃ⡠ïñ çÃÅ Ãâ þçÊïçÃ⡠ïçïÃâ¡ ÃËìÃËï Ãâ ïçñï
+Ãâ¦Ã·Ãâù ôÃËÃâ¦ÃŸ
+1.10) Ãâ ïÃËÃâ Ãâ¡ Ãâ¦ÃŠââ¬ÅêÃËçÃâ Ã⦠òèçÃâ SQL ñç Êçï èïÊñÃâ¦ÃŸ
+1.11) âÊç PostgreSQL Ãâ¦ÃÂ´ÃÆÃâ Y2Kââ¬Å ïçñï Êç îÊñß
+1.12) Ãâ ïÃËÃâ Ãâ¡ Ãâ¦ÃŠââ¬ÅêÃËçÃâ Ã⦠èÃ⡠êÃÅ Ã⦠èñÃâ çÃâ¦Ãâ¡ Ãâ ÃËÊó PostgreSQL
+Ãâ¦ÃâÃÂÃâ ôÃËÃâ¦ÃŸ
+1.13) Ãâ ïÃËÃâ Ãâ¡ Ãâ¦ÃŠââ¬ÅêÃËçÃâ Ã⦠ÃÅ ÃÆ çÃÂ´ÃÆÃ§Ãâ ñç èÃ⡠ïñÃËÃâ¡
+èñÃâ çÃâ¦Ãâ¡ Ãâ ÃËÊó çùÃâçÃâ¦ ÃÆÃâ Ãâ¦ÃŸ
+1.14) ÃËöùÊê PostgreSQLââ¬Å ïñ Ãâ¦ÃâçÊóÃ⡠èç óçÊñ DBMSÃâ¡Ã§ èÃâ¡
+Ãâ Ã⡠õÃËñê çóêß
+1.15) Ãâ¦Ãâ Ãâ ïÃËÃâ Ãâ¡ Ãâ¦ÃŠââ¬ÅêÃËçÃâ Ã⦠çò Ãâ øñ Ãâ¦Ã§ÃâÊèÃâ¡ PostgreSQL
+ÃÆÃâ¦ÃÆ ÃÆÃâ Ãâ¦ÃŸ
+
+óÃËçÃâçê Ãâ¦Ã±Ã¨ÃË÷ èÃ⡠çóêÃÂçïÃ⡠çò þçÊïçÃ⡠ïçïÃâ¡
+2.1) âÊç Ãâ¡ÃÅ Ãâ ïñçÃÅ ÃËñ ODBCââ¬Å èñçÃÅ PostgreSQL ÃËìÃËï ïçñïß
+2.2) Ãâ Ã⡠çèòçñÃâ¡Ã§ÃŠÊèñçÊçóêÃÂçïÃ⡠çò PostgreSQLââ¬Å èç
+õÃÂÃÂçê ÃËè ÃËìÃËï ïçñïß
+2.3) âÊç PostgreSQLââ¬Å ÃÅ ÃÆ ÃËçó÷ ̮̤̱̬̱ÊïñçÃÂÃÅ ÃÆÃŠïçñïß
+2.4) èç Ãâ Ã⡠òèçÃâ Ãâ¡Ã§ÃŠèñÃâ çÃâ¦Ãâ¡Ã¢â¬ÅÃâ ÃËÊóÃÅ Ãâ¦ÃŠââ¬ÅêÃËçÃâ èç
+PostgreSQLââ¬Å çñêèç÷ èñÃâñçñ ÃÆÃ±Ã¯ÃŸ
+
+óÃËçÃâçê Ãâ¦Ã±Ã¨ÃË÷ èÃ⡠ñçÃâ¡Ã¨Ã±ÃÅ
+3.1) Ãâ ïÃËÃâ Ãâ¡ Ãâ¦ÃŠââ¬ÅêÃËçÃâ Ã⦠PostgreSQLââ¬Å ñç ïñ ôçîÃâ¡Ã¢â¬ÅçÊúÊñ
+çò /usr/local/pgsql/ Ãâ õè ÃÆÃâ Ãâ¦ÃŸ
+3.2) Ãâ ñç Ãâ¦ÃËÃâùÃÅ ÃÆÃâ¡ Ãâ¦Ãâ èñÃâ çÃâ¦Ãâ¡ postmasterââ¬Å ñç çìñç Ãâ¦ÃÅ
+ÃÆÃâ Ã⦠þÊçÃ⦠Bad system callââ¬Å ÃË ÃŠç core dump ââ¬ÅÃâ¦ÃŠââ¬ÅïÊñÃâ¦ÃŸ
+3.3) Ãâ ñç Ãâ¦ÃËÃâùÃÅ ÃÆÃâ¡ Ãâ¦Ãâ óùÃÅ Ãâ¦ÃŠââ¬ÅÃÆÃâ Ã⦠èñÃâ çÃâ¦Ãâ¡ postmasterââ¬Å
+ñç çìñç ÃÆÃâ Ã⦠î÷çÃÅ IpcMemoryCreate Ãâ¦ÃŠââ¬ÅïÊñÃâ¦ÃŸ
+3.4) Ãâ ñç Ãâ¦ÃËÃâùÃÅ ÃÆÃâ¡ Ãâ¦Ãâ óùÃÅ Ãâ¦ÃŠââ¬ÅÃÆÃâ Ã⦠èñÃâ çÃâ¦Ãâ¡ postmasterââ¬Å
+ñç çìñç ÃÆÃâ Ã⦠î÷çÃÅ IpcSemaphoreCreate Ãâ¦ÃŠââ¬ÅïÊñÃâ¦ÃŸ
+3.5) Ãâ ïÃËÃâ Ãâ¡ Ãâ¦ÃŠââ¬ÅêÃËçÃâ Ã⦠çêõçÃâçê óçÊñ Ãâ¦Ã§Ã´ÃÅ Ãâ Ãâ¡Ã§ ñç
+ÃÆÃâ êñÃâ ÃÆÃâ Ãâ¦ÃŸ
+3.6) èñçÃÅ ÃÆÃ§Ã±Ã§ÃŠÊèçÃâçêñ ÃË Ã¨Ãâ¡ÃªÃ± þçÊïçÃ⡠ïçïÃâ¡ Ãâ¦Ãâ
+Ãâ Ã⡠êÃâ øÃÅ Ãâ¦Ã§ÃªÃŠñç èçÊï çÃâ ìçÃ⦠ïÃâ¡Ãâ¦ÃŸ
+3.7) Ãâ Ã⡠çÃâ¦ÃÆÃ§Ãâ çêÊèñçÊþÊïç ÃÆÃ±Ã¯Ãâ çÃÂ´ÃÆÃ§Ãâââ¬Å ÃËìÃËï
+ïçñïß
+3.8) Ãâ ñç Ãâ¦ÃËÃâùÃÅ ÃÆÃâ¡ Ãâ¦Ãâ Ãâ¦ÃŠââ¬ÅîÃËçÃâ¡Ã⦠èÃ⡠þçÊïçÃ⡠ïçïÃâ¡
+ÃËõÃâ ôÃËÃ⦠þÊçÃ⦠"Sorry, too many clients" ââ¬ÅÃâ¦ÃŠââ¬ÅïÊñÃâ¦ÃŸ
+3.9) ïñ ôçîÃâ¡ pgsql_tmp Ãâ Ãâ¡ Ãâ ÊòÃÅ Ãâñçñ ïçñïß
+3.10) Ãâ ñç èñçÊèÃ⡠ñÃËò ÃÆÃ±Ã¯Ãâ Ãâ óîÃ⡠þçÊïçÃ⡠ïçïÃâ¡ Ãâ¦Ãâ
+èçÊï ÃÆÃâ ïçïÃâ¡ Ãâ¡Ã§ ñç dumpââ¬Å ÃË Ãâ¦Ã¬Ã¯Ã¯Ã§Ãâ¹ restore ÃÆÃâ Ãâ¦ÃŸ
+3.11) çò Ãâ Ã⡠óîê çÃÂòçñÊèçÊï çóêÃÂçïÃâ¡ ÃÆÃâ Ãâ¦ÃŸ
+
+óÃËçÃâçê ùÃâ¦ÃâÊçêÃÅ
+4.1) êÃÂçÃËê èÃÅ Ãâ binary cursors ÃË Normal cursors Ãâ Êóêß
+4.2) Ãâ¦Ãâ Ãâ ïÃËÃâ Ãâ¡ Ãâ¦ÃŠââ¬ÅêÃËçÃâ Ã⦠ÃÂÃâ÷ ñÃËÃÅ Ãâ Ãâ ï ñïÊàçÃËÃâ Êç
+ÃÅ ÃÆ ñïÊàêõçïÃÂÊïñîÃËçóê SELECTââ¬Å èòÃâ Ãâ¦ÃŸ
+4.3) Ãâ¦Ãâ Ãâ ïÃËÃâ Ãâ¡ Ãâ¦ÃŠââ¬ÅêÃËçÃâ Ã⦠ÃâÊóêÊçò ìïçÃËÃâ Êç óçÊñ
+Ãâ ÊòÃâ¡Ã§ÃÅ ÃÅ ÃÆÃ⡠ïñ psqlââ¬Å ÃËìÃËï ïçñï ñç èèÃÅ Ãâ Ãâ¦ÃŸ
+4.4) Ãâ ïÃËÃâ Ãâ¡ ÃÅ ÃÆ óêÃËÃâ ìïÃËÃâ ñç ÃÂðàÃâ¦ÃŠââ¬ÅÃÆÃâ Êïß Ãâ ïÃËÃâ Ãâ¡
+Ãâ ÃËù ïçïÃ⡠âÃâ ñç ùÃËö ÃÆÃâ ÃÅ Ãâ¦ÃŸ
+4.5) ÃÂïÃÂ§ÃÆÃ«Ã± çÃâ ïçòÃâ¡ ÃÅ ÃÆ ñïÃÅ ÃÂÃÅââ¬Å ìïÃËÃâ ÃË Ã®ÃËï
+þçÊïçÃ⡠ïçïÃâ¡ Ãâ Ãâïñ çóêß
+4.6) Ãâ Ãâïñ ÃÂöçÊïÃÅ ÃÂ³ÃÆ óîê èñçÊðîÊñÃâ¡ ÃÆÃ±Ã¯Ãâ
+ïçïÃâ¡Ã¢â¬Åââ¬ÅÃâ¡Ã§ÃÅ ÃÅ ÃÆ ÃÂçÃÅ Ãâ Ãâ¦ÃªÃâ ÃÅ Ãâ¦ÃËñï Ãâ Êçò çóêß
+4.7) Ãâ ïÃËÃâ Ãâ¡ Ãâ¦ÃŠââ¬ÅêÃËçÃâ Ã⦠èÃÂÃâ¡Ãâ¦Ãâ¦ ÃÆÃâ¡ Ãâ Ãâ¡ ÃÆÃ§Ã±Ã¨Ã±Ã§Ãâ ÃÅââ¬Å
+þçÊïçÃ⡠ïçïÃâ¡ÃÅââ¬Å Ãâ Ãâ¦Ã§ÃÅ Ãâ¡ ÃË Ã¬Ã¯Ã§ÃËÃâÊïñ óÊóêÃ⦠êùñÃÅ ÃÂ
+ôïÃ⡠çóêß
+4.8) Ãâ ñç ïñîÃËçóêÃâ¡Ã§ÃÅ Ãâ¦Ãâ ÃÆÃâ ï çìñç Ãâ¦ÃŠââ¬ÅôÃËÃâ ï Êç
+Ãâ ñç çò Ãâ Ãâ¦Ã§ÃÅ Ãâ¡ Ãâ¡Ã§ çóêÃÂçïÃâ¡ Ãâ Ãâ¦ÃŠââ¬ÅÃÆÃâ Ãâ ïß
+4.9) Ãâ ïÃËÃâ Ãâ¡ Ãâ¦ÃŠââ¬ÅêÃËçÃâ Ã⦠Ãâ ÃÂÃËÃ⡠èññóÊïñîÃËçóê ñç
+êÃËó÷ èÃâ¡ÃÅ Ãâ Ãâ¡Ã¢â¬Åóçò ïñîÃËçóêÃâ¡Ã§ Ãâ¦Ã´Ã§Ãâ¡Ã¯Ãâ¡ ÃÆÃâ Ãâ¦ÃŸ
+4.10) Ãâ Ãâ¦Ã§ÃÅ Ãâ¡ R-treeââ¬Å Ãâ Êóêß
+4.11) èÃâ¡ÃÅ Ãâ Ã⡠óçò ÃÂªÃÆÃËÃÅ Ãâ ÊïñîÃËçóê Ãâ Êóêß (Genetic Query
+Optimizer)
+4.12) Ãâ ïÃËÃâ Ã⡠çò ùèçñçê Ãâ¦Ãâ øÃ⦠èñçÊìóêìÃË Ã§Ã³ÃªÃÂçïÃâ¡
+ÃÆÃâ Ãâ¦ÃŸ Ãâ ïÃËÃâ Ã⡠ìóêìÃËÊÊçÃâ ìçÃ⦠ïÃâ¡Ãâ¦ ÃÆÃâ¡ ÃÂóçó èÃâ¡ Ãâ¦ÃªÃâ
+Ãâ èçôïß Ãâ ïÃËÃâ Ã⡠èñçÃÅ ÃÅ ÃÆ ìóêìÃËÊúÊñ ÃÂóçó èÃâ¡ Ãâ¦ÃªÃâ
+çò Ãâ Ãâ¦Ã§ÃÅ Ã⡠çóêÃÂçïÃâ¡ ÃÆÃâ Ãâ¦ÃŸ
+4.13) Ãâ ïÃËÃâ Ãâ¡ Ãâ¦ÃŠââ¬ÅêÃËçÃâ Ã⦠ïñ ÃÅ ÃÆ ïñîÃËçóê êôîÊõ ïÃâ¡Ãâ¦
+ÃÆÃâ¡ ÃÅ ÃÆ ÃÂÃÅ Ãâï NULLââ¬Å çóêß
+4.14) êÃÂçÃËê èÃÅ Ãâ ïÃËÃâ Ãâ¡Ã¢â¬ÅÃâ¡Ã§ÃÅ Ãâ¦Ã®ÃªÃâàcharacter Ãâ Êóêß
+4.15.1) Ãâ ïÃËÃâ Ãâ¡ Ãâ¦ÃŠââ¬ÅêÃËçÃâ Ã⦠ÃÅ ÃÆ ÃÂÃÅ Ãâï óñÊçÃâ Êç
+çÃÂòçÊôÊçÊìçï ÃÆÃâ Ãâ¦ÃŸ
+4.15.2) Ãâ ïÃËÃâ Ãâ¡ Ãâ¦ÃŠââ¬ÅêÃËçÃâ Ã⦠Ãâ¦Ãâïçñ ÃÅ ÃÆ ïñì óñÊçÃâÊñç
+èïçÃâ Ãâ¦ÃŸ
+4.15.3) âÃÅç êÃËçèù ()nextval ÃË ()currval Ãâ¦Ãâ ìñ èÃ⡠çÃÅìçï
+ôñçÃÅ÷ race èñçÊóçÃÅñ éçñèñçÃâ Ãâ¦ÃŠôÃËÃâ ïß
+4.15.4) Ãâ ñç çùïçï óñÃÅçÃâÃÅ Ãâ¦Ã±Ã¨ÃË÷ èÃ⡠êñçéÃâ ôÃâ¡Ã§ÃÅ abort
+ôïÃâ¡ Ãâ¦Ã¬Ã¯Ã¯Ã§Ã⹠çóêÃÂçïÃâ¡ Ãâ Ãâ¦ÃŠôÃËïß Ãâ ñç èÃÅÃâ çùïçï
+óñÃÅçÃâÃÅ ÃÅé ÃÂçõÃâÃ⡠îçÃâÊçÃÅìçï Ãâ¦ÃŠôÃËïß
+4.16) OID ÃË TID Ãâ Ãâ¡ Ãâ¡Ã³ÃªÃâ ïß
+4.17) Ãâ¦Ã¹Ãâ ÊèùöÊçò êñÃâ¦Ãâ¡Ã§ ÃË ÃÆÃâÃâ¦Ã§ÃªÃÅ ÃÆÃ⡠ïñ PostgreSQLââ¬Å
+çóêÃÂçïÃâ¡ Ãâ¦ÃŠââ¬ÅôÃËï Ãâ Êóêß
+4.18) Ãâ ñç Ãâ¦Ãâ î÷çÃÅ "ERROR: Memory exhausted in AllocSetAlloc"
+Ãâ¦ÃŠââ¬ÅïÊñÃâ¦ÃŸ
+4.19) çò ÃÆÃ¬Ã§ êôîÊõ ïÃâ¡Ãâ¦ ÃÆÃâ¡ ÃËÊñçÊô Êç Ãâ óîÃâ¡
+PostgreSQLÃÅ ÃÅ ÃÆÃâ¡ Ãâ¦Ãâ çóêÃÂçïÃâ¡ Ãâ¦ÃŠââ¬ÅÃÆÃâ Ã⦠Ãâ Êóêß
+4.20) Ãâ ñç ïñ ÃÂÃÅÃâ çìñçÊùÃâ¦ÃâÃÅçê ñÃËÃÅ large-objectÃâ¡Ã§
+î÷çÃÅ "invalid large obj descriptor"èÃâ¡ ÃËìÃËï Ãâ¦ÃŠâÃÅïß
+4.21) Ãâ ïÃËÃâ Ãâ¡ ÃÅ ÃÆ óêÃËÃâ çÊìçï ÃÆÃâ Ãâ¦ ÃÆÃâ¡ Ãâ¦Ãâïçñ òÃâ¦Ã§Ãâ
+ìçñÊñç èÃ⡠ùÃâ ÃËçÃâ Ãâ¦Ãâïçñ þÊôââ¬ÅÃÂñö ïçôêÃ⡠èçôïß
+4.22) Ãâ ñç òÊñ ïñîÃËçóêÃâ¡Ã§ÃÅ ÃÅ ÃÆÃ⡠çò IN çóêÃÂçïÃâ¡
+Ãâ¦ÃŠââ¬ÅÃÆÃâ Ãâ ï ÃÆÃâ ï Ãâ¡Ã³ÃªÃâ ïß
+4.23) Ãâ ïÃËÃâ Ãâ¡ Ãâ¦ÃŠââ¬ÅêÃËçÃâ Ã⦠ÃÅ ÃÆ çÃâÃÂçÃâ îçñìÃÅ (outer join)
+çÃâ ìçÃ⦠ïÃâ¡Ãâ¦ÃŸ
+4.24) Ãâ ïÃËÃâ Ãâ¡ Ãâ¦ÃŠââ¬ÅêÃËçÃâ ïñîÃËçóêÃâ¡Ã§ÃŠÊçò Ãâ Ãâ ï þçÊïçÃâ¡
+ïçïÃ⡠êÃËÃâÊï ÃÆÃ±Ã¯ÃŸ
+4.25) Ãâ ïÃËÃâ Ã⡠îñÃËìÃÅ ÃÅ ÃÆ êçèù Ãâ¦ÃŠââ¬ÅêÃËçÃâ ï Ãâ Ãâ ï ñïÃÅ ÃÂ
+Êç óêÃËÃâ èçôïß
+4.26) ïñ êÃËçèù PL/PgSQL Ãâ ñç Ãâ Ãâ¦ÃŠââ¬ÅêÃËçÃâ èç ç÷Ãâ¦ÃÅ Ãâ çÃâ
+ìïçÃËÃâ Ãâ¦ÃËÃâê ñç çÊìçï Êç ÃÂðÃÂ ÃÆÃ±Ã¯ÃŸ
+4.27) Ãâ Ã⡠ïòÃÅ Ãâ Ãâ¡Ã¢â¬ÅÃâ¡Ã§ÃŠÊèñçÃÅ ÃÂªÃÆÃ±Ã§Ã± (replication) ÃËìÃËï
+ïçñïß
+4.28) Ãâ Ã⡠ïòÃÅ Ãâ Ãâ¡Ã¢â¬ÅÃâ¡Ã§ÃŠÊèñçÊñÃâ¦Ã²Ãâ ïçñÃÅ ÃËìÃËï ïçñïß
+
+êÃËóùÃâ¡ PostgreSQL
+5.1) Ãâ¦Ãâ ÃÅ ÃÆ êçèù Ãâ ÃËôêÃâ¡Ã¢â¬ÅçÃâ¦. Ãâ ïÃËÃâ Ã⡠âÃâ ñç ïñ psql
+çìñç ÃÆÃâ Ãâ¦ÃŸ Ãâ ñç èç çìñçÊâÃâ core dump Ãâ¦ÃŠââ¬ÅïÊñÃâ¦ÃŸ
+5.2) Ãâ ïÃËÃâ Ãâ¡ Ãâ¦ÃŠââ¬ÅêÃËçÃâ Ã⦠ïñ êÃËÃâÊï Ãâ ÃËùââ¬ÅÃâ¡Ã§ ÃË ÃªÃËçèù
+ìïÊï ÃË Ã¬Ã§Ãâè èñçÃÅ PostgreSQLââ¬Å Ãâ¡Ãâ¦ÃÆÃ§Ã±ÃÅ ÃË Ãâ¦Ã´Ã§ÃÂ±ÃÆÃª
+ïçôêÃ⡠èçôÃâ¦.
+5.3) Ãâ ïÃËÃâ Ãâ¡ Ãâ¦ÃŠââ¬ÅêÃËçÃâ Ã⦠ÃÅ ÃÆ êçèù èÃ⡠òèçÃâ C èÃâ ÃËÊóÃâ¦
+ÃÆÃ⡠îñÃËìÊâÃâ ÃÅ ÃÆ ââ¬Åtuple (Ãâ Ãâ ï êçÃÅ ÃÅ ) èçôïß
+5.4) Ãâ¦Ãâ ÃÅ ÃÆ ÃÂçÃÅ Ãâ Ãâ¦Ãâ èù ñç ùÃËö ÃÆÃ±Ã¯Ã⡠çÃ⦠Ãâ ñç ïñ
+ùÃâ¦ÃâÊçê ̮̤Ãâ¦Ã¾ÃÅ Ãâ Ãâ¦Ã¬Ã¯Ã¯ âÃâ êúÊÊñ ïÊïÃâ¡ Ãâ Ãâ¦ÃŠââ¬ÅôÃËïß
+
+
+
+
+óÃËçÃâçê ùÃâ¦ÃËÃâ¦ÃÅ
+1.1) PostgreSQL Ãâ Êóê ÃË Ãâ ïÃËÃâ Ã⡠âÃâ ñç èçÊï êÃâÃÂø ÃÆÃ±Ã¯ÃŸ
+PostgreSQL èÃ⡠õÃËñê Post-Gres-Q-Lââ¬Å êÃâÃÂø Ãâ¦ÃŠââ¬ÅôÃËï. ÃÅ ÃÆ ÃÂçÃÅ Ãâ
+õÃËêÊïñ âïñó http://www.postfresql.org/postgresql.mp3ââ¬Å èñçÃÅ
+ÃÆÃ³Ã§Ãâ ÃÅ ÃÆÃâ¡ Ãâ¦Ã§ÃÅ ÃâÃâ ï êÃâÃÂø õÃÂÊàñç èôÃâ ÃËÃâ ï ÃËìÃËï
+ïçñï.
+PostgreSQL çò ñÃËÊóÊóêÃ⦠Ãâ¦Ã¯ÃŠñÊê þçÊïçÃ⡠ïçïÃâ¡ POSTGRES
+êÃËóùÃ⡠ïçïÃ⡠ôïÃ⡠çóê (Ãâ¡Ãâ ÃËò Ãâ¡Ã⦠èùöÃÅ Ãâ¦ÃËçÃâù èñçÃÅ
+óçïïÊèÃ⡠âÃâ Postgres ïÃÂêÃâ¡ Ãâ¦ÃŠââ¬ÅôÃËï) ÃÆÃâ¡ ÃÅ ÃÆ Ãâ Ãâ¦ÃËÃâ Ãâ¡
+êÃÂÃâÃÅ ÃâçêÊçò þçÊïçÃ⡠ïçïÃâ¡Ã¢â¬ÅÃâ¡Ã§ÃÅ Ãâ óÃâ èùï çóê.
+PostgreSQL Ãâ¡Ãâ¦Ã§Ãâ çÃâïÃËÊïçïÃâ¡ ÃâÃËÃÅ ÃË Ã§Ãâ ÃËçù ïçïÃ⡠ñç
+ÃÂÃÂø ÃÆÃ±Ã¯Ã⡠çóê ÃËÃâÊòèçÃâ PostQuel ñç èç ÃÅ ÃÆ
+òÊñÃâ¦Ã¬Ãâ¦ÃËùÃ⡠þÊôñÃÂêÃ⡠çò SQL ìçÊïòÃÅ Ãâ ÃÆÃ±Ã¯Ã⡠çóê.
+PostgreSQL Ãâ¦ÃªÃâ èçò èÃËïÃâ¡ ÃË Ãâ¦ÃªÃâ ̮̤Ãâ¦Ãâ âÃâ ïñ ïóêñó
+çóê.
+PostgreSQL êÃËó÷ ÃÅ ÃÆ êÃÅ Ã⦠èñÃâ çÃâ¦Ãâ¡Ã¢â¬ÅÃâ ÃËÊó ÃÆÃâ¡ Ãâ¡Ãâ¦Ã¯ÃŠïñ
+ïñÃËÃ⡠þóê çÃâ̮̻̱ÃËÃâ ÃÅ ÃÆ èñÃâ çÃâ¦Ãâ¡Ã¢â¬ÅÃâ ÃËÊóçÃâ PostgreSQL
+ùöÃË Ãâ¡Ã³ÃªÃâ ïÊçÃâ ìçÃ⦠Ãâ¦ÃŠââ¬ÅôÃËï. Ãâ¡Ãâ¦Ã§Ãâ¡Ãâ ï ÃÆÃâ Ãâ ïÃ⡠çõÃâÃÅ
+ïñ ÃÂçÃâ ÃÂçöñ Marc G. Fournierââ¬Å èÃ⡠âïñó scrappy@PostgreSQL.org
+Ãâ¦ÃŠââ¬Åèçôï. (èñçÊïÊïÃâ Ãâ ÃÂÃËÃâ¡ Ãâ¦ÃâÃÂÃâ ôïÃâ èÃ⡠çÃÅ Ãâ êÃÅ Ãâ¦
+ÃâóÃâ¦Ãª 1.6 ñç èèÃÅ Ãâ Êï). çÃÅ Ãâ êÃÅ Ã⦠ïñ ÃÂçöñ Ãâ¦Ã³Ã¦ÃËÃâÊê
+êÃâ¦Ã§Ã⦠Ãâ¦Ã³Ã§Ã¦Ãâ Ãâ¦Ã±Ã¨ÃË÷ èÃ⡠èñÃâ çÃâ¦Ãâ¡Ã¢â¬ÅÃâ ÃËÊóÃÅ PostgreSQL ñç
+èñ ùÃâ¡Ã¯Ã⡠ïçñï. çÃÅ Ãâ ÃÅ ÃÆ þñÃËÃËÃ⡠ïñÃËÃâ¡ÃŠçóê ÃË ÃªÃÂê
+ÃÆÃâ êñÃâ Ãâ¡ÃÅ Ãâ ôÃÂ±ÃÆÃªÃÅ Ãâ Êóê. èñçÊç÷Ãâçùçê èÊôêñ ïñ
+Ãâ¦ÃËñï çÃÅ Ãâ êÃÅ Ã⦠èÃ⡠âïñó
+http://www.PostgreSQL.org/docs/faqs/FAQ_DEV.html Ãâ¦Ã±Ã§Ã¬Ã¹Ãâ¡ ÃÆÃâ Êï.
+çÃËÃâÃÅ Ãâ Ãâ óîÃâ¡ PostgreSQLââ¬Å êÃËó÷ Andrew Yu and Jolly Chen èÃâ¡
+ÃËìÃËï âÃâ¦Ã¯. çÃÂñçï èóÊçñÊïñ êÃËóùÃâ¡ ÃË Ã±ÃÂù çÃÂ´ÃÆÃ§Ãâ ÃË
+çÃâ êÃâçÃâ âÃâ ôÃÂ±ÃÆÃª ÃÆÃ±Ã¯Ãâ¡Ã¢â¬ÅçÃâ ï. Ãâ¦ÃªÃâ çõÃâÃÅ Postgres ÃÆÃâ¡
+PostgreSQL çò ñÃËÊâÃâ Ãâ ÃËôêÃ⡠ôïÃ⡠çóêÊêÃËó÷ êùïçï
+òÊçïÊïçÃâ ôìÃËÃÅ ÃÆÃ§Ã±Ã´Ãâ çóÊçñôïÃË Ã¯Ã§Ãâ ôìÃËÃÅ
+̮̤̱̫Ãâ çóÃÅ ÃË ÃªÃÅ Ã⦠èñÃâ çÃâ¦Ãâ¡Ã¢â¬ÅÃâ ÃËÊóÃÅ ÃÆÃ⡠êÃÂê Ãâ øñ
+þñÃËÃÂóÃËñ Michael Stonebrake ïñ ïçÃâ ôïçÃâ¡
+èÃÂ±ÃÆÃâÃÅ ÃÅââ¬Å̮̤ÃâÃÅ ÃÂñÃâ Êç ̮̤̱ Ãâ¦ÃŠââ¬ÅÃÆÃ±Ã¯Ãâ¡Ã¢â¬ÅçÃâ ï Ãâ ÃËôêÃâ¡
+ôïÃ⡠çóê.
+Ãâ çÃ⦠çõÃâÃÅ Ãâ ñÃ⦠çÃÂòçñ ïñ ïçÃâ ôïçÃ⡠èÃÂ±ÃÆÃâÃÅ Postgresââ¬Å
+èÃËï. ïñ óçÃâ 1995 èùï çò çöçÃÂÃ⡠ôïÃâ SQL Ãâ çÃ⦠âÃâ èÃâ¡
+Postgres95 êúÊÊñ ïçïÃ⡠ôï. ïñ óçÃâ 1996 Ãâ çÃ⦠âÃâ èÃâ¡
+PostgreSQL êúÊÊñ ïçïÃ⡠ôï.
+1.2) ÃâÃËçÃâ ÃÅ Ãâ ÃÆÃ¾ÃŠñçÊê ïñ Ãâ¦ÃËñï PostgreSQL èÃâ¡ Ãâ Ã⡠õÃËñê
+çóêß
+PostgreSQL êÃÂê ÃâçÃâ ÃËÃâ ÃÆÃ¾ÃŠñçÊê òÊñ Ãâñçñ ïçñï:
+PostgreSQL Data Base Management System
+Portions copyright (c) 1996-2004, PostgreSQL Global Development Group Portions
+Copyright (c) 1994-6 Regents of the University of California
+Permission to use, copy, modify, and distribute this software and its
+documentation for any purpose, without fee, and without a written agreement is
+hereby granted, provided that the above copyright notice and this paragraph and
+the following two paragraphs appear in all copies.
+IN NO EVENT SHALL THE UNIVERSITY OF CALIFORNIA BE LIABLE TO ANY PARTY FOR
+DIRECT, INDIRECT, SPECIAL, INCIDENTAL, OR CONSEQUENTIAL DAMAGES, INCLUDING LOST
+PROFITS, ARISING OUT OF THE USE OF THIS SOFTWARE AND ITS DOCUMENTATION, EVEN IF
+THE UNIVERSITY OF CALIFORNIA HAS BEEN ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+THE UNIVERSITY OF CALIFORNIA SPECIFICALLY DISCLAIMS ANY WARRANTIES, INCLUDING,
+BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A
+PARTICULAR PURPOSE. THE SOFTWARE PROVIDED HEREUNDER IS ON AN "AS IS" BASIS, AND
+THE UNIVERSITY OF CALIFORNIA HAS NO OBLIGATIONS TO PROVIDE MAINTENANCE, SUPPORT,
+UPDATES, ENHANCEMENTS, OR MODIFICATIONS.
+ÃâçÃâ ÃËÃâ èçÃâç ÃâÊóçÃâ ó BSD ÃÆÃâ¡ ÃÅ ÃÆ ÃâÊóçÃâ ó ÃÆÃâçóÃÅ ÃÆ
+èñçÃÅ Ãâ¦ÃªÃâ ââ¬ÅÃâ¡Ã§ÃŠèçò çóê Ãâ¦ÃŠââ¬Åèçôï. Ãâ¡ÃÅ Ãâ Ãâ¦ÃÂïÃËïÊêÃÅ
+ïñ Ãâ¦ÃËñï Ãâ ÃÂÃËÃ⡠çóêÃÂçïÃ⡠çò Ãâ¦ÃªÃâ ïñ âÃâ ïÊïÃâ¡
+Ãâ Ãâ¦ÃŠââ¬ÅôÃËï. Ãâ¦Ã§ âÃâ ñç ïÃËóê ïçñÃÅ Ã⦠ÃË Ãâ¡ÃÅ Ãâ ÃâõïÊèñçÃÅ
+êúÊÊñ âÃâ Ãâ ïçñÃÅ Ãâ¦.
+1.3) PostgreSQLââ¬Å ñÃËÃÅ Ãâ Ãâ¡ Ãâ ÃËù ÃÅ ÃËÃâ ÃÅ ÃÆÃ³Ãâ¡Ã§ÃŠÊçìñç
+Ãâ¦ÃŠââ¬ÅôÃËïß
+ïñ ÃÂçÃâê ÃÆÃâÃÅ PostgreSQL ñÃËÃÅ Ãâ¡Ã± þÃâêÃÂñÃ⦠(ÃÂ³ÃÆÃËÃÅ ) óçòïçñ
+èç ÃÅ ÃËÃâ ÃÅ ÃÆÃ³ çìñç Ãâ¦ÃŠââ¬ÅôÃËï. ÃâÊóê þÃâêÃÂñÃâ¦Ãâ¡Ã§ÃÅ ÃÅ ÃÆÃâ¡
+êÃÂ§ÃÆÃâ ÃËÃâ PostgreSQLââ¬Å ñÃËÊâÃâ Ãâ¡Ã§ Ãâ õè ÃË ÃªÃ³Ãª ôïÃ⡠çóê
+ïñÃâóÃâ¦Ãª ïóêÃËñçÃâùÃâ¦ÃâÃâ¡Ã§ÃÅ Ãâ õè âÃâ¦Ã¯Ã⡠çóê.
+1.4) ñÃËÃÅ Ãâ Ãâ¡ Ãâ¦ÃÂÊ÷Ãâ¡Ã§ÃŠúÊñ ÃÅ ÃËÃâ ÃÅ ÃÆÃ³ÃÅ Ãâ¦ÃŠââ¬ÅêÃËçÃâ âÃâ ñç
+çìñç ÃÆÃ±Ã¯ÃŸ
+Client
+Ãâ¦ÃŠââ¬ÅêÃËçÃâ psql, ̨̮̻̤̬̤Ãâ Ãâ¡ libpq ÃË Ã³Ã§ÃŠñ ÃËçó÷Ãâ¡Ã§ ÃË
+èñÃâ çÃâ¦Ãâ¡Ã¢â¬ÅÃâ¡Ã§ÃÅ ÃÆÃ§Ã±Ã¨Ã±Ã¯ÃŠñç ÷ÃËñÃÅ ÃÆÃ§Ãâ¦Ã¾ÃÅ Ãâ ÃÆÃ±Ã¯ ÃÆÃâ¡
+ñÃËÃÅ Ãâ¦ÃÂÊ÷Ãâ¡Ã§ÃÅ ÃËÃÅ Ãâ ïÃËò Ãâ Êò çìñç ôÃËÃâ ï. ïñ çÃÅ Ãâ
+ÃÂçÃâê Client ñÃËÃÅ ÃËÃÅ Ãâ ïÃËò çìñç Ãâ¦ÃŠââ¬ÅôÃËï ÃË Ã§Ã² ÷ñèÃâ
+ôÃÂ¨ÃÆÃâ¡ ÃË Ã¾Ã±ÃËÃÂªÃÆÃâ TCP/IP èç ÃÅ ÃÆ óñÃËñ ÃÆÃ⡠ñÃËÃÅ ÃÅ ÃÆ þÃâêÃÂñÃâ¦
+ÃâÃÅ Ãâ ÃËÃÆÃ³ ïñ ÃÂçÃâ çìñçóê çñêèç÷ èñÃâñçñ
+Ãâ¦ÃŠââ¬ÅÃÆÃâ ï.ÃÅ ÃÆ ÃÂçÃÅ Ãâ win32.mak Ãâ¡Ãâ¦Ã±Ã§Ã⡠èç ÃÆÃ¯Ãâ¡Ã§ÃÅ PostgreSQL
+ÃËìÃËï ïçñï ÃÆÃ⡠èñçÃÅ ÃÆÃ§Ãâ¦Ã¾ÃÅ Ãâ ÃÆÃ±Ã¯Ãâ ̨̮̻̤̬̤Ãâ Ãâ¡ libpq ÃË
+èñÃâ çÃâ¦Ãâ¡ psql Ãâ¦ÃŠââ¬Åèçôï. Pââ¬ÅostgreSQLââ¬Å Ãâ¡Ãâ¦Ãâ Ãâ ÃÅ Ãâ çÃâ¦ÃÆÃ§Ãâ
+çñêèç÷ èÃ⡠õÃËñê ODBCââ¬Å ñç Ãâ Êò ïçñï.
+Server
+èç çóêÃÂçïÃ⡠çò Cygwinââ¬Å ÃË ÃÆÃªÃ§Ã¨Ã®Ã§Ãâ Ãâ¡ Cygnus Ãâ¦ÃŠââ¬ÅêÃËçÃâ
+þçÊïçÃ⡠ïçïÃ⡠ñç ñÃËÃÅ ÃËÃÅ Ãâ ïÃËò NT ÃË ÃŠç Win2K çìñç
+ÃÆÃ±Ã¯.èñçÊïÊïÃâ ç÷Ãâçùçê èÊôêñ ÃÂçÃÅ Ãâ pgsql/doc/FAQ_MSWIN
+ââ¬Åñç ÃÆÃ⡠èÃâ¡Ãâ¦Ã±Ã§Ã⡠êÃËòèùââ¬ÅÃâ¡Ã§ÃÅ PostgreSQL âÃâ¦Ã¯Ã⡠çóê
+èèÃÅ Ãâ Êï ÃË ÃŠç çÃÅ Ãâ ÃÆÃ⡠èÃ⡠çÃÅ Ãâ õÃÂÃÂÃâ¡
+http://www.PostgreSQL.org/docs/faqs/text/FAQ_MSWIN Ãâ¦Ã±Ã§Ã¬Ã¹Ãâ¡ ÃÆÃâ Êï.
+ïñ ÃÂçÃâ ÃÂçöñ ÃÅ ÃÆ ùÃâ¦ÃâÊçê çÃâ êÃâçÃâ PostgreSQL èÃ⡠ñÃËÃÅ
+ÃÂ³ÃÆÃËÃâ¡Ã§ÃÅ Win NT/2000/XP ïñ ìñÊçÃâ çóê. èñçÊïÊïÃâ ÃËöùÊê
+çÃÅ Ãâ þñÃËÃËÃ⡠èÃ⡠óçÊêââ¬ÅÃâ¡Ã§ÃÅ
+http://momjian.postgresql.org/main/writings/pgsql/win32.htm ÃË
+http://techdocs.postgresql.org/guides/Windows Ãâ¦Ã±Ã§Ã¬Ã¹Ãâ¡ ÃÆÃâ Êï.
+Ãâ¡Ãâ¦Ãâ Ãâ ÃÅ Ãâ ÃÅ ÃÆ ùÃâ¦ÃâÊçê çÃâ êÃâçÃâ èñ ñÃËÃÅ Novell Netware 6 Ãâ Êò
+ïñ ÃÂçÃâ çÃâ ìçÃ⦠çóê ÃÆÃ⡠ïñ óçÊê http://forge.novell.com
+Ãâ¦ÃŠââ¬ÅêÃËçÃâ Êï ç÷Ãâçùçê èÊôêñ ñç èèÃÅ Ãâ Êï.
+1.5) PostgreSQL ñç çò ÃÆÃ¬Ã§ Ãâ¦ÃŠââ¬ÅêÃËçÃâ Ã⦠èïÊñÃâ¦ÃŸ
+PostgreSQLââ¬Å ñç çò óçÊê çõÃâÊâÃâ ftp://ftp.PostgreSQL.org/pub
+Ãâ¦ÃŠââ¬ÅêÃËçÃâ Êï èïÊñÊï. ïñ õÃÂÃÂÃ⡠çõÃâÊóçÊê ÃâÊóê
+óçÊñ âïñóÃâ¡Ã§ÃÅ ÃÅ ÃÆÃâ¡ Ãâ¦ÃŠââ¬ÅêÃËçÃâ Êï PostgreSQLââ¬Å ñç çò
+âÃâ Ãâ¡Ã§ èïÊñÊï âÃâ¦Ã¯Ã⡠çóê.
+1.6) çò ÃÆÃ¬Ã§ îïÃâ¦Ã§Ãª þôêÊèçÃâ ÊèïÊñÃâ¦ÃŸ
+ïñÃËÃ⡠þóêÊçõÃâÃÅ pgsql-general@PostgreSQL.org Ãâ¦ÃŠââ¬Åèçôï. çÃÅ Ãâ
+ïñÃËÃ⡠èñçÊèÃÂë ïñ Ãâ¦ÃËñï Ãâ¦ÃËöÃËùçê Ãâ¦Ã®ÃªÃâàïñ òÃâ¦ÃÅ Ãâ Ãâ¡
+PostgreSQL çóê. èñçÊùöÃË Ã´Ã¯Ãâ ïñ çÃÅ Ãâ ïñÃËÃ⡠þóêÃÅ ÃÅ ÃÆ
+Ãâ çÃâ¦Ã⡠çÃâ̮̻̱ÃËÃâ ÃÅ ÃÆÃŠèÃ⡠âïñó ïñÃËÃ⡠èç Ãâ¦ÃÂêÃËÊçêÃÅ ÃÆÃâ¡
+ïñ çïçÃâ¦Ã⡠âÃâ¦Ã¯Ã⡠çóê çñóçÃâ ÃÆÃâ Êï. ïñ ÃâóÃâ¦Ãª Subject
+Ãâ ÊòÃÅ Ãâ Ãâ ÃËÊóÊï.
subscribe
end
-
- aMd+r+s+ gfr+w+h+: pgsql-general-request@PostgreSQL.org
-
- h+m+tcn+y+n+ y+k+ gfr+w+h+ p+s+t+y+ h+m+ b+h+ c+w+r+t+ a+r+s+a+l+
- tck+y+d+h+ p+y+a+m+h+a+ w+g+w+d+ d+a+r+d+. b+r+a+y+ e+ddw+ snd+n+ d+r+
- a+y+n+ gfr+w+h+ y+k+ n+a+m+h+ b+a+ m+hkt+w+y+a+t+ z+y+r+ b+h+
- a+یn+ aMd+r+s+ a+r+s+a+l+ k+n+y+d+.
- pgsql-general-digest-request@PostgreSQL.org
-
+âïñó ïñÃËÃâ¡: pgsql-general-request@PostgreSQL.org
+Ãâ¡Ãâ¦Ãâ Ãâ ÃÅ Ãâ ÃÅ ÃÆ ïñÃËÃ⡠þóêÃÅ Ãâ¡Ã⦠èÃ⡠õÃËñê çñóçÃâ Ãâ ÃÆÃŠïÃâ¡
+þÊçÃâ¦Ãâ¡Ã§ ÃËìÃËï ïçñï. èñçÊùöÃË Ã´Ã¯Ãâ ïñ çÃÅ Ãâ ïñÃËÃâ¡ ÃÅ ÃÆ
+Ãâ çÃâ¦Ã⡠èç Ãâ¦ÃÂêÃËÊçê òÊñ èÃ⡠çÃÅÃâ âïñó çñóçÃâ ÃÆÃâ Êï.
+pgsql-general-digest-request@PostgreSQL.org
subscribe
end
-
- d+r+ a+y+n+ gfr+w+h+ h+r+ m+w+q+e+ hkg+m+ n+a+m+h+h+a+ b+h+ 30
- k+y+l+w+b+a+y+t+ r+s+y+d+ b+r+a+y+ t+m+a+m+ a+e+dda+H' a+r+s+a+l+ m+y+
- snw+d+.
-
- gfr+w+h+ p+s+t+y+ b+r+r+s+y+ a+1+snk+a+l+a+t+ h+m+ w+g+w+d+ d+a+r+d+.
- b+r+a+y+ e+ddw+ snd+n+ d+r+ a+y+n+ gfr+w+h+ y+k+ n+a+m+h+ b+a+
- m+hkt+w+y+a+t+ z+y+r+ b+h+ pgsql-bugs-request@PostgreSQL.org
- a+r+s+a+l+ k+n+y+d+.
-
+ïñ çÃÅ Ãâ ïñÃËÃâ¡ Ãâ¡Ã± Ãâ¦ÃËÃâù ÃÂìÃ⦠Ãâ çÃâ¦Ãâ¡Ã¢â¬ÅÃâ¡Ã§ èÃâ¡ 30
+ÃÆÃÅ ÃâÃËèçÊê ñóÊï èñçÊêÃâ¦Ã§Ã⦠çùöçá çñóçÃâ Ãâ¦ÃŠââ¬ÅôÃËï.
+ïñÃËÃ⡠þóêÊèññóÊçÃÂÃÂ´ÃÆÃ§Ãâçê Ãâ¡Ã⦠ÃËìÃËï ïçñï. èñçÃÅ
+ùöÃË Ã´Ã¯Ãâ ïñ çÃÅ Ãâ ïñÃËÃâ¡ ÃÅ ÃÆ Ãâ çÃâ¦Ã⡠èç Ãâ¦ÃÂêÃËÊçê òÊñ èÃâ¡
+pgsql-bugs-request@PostgreSQL.org çñóçÃâ ÃÆÃâ Êï.
subscribe
end
-
- gfr+w+h+ p+s+t+y+ m+x+c+w+c+ t+w+s+e+h+ d+h+n+d+gfa+n+ (b+r+n+a+m+h+
- n+w+y+s+a+n+) n+y+z+ w+g+w+d+d+a+r+d+. b+r+a+y+ e+ddw+y+t+ d+r+ a+y+n+
- gfr+w+h+ y+k+ n+a+m+h+ b+h+ aMd+r+s+ z+y+r+ b+a+ m+hkt+w+y+a+t+
- m+snx+c+ snd+h+ a+r+s+a+l+ k+n+y+d+.
- pgsql-hackers-request@PostgreSQL.org
-
+ïñÃËÃ⡠þóêÃÅ Ãâ¦Ã®ÃµÃËõ êÃËóùÃ⡠ïÃâ¡Ãâ ïïçÃâ
+(èñÃâ çÃâ¦Ãâ¡Ã¢â¬ÅÃâ ÃËÊóçÃâ ) Ãâ Êò ÃËìÃËïïçñï. èñçÊùöÃËÊê ïñ
+çÃÅ Ãâ ïñÃËÃâ¡ ÃÅ ÃÆ Ãâ çÃâ¦Ã⡠èÃ⡠âïñó òÊñ èç Ãâ¦ÃÂêÃËÊçê Ãâ¦Ã´Ã®Ãµ
+ôïÃ⡠çñóçÃâ ÃÆÃâ Êï. pgsql-hackers-request@PostgreSQL.org
subscribe
end
+ïñÃËÃâ¡Ãâ¡Ã§ÃŠþóêÊïÊïñÃÅ Ãâ Êò ïñ òÃâ¦ÃÅ Ãâ Ãâ¡ PostgreSQLââ¬Å ÃËìÃËï
+ïçñï ÃÆÃâ¡ Ãâ¦ÃŠââ¬ÅêÃËçÃâ Êï ïñ óçÊê http://www.postgresql.org
+èèÃÅ Ãâ Êï.
+Ãâ¡Ãâ¦Ãâ Ãâ ÃÅ Ãâ ÃÅ ÃÆ ̮̤Ãâ çÃâ IRC ñÃËÃÅ Freenode ÃË EFNet èÃâ çÃ⦠PostgreSQL#
+ÃËìÃËï ïçñï. ôÃâ¦Ã§ Ãâ¦ÃŠââ¬ÅêÃËçÃâ Êï çò ÃÂñÃâ¦Ã§Ãâ ÃÅ ÃËÃâ ÃÅ ÃÆÃ³ÃÅ irc
+-c '#PostgreSQL' "$USER" irc.phoenix.net. ́ ̤ irc -c '#PostgreSQL' "$USER"
+irc.freenode.net çóêÃÂçïÃâ¡ ÃÆÃâ Êï.
+ÃâÊóê ôÃÂ±ÃÆÃªÃâ¡Ã§ÃÅ ÃÅ ÃÆÃ⡠çò ֖ÃÅ Ãâ âÃâ Ãâ¡Ã§ Ãâ¦ÃŠââ¬ÅêÃËçÃâ Êï
+îïÃâ¦Ã§Ãª þôêÊèçÃâ ÊêìçñÊïñ òÃâ¦ÃÅ Ãâ Ãâ¡ PostgreSQL ïñÊçÃÂê
+ÃÆÃâ Êï ïñ çÃÅ Ãâ âïñó http://techdocs.postgresql.org/companies.php
+Ãâ¦ÃËìÃËï çóê.
+1.7) âîñÃÅ Ãâ Ãâ óîÃ⡠çùÃâçÃ⦠ôïÃâ¡ Ãâ Êóêß
+âîñÃÅ Ãâ Ãâ óîÃâ¡ PostgreSQLââ¬Å ÃÆÃâ¡ ÃËìÃËï ïçñï 7.4.3 çóê.
+Ãâ¡Ã¯Ã Ãâ¦Ã§ âÃâ çóê ÃÆÃâ¡ Ãâ¡Ã± 6 Ãâ¦Ã§Ã⡠êç 8 Ãâ¦Ã§Ãâ¡ ÃÅ ÃÆ Ãâ óîÃ⡠ìïÊï
+çñçæÃ⡠ôÃËï.
+1.8) Ãâ Ãâ¡ Ãâ¦Ã³ÃªÃâ ïçê ÃË Ã±Ã§Ãâ¡Ãâ Ãâ¦Ã§Ã¦ÃÅ Ãâ¡Ã§ÃÅ ÃÅ ÃËìÃËï ïçñÃâ ïß
+Ãâ Ãâ ïÃÅ Ãâ ̮̻̤̬Ãâ Ãâ¡ ÃË ÃµÃÂÃÂçê ñçÃâ¡Ãâ Ãâ¦Ã§ ÃË Ãâ¦Ã«Ã§ÃâÃâ¡Ã§ÃÅ ÃÆÃËÃâ ÃÆ
+Ãâ¡Ãâ¦Ã±Ã§Ã⡠èç Ãâ¦ÃªÃâ çõÃâÃÅ PostgreSQLââ¬Å ïñ ôçîÃâ¡ doc ÃËìÃËï
+ïçñï. èñçÊïÊïÃâ õÃÂÃÂçê ñçÃâ¡Ãâ Ãâ¦Ã§ Ãâ¦ÃŠââ¬ÅêÃËçÃâ Êï èÃâ¡
+óçÊê http://www.PostgreSQL.org/docs Ãâ Êò Ãâ¦Ã±Ã§Ã¬Ã¹Ãâ¡ Ãâ Ãâ¦Ã§ÃŠÊï.
+ïÃË ÃÆÃªÃ§Ã¨ ïñ òÃâ¦ÃÅ Ãâ Ãâ¡ PostgreSQLââ¬Å ïñ âïñóââ¬ÅÃâ¡Ã§ÃÅ
+http://www.PostgreSQL.org/docs/awbook.htm ÃË http://www.commandprompt.com/ppbook
+ÃËìÃËï ïçñï. ÃâÊóêÊçò ̮̻̤̬Ãâ¡Ã§ÃÅ ÃÅ ÃÆÃâ¡ ÃâçèÃâ îñÊï
+çóê ïñ âïñó http://techdocs.PostgreSQL.org/techdocs/bookreviews.php
+ÃËìÃËï ïçñï. Ãâ¡Ãâ¦Ãâ Ãâ ÃÅ Ãâ ÃâÊóêÊçò Ãâ¦ÃâçÃâçê ÃÂÃâ Êïñ
+Ãâ¦ÃËñï PostgreSQL ïñ âïñó http://techdocs.PostgreSQL.org ÃËìÃËï
+ïçñï.
+èñÃâ çÃâ¦Ãâ¡ psql ÃÅ ÃÆ ïóêÃËñ d\ ïçñï ÃÆÃ⡠ç÷ÃâçùçêÊïñ
+Ãâ¦ÃËñï çÃâ ÃËçù ïçïÃâ¡Ã¢â¬ÅÃâ¡Ã§ÃÅ ÃâçèÃâ êùñÊàÃË Ã¹Ãâ¦Ãâïñââ¬ÅÃâ¡Ã§
+ÃË ÃªÃËçèù ÃË ... èÃâ¡ Ãâ¦Ã§ Ãâ ôçÃâ Ãâ¦ÃŠââ¬ÅïÃâ¡Ã¯. ïñ óçÊê çõÃâÃÅ
+Ãâ¦Ã§ ç÷Ãâçùçê èÊôêñÊñç Ãâ¦ÃŠââ¬ÅêÃËçÃâ Êï þÊïç ÃÆÃâ Êï.
+1.9) Ãâ ïÃËÃâ Ãâ¡ Ãâ¦ÃŠââ¬ÅêÃËçÃâ Ã⦠çòçÃÂ´ÃÆÃ§Ãâçê ôÃâ çîêÃ⡠ôïÃâ¡ ÃË ÃŠç
+çÃâ¦ÃÆÃ§Ãâ çêÃÅ ÃÆÃ⡠ïñ çÃÅ Ãâ þçÊïçÃ⡠ïçïÃâ¡ ÃËìÃËï Ãâ ïçñï
+Ãâ¦Ã·Ãâù ôÃËÃâ¦ÃŸ
+PostgreSQL ÃÅ ÃÆ òÊñ Ãâ¦Ã¬Ãâ¦ÃËùÃ⡠þÊôñÃÂêÃ⡠çò SQL-92 ñç
+þôêÊèçÃâ ÃÅ Ãâ¦ÃŠââ¬ÅÃÆÃâ ï. ïñ ÃâÊóê TODO çÃÂÃÂ´ÃÆÃ§Ãâçê
+ôÃâ çîêÃ⡠ôïÃ⡠Êç çÃâ¦ÃÆÃ§Ãâ çêÃÅ ÃÆÃâ¡ ÃËìÃËï Ãâ ïçñï ÃË ÃŠç
+èñÃâ çÃâ¦Ãâ¡Ã¢â¬Åââ¬ÅÃâ¡Ã§ÃŠâÃÅ Ãâ ïÃ⡠âÃâ¦Ã¯Ã⡠çóê.
+1.10) Ãâ ïÃËÃâ Ãâ¡ Ãâ¦ÃŠââ¬ÅêÃËçÃâ Ã⦠òèçÃâ SQL ñç Êçï èïÊñÃâ¦ÃŸ
+̮̻̤̬ PostgreSQL ïñ âïñó SQL http://www.PostgreSQL.org/docs/awbook.html
+ââ¬Åñç âÃâ¦ÃËòô Ãâ¦ÃŠââ¬ÅïÃâ¡Ã¯. Ãâ¡Ãâ¦Ãâ Ãâ ÃÅ Ãâ ÃÅ ÃÆ ̮̻̤̬ ïñ âïñó
+http://www.commandprompt.com/ppbook ÃËìÃËï ïçñï. ÃÅ ÃÆ ñçÃâ¡Ãâ Ãâ¦Ã§ÃÅ
+îÃÅ ÃâÊîÃËè Ãâ¡Ã⦠ïñ óçÊêââ¬ÅÃâ¡Ã§ÃÅ
+http://www.intermedia.net/support/sql/sqltut.shtm ÃË
+http://ourworld.compuserve.com/homepages/graeme_birchall/HTM_COOK.HTM ÃË
+http://sqlcourse.com ïñ Ãâ¦ÃËñï SQL ÃËìÃËï ïçñï.
+̮̻̤̬ ïÊïñÃÅ ÃÆÃâ¡ Ãâ¦ÃŠââ¬ÅêÃËçÃâ èñçÊÊçïïÊñÃÅ SQL çò âÃâ
+çóêÃÂçïÃâ¡ ÃÆÃ±Ã¯ ̮̻̤̬ "SQL ñç ïñ 21 ñÃËò Êçï èïÊñÊïÃÅââ¬Å
+ÃËÊñçÊô ïÃËÃâ¦" ïñ óçÊê
+http://members.tripod.com/er4ebus/sql/index.htm Ãâ¦ÃŠââ¬Åèçôï.
+êùïçï òÊçïÊçò ̮̤̱̬̱̤Ãâ ̮̻̤̬ The Practical SQL ñç
+êñìÊàÃâ¦ÃŠââ¬ÅïÃâ¡Ãâ ï. ̮̻̤̬ ïÊïñ The Complete Refrence SQL
+çÃâ êôçñçê McGraw-Hill Ãâ¦ÃŠââ¬Åèçôï.
+1.11) âÊç PostgreSQL Ãâ¦ÃÂ´ÃÆÃâ Y2Kââ¬Å ïçñï Êç îÊñß
+îÊñÃÅââ¬ÅPostgreSQLââ¬Å èç êçñÊîââ¬ÅÃâ¡Ã§ÃÅ ÃâèÃâ ÃË Ã¨Ã¹Ã¯ çò 2000
+Ãâ¦ÃÂ´ÃÆÃâÃÅ Ãâ ïçñï.
+1.12) Ãâ ïÃËÃâ Ãâ¡ Ãâ¦ÃŠââ¬ÅêÃËçÃâ Ã⦠èÃ⡠êÃÅ Ã⦠èñÃâ çÃâ¦Ãâ¡ Ãâ ÃËÊó PostgreSQL
+Ãâ¦ÃâÃÂÃâ ôÃËÃâ¦ÃŸ
+çèêïçÃÅââ¬ÅâîñÃÅ Ãâ óÃËñó ñç ïÃËÃâ ÃâÃËï ÃÆÃ±Ã¯Ãâ¡ ÃË Ãâ¦Ã³ÃªÃâ ïçê
+Ãâ¦Ã±Ã¨ÃË÷ èÃ⡠èñÃâ çÃâ¦Ãâ¡Ã¢â¬ÅÃâ ÃËÊóÃÅ PostgreSQL ñç ïñ óçÊê
+Ãâ¦Ã·Ã§ÃâùÃâ¡ ÃÆÃâ Êï. óþó èÃ⡠ïñÃËÃâ¡Ãâ¡Ã§ÃŠþóêÊââ¬Å pgsql-patches ÃË
+pgsql-hackers ùöÃË Ã´ÃËÊï. ïñ Ãâ¦Ã±ÃÂÃâÃ⡠âîñ ÃËõÃâÃâ¡Ã¢â¬ÅÃâ¡Ã§ÃŠèç
+ÃÆÃÅ ÃÂÊê èçÃâç ñç èÃâ¡ pgsql-patches çñóçÃâ ÃÆÃâ Êï.
+êùïçï òÊçïÊçò èñÃâ çÃâ¦Ãâ¡Ã¢â¬ÅÃâ ÃËÊóçÃâ ÃËìÃËï ïçñÃâ ï ÃÆÃâ¡
+çÃâ¦ÃªÃŠçò çÃâ ìçÃ⦠êúÊÊñçê ïñ cvsââ¬Å ñç ïçñÃâ ï. Ãâ¡Ã±
+ÃÆÃ¯Ã§Ã⦠çò âÃâ Ãâ¡Ã§ êùïçï òÊçïÃÅ ÃËõÃâÃâ¡Ã¢â¬Åââ¬Å èç ÃÆÃÅ ÃÂÊê
+èçÃâç èÃ⡠ïñÃËÃ⡠çñóçÃâ ÃÆÃ±Ã¯Ãâ¡Ã¢â¬ÅçÃâ ï ÃÆÃ⡠çùêÃâ¦Ã§Ã¯
+ïñïçÃâ Ãâ ïïçÃâ PostgreSQL ñç èÃ⡠ïóê âÃËñïÃâ¡Ã¢â¬ÅçÃâ ï.
+1.13) Ãâ ïÃËÃâ Ãâ¡ Ãâ¦ÃŠââ¬ÅêÃËçÃâ Ã⦠ÃÅ ÃÆ çÃÂÃÂ´ÃÆÃ§Ãâ ñç èÃ⡠ïñÃËÃâ¡
+èñÃâ çÃâ¦Ãâ¡ Ãâ ÃËÊó çùÃâçÃâ¦ ÃÆÃâ Ãâ¦ÃŸ
+Ãâ÷ÃÂçÃ⹠õÃÂÃÂÃâ¡ Ãâ¦Ã±Ã¨ÃË÷ èÃ⡠çÃÂÃÂ´ÃÆÃ§Ãâçê PostgreSQL ñç ïñ
+óçÊê http://www.PostgreSQL.org/bugs/bugs.php Ãâ¦Ã´Ã§Ãâ¡Ã¯Ãâ¡Ã¢â¬Å ÃÆÃâ Êï. ïñ
+çÃÅ Ãâ óçÊê Ãâ ÃÂÃËÃ⡠ïòçñô ÃË Ã§Ã±Ã³Ã§Ãâ ÃÅ ÃÆ çÃÂ´ÃÆÃ§Ãâ êÃËöÃÅ ÃÂ
+ïçïÃ⡠ôïÃ⡠çóê.
+ Ãâ¡Ãâ¦Ãâ Ãâ ÃÅ Ãâ èñçÊïÊïÃâ Ãâ óîÃâ¡Ã¢â¬ÅÃâ¡Ã§ÃŠìïÊïêñ PostgreSQL ÃË
+Êç ÃËìÃËï ÃÅ ÃÆ ÃËõÃâÃ⡠ìïÊï çò óçÊê ftp://ftp.PostgreSQL.org/pub
+èçòïÊï ÃÆÃâ Êï.
+1.14) ÃËöùÊê PostgreSQLââ¬Å ïñ Ãâ¦ÃâçÊóÃ⡠èç óçÊñ DBMSÃâ¡Ã§ èÃâ¡
+Ãâ Ã⡠õÃËñê çóêß
+ñçÃâ¡Ãâ¡Ã§ÃÅ Ãâ¦Ã®ÃªÃâÃÂÊèñçÊçÃâ ïçòÃâ¡Ã¢â¬ÅïÊñÃÅ ÃË Ãâ¦ÃâçÊóÃâ¡
+Ãâ ñÃâ¦Ã¢â¬ÅçÃÂòçñÃâ¡Ã§ ÃËìÃËï ïçñï ÃÆÃ⡠ùèçñêÃâ ï çò
+çÃâ¦ÃÆÃ§Ãâ çêÃÅ ÃÆÃ§Ã±Ã§ÃÅ ÃÅ ÃÅ ÃâçèÃâÊê çùêÃâ¦Ã§Ã¯ÃŠþôêÊèçÃâ ÃÅ ÃË
+ÃâÃÅ Ãâ¦Ãª
+ çÃâ¦ÃÆÃ§Ãâ çê
+ PostgreSQL èÊôêñ çÃâ¦ÃÆÃ§Ãâ çê Ãâ¦ÃËìÃËï ïñ óÊóêÃâ¦Ã¢â¬ÅÃâ¡Ã§ÃÅ
+ þçÊïçÃ⡠ïçïÃ⡠êìçñÊèòñï Ãâ øÃŠñ transactions, subselets,
+ triggers, views, foreign key referential integrity ÃË sophisticated
+ lockingââ¬Å ñç ïçñï. ïñ PostgreSQLââ¬Åââ¬Å çÃâ¦ÃÆÃ§Ãâ çêÃÅ ÃËìÃËï
+ ïçñï ÃÆÃ⡠þçÊïçÃâ¡Ãâ¡Ã§ÃŠïçïÃ⡠ïÊïñ âÃâ ñç Ãâ ïçñÃâ ï
+ Ãâ øÃŠñ user-defined typesââ¬ÅÃË Inheritanceââ¬ÅÃË rulesââ¬ÅÃË multi-version
+ concurrency control
+
+ ̮̤̱̤́ ́
+ ̮̤̱̤ÃÅ ÃÅ PostgreSQL ïñ ÃÂï èÃâÃÅ Ã⡠óÊóêÃâ¦Ã¢â¬ÅÃâ¡Ã§ÃÅ
+ êìçñÃÅ ÃË Ãâ¦ÃªÃâ èçò çóê. ïñ èùöÃÅ Ãâ¦ÃËçñï óñÊùêñ ÃË
+ ïñ èùöÃÅ Ãâ¦ÃËçñï çò âÃâ Ãâ¡Ã§ ÃÆÃâ ïêñ çóê. ïñ Ãâ¦ÃâçÊóÃâ¡
+ èç MySQL èñçÃÅ ÃÆÃ§Ã±Ã¨Ã±Ã§Ãâ èÊôêñ ÃË Ã¯Ã±Ã®ÃËçóêââ¬ÅÃâ¡Ã§ÃÅ
+ þÃÅ Ãâ ÊïÃâ¡ ÃË Ã¨Ã§Ã± òÊçï îÃËçÃâ ïÃâ /Ãâ ÃËôêÃâ óñÊùêñ çóê.
+ ïñ ïñîÃËçóêââ¬ÅÃâ¡Ã§ÃŠóçïÃâ¡ SELECTââ¬Å çò MySQL ÃÆÃâ ïêñ çóê.
+ çÃâèêÃâ¡ MySQL îÃÅ ÃâÊçò çÃâ¦ÃÆÃ§Ãâ çê PostgreSQL ÃÆÃ⡠ïñ èçÃâç
+ èÃ⡠âÃâ çôçñÃ⡠ôï ñç Ãâ ïçñï. Ãâ¡Ã¯Ã Ã§ÃµÃâÃÅ Ãâ¦Ã§ çÃâ¦ÃÆÃ§Ãâ çê
+ ÃË ÃâçèÃâÊê çùêÃâ¦Ã§Ã¯ èçÃâçóê ïñ öÃâ¦Ãâ âÃâ ÃÆÃ⡠êÃâçô
+ Ãâ¦ÃŠââ¬ÅÃÆÃâ ÃÅ Ã⦠êç ̮̤̱̤ÊÊâÃâ Ãâ Êò èÃâ¡Ã¨ÃËï Êçèï. ïñ
+ âïñó http://openacs.org/philosophy/why-not-mysql.html ÃÅ ÃÆ Ãâ¦ÃâçÊóÃâ¡
+ ìçÃâè èÃÅ Ãâ MySQL ÃË PostgreSQL ÃËìÃËï ïçñï. çò ÷ñàïÊïñ
+ MySQLââ¬Å ÃÅ ÃÆ ôÃÂ±ÃÆÃª çóê ÃÆÃâ¡ Ãâ¦ÃÂõÃËÃâ îÃËï ñç èÃ⡠õÃËñê Ãâ¦ÃªÃâ
+ èçò çñçæÃâ¡ Ãâ¦ÃŠââ¬ÅÃÆÃâ ï ÃËÃâÊèñçÃÅ Ãâ ñÃâ¦Ã¢â¬ÅçÃÂòçñ úÊñ
+ Ãâ¦ÃªÃâ èçò îÃËï çÃÂêÊçì èÃâ¡ ÃâÊóçÃâ ó êìçñÊïçñï èñ
+ îÃâçàPostgreSQL ÃÆÃâ¡ ÃÅ ÃÆ ïñÃËÃâ¡ ÃÆÃ§Ãâ¦ÃâçÃâ¹ Ãâ¦ÃªÃâ èçò Ãâ¡Ã³ÃªÃâ ï.
+
+ ÃâçèÃâÊê ç÷Ãâ¦ÃÅ Ãâ çÃâ
+ Ãâ¦Ã§ ÃÂ̮̱ Ãâ¦ÃŠââ¬ÅÃÆÃâ ÃÅ Ãâ¦ ÃÆÃâ¡ ÃÅ ÃÆ óÊóêÃ⦠þçÊïçÃâ¡
+ ïçïÃâ¡Ã¢â¬ÅçÃÅ ÃÆÃâ¡ Ãâ¦Ã·Ãâ¦Ã¦Ãâ Ãâ èçôï çñòôÃÅ Ãâ ïçñï. Ãâ¦Ã§
+ êÃâ¦Ã§Ã⦠êÃâçôÃâ¦Ã§Ãâ ñç èñçÊçñçæÃâ¡ ÃÆÃ¯Ãâ¡Ã§ÃŠþçÊïçñÃÅ
+ ÃÆÃ⡠èÃ⡠îÃËèÊêóê ôïÃ⡠èçôÃâ ï ÃË ÃÆÃâ¦ÃªÃ±ÃÅ Ãâ çÃÂÃÂ´ÃÆÃ§Ãâçê
+ ñç ïçôêÃ⡠èçôÃâ ï Ãâ¦ÃŠââ¬ÅÃÆÃâ ÃÅ Ãâ¦. Ãâ¡Ã± Ãâ óîÃ⡠ìïÊïÃÅ ÃÆÃâ¡
+ çñçæÃâ¡ Ãâ¦ÃŠââ¬ÅôÃËï ÃÂïçÃâÃâ ÃÅ ÃÆ Ãâ¦Ã§Ã⡠ñç ïñ Ãâ¦Ã±ÃÂÃâÃ⡠êóê
+ èêç Ãâ¦ÃŠââ¬ÅïðñçÃâ ï. Ãâ¦Ã§ èñ çÃÅ Ãâ èçÃËñ Ãâ¡Ã³ÃªÃÅ Ãâ¦ ÃÆÃâ¡
+ ÃâçèÃâÊê ç÷Ãâ¦ÃÅ Ãâ çÃâ PostgreSQLââ¬Å ïñ Ãâ¦ÃâçÊóÃ⡠èç óçÊñ
+ óÊóêÃâ¦Ã¢â¬ÅÃâ¡Ã§ÃŠþçÊïçÃ⡠ïçïÃâ¡ ÃâçèÃâ êÃËìÃ⡠çóê ÃË
+ Ãâ óîÃâ¡Ã¢â¬ÅÃâ¡Ã§ÃÅ ÃÅ ÃÆÃ⡠êÃÂ§ÃÆÃâ ÃËÃâ çñçæÃ⡠ôïÃ⡠çóê Ãâ ôçÃâ
+ Ãâ¦ÃŠââ¬ÅïÃâ¡Ã¯ ÃÆÃâ¡ Ãâ¦Ã§ êÃËçÃâ çÊÊçñçæÃâ¡ ÃÅ ÃÆ óÊóêÃ⦠ÃâÃËÃÅ ÃË
+ Ãâ¦ÃÂÃÆÃ⦠ÃË Ãâ¦Ã·Ãâ¦Ã¦Ãâ ñç ÃÆÃ⡠âÃâ¦Ã§Ã¯Ã⡠èÃâ¡Ã±Ãâ¡Ã¢â¬ÅèñïçñÊçóê
+ ïçñÃÅ Ãâ¦.
+ þôêÊèçÃâ ÃÅ
+ ïñÃËÃâ¡Ãâ¡Ã§ÃŠþóêÃÅ Ãâ¦Ã§ çÃâ¦ÃÆÃ§Ãâ çñêèç÷ ÃË ÃªÃâ¦Ã§Ã³ èÃâ¡
+ ïñÃËÃ⡠èòñïÊçò èñÃâ çÃâ¦Ãâ¡ Ãâ ÃËÊóçÃâ ÃË ÃÆÃ§Ã±Ã¨Ã±Ã§Ãâ ñç
+ Ãâ¦ÃŠââ¬ÅïÃâ¡Ã¯ ÃÆÃâ¡ Ãâ¦ÃŠââ¬ÅêÃËçÃâ Ãâ ï ïñ ÃÂÃâ Ãâ¦ÃÂ´ÃÆÃâçê èÃâ¡
+ ïÊïñçÃâ ÃÆÃâ¦ÃÆ ÃÆÃâ Ãâ ï. ïóêñóÃÅ Ãâ¦Ã³ÃªÃâÃÅ Ã⦠èÃâ¡
+ èñÃâ çÃâ¦Ãâ¡Ã¢â¬ÅÃâ ÃËÊóçÃâ ÃË Ã¯Ã±ÃËÃâ¡Ãâ¡Ã§ÃÅ ÃÆÃ§Ã±Ã¨Ã±Ã§Ãâ ÃË
+ ñçÃâ¡Ãâ Ãâ¦Ã§Ãâ¡Ã§ ÃË ÃÆÃ¯Ã§ÃµÃâÊèçùë Ãâ¦ÃŠââ¬ÅôÃËï ÃÆÃâ¡
+ þôêÊèçÃâ ÃÅ PostgreSQL Ãâ óèê èÃ⡠óçÊñ þçÊïçÃâ¡Ãâ¡Ã§ÃÅ
+ ïçïÃ⡠èÃâ¡ Ãâ ÃÂÃË Ã¨Ãâ¡ÃªÃ±ÃŠçÃâ ìçÃ⦠ôÃËï. Ãâ¡Ãâ¦Ãâ Ãâ ÃÅ Ãâ çÃâ¦ÃÆÃ§Ãâ
+ çñçæÃ⡠îïÃâ¦Ã§Ãª þôêÊèçÃâ ÊèÃ⡠õÃËñê êìçñÃÅ Ãâ Êò
+ ÃËìÃËï ïçñï. èñçÊïÊïÃâ ç÷Ãâçùçê èÊôêñ èÃâ¡ FAQ
+ section 1.6 Ãâ¦Ã±Ã§Ã¬Ã¹Ãâ¡ ÃÆÃâ Êï.
+ ÃâÃÅ Ãâ¦Ãª
+ Ãâ¡Ã⦠èñçÊçóêÃÂçïÃ⡠êìçñÃÅ ÃË Ãâ¡Ã⦠úÊñ êìçñÃÅ Ãâ¡ÃÅ Ãâ
+ Ãâ¡Ã²ÃÅ Ãâ Ãâ¡Ã¢â¬ÅçÃÅ Ãâ èçÊï þñïçîê ôÃËï. Ãâ¡ÃÅ Ãâ Ãâ¦ÃÂïÃËïÊêÃÅ
+ èñçÊçÃâ ìçÃ⦠êúÊÊñçê ïñ PostgreSQL êÃËó÷ çóêÃÂçïÃâ¡
+ ÃÆÃâ Ãâ ïïçÃâ ÃËìÃËï Ãâ ïçñï èÃ⡠ìò Ãâ¦ÃËçñïÃÅ ÃÆÃ⡠ïñ
+ ÃâÊóçÃâ ó BSD èÃ⡠âÃâ çôçñÃ⡠ôïÃ⡠çóê.
+1.15) Ãâ¦Ãâ Ãâ ïÃËÃâ Ãâ¡ Ãâ¦ÃŠââ¬ÅêÃËçÃâ Ã⦠çò Ãâ øñ Ãâ¦Ã§ÃâÊèÃâ¡ PostgreSQL
+ÃÆÃâ¦ÃÆ ÃÆÃâ Ãâ¦ÃŸ
+PostgreSQL ïçñçÃÅ ÃÅ ÃÆ óçîêçñ êÃÂ´ÃÆÃÅ ÃâçêÊïñìÃ⡠çÃËÃâ çóê
+ÃÆÃ⡠âÃâ ñç Ãâ¦Ã¯ÃÅ ÃËÃâ Marc Fournierââ¬Å çóê ÃÆÃ⡠çÃÅ Ãâ óçîêçñ ñç
+çÊìçï ÃÆÃ±Ã¯Ã⡠çóê.
+ÃÆÃÅ ÃÂÊê ÃÅ ÃÆ óçîêçñ èñçÃÅ ÃÅ ÃÆ þñÃËÃËÃâ¡ Ãâ¦ÃªÃâ èçò èóÊçñ
+çÃâ¡Ãâ¦ÃŠê ïçñï. ÃÅ ÃÆ óçîêçñ îÃËè Ãâ¦ÃŠââ¬ÅêÃËçÃâ ï Ãâ¦Ã§Ãâ ù çò
+ÃÂÃËçïëÊôÃËï ÃÆÃ⡠ïñ ÃÂÃÂ±ÃÆÃª ñÃËèÃâ¡Ã¢â¬ÅìÃâÃËÊþñÃËÃËÃ⡠îÃâÃâÃÅ
+ÃËçñï Ãâ¦ÃŠââ¬ÅÃÆÃâ Ãâ ï.
+çÃâèêÃ⡠çÃÅ Ãâ óçîêçñ êÃÂ´ÃÆÃÅ ÃâçêÊçñòçÃâ Ãâ Êóê.
+Ãâ¡Ã²ÃÅ Ãâ Ãâ¡Ã¢â¬ÅÃâ¡Ã§ÃŠëçèê Ãâ¦Ã§Ãâ¡Ã§Ãâ Ãâ¡ ÃË Ã±ÃËòÃâ¦Ã±Ã⡠èñçÃÅ
+Ãâ ïÃâ¡Ã¯Ã§Ã±ÃÅ ÃË ÃÂÃÂø çÃÅ Ãâ óçîêçñ Ãâ¦ÃËñï Ãâ Êçò çóê. çïñ
+ôÃâ¦Ã§ Êç ôÃÂ±ÃÆÃª ôÃâ¦Ã§ Ãâ¦Ã§ÃÅ Ãâ çóê ÃÆÃ⡠çò Ãâ øñ Ãâ¦Ã§ÃâÊèÃâ¡
+çÃÅ Ãâ ÃÂÃÂ±ÃÆÃª ÃÆÃâ¦ÃÆ ÃÆÃâ ï Ãâ÷ÃÂçÃ⹠èÃ⡠óçÊê
+http://store.pgsql.com/shopping Ãâ¦Ã±Ã§Ã¬Ã¹Ãâ¡ ÃÆÃ±Ã¯Ãâ¡ ÃË ÃÆÃâ¦ÃÆ Ã®ÃËï ñç
+çÃâ¡Ã¯Ã§ ÃÆÃâ Êï.
+Ãâ¡Ã± Ãâ Ãâ ï ïñ õÃÂÃÂÃ⡠çõÃâÊùèçñê PostgreSQL,Incââ¬Å ÃÂ°ÃÆÃ± ôïÃâ¡
+çóê ÃËÃâÃÅ Ãâ¦Ã´Ã§ÃÂ±ÃÆÃª ùÃâ¦Ã¯ÃªÃ§Ã⹠èñçÊþôêÊèçÃâ Êçò
+þñÃËÃËÃâ¡ PostgreSQLââ¬Å Ãâ¦ÃŠèçôï ÃË Ãâ Ã⡠èñçÃÅ ÃÅ ÃÆ ôÃÂ±ÃÆÃª Ãâ¦Ã´Ã®Ãµ.
+çïñ êñìÊàÃâ¦ÃŠââ¬ÅïÃâ¡ÃŠï Ãâ¦ÃŠââ¬ÅêÃËçÃâ Êï ÃÅ ÃÆ Ãâ ÃÆ èÃ⡠âïñó
+Ãâ¦Ã´Ã®Ãµ ôïÃ⡠çñóçÃâ ÃÆÃâ Êï.
+çïñ ÃÅ ÃÆ çóêÃÂçïÃâ¡ Ãâ¦ÃËÃÂÃâ çò PostgreSQL óñçú ïçñÊï
+Ãâ÷ÃÂçÃ⹠âÃâ ñç èÃ⡠óçÊê http://advocacy.postgresql.org ïòçñô
+ïÃâ¡ÃŠï.
+
+
+
+óÃËçÃâçê Ãâ¦Ã±Ã¨ÃË÷ èÃ⡠çóêÃÂçïÃ⡠çò þçÊïçÃ⡠ïçïÃâ¡
+2.1) âÊç Ãâ¡ÃÅ Ãâ ïñçÃÅ ÃËñ ODBCââ¬Å èñçÃÅ PostgreSQL ÃËìÃËï ïçñïß
+ïÃË Ã¯Ã±Ã§ÃÅ ÃËñ ODBC èÃâ çÃâ¦Ãâ¡Ã§ÃÅ psqlODBCââ¬Å ÃË OpenLink èñçÃÅ
+PostgreSQLââ¬Å ÃËìÃËï ïçñï.
+èñçÊïñÃÂêÃâ psqlODBC èÃ⡠óçÊê
+http://gborg.postgresql.org/project/psqlodbc/projdisplay.php Ãâ¦Ã±Ã§Ã¬Ã¹Ãâ¡
+ÃÆÃâ Êï.
+OpenLlink ñç çò çÃÅ Ãâ óçÊê http://www.openlinksw.com
+Ãâ¦ÃŠââ¬ÅêÃËçÃâ Êï èïÊñÊï. çÃÅ Ãâ ïñçÃÅ ÃËñ èç
+Ãâ ñÃâ¦Ã¢â¬ÅçÃÂòçñÃâ¡Ã§ÃÅ Ãâ¦Ã®ÃªÃâàODBC ̮̤̱ Ãâ¦ÃŠââ¬ÅÃÆÃâ ï èÃâ çèñçÃÅ Ãâ
+ôÃâ¦Ã§ Ãâçïñ îÃËçÃâ¡ÃŠï èÃËï èç çóêÃÂçïÃ⡠çò OpenLink ñÃËÃÅ
+ÃÂ§ÃÆÃ«Ã± ÃÂ³ÃÆÃËââ¬ÅÃâ¡Ã§ÃÅ ÃÅ ÃÆÃâ¡ Ãâ ñÃâ¦Ã¢â¬ÅçÃÂòçñODBCââ¬ÅïçñÃâ ï èïÃËÃâ
+Ãâ¦ÃÂ´ÃÆÃâ èÃâ¡ PostgreSQL Ãâ Êò Ãâ¦ÃªÃµÃâ ôÃËÊï.
+çÃÅ Ãâ Ãâ¦ÃÂõÃËÃâ èÃâ¡ ÃÆÃ³Ã§Ãâ ÃÅ ÃÆÃ⡠çÃÂêÊçì èÃ⡠îïÃâ¦Ã§Ãª
+þôêÊèçÃâ ÊêìçñÊïçñÃâ ï ÃÂñÃËîêÃâ¡ Ãâ¦ÃŠââ¬ÅôÃËï. ÃËÃâÃÅ
+Ãâ óîÃ⡠âòçï çÃÅ Ãâ Ãâ ñÃâ¦Ã¢â¬ÅçÃÂòçñ Ãâ¡Ãâ¦ÃŠôÃ⡠ïñ ïñóêñó
+Ãâ¦ÃŠââ¬Åèçôï. èñçÃÅ ÃÆÃ³Ã¨ ç÷Ãâçùçê èÊôêñ óÃËçÃâçê îÃËï
+ñç èÃ⡠âïñó postgres95@openlink.co.uk ââ¬ÅçñóçÃâ Ãâ Ãâ¦Ã§ÃŠÊï.
+2.2) Ãâ Ã⡠çèòçñÃâ¡Ã§ÃŠÊèñçÊçóêÃÂçïÃ⡠çò PostgreSQLââ¬Å èç
+õÃÂÃÂçê ÃËè ÃËìÃËï ïçñïß
+ïñ óçÊê http://www.webreview.com èñçÊçóêÃÂçïÃ⡠çò
+PostgreSQLââ¬Å ïñ õÃÂÃÂçê ÃËè ñçÃâ¡Ãâ Ãâ¦Ã§ÃÅ ÃÅ Ãâ¡Ã§ÃŠîÃËèÃÅ ÃËìÃËï
+ïçñï.
+èñçÊêÃÂ±ÃÆÃŠè ÃË Ã§Ã³ÃªÃÂçïÃ⡠ïñ õÃÂÃÂçê ÃËè òèçÃâ PHPââ¬Å ÃÅ ÃÆ
+ÃËçó÷ èóÊçñ Ãâ¦Ãâ çóè çóê. ç÷Ãâçùçê èÊôêñ ñçìù èÃâ¡
+PHPââ¬Åïñ óçÊê http://www.php.net ÃËìÃËï ïçñï.
+Ãâ¦Ã«Ã§ÃâÃâ¡Ã§ÃÅ ÃÅ Ãâ Êò èç çóêÃÂçïÃ⡠çò Perlââ¬Å ÃË CGI.pm ÃË mod_perl
+ÃËìÃËï ïçñï.
+2.3) âÊç PostgreSQLââ¬Å ÃÅ ÃÆ ÃËçó÷ ̮̤̱̬̱ÊïñçÃÂÃÅ ÃÆÃŠïçñïß
+Ãâ Ãâ ï Ãâ ñÃ⦠çÃÂòçñ ïñçÃÂÃÅ ÃÆÃŠèñçÃÅ PostgreSQLââ¬Å ÃËìÃËï ïçñï
+ÃÆÃ⡠ôçÃâ¦Ãâ pgAccess ïñóçÊê http://www.pgaccess.org ÃË pgAdmin III ïñ
+óçÊê http://www.pgadmin.org ÃË RHDB Admin ïñ óçÊê
+http://sources.redhat.com/rhdb ÃË Rekall ïñ óçÊê
+http://www.thekompany.com/products/rekall Ãâ¦ÃŠââ¬Åèçôï. Ãâ¡Ãâ¦Ãâ Ãâ ÃÅ Ãâ ÃÅ ÃÆ
+phpPgAdmin Ãâ¡Ã⦠ïñ óçÊê http://phppgadmin.sourceforge.net ÃËìÃËï
+ïçñï ÃÆÃâ¡ ÃÅ ÃÆ ÃËçó÷ ÃËèÊèñçÃÅ Ãâ¦Ã¯ÃŠñÊê PostgreSQL
+Ãâ¦ÃŠââ¬Åèçôï.
+èñçÊïÊïÃâ ç÷Ãâçùçê èÊôêñ ñçìù èÃâ¡
+Ãâ ñÃâ¦Ã¢â¬ÅçÃÂòçñÃâ¡Ã§ÃŠïñçÃÂÃÅ ÃÆÃŠèñçÃÅ PostgreSQL èÃ⡠âïñó
+http://techdocs.postgresql.org/guides/GUITools Ãâ¦Ã±Ã§Ã¬Ã¹Ãâ¡ ÃÆÃâ Êï.
+2.4) èç Ãâ Ã⡠òèçÃâ Ãâ¡Ã§ÃŠèñÃâ çÃâ¦Ãâ¡Ã¢â¬ÅÃâ ÃËÊóÃÅ Ãâ¦ÃŠââ¬ÅêÃËçÃâ èç
+PostgreSQLââ¬Å çñêèç÷ èñÃâñçñ ÃÆÃ±Ã¯ÃŸ
+èÊôêñ òèçÃâ Ãâ¡Ã§ÃŠèñÃâ çÃâ¦Ãâ¡Ã¢â¬ÅÃâ ÃËÊóÃÅ Ãâ¦ÃŠââ¬ÅêÃËçÃâ Ãâ ï èç
+PostgreSQLââ¬Å çñêèç÷ èñÃâñçñ ÃÆÃâ Ãâ ï. èÃâ¡ Ãâ¡Ãâ¦Ã±Ã§Ã⡠óÃËñó
+PostgreSQL êùïçïÊçò ÃËçó÷Ãâ¡Ã§ÃÅ Ãâ¦ÃËñï Ãâ Êçò èñçÃÅ
+çñêèç÷ èç þçÊïçÃ⡠ïçïÃ⡠çò ֖ÃÅ Ãâ òèçÃâ Ãâ¡Ã§ÃÅ Ãâ¦Ã®ÃªÃâÃÂ
+âÃâ¦Ã¯Ã⡠çóê ÃÆÃ⡠ïñ òÊñ ÃâÊóê âÃâ Ãâ¡Ã§ ñç Ãâ¦Ã´Ã§Ãâ¡Ã¯Ãâ¡
+Ãâ¦ÃŠââ¬ÅÃÆÃâ Êï.
+ C (libpq)
+ Embedded C (ecpg)
+ Java (jdbc)
+ Python (PyGreSQL)
+ TCL (libpgtcl)
+ÃËçó÷Ãâ¡Ã§ÃŠïÊïñ ïñ óçÊê http://gborg.postgresql.org ïñ ÃâóÃâ¦Ãª
+Drivers/Interfaces ÃËìÃËï ïçñï.
+
+
- gfr+w+h+h+a+y+ p+s+t+y+ d+y+gfr+y+ n+y+z+ d+r+ z+m+y+n+h+ PostgreSQL
- w+g+w+d+ d+a+r+d+ k+h+ m+y+t+w+a+n+y+d+ d+r+ s+a+y+t+
- http://www.postgresql.org b+b+y+n+y+d+.
-
- h+m+tcn+y+n+ y+k+ k+a+n+a+l+ IRC r+w+y+ Freenode w+ EFNet b+n+a+m+
- PostgreSQL# w+g+w+d+ d+a+r+d+. snm+a+ m+y+t+w+a+n+y+d+ a+z+ f+r+m+a+n+
- y+w+n+y+k+s+y+ irc -c '#PostgreSQL' "$USER" irc.phoenix.net. y+a+ irc
- -c '#PostgreSQL' "$USER" irc.freenode.net a+s+t+f+a+d+h+ k+n+y+d+.
-
- l+y+s+t+ snr+k+t+h+a+y+y+ k+h+ a+z+ tjr+y+q+ aMn+h+a+ m+y+t+w+a+n+y+d+
- x+d+m+a+t+ p+snt+y+b+a+n+y+ t+g+a+r+y+ d+r+ z+m+y+n+h+ PostgreSQL
- d+r+y+a+f+t+ k+n+y+d+ d+r+ a+y+n+ aMd+r+s+
- http://techdocs.postgresql.org/companies.php m+w+g+w+d+ a+s+t+.
-
- 1.7) aMx+r+y+n+ n+s+x+h+ a+e+l+a+m+ snd+h+ tcy+s+t+?+
-
- aMx+r+y+n+ n+s+x+h+ PostgreSQL k+h+ w+g+w+d+ d+a+r+d+ 7.4.3 a+s+t+.
-
- h+d+f+ m+a+ aMn+ a+s+t+ k+h+ h+r+ 6 m+a+h+ t+a+ 8 m+a+h+ y+k+ n+s+x+h+
- g+d+y+d+ a+r+a+yHh+ snw+d+.
-
- 1.8) tch+ m+s+t+n+d+a+t+ w+ r+a+h+n+m+a+yHy+h+a+y+y+ w+g+w+d+ d+a+r+n+d+?+
-
- tcn+d+y+n+ k+t+a+b+tch+ w+ c+f+hka+t+ r+a+h+n+m+a+ w+ m+tka+l+h+a+y+
- k+w+tck+ h+m+r+a+h+ b+a+ m+t+n+ a+c+l+y+ PostgreSQL d+r+ sna+x+h+ doc
- w+g+w+d+ d+a+r+d+. b+r+a+y+ d+y+d+n+ c+f+hka+t+ r+a+h+n+m+a+ m+y+
- t+w+a+n+y+d+ b+h+ s+a+y+t+ http://www.PostgreSQL.org/docs n+y+z+
- m+r+a+g+e+h+ n+m+a+y+y+d+.
-
- d+w+ k+t+a+b+ d+r+ z+m+y+n+h+ PostgreSQL d+r+ aMd+r+s+h+a+y+
- http://www.PostgreSQL.org/docs/awbook.htm w+
- http://www.commandprompt.com/ppbook w+g+w+d+ d+a+r+d+. l+y+s+t+y+ a+z+
- k+t+a+b+h+a+y+y+ k+h+ q+a+b+l+ x+r+y+d+ a+s+t+ d+r+ aMd+r+s+
- http://techdocs.PostgreSQL.org/techdocs/bookreviews.php w+g+w+d+
- d+a+r+d+. h+m+tcn+y+n+ l+y+s+t+y+ a+z+ m+q+a+l+a+t+ f+n+y+ d+r+
- m+w+r+d+ PostgreSQL d+r+ aMd+r+s+ http://techdocs.PostgreSQL.org
- w+g+w+d+ d+a+r+d+.
-
- b+r+n+a+m+h+ psql y+k+ d+s+t+w+r+ d\ d+a+r+d+ k+h+ a+tjl+a+e+a+t+y+
- d+r+ m+w+r+d+ a+n+w+a+e+ d+a+d+h+h+a+y+ q+a+b+l+ t+e+r+y+f+ w+
- e+m+l+gfr+h+a+ w+ t+w+a+b+e+ w+ ... b+h+ m+a+ n+sna+n+ m+y+d+h+d+.
- d+r+ s+a+y+t+ a+c+l+y+ m+a+ a+tjl+a+e+a+t+ b+y+snt+r+y+ r+a+ m+y+
- t+w+a+n+y+d+ p+y+d+a+ k+n+y+d+.
-
- 1.9) tcgfw+n+h+ m+y+t+w+a+n+m+ a+z+a+snk+a+l+a+t+ snn+a+x+t+h+ snd+h+ w+
- y+a+ a+m+k+a+n+a+t+y+ k+h+ d+r+ a+y+n+ p+a+y+gfa+h+ d+a+d+h+ w+g+w+d+
- n+d+a+r+d+ m+tjl+e+ snw+m+?+
-
- PostgreSQL y+k+ z+y+r+ m+g+m+w+e+h+ p+y+snr+f+t+h+ a+z+ SQL-92 r+a+
- p+snt+y+b+a+n+y+ m+y+k+n+d+. d+r+ l+y+s+t+ TODO a+1+snk+a+l+a+t+
- snn+a+x+t+h+ snd+h+ y+a+ a+m+k+a+n+a+t+y+ k+h+ w+g+w+d+ n+d+a+r+d+ w+
- y+a+ b+r+n+a+m+h+h+a+y+ aMy+n+d+h+ aMm+d+h+ a+s+t+.
-
- 1.10) tcgfw+n+h+ m+y+t+w+a+n+m+ z+b+a+n+ SQL r+a+ y+a+d+ b+gfy+r+m+?+
-
- k+t+a+b+ PostgreSQL d+r+ aMd+r+s+ SQL
- http://www.PostgreSQL.org/docs/awbook.html r+a+ aMm+w+z+sn m+y+d+h+d+.
- h+m+tcn+y+n+ y+k+ k+t+a+b+ d+r+ aMd+r+s+
- http://www.commandprompt.com/ppbook w+g+w+d+ d+a+r+d+. y+k+
- r+a+h+n+m+a+y+ x+y+l+y+ x+w+b+ h+m+ d+r+ s+a+y+t+h+a+y+
- http://www.intermedia.net/support/sql/sqltut.shtm w+
- http://ourworld.compuserve.com/homepages/graeme_birchall/HTM_COOK.HTM
- w+ http://sqlcourse.com d+r+ m+w+r+d+ SQL w+g+w+d+ d+a+r+d+.
-
- k+t+a+b+ d+y+gfr+y+ k+h+ m+y+t+w+a+n+ b+r+a+y+ y+a+d+gfy+r+y+ SQL a+z+
- aMn+ a+s+t+f+a+d+h+ k+r+d+ k+t+a+b+ "SQL r+a+ d+r+ 21 r+w+z+ y+a+d+
- b+gfy+r+y+d+,+ w+y+r+a+y+sn d+w+m+" d+r+ s+a+y+t+
- http://members.tripod.com/er4ebus/sql/index.htm m+y+b+a+snd+.
-
- t+e+d+a+d+ z+y+a+d+y+ a+z+ k+a+r+b+r+a+n+ k+t+a+b+ The Practical SQL
- r+a+ t+r+g+y+hk m+y+d+h+n+d+. k+t+a+b+ d+y+gfr+ The Complete Refrence
- SQL a+n+t+sna+r+a+t+ McGraw-Hill m+y+b+a+snd+.
-
- 1.11) aMy+a+ PostgreSQL m+snk+l+ Y2K d+a+r+d+ y+a+ x+y+r+?+
-
- x+y+r+,+PostgreSQL b+a+ t+a+r+y+x+h+a+y+ q+b+l+ w+ b+e+d+ a+z+ 2000
- m+snk+l+y+ n+d+a+r+d+.
-
- 1.12) tcgfw+n+h+ m+y+t+w+a+n+m+ b+h+ t+y+m+ b+r+n+a+m+h+ n+w+y+s+
- PostgreSQL m+l+hkq+ snw+m+?+
-
- a+b+t+d+a+,+aMx+r+y+n+ s+w+r+s+ r+a+ d+w+n+l+w+d+ k+r+d+h+ w+
- m+s+t+n+d+a+t+ m+r+b+w+tj b+h+ b+r+n+a+m+h+n+w+y+s+y+ PostgreSQL r+a+
- d+r+ s+a+y+t+ m+tja+l+e+h+ k+n+y+d+. s+p+s+ b+h+ gfr+w+h+h+a+y+
- p+s+t+y+ pgsql-patches w+ pgsql-hackers e+ddw+ snw+y+d+. d+r+
- m+r+hkl+h+ aMx+r+ w+c+l+h+h+a+y+ b+a+ k+y+f+y+t+ b+a+l+a+ r+a+ b+h+
- pgsql-patches a+r+s+a+l+ k+n+y+d+.
-
- t+e+d+a+d+ z+y+a+d+y+ a+z+ b+r+n+a+m+h+n+w+y+s+a+n+ w+g+w+d+
- d+a+r+n+d+ k+h+ a+m+t+y+a+z+ a+n+g+a+m+ t+i+y+y+r+a+t+ d+r+ cvs r+a+
- d+a+r+n+d+. h+r+ k+d+a+m+ a+z+ aMn+h+a+ t+e+d+a+d+ z+y+a+d+y+ w+c+l+h+
- b+a+ k+y+f+y+t+ b+a+l+a+ b+h+ gfr+w+h+ a+r+s+a+l+ k+r+d+h+a+n+d+ k+h+
- a+e+t+m+a+d+ gfr+d+a+n+n+d+gfa+n+ PostgreSQL r+a+ b+h+ d+s+t+
- aMw+r+d+h+a+n+d+.
-
- 1.13) tcgfw+n+h+ m+y+t+w+a+n+m+ y+k+ a+1+snk+a+l+ r+a+ b+h+ gfr+w+h+
- b+r+n+a+m+h+ n+w+y+s+ a+e+l+a+m+ k+n+m+?+
-
- l+tjf+a+:+ c+f+hkh+ m+r+b+w+tj b+h+ a+1+snk+a+l+a+t+ PostgreSQL r+a+
- d+r+ s+a+y+t+ http://www.PostgreSQL.org/bugs/bugs.php m+sna+h+d+h+
- k+n+y+d+. d+r+ a+y+n+ s+a+y+t+ n+hkw+h+ gfz+a+r+sn w+ a+r+s+a+l+ y+k+
- a+snk+a+l+ t+w+ddy+hk d+a+d+h+ snd+h+ a+s+t+.
-
- h+m+tcn+y+n+ b+r+a+y+ d+y+d+n+ n+s+x+h+h+a+y+ g+d+y+d+t+r+ PostgreSQL
- w+ y+a+ w+g+w+d+ y+k+ w+c+l+h+ g+d+y+d+ a+z+ s+a+y+t+
- ftp://ftp.PostgreSQL.org/pub b+a+z+d+y+d+ k+n+y+d+.
-
- 1.14) w+dde+y+t+ PostgreSQL d+r+ m+q+a+y+s+h+ b+a+ s+a+y+r+ DBMSh+a+ b+h+
- tch+ c+w+r+t+ a+s+t+?+
-
- r+a+h+h+a+y+ m+x+t+l+f+y+ b+r+a+y+ a+n+d+a+z+h+gfy+r+y+ w+
- m+q+a+y+s+h+ n+r+m+a+f+z+a+r+h+a+ w+g+w+d+ d+a+r+d+ k+h+
- e+b+a+r+t+n+d+ a+z+ a+m+k+a+n+a+t+,+ k+a+r+a+y+y+,+ q+a+b+l+y+t+
- a+e+t+m+a+d+,+ p+snt+y+b+a+n+y+ w+ q+y+m+t+
-
- a+m+k+a+n+a+t+
- PostgreSQL b+y+snt+r+ a+m+k+a+n+a+t+ m+w+g+w+d+ d+r+
- s+y+s+t+m+h+a+y+ p+a+y+gfa+h+ d+a+d+h+ t+g+a+r+y+
- b+z+r+gf n+zHy+r+ transactions, subselets, triggers,
- views, foreign key referential integrity w+ sophisticated
- locking r+a+ d+a+r+d+. d+r+ PostgreSQL a+m+k+a+n+a+t+y+
- w+g+w+d+ d+a+r+d+ k+h+ p+a+y+gfa+h+h+a+y+ d+a+d+h+
- d+y+gfr+ aMn+ r+a+ n+d+a+r+n+d+ n+zHy+r+ user-defined
- typesw+ Inheritancew+ rulesw+ multi-version concurrency
- control
-
-
-
- k+a+r+a+y+y+
-
- k+a+r+a+y+y+ PostgreSQL d+r+ hkd+ b+q+y+h+ s+y+s+t+m+
- h+a+y+ t+g+a+r+y+ w+ m+t+n+ b+a+z+ a+s+t+. d+r+ b+e+ddy+
- m+w+a+r+d+ s+r+y+e+t+r+ w+ d+r+ b+e+ddy+ m+w+a+r+d+ a+z+
- aMn+h+a+ k+n+d+t+r+ a+s+t+. d+r+ m+q+a+y+s+h+ b+a+ MySQL
- b+r+a+y+ k+a+r+b+r+a+n+ b+y+snt+r+ w+ d+r+x+w+a+s+t+h+a+y+
- p+y+tcy+d+h+ w+ b+a+r+ z+y+a+d+ x+w+a+n+d+n+/n+w+snt+n+
- s+r+y+e+t+r+ a+s+t+. d+r+ d+r+x+w+a+s+t+h+a+y+ s+a+d+h+ SELECT
- a+z+ MySQL k+n+d+t+r+ a+s+t+. a+l+b+t+h+ MySQL x+y+l+y+ a+z+
- a+m+k+a+n+a+t+ PostgreSQL k+h+ d+r+ b+a+l+a+ b+h+ aMn+
- a+sna+r+h+ snd+ r+a+ n+d+a+r+d+. h+d+f+ a+c+l+y+ m+a+
- a+m+k+a+n+a+t+ w+ q+a+b+l+y+t+ a+e+t+m+a+d+ b+a+l+a+s+t+ d+r+
- ddm+n+ aMn+k+h+ t+l+a+sn m+y+k+n+y+m+ t+a+ k+a+r+a+y+y+ aMn+
- n+y+z+ b+h+b+w+d+ y+a+b+d+. d+r+ aMd+r+s+
- http://openacs.org/philosophy/why-not-mysql.html y+k+
- m+q+a+y+s+h+ g+a+l+b+ b+y+n+ MySQL w+ PostgreSQL w+g+w+d+
- d+a+r+d+. a+z+ tjr+f+ d+y+gfr+ MySQL y+k+ snr+k+t+ a+s+t+ k+h+
- m+hkc+w+l+ x+w+d+ r+a+ b+h+ c+w+r+t+ m+t+n+ b+a+z+ a+r+a+yHh+
- m+y+k+n+d+ w+l+y+ b+r+a+y+ n+r+m+a+f+z+a+r+ i+y+r+ m+t+n+
- b+a+z+ x+w+d+ a+hkt+y+a+g+ b+h+ l+y+s+a+n+s+ t+g+a+r+y+
- d+a+r+d+ b+r+ x+l+a+f+ PostgreSQL k+h+ y+k+ gfr+w+h+
- k+a+m+l+a+:+ m+t+n+ b+a+z+ h+s+t+n+d+.
-
-
-
- q+a+b+l+y+t+ a+tjm+y+n+a+n+
- m+a+ f+k+r+ m+y+k+n+y+m+ k+h+ y+k+ s+y+s+t+m+
- p+a+y+gfa+h+ d+a+d+h+a+y+ k+h+ m+tjm+yHn+ n+b+a+snd+
- a+r+z+sny+ n+d+a+r+d+. m+a+ t+m+a+m+ t+l+a+snm+a+n+ r+a+
- b+r+a+y+ a+r+a+yHh+ k+d+h+a+y+ p+a+y+d+a+r+y+ k+h+ b+h+
- x+w+b+y+ t+s+t+ snd+h+ b+a+snn+d+ w+ k+m+t+r+y+n+
- a+1+snk+a+l+a+t+ r+a+ d+a+snt+h+ b+a+snn+d+ m+y+k+n+y+m+.
- h+r+ n+s+x+h+ g+d+y+d+y+ k+h+ a+r+a+yHh+ m+y+snw+d+
- hkd+a+q+l+ y+k+ m+a+h+ r+a+ d+r+ m+r+hkl+h+ t+s+t+ b+t+a+
- m+y+gfdkr+a+n+d+. m+a+ b+r+ a+y+n+ b+a+w+r+ h+s+t+y+m+
- k+h+ q+a+b+l+y+t+ a+tjm+y+n+a+n+ PostgreSQL d+r+
- m+q+a+y+s+h+ b+a+ s+a+y+r+ s+y+s+t+m+h+a+y+ p+a+y+gfa+h+
- d+a+d+h+ q+a+b+l+ t+w+g+h+ a+s+t+ w+ n+s+x+h+h+a+y+y+
- k+h+ t+a+k+n+w+n+ a+r+a+yHh+ snd+h+ a+s+t+ n+sna+n+ m+y+
- d+h+d+ k+h+ m+a+ t+w+a+n+a+y+y+ a+r+a+yHh+ y+k+
- s+y+s+t+m+ q+w+y+ w+ m+hkk+m+ w+ m+tjm+yHn+ r+a+ k+h+
- aMm+a+d+h+ b+h+r+h+b+r+d+a+r+y+ a+s+t+ d+a+r+y+m+.
-
- p+snt+y+b+a+n+y+
- gfr+w+h+h+a+y+ p+s+t+y+ m+a+ a+m+k+a+n+ a+r+t+b+a+tj w+
- t+m+a+s+ b+h+ gfr+w+h+ b+z+r+gfy+ a+z+ b+r+n+a+m+h+
- n+w+y+s+a+n+ w+ k+a+r+b+r+a+n+ r+a+ m+y+d+h+d+ k+h+ m+y+
- t+w+a+n+n+d+ d+r+ hkl+ m+snk+l+a+t+ b+h+ d+y+gfr+a+n+
- k+m+k+ k+n+n+d+. d+s+t+r+s+y+ m+s+t+q+y+m+ b+h+
- b+r+n+a+m+h+n+w+y+s+a+n+ w+ gfr+w+h+h+a+y+ k+a+r+b+r+a+n+
- w+ r+a+h+n+m+a+h+a+ w+ k+d+a+c+l+y+ b+a+e+tk m+y+snw+d+
- k+h+ p+snt+y+b+a+n+y+ PostgreSQL n+s+b+t+ b+h+ s+a+y+r+
- p+a+y+gfa+h+h+a+y+ d+a+d+h+ b+h+ n+hkw+ b+h+t+r+y+
- a+n+g+a+m+ snw+d+. h+m+tcn+y+n+ a+m+k+a+n+ a+r+a+yHh+
- x+d+m+a+t+ p+snt+y+b+a+n+y+ b+h+ c+w+r+t+ t+g+a+r+y+
- n+y+z+ w+g+w+d+ d+a+r+d+. b+r+a+y+ d+y+d+n+
- a+tjl+a+e+a+t+ b+y+snt+r+ b+h+ FAQ section 1.6
- m+r+a+g+e+h+ k+n+y+d+.
-
- q+y+m+t+
- h+m+ b+r+a+y+ a+s+t+f+a+d+h+ t+g+a+r+y+ w+ h+m+ i+y+r+
- t+g+a+r+y+ h+y+tc h+z+y+n+h+a+y+ n+b+a+y+d+ p+r+d+a+x+t+
- snw+d+. h+y+tc m+hkd+w+d+y+t+y+ b+r+a+y+ a+n+g+a+m+
- t+i+y+y+r+a+t+ d+r+ PostgreSQL t+w+s+tj a+s+t+f+a+d+h+
- k+n+n+d+gfa+n+ w+g+w+d+ n+d+a+r+d+ b+h+ g+z+ m+w+a+r+d+y+
- k+h+ d+r+ l+y+s+a+n+s+ BSD b+h+ aMn+ a+sna+r+h+ snd+h+
- a+s+t+.
-
- 1.15) m+n+ tcgfw+n+h+ m+y+t+w+a+n+m+ a+z+ n+zHr+ m+a+l+y+ b+h+ PostgreSQL
- k+m+k+ k+n+m+?+
-
- PostgreSQL d+a+r+a+y+ y+k+ s+a+x+t+a+r+ t+snk+y+l+a+t+y+ d+r+g+h+
- a+w+l+ a+s+t+ k+h+ aMn+ r+a+ m+d+y+w+n+ Marc Fournier a+s+t+ k+h+
- a+y+n+ s+a+x+t+a+r+ r+a+ a+y+g+a+d+ k+r+d+h+ a+s+t+.
-
- k+y+f+y+t+ y+k+ s+a+x+t+a+r+ b+r+a+y+ y+k+ p+r+w+zjh+ m+t+n+ b+a+z+
- b+s+y+a+r+ a+h+m+y+t+ d+a+r+d+. y+k+ s+a+x+t+a+r+ x+w+b+ m+y+
- t+w+a+n+d+ m+a+n+e+ a+z+ hkw+a+d+tky+ snw+d+ k+h+ d+r+ hkr+k+t+
- r+w+b+h+g+l+w+y+ p+r+w+zjh+ x+l+l+y+ w+a+r+d+ m+y+k+n+n+d+.
-
- a+l+b+t+h+ a+y+n+ s+a+x+t+a+r+ t+snk+y+l+a+t+y+ a+r+z+a+n+ n+y+s+t+.
- h+z+y+n+h+h+a+y+ tka+b+t+ m+a+h+a+n+h+ w+ r+w+z+m+r+h+ b+r+a+y+
- n+gfh+d+a+r+y+ w+ hkf+zH a+y+n+ s+a+x+t+a+r+ m+w+r+d+ n+y+a+z+ a+s+t+.
- a+gfr+ snm+a+ y+a+ snr+k+t+ snm+a+ m+a+y+l+ a+s+t+ k+h+ a+z+ n+zHr+
- m+a+l+y+ b+h+ a+y+n+ hkr+k+t+ k+m+k+ k+n+d+ l+tjf+a+:+ b+h+ s+a+y+t+
- http://store.pgsql.com/shopping m+r+a+g+e+h+ k+r+d+h+ w+ k+m+k+ x+w+d+
- r+a+ a+h+d+a+ k+n+y+d+.
-
- h+r+ tcn+d+ d+r+ c+f+hkh+ a+c+l+y+ e+b+a+r+t+ PostgreSQL,Inc dkk+r+
- snd+h+ a+s+t+ w+l+y+ m+sna+r+k+t+ e+m+d+t+a+:+ b+r+a+y+
- p+snt+y+b+a+n+y+ a+z+ p+r+w+zjh+ PostgreSQL m+y+ b+a+snd+ w+ n+h+
- b+r+a+y+ y+k+ snr+k+t+ m+snx+c+. a+gfr+ t+r+g+y+hk m+y+d+h+y+d+ m+y+
- t+w+a+n+y+d+ y+k+ tck+ b+h+ aMd+r+s+ m+snx+c+ snd+h+ a+r+s+a+l+
- k+n+y+d+.
-
- a+gfr+ y+k+ a+s+t+f+a+d+h+ m+w+f+q+ a+z+ PostgreSQL s+r+a+i+
- d+a+r+y+d+ l+tjf+a+:+ aMn+ r+a+ b+h+ s+a+y+t+
- http://advocacy.postgresql.org gfz+a+r+sn d+h+y+d+.
- _________________________________________________________________
-
- s+w+a+l+a+t+ m+r+b+w+tj b+h+ a+s+t+f+a+d+h+ a+z+ p+a+y+gfa+h+ d+a+d+h+
-
- 2.1) aMy+a+ h+y+tc d+r+a+y+w+r+ ODBC b+r+a+y+ PostgreSQL w+g+w+d+
- d+a+r+d+?+
-
- d+w+ d+r+a+y+w+r+ ODBC b+n+a+m+h+a+y+ psqlODBC w+ OpenLink b+r+a+y+
- PostgreSQL w+g+w+d+ d+a+r+d+.
-
- b+r+a+y+ gfr+f+t+n+ psqlODBC b+h+ s+a+y+t+
- http://gborg.postgresql.org/project/psqlodbc/projdisplay.php
- m+r+a+g+e+h+ k+n+y+d+.
-
- OpenLlink r+a+ a+z+ a+y+n+ s+a+y+t+ http://www.openlinksw.com m+y+
- t+w+a+n+y+d+ b+gfy+r+y+d+. a+y+n+ d+r+a+y+w+r+ b+a+ n+r+m+
- a+f+z+a+r+h+a+y+ m+x+t+l+f+ ODBC k+a+r+ m+y+k+n+d+ b+n+a+b+r+a+y+n+
- snm+a+ q+a+d+r+ x+w+a+h+y+d+ b+w+d+ b+a+ a+s+t+f+a+d+h+ a+z+ OpenLink
- r+w+y+ a+k+tkr+ s+k+w+h+a+y+y+ k+h+ n+r+m+a+f+z+a+r+ODBCd+a+r+n+d+
- b+d+w+n+ m+snk+l+ b+h+ PostgreSQL n+y+z+ m+t+c+l+ snw+y+d+.
-
- a+y+n+ m+hkc+w+l+ b+h+ k+s+a+n+y+ k+h+ a+hkt+y+a+g+ b+h+ x+d+m+a+t+
- p+snt+y+b+a+n+y+ t+g+a+r+y+ d+a+r+n+d+ f+r+w+x+t+h+ m+y+snw+d+. w+l+y+
- n+s+x+h+ aMz+a+d+ a+y+n+ n+r+m+a+f+z+a+r+ h+m+y+snh+ d+r+ d+r+s+t+r+s+
- m+y+b+a+snd+. b+r+a+y+ k+s+b+ a+tjl+a+e+a+t+ b+y+snt+r+ s+w+a+l+a+t+
- x+w+d+ r+a+ b+h+ aMd+r+s+ postgres95@openlink.co.uk a+r+s+a+l+
- n+m+a+y+y+d+.
-
- 2.2) tch+ a+b+z+a+r+h+a+y+y+ b+r+a+y+ a+s+t+f+a+d+h+ a+z+ PostgreSQL b+a+
- c+f+hka+t+ w+b+ w+g+w+d+ d+a+r+d+?+
-
- d+r+ s+a+y+t+ http://www.webreview.com b+r+a+y+ a+s+t+f+a+d+h+ a+z+
- PostgreSQL d+r+ c+f+hka+t+ w+b+ r+a+h+n+m+a+y+y+h+a+y+ x+w+b+y+
- w+g+w+d+ d+a+r+d+.
-
- b+r+a+y+ t+r+k+y+b+ w+ a+s+t+f+a+d+h+ d+r+ c+f+hka+t+ w+b+ z+b+a+n+
- PHP y+k+ w+a+s+tj b+s+y+a+r+ m+n+a+s+b+ a+s+t+. a+tjl+a+e+a+t+
- b+y+snt+r+ r+a+g+e+ b+h+ PHPd+r+ s+a+y+t+ http://www.php.net w+g+w+d+
- d+a+r+d+.
-
- m+tka+l+h+a+y+y+ n+y+z+ b+a+ a+s+t+f+a+d+h+ a+z+ Perl w+ CGI.pm w+
- mod_perl w+g+w+d+ d+a+r+d+.
-
- 2.3) aMy+a+ PostgreSQL y+k+ w+a+s+tj k+a+r+b+r+y+ gfr+a+f+y+k+y+ d+a+r+d+?+
-
- tcn+d+ n+r+m+ a+f+z+a+r+ gfr+a+f+y+k+y+ b+r+a+y+ PostgreSQL w+g+w+d+
- d+a+r+d+ k+h+ sna+m+l+ pgAccess d+r+s+a+y+t+ http://www.pgaccess.org
- w+ pgAdmin III d+r+ s+a+y+t+ http://www.pgadmin.org w+ RHDB Admin d+r+
- s+a+y+t+ http://sources.redhat.com/rhdb w+ Rekall d+r+ s+a+y+t+
- http://www.thekompany.com/products/rekall m+y+b+a+snd+. h+m+tcn+y+n+
- y+k+ phpPgAdmin h+m+ d+r+ s+a+y+t+ http://phppgadmin.sourceforge.net
- w+g+w+d+ d+a+r+d+ k+h+ y+k+ w+a+s+tj w+b+y+ b+r+a+y+ m+d+y+r+y+t+
- PostgreSQL m+y+b+a+snd+.
-
- b+r+a+y+ d+y+d+n+ a+tjl+a+e+a+t+ b+y+snt+r+ r+a+g+e+ b+h+ n+r+m+
- a+f+z+a+r+h+a+y+ gfr+a+f+y+k+y+ b+r+a+y+ PostgreSQL b+h+ aMd+r+s+
- http://techdocs.postgresql.org/guides/GUITools m+r+a+g+e+h+ k+n+y+d+.
-
- 2.4) b+a+ tch+ z+b+a+n+h+a+y+ b+r+n+a+m+h+n+w+y+s+y+ m+y+t+w+a+n+ b+a+
- PostgreSQL a+r+t+b+a+tj b+r+q+r+a+r+ k+r+d+?+
-
- b+y+snt+r+ z+b+a+n+h+a+y+ b+r+n+a+m+h+n+w+y+s+y+ m+y+t+w+a+n+n+d+ b+a+
- PostgreSQL a+r+t+b+a+tj b+r+q+r+a+r+ k+n+n+d+. b+h+ h+m+r+a+h+
- s+w+r+s+ PostgreSQL t+e+d+a+d+y+ a+z+ w+a+s+tjh+a+y+ m+w+r+d+ n+y+a+z+
- b+r+a+y+ a+r+t+b+a+tj b+a+ p+a+y+gfa+h+ d+a+d+h+ a+z+ tjr+y+q+
- z+b+a+n+h+a+y+ m+x+t+l+f+ aMm+d+h+ a+s+t+ k+h+ d+r+ z+y+r+ l+y+s+t+
- aMn+h+a+ r+a+ m+sna+h+d+h+ m+y+k+n+y+d+.
- * C (libpq)
- * Embedded C (ecpg)
- * Java (jdbc)
- * Python (PyGreSQL)
- * TCL (libpgtcl)
-
- w+a+s+tjh+a+y+ d+y+gfr+ d+r+ s+a+y+t+ http://gborg.postgresql.org d+r+
- q+s+m+t+ Drivers/Interfaces w+g+w+d+ d+a+r+d+.
- _________________________________________________________________
-
- s+w+a+l+a+t+ m+d+y+r+y+t+y+
-
- 3.1) tcgfw+n+h+ m+y+t+w+a+n+m+ PostgreSQL r+a+ d+r+ sna+x+h+a+y+ i+y+r+
- a+z+ /usr/local/pgsql/ n+c+b+ k+n+m+?+
-
- m+w+q+e+ a+g+r+a+y+ d+s+t+w+r+ configure a+z+ gfz+y+n+h+ prefix--
- a+s+t+f+a+d+h+ k+n+y+d+.
-
- 3.2) tcr+a+ m+w+q+e+y+ k+h+ m+n+ b+r+n+a+m+h+ postmaster r+a+ a+g+r+a+ m+y+
- k+n+m+ p+y+a+m+ Bad system call w+ y+a+ core dump m+y+gfy+r+m+?+
-
- b+h+ d+l+a+y+l+ m+x+t+l+f+ m+m+k+n+ a+s+t+ a+y+n+ a+t+f+a+q+
- b+y+f+t+d+. a+m+a+ d+r+ q+d+m+ a+w+l+ snm+a+ m+tjm+yHn+ snw+y+d+ k+h+
- k+h+ a+m+k+a+n+a+t+ a+dda+f+h+ System V d+r+ k+r+n+l+ snm+a+ n+c+b+
- snd+h+ b+a+snd+. PostgreSQL b+r+a+y+ a+g+r+a+ snd+n+ n+y+a+z+ b+h+
- a+s+t+f+a+d+h+ a+z+ a+m+k+a+n+a+t+ hka+f+zHh+ m+snt+r+k+ w+
- s+m+a+f+w+r+h+a+ d+a+r+d+.
-
- 3.3) tcr+a+ m+w+q+e+y+ k+h+ m+n+ s+e+y+ m+y+k+n+m+ b+r+n+a+m+h+ postmaster
- r+a+ a+g+r+a+ k+n+m+ x+tja+y+ IpcMemoryCreate m+y+gfy+r+m+?+
-
- a+hkt+m+a+l+a+:+ q+s+m+t+ a+y+g+a+d+ hka+f+zHh+ m+snt+r+k+ d+r+
- k+r+n+l+ b+h+ d+r+s+t+y+ t+n+zHy+m+ n+snd+h+ a+s+t+ w+ y+a+ a+y+n+k+h+
- b+a+y+d+ f+dda+y+ hka+f+zHh+ a+snt+r+a+k+y+ d+r+ k+r+n+l+ r+a+
- z+y+a+d+ k+r+d+. m+y+z+a+n+ d+q+y+q+ hka+f+zHh+ m+snt+r+k+ m+w+r+d+
- n+y+a+z+ b+s+t+h+ b+h+ m+e+m+a+r+y+ w+ n+hkw+h+ a+s+t+f+a+d+h+ a+z+
- b+a+f+r+h+a+ t+w+s+tj b+r+n+a+m+h+ postmaster d+a+r+d+. b+r+a+y+
- b+y+snt+r+ s+y+s+t+m+h+a+ k+h+ b+a+ t+n+zHy+m+a+t+ p+y+snf+r+dd k+a+r+
- m+y+k+n+n+d+ m+q+d+a+r+ a+y+n+ hka+f+zHh+ hkd+w+d+ 1 m+gfa+b+a+y+t+
- a+s+t+. b+r+a+y+ d+y+d+n+ a+tjl+a+e+a+t+ b+y+snt+r+ r+a+g+e+ b+h+
- hka+f+zHh+ m+snt+r+k+ w+ s+m+a+f+w+r+ b+h+ PostgreSQL Administrator's
- Guide m+r+a+g+e+h+ k+n+y+d+.
-
- 3.4) tcr+a+ m+w+q+e+y+ k+h+ m+n+ s+e+y+ m+y+k+n+m+ b+r+n+a+m+h+ postmaster
- r+a+ a+g+r+a+ k+n+m+ x+tja+y+ IpcSemaphoreCreate m+y+gfy+r+m+?+
-
- a+gfr+ p+y+i+a+m+ x+tja+ (pcSemaphoreCreate: semget failed (No space
- left on device b+a+snd+ b+h+ a+y+n+ m+e+n+y+ a+s+t+ k+h+ t+e+d+a+d+
- s+m+a+f+w+r+h+a+y+ t+n+zHy+m+ snd+h+ d+r+ k+r+n+l+ k+a+f+y+ n+y+s+t+.
- PostgreSQL b+r+a+y+ h+r+ f+r+a+y+n+d+y+ k+h+ d+r+ backend a+g+r+a+
- m+y+snw+d+ b+h+ y+k+ s+m+a+f+w+r+ n+y+a+z+ d+a+r+d+. y+k+ r+a+h+ hkl+
- m+w+q+t+ b+r+a+y+ a+y+n+ m+s+yHl+h+ aMn+ a+s+t+ k+h+ postmaster r+a+
- b+a+ a+e+m+a+l+ m+hkd+w+d+y+t+ r+w+y+ t+e+d+a+d+ f+r+a+y+n+d+h+a+y+y+
- k+h+ m+y+t+w+a+n+d+ a+y+g+a+d+ k+n+d+ a+g+r+a+ k+n+y+m+. b+r+a+y+
- a+y+n+k+a+r+ a+z+ gfz+y+n+h+ N- w+ y+k+ e+d+d+ k+m+t+r+ a+z+ 32
- a+s+t+f+a+d+h+ k+n+y+d+. r+a+h+ hkl+ d+a+yHm+y+ a+y+n+ m+snk+l+ aMn+
- a+s+t+ k+h+ p+a+r+a+m+t+r+h+a+y+ SEMMNS, SEMMNI k+r+n+l+ r+a+
- a+f+z+a+y+sn d+h+y+m+.
-
- d+r+ z+m+a+n+ d+s+t+r+s+y+ x+y+l+y+ z+y+a+d+ b+h+ p+a+y+gfa+h+
- d+a+d+h+,+ s+m+a+f+w+r+h+a+y+ n+a+m+e+t+b+r+ m+y+t+w+a+n+n+d+ b+a+e+tk
- crash k+r+d+n+ s+y+s+t+m+ snw+n+d+.
-
- a+gfr+ p+y+i+a+m+ x+tja+ tcy+z+ d+y+gfr+y+ b+a+snd+ a+hkt+m+a+l+a+:+
- b+h+ d+l+y+l+ aMn+ a+s+t+ k+h+ k+r+n+l+ a+z+ s+m+a+f+w+r+h+a+
- p+snt+y+b+a+n+y+ n+m+y+k+n+d+. b+r+a+y+ d+y+d+n+ a+tjl+a+e+a+t+
- b+y+snt+r+ r+a+h+n+m+a+y+ m+d+y+r+y+t+y+ PostgreSQL r+a+ m+tja+l+e+h+
- k+n+y+d+.
-
- 3.5) tcgfw+n+h+ m+y+t+w+a+n+m+ a+t+c+a+l+a+t+ s+a+y+r+ m+a+sny+n+h+a+ r+a+
- k+n+t+r+l+ k+n+m+?+
-
- b+h+ c+w+r+t+ p+y+sn f+r+dd f+q+tj a+z+ m+a+sny+n+y+ k+h+ PostgreSQL
- r+w+y+ aMn+ d+r+ hka+l+ a+g+r+a+s+t+ m+y+t+w+a+n+ b+a+ a+s+t+f+a+d+h+
- a+z+ s+w+k+t+h+a+y+ y+w+n+y+k+s+y+ b+h+ aMn+ m+t+c+l+ snd+. s+a+y+r+
- m+a+sny+n+h+a+ q+a+d+r+ n+y+s+t+n+d+ b+h+ PostgreSQL m+t+c+l+ snw+n+d+
- m+gfr+ aMn+k+h+ gfz+y+n+h+ tcp_sockets d+r+ f+a+y+l+ postgresql.conf
- f+e+a+l+ snd+h+ w+ h+m+tcn+y+n+ b+a+ a+c+l+a+hk f+a+y+l+
- PGDATA/ph_hba.conf h+w+y+t+snn+a+s+y+ m+b+t+n+y+ b+r+ m+y+z+b+a+n+
- n+y+z+ f+e+a+l+ snw+d+. b+a+ a+y+n+ k+a+r+ m+y+t+w+a+n+ a+t+c+a+l+a+t+
- TCP/IP b+h+ PostgreSQL a+y+g+a+d+ k+r+d+.
-
- 3.6) b+r+a+y+ k+a+r+a+y+y+ b+a+l+a+t+r+ w+ b+h+t+r+ p+a+y+gfa+h+ d+a+d+h+
- m+n+ tch+ t+n+zHy+m+a+t+y+ r+a+ b+a+y+d+ a+n+g+a+m+ d+h+m+?+
-
- b+h+ tjw+r+ hkt+m+ a+s+t+f+a+d+h+ a+z+ a+n+d+y+s+h+a+ b+a+e+tk
- b+a+l+a+ r+f+t+n+ s+r+e+t+ p+a+s+x+gfw+y+y+ b+h+ d+r+x+w+a+s+t+h+a+
- x+w+a+h+d+ snd+. d+s+t+w+r+ EXPLAIN ANALYZE b+h+ snm+a+ a+m+k+a+n+
- d+y+d+n+ n+hkw+h+ p+r+d+a+z+sn y+k+ d+s+t+w+r+ t+w+s+tj PostgreSQL
- r+a+ m+y+d+h+d+.
-
- a+gfr+ snm+a+ t+e+d+a+d+ z+y+a+d+y+ INSERT d+a+r+y+d+ s+e+y+ k+n+y+d+
- aMn+h+a+ r+a+ b+a+ q+r+a+r+ d+a+d+n+ d+r+ y+k+ f+a+y+l+ b+a+
- d+s+t+w+r+ COPY a+g+r+a+ k+n+y+d+. a+y+n+ d+s+t+w+r+ b+h+ m+r+a+t+b+
- a+z+ INSERT s+r+y+e+t+r+ a+s+t+. hkt+y+a+l+a+m+k+a+n+ s+e+y+ k+n+y+d+
- a+z+ t+r+a+k+n+snh+a+ a+s+t+f+a+d+h+ n+k+n+y+d+. t+r+a+k+n+snh+a+
- m+g+m+w+e+h+ d+s+t+w+r+a+t+y+ h+s+t+n+d+ k+h+ b+y+n+d+ BEGIN w+ COMMIT
- m+y+aMy+n+d+. a+gfr+ y+k+ d+s+t+w+r+ b+h+ c+w+r+t+ e+a+d+y+ a+g+r+a+
- snw+d+ PostgreSQL x+w+d+ aMn+ d+s+t+w+r+ r+a+ b+h+ c+w+r+t+ y+k+
- t+r+a+k+n+sn m+s+t+q+l+ n+gfa+h+ k+r+d+h+ w+ a+g+r+a+ m+y+k+n+d+.
- m+w+q+e+ی k+h+ t+i+y+y+r+a+t+ z+y+a+d+y+ d+r+ p+a+y+gfa+h+
- d+a+d+h+ a+n+g+a+m+ m+y+snw+d+ a+n+d+y+s+h+a+y+ q+b+l+y+ r+a+ hkdkf+
- w+ m+g+d+d+a+:+ a+y+g+a+d+ k+n+y+d+.
-
- a+s+t+f+a+d+h+ a+z+ gfz+y+n+h+ o -F- d+r+ f+r+m+a+n+ postmaster
- b+a+e+tk i+y+r+ f+e+a+l+ k+r+d+n+ ()fsync m+y+snw+d+. a+y+n+
- d+s+t+w+r+ b+e+d+ a+z+ h+r+ t+r+a+k+n+sn a+tjl+a+e+a+t+ r+a+ r+w+y+
- h+a+r+d+d+y+s+k+ m+n+t+q+l+ m+y+k+n+d+.
-
- b+r+a+y+ a+f+z+a+y+sn t+e+d+a+d+ b+a+f+r+h+a+y+ hka+f+zHh+
- a+snt+r+a+k+y+ a+z+ gfz+y+n+h+ B- b+h+ h+m+r+a+h+ f+r+m+a+n+
- postmaster a+s+t+f+a+d+h+ k+n+y+d+. t+w+g+h+ k+n+y+d+ k+h+ a+gfr+
- a+y+n+ e+d+d+ x+y+l+y+ b+z+r+gf b+a+snd+ m+m+k+n+ a+s+t+ postmaster
- a+c+l+a+:+ a+g+r+a+ n+snw+d+. h+r+ b+a+f+r+ 8 k+y+l+w+ b+a+y+t+
- hka+f+zHh+ n+y+a+z+ d+a+r+d+ w+ t+e+d+a+d+ b+a+f+r+h+a+ b+h+ tjw+r+
- p+y+sn f+r+dd 64 a+s+t+.
-
- h+m+tcn+y+n+ m+y+t+w+a+n+ b+a+ gfz+y+n+h+ S- m+y+z+a+n+ hka+f+zHh+
- a+y+ k+h+ b+r+a+y+ m+r+t+b+s+a+z+y+h+a+y+ m+w+q+t+ t+w+s+tj PostgreSQL
- a+s+t+f+a+d+h+ m+y+snw+d+ r+a+ a+f+z+a+y+sn d+a+d+. m+q+d+a+r+ p+y+sn
- f+r+dd 512 k+y+l+w+ b+a+y+t+ a+s+t+.
-
- a+s+t+f+a+d+h+ a+z+ d+s+t+w+r+ CLUSTER n+y+z+ b+r+a+y+ b+a+l+a+
- b+r+d+n+ k+a+r+a+y+y+ m+w+tkr+ a+ s+t+. d+s+t+w+r+ r+a+h+n+m+a+y+
- CLUSTER a+tjl+a+e+a+t+ b+y+snt+r+y+ d+r+ a+y+n+ z+m+y+n+h+ b+h+ snm+a+
- m+y+d+h+d+.
-
- 3.7) tch+ a+m+k+a+n+a+t+y+ b+r+a+y+ p+y+d+a+ k+r+d+n+ a+snk+a+l+ w+g+w+d+
- d+a+r+d+?+
-
- PostgerSQL a+m+k+a+n+a+t+ m+x+t+l+f+y+ b+r+a+y+ gfz+a+r+sn d+a+d+n+
- w+dde+y+t+ x+w+d+ d+a+r+d+ k+h+ b+r+a+y+ a+snk+a+l+ z+d+a+y+y+ m+y+
- t+w+a+n+ a+z+ aMn+h+a+ a+s+t+f+a+d+h+ k+r+d+.
-
- b+a+ a+s+t+f+a+d+h+ a+z+ gfz+y+n+h+ enable-assert-- t+e+d+a+d+
- z+y+a+d+y+ ()assert b+r+a+y+ m+w+n+y+t+w+r+ k+r+d+n+ w+ t+w+q+f+
- b+r+n+a+m+h+ d+r+ c+w+r+t+ b+r+w+z+ x+tja+h+a+y+ n+a+x+w+a+s+t+h+
- f+e+a+l+ m+y+snw+d+.
-
- h+m+ Postmaster w+ h+m+ postgres gfz+y+n+h+h+a+y+ z+y+a+d+y+ b+r+a+y+
- a+snk+a+l+ z+d+a+y+y+ d+a+r+n+d+. m+w+q+e+y+ k+h+ postmaster r+a+
- a+g+r+a+ m+y+k+n+y+d+ x+r+w+g+y+ a+s+t+a+n+d+a+r+d+ w+ x+tja+ r+a+
- s+m+t+ f+a+y+l+ log a+r+s+a+l+ k+n+y+d+.
-
+óÃËçÃâçê Ãâ¦Ã¯ÃŠñÊêÃÅ
+3.1) Ãâ ïÃËÃâ Ãâ¡ Ãâ¦ÃŠââ¬ÅêÃËçÃâ Ã⦠PostgreSQLââ¬Å ñç ïñ ôçîÃâ¡Ã¢â¬ÅçÊúÊñ
+çò /usr/local/pgsql/ Ãâ õè ÃÆÃâ Ãâ¦ÃŸ
+Ãâ¦ÃËÃâù çìñçÊïóêÃËñ configure çò ïòÃÅ Ãâ Ãâ¡ prefix-- çóêÃÂçïÃâ¡
+ÃÆÃâ Êï.
+3.2) Ãâ ñç Ãâ¦ÃËÃâùÃÅ ÃÆÃâ¡ Ãâ¦Ãâ èñÃâ çÃâ¦Ãâ¡ postmasterââ¬Å ñç çìñç Ãâ¦ÃÅ
+ÃÆÃâ Ã⦠þÊçÃ⦠Bad system callââ¬Å ÃË ÃŠç core dump ââ¬ÅÃâ¦ÃŠââ¬ÅïÊñÃâ¦ÃŸ
+èÃ⡠ïÃâçÃÅ Ãâ Ãâ¦Ã®ÃªÃâàÃâ¦Ãâ¦ÃÆÃâ çóê çÃÅ Ãâ çêÃÂçÃâ èÃÅ ÃÂêï. çÃâ¦Ã§
+ïñ ÃâïÃ⦠çÃËÃâ ôÃâ¦Ã§ Ãâ¦Ã·Ãâ¦Ã¦Ãâ ôÃËÊï ÃÆÃâ¡ ÃÆÃ⡠çÃâ¦ÃÆÃ§Ãâ çê
+çöçÃÂÃâ¡ System Vââ¬Å ïñ ̮̱Ãâ Ãâ ôÃâ¦Ã§ Ãâ õè ôïÃ⡠èçôï. PostgreSQL
+èñçÊçìñç ôïÃâ Ãâ Êçò èÃ⡠çóêÃÂçïÃ⡠çò çÃâ¦ÃÆÃ§Ãâ çê
+ÃÂçÃÂøÃâ¡ Ãâ¦Ã´ÃªÃÂ±ÃÆ ÃË Ã³Ãâ¦Ã§ÃÂÃËñÃâ¡Ã§ ïçñï.
+3.3) Ãâ ñç Ãâ¦ÃËÃâùÃÅ ÃÆÃâ¡ Ãâ¦Ãâ óùÃÅ Ãâ¦ÃŠââ¬ÅÃÆÃâ Ã⦠èñÃâ çÃâ¦Ãâ¡ postmasterââ¬Å
+ñç çìñç ÃÆÃâ Ã⦠î÷çÃÅ IpcMemoryCreate Ãâ¦ÃŠââ¬ÅïÊñÃâ¦ÃŸ
+çÃÂêÃâ¦Ã§ÃâçÃâ¹Ã¢â¬Å ÃâóÃâ¦Ãª çÊìçï ÃÂçÃÂøÃâ¡ Ãâ¦Ã´ÃªÃÂ±ÃÆ ïñ ̮̱Ãâ Ãâ èÃâ¡
+ïñóêÊêÃâ øÃÅ Ã⦠Ãâ ôïÃ⡠çóê ÃË ÃŠç çÃÅ Ãâ ÃÆÃ⡠èçÊï ÃÂöçÃÅ
+ÃÂçÃÂøÃ⡠çôêñÃÂ§ÃÆÃŠïñ ̮̱Ãâ Ãâ ñç òÊçï ÃÆÃ±Ã¯. Ãâ¦ÃŠòçÃâ
+ïÃâÃÅ Ãâ ÃÂçÃÂøÃâ¡ Ãâ¦Ã´ÃªÃÂ±ÃÆ Ãâ¦ÃËñï Ãâ Êçò èóêÃ⡠èÃâ¡ Ãâ¦Ã¹Ãâ¦Ã§Ã±ÃÅ ÃË
+Ãâ ÃÂÃËÃ⡠çóêÃÂçïÃ⡠çò èçÃÂñÃâ¡Ã§ êÃËó÷ èñÃâ çÃâ¦Ãâ¡ postmaster
+ïçñï. èñçÊèÊôêñ óÊóêÃâ¦Ã¢â¬ÅÃâ¡Ã§ ÃÆÃ⡠èç êÃâ øÃÅ Ãâ¦Ã§Ãª
+þÊôââ¬ÅÃÂñö ̮̤̱ Ãâ¦ÃŠââ¬ÅÃÆÃâ Ãâ ï Ãâ¦Ãâïçñ çÃÅ Ãâ ÃÂçÃÂøÃâ¡ ÃÂïÃËï 1
+Ãâ¦Ã¯Ã§Ã¨Ã§ÃŠê çóê. èñçÊïÊïÃâ ç÷Ãâçùçê èÊôêñ ñçìù èÃâ¡
+ÃÂçÃÂøÃâ¡ Ãâ¦Ã´ÃªÃÂ±ÃÆ ÃË Ã³Ãâ¦Ã§ÃÂÃËñ èÃâ¡ PostgreSQL Administrator's Guide
+Ãâ¦Ã±Ã§Ã¬Ã¹Ãâ¡ ÃÆÃâ Êï.
+3.4) Ãâ ñç Ãâ¦ÃËÃâùÃÅ ÃÆÃâ¡ Ãâ¦Ãâ óùÃÅ Ãâ¦ÃŠââ¬ÅÃÆÃâ Ã⦠èñÃâ çÃâ¦Ãâ¡ postmasterââ¬Å
+ñç çìñç ÃÆÃâ Ã⦠î÷çÃÅ IpcSemaphoreCreate Ãâ¦ÃŠââ¬ÅïÊñÃâ¦ÃŸ
+çïñ þÊúçÃ⦠î÷ç (ââ¬ÅpcSemaphoreCreate: semget failed (No space left on
+device èçôï èÃ⡠çÃÅ Ãâ Ãâ¦Ã¹Ãâ Êçóê ÃÆÃ⡠êùïçï óÃâ¦Ã§ÃÂÃËñÃâ¡Ã§ÃÅ
+êÃâ øÃÅ Ã⦠ôïÃ⡠ïñ ̮̱Ãâ Ãâ ̮̤ÃÂÃÅ Ãâ Êóê. PostgreSQLââ¬Å èñçÃÅ Ãâ¡Ã±
+ÃÂñçÃÅ Ãâ ïÃÅ ÃÆÃ⡠ïñ backend çìñç Ãâ¦ÃŠââ¬ÅôÃËï èÃâ¡ ÃÅ ÃÆ óÃâ¦Ã§ÃÂÃËñ
+Ãâ Êçò ïçñï. ÃÅ ÃÆ ñçÃâ¡ ÃÂÃâ Ãâ¦ÃËÃâê èñçÊçÃÅ Ãâ Ãâ¦Ã³Ã¦ÃâÃ⡠âÃâ
+çóê ÃÆÃâ¡ postmaster ñç èç çùÃâ¦Ã§Ãâ Ãâ¦ÃÂïÃËïÊê ñÃËÊêùïçï
+ÃÂñçÃÅ Ãâ ïÃâ¡Ã§ÃÅ ÃÅ ÃÆÃâ¡ Ãâ¦ÃŠââ¬ÅêÃËçÃâ ï çÊìçï ÃÆÃâ ï çìñç ÃÆÃâ ÃÅ Ãâ¦.
+èñçÊçÃÅ Ãâ ̮̤̱ çò ïòÃÅ Ãâ Ãâ¡ N- ÃË ÃÅ ÃÆ ùïï ÃÆÃâ¦ÃªÃ± çò 32
+çóêÃÂçïÃâ¡ ÃÆÃâ Êï. ñçÃâ¡ ÃÂÃâ ïçæÃâ¦ÃŠçÃÅ Ãâ Ãâ¦ÃÂ´ÃÆÃâ âÃâ çóê ÃÆÃâ¡
+þçñçÃâ¦ÃªÃ±Ãâ¡Ã§ÃÅ SEMMNS, SEMMNI ̮̱Ãâ Ãâ ñç çÃÂòçÊô ïÃâ¡ÃÅ Ãâ¦.
+ïñ òÃâ¦Ã§Ãâ ïóêñóÊîÃÅ ÃâÊòÊçï èÃ⡠þçÊïçÃ⡠ïçïÃâ¡ÃŠââ¬Å
+óÃâ¦Ã§ÃÂÃËñÃâ¡Ã§ÃÅ Ãâ çÃâ¦Ã¹ÃªÃ¨Ã± Ãâ¦ÃŠââ¬ÅêÃËçÃâ Ãâ ï èçùë crashââ¬Å ÃÆÃ±Ã¯Ãâ
+óÊóêÃ⦠ôÃËÃâ ï.
+çïñ þÊúçÃ⦠î÷ç Ãâ Êò ïÊïñÊèçôï çÃÂêÃâ¦Ã§ÃâçÃ⹠èÃâ¡
+ïÃâÃÅ Ãâ âÃâ çóê ÃÆÃâ¡ ÃÆÃ±Ãâ Ãâ çò óÃâ¦Ã§ÃÂÃËñÃâ¡Ã§ þôêÊèçÃâ ÃÅ
+Ãâ Ãâ¦ÃŠââ¬ÅÃÆÃâ ï. èñçÊïÊïÃâ ç÷Ãâçùçê èÊôêñ ñçÃâ¡Ãâ Ãâ¦Ã§ÃÅ
+Ãâ¦Ã¯ÃŠñÊêÃÅ PostgreSQL ñç Ãâ¦Ã·Ã§ÃâùÃâ¡ ÃÆÃâ Êï.
+3.5) Ãâ ïÃËÃâ Ãâ¡ Ãâ¦ÃŠââ¬ÅêÃËçÃâ Ã⦠çêõçÃâçê óçÊñ Ãâ¦Ã§Ã´ÃÅ Ãâ Ãâ¡Ã§ ñç
+ÃÆÃâ êñÃâ ÃÆÃâ Ãâ¦ÃŸ
+èÃ⡠õÃËñê þÊô ÃÂñö ÃÂÃâ÷ çò Ãâ¦Ã§Ã´ÃÅ Ãâ ÃÅ ÃÆÃâ¡ PostgreSQL ñÃËÊâÃâ
+ïñ ÃÂçÃâ çìñçóê Ãâ¦ÃŠââ¬ÅêÃËçÃâ èç çóêÃÂçïÃ⡠çò
+óÃË̮̻ââ¬ÅÃâ¡Ã§ÃÅ ÃÅ ÃËÃâ ÃÅ ÃÆÃ³ÃŠèÃ⡠âÃâ Ãâ¦ÃªÃµÃâ ôï. óçÊñ
+Ãâ¦Ã§Ã´ÃÅ Ãâ ââ¬ÅÃâ¡Ã§ Ãâçïñ Ãâ ÊóêÃâ ï èÃâ¡ PostgreSQL Ãâ¦ÃªÃµÃâ ôÃËÃâ ï Ãâ¦Ã¯Ã±
+âÃâ ÃÆÃ⡠ïòÃÅ Ãâ Ãâ¡ tcp_sockets ïñ ÃÂçÃÅ Ãâ postgresql.conf ÃÂùçÃâ ôïÃâ¡ ÃË
+Ãâ¡Ãâ¦Ãâ Ãâ ÃÅ Ãâ èç çõÃâçàÃÂçÃÅ Ãâ PGDATA/ph_hba.conf Ãâ¡ÃËÊêââ¬ÅôÃâ çóÃÅ
+Ãâ¦Ã¨ÃªÃâ Êèñ Ãâ¦ÃŠòèçÃâ Ãâ Êò ÃÂùçÃâ ôÃËï. èç çÃÅ Ãâ ̮̤̱
+Ãâ¦ÃŠââ¬ÅêÃËçÃâ çêõçÃâçê TCP/IP èÃâ¡ PostgreSQLââ¬Å çÊìçï ÃÆÃ±Ã¯.
+3.6) èñçÃÅ ÃÆÃ§Ã±Ã§ÃŠÊèçÃâçêñ ÃË Ã¨Ãâ¡ÃªÃ± þçÊïçÃ⡠ïçïÃâ¡ Ãâ¦Ãâ
+Ãâ Ã⡠êÃâ øÃÅ Ãâ¦Ã§ÃªÃŠñç èçÊï çÃâ ìçÃ⦠ïÃâ¡Ãâ¦ÃŸ
+èÃ⡠÷ÃËñ ÃÂêÃ⦠çóêÃÂçïÃ⡠çò çÃâ ïÊóââ¬ÅÃâ¡Ã§ èçùë èçÃâç
+ñÃÂêÃâ óñùê þçóîââ¬ÅïÃËÊÊèÃ⡠ïñîÃËçóêââ¬ÅÃâ¡Ã§ îÃËçÃâ¡Ã¯
+ôï. ïóêÃËñ EXPLAIN ANALYZE èÃ⡠ôÃâ¦Ã§ çÃâ¦ÃÆÃ§Ãâ ïÊïÃâ Ãâ ÃÂÃËÃâ¡
+þñïçòô ÃÅ ÃÆ ïóêÃËñ êÃËó÷ PostgreSQL ñç Ãâ¦ÃŠââ¬ÅïÃâ¡Ã¯.
+çïñ ôÃâ¦Ã§ êùïçï òÊçïÃÅ INSERTââ¬Å ïçñÊï óùÃÅ ÃÆÃâ Êï
+âÃâ Ãâ¡Ã§ ñç èç Ãâñçñ ïçïÃâ ïñ ÃÅ ÃÆ ÃÂçÃÅ Ãâ èç ïóêÃËñ COPYââ¬Å
+çìñç ÃÆÃâ Êï. çÃÅ Ãâ ïóêÃËñ èÃâ¡ Ãâ¦Ã±Ã§ÃªÃ¨ çò INSERT óñÊùêñ
+çóê. ÃÂêÊââ¬ÅçÃâçÃâ¦ÃÆÃ§Ãâ óùÃÅ ÃÆÃâ Êï çò êñÃÂ§ÃÆÃâ ôÃâ¡Ã§
+çóêÃÂçïÃâ¡ Ãâ ÃÆÃâ Êï. êñÃÂ§ÃÆÃâ ôÃâ¡Ã§ Ãâ¦Ã¬Ãâ¦ÃËùÃ⡠ïóêÃËñçêÃÅ
+Ãâ¡Ã³ÃªÃâ ï ÃÆÃ⡠èÃÅ Ãâ ï BEGIN ÃË Ã¢â¬ÂCOMMIT Ãâ¦ÃŠââ¬ÅâÃÅ Ãâ ï. çïñ ÃÅ ÃÆ
+ïóêÃËñ èÃ⡠õÃËñê ùçïÊçìñç ôÃËï PostgreSQL îÃËï âÃâ
+ïóêÃËñ ñç èÃ⡠õÃËñê ÃÅ ÃÆ êñÃÂ§ÃÆÃâ ô Ãâ¦Ã³ÃªÃâÃâ Ãâ ïçÃâ¡ ÃÆÃ±Ã¯Ãâ¡ ÃË
+çìñç Ãâ¦ÃŠââ¬ÅÃÆÃâ ï. Ãâ¦ÃËÃâùÃÅ ÃÆÃ⡠êúÊÊñçê òÊçïÊïñ
+þçÊïçÃ⡠ïçïÃ⡠çÃâ ìçÃ⦠Ãâ¦ÃŠââ¬ÅôÃËï çÃâ ïÊóÃâ¡Ã§ÃÅ ÃâèÃâÊñç
+ÃÂðàÃË Ãâ¦Ã¬Ã¯Ã¯Ã§Ãâ¹Ã¢â¬Å çÊìçï ÃÆÃâ Êï.
+çóêÃÂçïÃ⡠çò ïòÃÅ Ãâ Ãâ¡ o -F- ïñ ÃÂñÃâ¦Ã§Ãâ postmaster èçùë úÊñ
+ÃÂùçÃâ ÃÆÃ±Ã¯Ãâ ()fsync Ãâ¦ÃŠââ¬ÅôÃËï. çÃÅ Ãâ ïóêÃËñ èùï çò Ãâ¡Ã±
+êñÃÂ§ÃÆÃâ ô ç÷Ãâçùçê ñç ñÃËÃÅ Ãâ¡Ã§Ã±Ã¯Ã¯ÃÅ ÃÂ³ÃÆ Ãâ¦Ãâ êÃâÃâ
+Ãâ¦ÃŠââ¬ÅÃÆÃâ ï.
+èñçÊçÃÂòçÊô êùïçï èçÃÂñÃâ¡Ã§ÃÅ ÃÂçÃÂøÃ⡠çôêñÃÂ§ÃÆÃŠçò
+ïòÃÅ Ãâ Ãâ¡ B- èÃâ¡ Ãâ¡Ãâ¦Ã±Ã§Ãâ¡ ÃÂñÃâ¦Ã§Ãâ postmaster çóêÃÂçïÃâ¡ ÃÆÃâ Êï.
+êÃËìÃâ¡ ÃÆÃâ Êï ÃÆÃ⡠çïñ çÃÅ Ãâ ùïï îÃÅ ÃâÊèòñï èçôï Ãâ¦Ãâ¦ÃÆÃâ
+çóê postmaster çõÃâçÃâ¹Ã¢â¬Å çìñç Ãâ ôÃËï. Ãâ¡Ã± èçÃÂñ 8 ÃÆÃÅ ÃâÃË
+èçÊê ÃÂçÃÂøÃâ¡ Ãâ Êçò ïçñï ÃË ÃªÃ¹Ã¯Ã§Ã¯ èçÃÂñÃâ¡Ã§ èÃ⡠÷ÃËñ
+þÊô ÃÂñö 64 çóê.
+Ãâ¡Ãâ¦Ãâ Ãâ ÃÅ Ãâ Ãâ¦ÃŠââ¬ÅêÃËçÃâ èç ïòÃÅ Ãâ Ãâ¡ S- Ãâ¦ÃŠòçÃâ ÃÂçÃÂøÃâ¡Ã¢â¬ÅçÃÅ
+ÃÆÃ⡠èñçÃÅ Ãâ¦Ã±ÃªÃ¨ââ¬ÅóçòÊââ¬ÅÃâ¡Ã§ÃÅ Ãâ¦ÃËÃâê êÃËó÷ PostgreSQL
+çóêÃÂçïÃâ¡ Ãâ¦ÃŠââ¬ÅôÃËï ñç çÃÂòçÊô ïçï. Ãâ¦Ãâïçñ þÊô ÃÂñö
+512 ÃÆÃÅ ÃâÃË Ã¨Ã§ÃŠê çóê.
+çóêÃÂçïÃ⡠çò ïóêÃËñ CLUSTER Ãâ Êò èñçÊèçÃâç èñïÃâ
+̮̤̱̤ÃÅ ÃÅ Ãâ¦ÃËëñ ç óê. ïóêÃËñ ñçÃâ¡Ãâ Ãâ¦Ã§ÃÅ CLUSTER ç÷Ãâçùçê
+èÊôêñÊïñ çÃÅ Ãâ òÃâ¦ÃÅ Ãâ Ã⡠èÃ⡠ôÃâ¦Ã§ Ãâ¦ÃŠââ¬ÅïÃâ¡Ã¯.
+3.7) Ãâ Ã⡠çÃâ¦ÃÆÃ§Ãâ çêÊèñçÊþÊïç ÃÆÃ±Ã¯Ãâ çÃÂ´ÃÆÃ§Ãâââ¬Å ÃËìÃËï
+ïçñïß
+PostgerSQLââ¬Å çÃâ¦ÃÆÃ§Ãâ çê Ãâ¦Ã®ÃªÃâÃÂÊèñçÊïòçñô ïçïÃâ
+ÃËöùÊê îÃËï ïçñï ÃÆÃ⡠èñçÊçÃÂ´ÃÆÃ§Ãâ òïçÃÅ ÃÅ Ãâ¦ÃŠââ¬ÅêÃËçÃâ
+çò âÃâ Ãâ¡Ã§ çóêÃÂçïÃâ¡ ÃÆÃ±Ã¯.
+èç çóêÃÂçïÃ⡠çò ïòÃÅ Ãâ Ãâ¡ enable-assert-- êùïçï òÊçïÃÅ
+()assert èñçÃÅ Ãâ¦ÃËÃâ ÊêÃËñ ÃÆÃ±Ã¯Ãâ ÃË ÃªÃËÃâàèñÃâ çÃâ¦Ã⡠ïñ õÃËñê
+èñÃËò î÷çÃâ¡Ã§ÃÅ Ãâ çîÃËçóêÃâ¡ ÃÂùçÃâ Ãâ¦ÃŠââ¬ÅôÃËï.
+Ãâ¡Ã⦠Postmaster ÃË Ãâ¡Ã⦠postgres ïòÃÅ Ãâ Ãâ¡Ã¢â¬ÅÃâ¡Ã§ÃŠòÊçïÊèñçÃÅ
+çÃÂ´ÃÆÃ§Ãâ òïçÊÊïçñÃâ ï. Ãâ¦ÃËÃâùÃÅ ÃÆÃâ¡ postmaster ñç çìñç
+Ãâ¦ÃŠââ¬ÅÃÆÃâ Êï îñÃËìÊçóêçÃâ ïçñï ÃË Ã®Ã·Ã§ ñç óÃâ¦Ãª ÃÂçÃÅ Ãâ log
+çñóçÃâ ÃÆÃâ Êï.
cd /usr/local/pgsql
./bin/postmaster >server.log 2>&1 &
+çÃÅ Ãâ ̮̤̱ ÃÅ ÃÆ ÃÂçÃÅ Ãâ log ïñ èçÃâçêñÃÅ Ãâ ôçîÃâ¡ PostgreSQLââ¬Å
+çÊìçï Ãâ¦ÃŠââ¬ÅÃÆÃâ ï. çÃÅ Ãâ ÃÂçÃÅ Ãâ ÃÂçÃËÊç÷Ãâçùçê Ãâ¦ÃÂÊïÃÅ
+ïñ Ãâ¦ÃËñï Ãâ¦Ã³Ã§Ã¦Ãâ ÃË Ã®Ã·Ã§Ãâ¡Ã§ÃŠÊçóê ÃÆÃ⡠èñçÊóñÃËñ
+çêÃÂçÃâ çÃÂêçïÃ⡠çóê. èñçÊïÊïÃâ ìòæÃŠçê èÊôêñ
+Ãâ¦ÃŠââ¬ÅêÃËçÃâ çò d- èÃâ¡ Ãâ¡Ãâ¦Ã±Ã§Ãâ¡ ÃÂñÃâ¦Ã§Ãâ postmasterââ¬Å çóêÃÂçïÃâ¡
+ÃÆÃ±Ã¯. ïòÃÅ Ãâ Ãâ¡ d- Ãâ¡Ãâ¦Ãâ Ãâ ÃÅ Ãâ ÃÅ ÃÆ ùïï Ãâ¦ÃŠââ¬ÅïÊñï ÃÆÃâ¡ Ãâ ôçÃâ
+ïÃâ¡Ãâ ïÃ⡠ó÷àìòæÃŠçêÊçóê ÃÆÃ⡠ïñ Logââ¬ÅÃÂçÃÅ Ãâ Ãâ ÃËôêÃâ¡
+Ãâ¦ÃŠââ¬ÅôÃËï. èç èçÃâçèñïÃâ çÃÅ Ãâ ùïï ÃÂìÃ⦠ç÷Ãâçùçê
+êÃËÃâÊï ôïÃ⡠ïñ LogÃÂçÃÅ Ãâ Ãâ Êò çÃÂòçÊô Ãâ¦ÃŠââ¬ÅÊçèï.
+çïñ postmaster ïñ ÃÂçÃâ çìñç Ãâ èçôïÃÅ Ãâ¦ÃŠââ¬ÅêÃËçÃâ ÃÅ Ã⦠postgres
+ñç èÃ⡠÷ÃËñ Ãâ¦Ã³ÃªÃâÃÅ Ã⦠çò î÷ ÃÂñÃâ¦Ã§Ãâ çìñç ÃÆÃ±Ã¯Ãâ¡ ÃË
+ïóêÃËñçê SQL ñç èÃ⡠âÃâ èïÃâ¡ÃÅ Ãâ¦. çÃÅ Ãâ ̮̤̱ ÃÂÃâ÷ èñçÃÅ
+çÃÂ´ÃÆÃ§Ãâââ¬ÅÊçèÊêÃËõÃÅ Ãâ¡ Ãâ¦ÃŠââ¬ÅôÃËï. êÃËìÃâ¡ ÃÆÃâ Êï ÃÆÃ⡠ïñ
+çÃÅ Ãâ ÃÂçÃâê ÃÅ ÃÆ ïóêÃËñ èç ̮̤̱ÃÂ§ÃÆÃªÃ± newline îçêÃâ¦Ã⡠þÊïç
+Ãâ¦ÃŠââ¬ÅÃÆÃâ ï ÃË Ãâ Ã⡠èç ;. çïñ postmaster ñç èç çÃâ¦ÃÆÃ§Ãâ çê
+çÃÂ´ÃÆÃ§Ãâââ¬ÅÊçèÃÅ ÃÆÃ§Ãâ¦Ã¾ÃÅ Ãâ ÃÆÃ±Ã¯Ã⡠èçôÊï Ãâ¦ÃŠââ¬ÅêÃËçÃâ Êï èç
+çóêÃÂçïÃ⡠çò ÃÅ ÃÆ èñÃâ çÃâ¦Ã⡠çÃÂ´ÃÆÃ§Ãâââ¬ÅÊçè çìñçÃÅ
+èñÃâ çÃâ¦Ã⡠ñç Ãâ¦ÃËÃâ ÊêÃËñ ÃÆÃâ Êï.
+çïñ postmaster ïñ ÃÂçÃâ çìñç èçôï èç ïóêÃËñ psql
+Ãâ¦ÃŠââ¬ÅêÃËçÃâ èÃâ¡ postgres Ãâ¦ÃªÃµÃâ ôï. èç þÊïç ÃÆÃ±Ã¯Ãâ PID
+ÃÂñçÃÅ Ãâ ï postgres ÃÆÃâ¡ psql èÃ⡠âÃâ Ãâ¦ÃªÃµÃâ ôïÃ⡠çóê Ãâ¦ÃŠââ¬ÅêÃËçÃâ
+âÃâ ñç Ãâ¦ÃËÃâ ÊêÃËñ ÃÆÃ±Ã¯. èñçÊçÃÅ Ãâ ̮̤̱ èçÊï ÃÅ ÃÆ
+èñÃâ çÃâ¦Ã⡠çÃÂ´ÃÆÃ§Ãâââ¬ÅÊçè ñç èÃ⡠âÃâ pid Ãâ¦ÃªÃµÃâ ÃÆÃ±Ã¯. çïñ
+èîÃËçÃâ¡ÃÅ Ã⦠èçÃâç âÃâ¦Ã¯Ãâ postgres ñç Ãâ¦ÃËÃâ ÊêÃËñ ÃÆÃâ ÃÅ Ãâ¦ ÃÆÃ§ÃÂÃÅ
+çóê "PGOPTIONS="-W n ÃË psql ñç çìñç ÃÆÃâ ÃÅ Ãâ¦. çÃÅ Ãâ ̮̤̱ èçùë
+Ãâ¦ÃŠââ¬ÅôÃËï ÃÆÃâ¡ postgres èç n ëçÃâ ÃÅ Ã⡠êçîÊñ çìñç ôÃËï ÃË Ã¯Ã±
+çÃÅ Ãâ ÃÂçõÃâÃ⡠ôÃâ¦Ã§ Ãâ¦ÃŠââ¬ÅêÃËçÃâ Êï èñÃâ çÃâ¦Ã⡠çÃÂ´ÃÆÃ§Ãâââ¬ÅÊçè
+ñç èÃ⡠âÃâ Ãâ¦ÃªÃµÃâ ÃÆÃ±Ã¯Ãâ¡ ÃË Ã¨Ã§ Ãâñçñ ïçïÃâ ÃÅ ÃÆ Ãâ Ãâ÷Ãâ¡
+êÃËÃâàñÃËÃâ ï çìñçÊâÃâ ñç Ãâ¦ÃËÃâ ÊêÃËñ ÃÆÃâ Êï.
+postgres ïòÃÅ Ãâ Ãâ¡Ã¢â¬ÅÃâ¡Ã§ÃÅ s-ââ¬Å ÃË A- ÃË t-ââ¬Å ïçñï ÃÆÃ⡠èñçÃÅ
+þÊïç ÃÆÃ±Ã¯Ãâ çÃÂ´ÃÆÃ§Ãâçê èóÊçñ Ãâ¦Ãâ çóè Ãâ¡Ã³ÃªÃâ ï.
+ôÃâ¦Ã§ Ãâ¦ÃŠââ¬ÅêÃËçÃâ Êï postgreSQL ñç èç çÃâ¦ÃÆÃ§Ãâ çê profiling
+̮̤Ãâ¦Ã¾ÃÅ Ãâ ÃÆÃâ Êï. çÃÅ Ãâ ̮̤̱ èçùë Ãâ¦ÃŠââ¬ÅôÃËï ÃÆÃ⡠òÃâ¦Ã§Ãâ
+çìñçÊïÃâÃÅ Ãâ Ãâ¡Ã± êçèù ïñ èñÃâ çÃâ¦Ãâ¡ Ãâ¦Ã´Ã®Ãµ ôÃËï.
+îñÃËìÊââ¬ÅÃâ¡Ã§ÃŠêÃËÃâÊï ôïÃ⡠ïñ çÃÅ Ãâ ÃÂçÃâê ïñ ÃÂçÃÅ Ãâ
+DLINUX_PROFILE. ñÊîêÃâ¡ Ãâ¦ÃŠââ¬ÅôÃËï.
+3.8) Ãâ ñç Ãâ¦ÃËÃâùÃÅ ÃÆÃâ¡ Ãâ¦Ãâ Ãâ¦ÃŠââ¬ÅîÃËçÃâ¡Ã⦠èÃ⡠þçÊïçÃ⡠ïçïÃâ¡
+ÃËõÃâ ôÃËÃ⦠þÊçÃ⦠"Sorry, too many clients" ââ¬ÅÃâ¦ÃŠââ¬ÅïÊñÃâ¦ÃŸ
+ôÃâ¦Ã§ èçÊï ÃÂïÃÂ§ÃÆÃ«Ã± êùïçï ÃÂñçÃÅ Ãâ ïÃâ¡Ã§ÃÅ Ãâ¡Ãâ¦Ã²Ãâ¦Ã§Ãâ
+postmaster ñç çÃÂòçÊô ïÃâ¡ÃŠï. Ãâ¦Ãâïçñ þÊô ÃÂñö 32 çóê.
+èñçÊçÃÂòçÊô âÃâ Ãâ¦ÃŠââ¬ÅêÃËçÃâ çò ïòÃÅ Ãâ Ãâ¡ N- çóêÃÂçïÃâ¡
+ÃÆÃ±Ã¯ ÃË ÃŠç ÃÂçÃÅ Ãâ postgresql.conf ñç çõÃâçàÃâ Ãâ¦ÃËï
+êÃËìÃâ¡ ÃÆÃâ Êï ÃÆÃ⡠çïñ N- Ãâ¦ÃâïçñÊèÊôêñ çò 32 ïçôêÃâ¡
+èçôï èçÊï Ãâ¦Ãâïçñ B- ñç Ãâ Êò çÃÂòçÊô ïÃâ¡ÃÅ Ãâ¦. çÃÅ Ãâ
+Ãâ¦Ãâïçñ èçÊï ÃÂïçÃâÃâ ïÃË Ã¨Ã±Ã§Ã¨Ã± Ãâ¦Ãâïçñ N-ââ¬Å èçôï.
+èñçÊçùïçï îÃÅ ÃâÊèçÃâç èçÊï èùöÊçò
+þçñçÃâ¦ÃªÃ±Ãâ¡Ã§ÃÅ ÃÆÃ±Ãâ Ãâ ñç Ãâ Êò çõÃâçÃÂ ÃÆÃ±Ã¯.
+þçñçÃâ¦ÃªÃ±Ãâ¡Ã§ÃÅ ÃÅ Ãâ øÃŠñ ÃÂïÃÂ§ÃÆÃ«Ã± çÃâ ïçòÃâ¡ ÃÂçÃÂøÃâ¡
+çôêñÃÂ§ÃÆÃÅ SHMMAX ÃÅ ÃÂïÃÂ§ÃÆÃ«Ã± êùïçï óÃâ¦Ã§ÃÂÃËñÃâ¡Ã§ SEMMNIââ¬Å ÃË
+SEMMNS ÃÅ ÃÂïÃÂ§ÃÆÃ«Ã± êùïçï ÃÂñçÃÅ Ãâ ïÃâ¡Ã§ NPROCÃÅ ÃÂïÃÂ§ÃÆÃ«Ã±
+ÃÂñçÃÅ Ãâ ïÃâ¡Ã§ÃÅ ÃÅ ÃÆ ̮̤̱̬̱ MAXUPRC ÃË ÃÂïÃÂ§ÃÆÃ«Ã± ÃÂçÃÅ ÃâÃâ¡Ã§ÃŠèçò
+NFILE ÃË NINODE. ÃÅ ÃÆÃŠçò ïÃâçÃÅ ÃâÃÅ ÃÆÃ⡠êùïçï çêõçÃâçê
+Ãâ¡Ãâ¦Ã²Ãâ¦Ã§Ãâ postgreSQL Ãâ¦ÃÂïÃËï çóê âÃâ çóê ÃÆÃâ¡ Ãâ ÊçòÃâ¡Ã§ÃÅ
+PostgreSQL èÊô çò Ãâ¦Ãâ çèù Ãâ¦ÃËìÃËï óÊóêÃ⦠Ãâ èçôï.
+3.9) ïñ ôçîÃâ¡ pgsql_tmp Ãâ Ãâ¡ Ãâ ÊòÃÅ Ãâñçñ ïçñïß
+ïñçÃÅ Ãâ ôçîÃâ¡ ÃÂçÃÅ ÃâÃâ¡Ã§ÃÅ Ãâ¦ÃËÃâêÃÅ Ãâñçñ ïçñï ÃÆÃ⡠èç
+çìñçÊïñîÃËçóêÃâ¡Ã§ èÃâ¡ ÃËìÃËï âÃâ¦Ã¯Ã⡠çóê. èÃ⡠ùÃâ ÃËçÃâ
+Ãâ¦Ã«Ã§Ãâ çïñ èñçÊçìñçÊïóêÃËñ order by Ãâ Êçò èÃ⡠çÃâ ìçÃâ¦
+Ãâ¦Ã±ÃªÃ¨ óçòÊèçôï ÃË Ã¯Ã± õÃËñêÃÅ ÃÆÃâ¡ ÃÂçÃÂøÃâ¡ Ãâ¦Ã´Ã®Ãµ ôïÃâ¡
+èç ïòÃÅ Ãâ Ãâ¡ S- èñçÊçÃÅ Ãâ ̮̤̱ ̮̤ÃÂÃÅ Ãâ èçôï óÊóêÃ⦠ÃÅ ÃÆ
+ÃÂçÃÅ Ãâ Ãâ¦ÃËÃâê ïñ çÃÅ Ãâ ôçîÃ⡠çÊìçï Ãâ¦ÃŠââ¬ÅÃÆÃâ ï êç ùÃâ¦Ãâ
+Ãâ¦Ã±ÃªÃ¨ óçòÊñç çÃâ ìçÃ⦠ïÃâ¡Ã¯.
+ÃÂçÃÅ ÃâÃâ¡Ã§ÃÅ Ãâ¦ÃËÃâê Ãâ¦Ã¹Ãâ¦ÃËÃâçÃ⹠èÃ⡠õÃËñê çêÃËÃâ¦Ã§ÃªÃÅ ÃÆ þÃÂ§ÃÆ
+Ãâ¦ÃŠââ¬ÅôÃËï çÃâ¦Ã§ çïñ postgreSQL ïñ ÃÂÃÅ Ãâ Ãâ¦Ã±ÃªÃ¨ óçòÃÅ crashââ¬Å
+ÃÆÃâ ï âÃâ ÃÂçÃÅ ÃâÃâ¡Ã§ èçÃâÃÅ Ãâ¦ÃŠââ¬ÅÃâ¦Ã§Ãâ Ãâ ï. èç stop ÃË start ÃÆÃ±Ã¯Ãâ
+èñÃâ çÃâ¦Ãâ¡ postmaster çÃÅ Ãâ ÃÂçÃÅ ÃâÃâ¡Ã§ þÃÂ§ÃÆ Ãâ¦ÃŠââ¬ÅôÃËÃâ ï.
+3.10) Ãâ ñç èñçÊèÃ⡠ñÃËò ÃÆÃ±Ã¯Ãâ Ãâ óîÃ⡠þçÊïçÃ⡠ïçïÃâ¡ Ãâ¦Ãâ
+èçÊï ÃÆÃâ ïçïÃâ¡ Ãâ¡Ã§ ñç dumpââ¬Å ÃË Ãâ¦Ã¬Ã¯Ã¯Ã§Ãâ¹ restore ÃÆÃâ Ãâ¦ÃŸ
+êÃÅ Ã⦠èñÃâ çÃâ¦Ãâ¡ Ãâ ÃËÊó postgreSQL ïñ Ãâ óîÃâ¡Ã¢â¬ÅÃâ¡Ã§ÃŠçñçæÃ⡠ôïÃâ¡
+ÃÆÃâ¡ ÃÂÃâ÷ minor âÃâ Ãâ¡Ã§ Ãâ¦ÃªÃÂçÃËê çóê ÃÂÃâ÷ êúÊÊñçê ÃÆÃËÃâ ÃÆÃÅ
+çùÃâ¦Ã§Ãâ Ãâ¦ÃŠââ¬ÅÃÆÃâ Ãâ ïÃ⺠èÃâ çèñçÃÅ Ãâ èñçÊèÃ⡠ñÃËò ÃÆÃ±Ã¯Ãâ çò
+Ãâ óîÃâ¡ 7.2ââ¬ÅèÃâ¡ 7.2.1 Ãâ ÊçòÊèÃâ¡ dump ÃË restore Ãâ Êóê. çÃâ¦Ã§ ïñ
+Ãâ óîÃâ¡Ã¢â¬ÅÃâ¡Ã§ÃÅ ÃÅ ÃÆÃâ¡ major âÃâ Ãâ¡Ã§ êúÊÊñ Ãâ¦ÃŠââ¬ÅÃÆÃâ ï úçÃâèçÃâ¹
+óçîêçñ ïçîÃâÊìïçÃËÃâ ÃË ÃÂçÃÅ ÃâÃâ¡Ã§ÃŠïçïÃ⡠êúÊÊñ
+Ãâ¦ÃŠââ¬ÅÃÆÃâ ï. çÃÅ Ãâ êúÊÊñçê Ãâ¦Ã¹Ãâ¦ÃËÃâçÃâ¹Ã¢â¬Å þÃÅ Ãâ ÊïÃâ¡ Ãâ¡Ã³ÃªÃâ ï.
+èñçÊçÃâ êÃâçÃâ ïçïÃâ¡Ã¢â¬ÅÃâ¡Ã§ÃÅ Ãâ¦ÃËìÃËï ïñ þçÊïçÃ⡠ïçïÃâ¡
+ïñ çÃÅ Ãâ ÃÂçÃâê èçÊï ââ¬Åçò dump ÃË restore çóêÃÂçïÃâ¡ ÃÆÃ±Ã¯.
+ïñ Ãâ óîÃâ¡Ã¢â¬ÅÃâ¡Ã§ÃÅ ÃÅ ÃÆÃ⡠óçîêçñ ñÃËÊïÃÅ ÃÂ³ÃÆ êúÊÊñÃÅ
+Ãâ Ãâ¦ÃŠââ¬ÅÃÆÃâ ï Ãâ¦ÃŠêÃËçÃâ çò èñÃâ çÃâ¦Ãâ¡ pg_upgrade èñçÊèÃ⡠ñÃËò
+ÃÆÃ±Ã¯Ãâ þçÊïçÃ⡠ïçïÃ⡠çóêÃÂçïÃâ¡ ÃÆÃ±Ã¯ èïÃËÃâ çÃÅ Ãâ ÃÆÃâ¡
+Ãâ ÊçòÊèÃ⡠çóêÃÂçïÃ⡠çò dump ÃË restore èçôï. ïñ
+ÊçïïçôêÃÅ ÃÆÃ⡠èÃâ¡ Ãâ¡Ãâ¦Ã±Ã§Ãâ¡ Ãâ¡Ã± êÃËòÊù Ãâ¦ÃŠââ¬ÅâÊï ÃÂ°ÃÆÃ±
+ôïÃ⡠çóê ÃÆÃ⡠âÊç èñÃâ çÃâ¦Ãâ¡ pg_upgrade èñçÊçÃÅ Ãâ êÃËòÊù
+ÃËìÃËï ïçñï Êç îÊñ.
+3.11) çò Ãâ Ã⡠óîê çÃÂòçñÊèçÊï çóêÃÂçïÃâ¡ ÃÆÃâ Ãâ¦ÃŸ
- a+y+n+ k+a+r+ y+k+ f+a+y+l+ log d+r+ b+a+l+a+t+r+y+n+ sna+x+h+
- PostgreSQL a+y+g+a+d+ m+y+k+n+d+. a+y+n+ f+a+y+l+ hka+w+y+
- a+tjl+a+e+a+t+ m+f+y+d+y+ d+r+ m+w+r+d+ m+s+a+yHl+ w+ x+tja+h+a+y+y+
- a+s+t+ k+h+ b+r+a+y+ s+r+w+r+ a+t+f+a+q+ a+f+t+a+d+h+ a+s+t+. b+r+a+y+
- d+y+d+n+ g+z+yHy+a+t+ b+y+snt+r+ m+y+t+w+a+n+ a+z+ d- b+h+ h+m+r+a+h+
- f+r+m+a+n+ postmaster a+s+t+f+a+d+h+ k+r+d+. gfz+y+n+h+ d-
- h+m+tcn+y+n+ y+k+ e+d+d+ m+y+gfy+r+d+ k+h+ n+sna+n+ d+h+n+d+h+ s+tjhk
- g+z+yHy+a+t+y+ a+s+t+ k+h+ d+r+ Logf+a+y+l+ n+w+snt+h+ m+y+snw+d+.
- b+a+ b+a+l+a+b+r+d+n+ a+y+n+ e+d+d+ hkg+m+ a+tjl+a+e+a+t+ t+w+l+y+d+
- snd+h+ d+r+ Logf+a+y+l+ n+y+z+ a+f+z+a+y+sn m+y+y+a+b+d+.
-
- a+gfr+ postmaster d+r+ hka+l+ a+g+r+a+ n+b+a+snd+,+ m+y+t+w+a+n+y+m+
- postgres r+a+ b+h+ tjw+r+ m+s+t+q+y+m+ a+z+ x+tj f+r+m+a+n+ a+g+r+a+
- k+r+d+h+ w+ d+s+t+w+r+a+t+ SQL r+a+ b+h+ aMn+ b+d+h+y+m+. a+y+n+
- k+a+r+ f+q+tj b+r+a+y+ a+snk+a+l+y+a+b+y+ t+w+c+y+h+ m+y+snw+d+.
- t+w+g+h+ k+n+y+d+ k+h+ d+r+ a+y+n+ hka+l+t+ y+k+ d+s+t+w+r+ b+a+
- k+a+r+a+k+t+r+ newline x+a+t+m+h+ p+y+d+a+ m+y+k+n+d+ w+ n+h+ b+a+ ;.
- a+gfr+ postmaster r+a+ b+a+ a+m+k+a+n+a+t+ a+snk+a+l+y+a+b+y+
- k+a+m+p+y+l+ k+r+d+h+ b+a+sny+d+ m+y+t+w+a+n+y+d+ b+a+ a+s+t+f+a+d+h+
- a+z+ y+k+ b+r+n+a+m+h+ a+snk+a+l+y+a+b+ a+g+r+a+y+ b+r+n+a+m+h+ r+a+
- m+w+n+y+t+w+r+ k+n+y+d+.
-
- a+gfr+ postmaster d+r+ hka+l+ a+g+r+a+ b+a+snd+ b+a+ d+s+t+w+r+ psql
- m+y+t+w+a+n+ b+h+ postgres m+t+c+l+ snd+. b+a+ p+y+d+a+ k+r+d+n+ PID
- f+r+a+y+n+d+ postgres k+h+ psql b+h+ aMn+ m+t+c+l+ snd+h+ a+s+t+ m+y+
- t+w+a+n+ aMn+ r+a+ m+w+n+y+t+w+r+ k+r+d+. b+r+a+y+ a+y+n+k+a+r+
- b+a+y+d+ y+k+ b+r+n+a+m+h+ a+snk+a+l+y+a+b+ r+a+ b+h+ aMn+ pid
- m+t+c+l+ k+r+d+. a+gfr+ b+x+w+a+h+y+m+ b+a+l+a+ aMm+d+n+ postgres r+a+
- m+w+n+y+t+w+r+ k+n+y+m+ k+a+f+y+ a+s+t+ "PGOPTIONS="-W n w+ psql r+a+
- a+g+r+a+ k+n+y+m+. a+y+n+ k+a+r+ b+a+e+tk m+y+snw+d+ k+h+ postgres
- b+a+ n tka+n+y+h+ t+a+x+y+r+ a+g+r+a+ snw+d+ w+ d+r+ a+y+n+ f+a+c+l+h+
- snm+a+ m+y+t+w+a+n+y+d+ b+r+n+a+m+h+ a+snk+a+l+y+a+b+ r+a+ b+h+ aMn+
- m+t+c+l+ k+r+d+h+ w+ b+a+ q+r+a+r+ d+a+d+n+ y+k+ n+q+tjh+ t+w+q+f+
- r+w+n+d+ a+g+r+a+y+ aMn+ r+a+ m+w+n+y+t+w+r+ k+n+y+d+.
-
- postgres gfz+y+n+h+h+a+y+ s- w+ A- w+ t- d+a+r+d+ k+h+ b+r+a+y+
- p+y+d+a+ k+r+d+n+ a+snk+a+l+a+t+ b+s+y+a+r+ m+n+a+s+b+ h+s+t+n+d+.
-
- snm+a+ m+y+t+w+a+n+y+d+ postgreSQL r+a+ b+a+ a+m+k+a+n+a+t+ profiling
- k+a+m+p+y+l+ k+n+y+d+. a+y+n+ k+a+r+ b+a+e+tk m+y+snw+d+ k+h+ z+m+a+n+
- a+g+r+a+y+ d+q+y+q+ h+r+ t+a+b+e+ d+r+ b+r+n+a+m+h+ m+snx+c+ snw+d+.
- x+r+w+g+y+h+a+y+ t+w+l+y+d+ snd+h+ d+r+ a+y+n+ hka+l+t+ d+r+ f+a+y+l+
- DLINUX_PROFILE. r+y+x+t+h+ m+y+snw+d+.
-
- 3.8) tcr+a+ m+w+q+e+y+ k+h+ m+n+ m+y+x+w+a+h+m+ b+h+ p+a+y+gfa+h+ d+a+d+h+
- w+c+l+ snw+m+ p+y+a+m+ "Sorry, too many clients" m+y+gfy+r+m+?+
-
- snm+a+ b+a+y+d+ hkd+a+k+tkr+ t+e+d+a+d+ f+r+a+y+n+d+h+a+y+
- h+m+z+m+a+n+ postmaster r+a+ a+f+z+a+y+sn d+h+y+d+. m+q+d+a+r+ p+y+sn
- f+r+dd 32 a+s+t+. b+r+a+y+ a+f+z+a+y+sn aMn+ m+y+t+w+a+n+ a+z+
- gfz+y+n+h+ N- a+s+t+f+a+d+h+ k+r+d+ w+ y+a+ f+a+y+l+ postgresql.conf
- r+a+ a+c+l+a+hk n+m+w+d+
-
- t+w+g+h+ k+n+y+d+ k+h+ a+gfr+ N- m+q+d+a+r+y+ b+y+snt+r+ a+z+ 32
- d+a+snt+h+ b+a+snd+ b+a+y+d+ m+q+d+a+r+ B- r+a+ n+y+z+ a+f+z+a+y+sn
- d+h+y+m+. a+y+n+ m+q+d+a+r+ b+a+y+d+ hkd+a+q+l+ d+w+ b+r+a+b+r+
- m+q+d+a+r+ N- b+a+snd+. b+r+a+y+ a+e+d+a+d+ x+y+l+y+ b+a+l+a+ b+a+y+d+
- b+e+ddy+ a+z+ p+a+r+a+m+t+r+h+a+y+ k+r+n+l+ r+a+ n+y+z+ a+c+l+a+hk
- k+r+d+. p+a+r+a+m+t+r+h+a+y+y+ n+zHy+r+ hkd+a+k+tkr+ a+n+d+a+z+h+
- hka+f+zHh+ a+snt+r+a+k+y+ SHMMAX ,+ hkd+a+k+tkr+ t+e+d+a+d+
- s+m+a+f+w+r+h+a+ SEMMNI w+ SEMMNS ,+ hkd+a+k+tkr+ t+e+d+a+d+
- f+r+a+y+n+d+h+a+ NPROC,+ hkd+a+k+tkr+ f+r+a+y+n+d+h+a+y+ y+k+
- k+a+r+b+r+ MAXUPRC w+ hkd+a+k+tkr+ f+a+y+l+h+a+y+ b+a+z+ NFILE w+
- NINODE. y+k+y+ a+z+ d+l+a+y+l+y+ k+h+ t+e+d+a+d+ a+t+c+a+l+a+t+
- h+m+z+m+a+n+ postgreSQL m+hkd+w+d+ a+s+t+ aMn+ a+s+t+ k+h+
- n+y+a+z+h+a+y+ PostgreSQL b+y+sn a+z+ m+n+a+b+e+ m+w+g+w+d+ s+y+s+t+m+
- n+b+a+snd+.
-
- 3.9) d+r+ sna+x+h+ pgsql_tmp tch+ tcy+z+y+ q+r+a+r+ d+a+r+d+?+
-
- d+r+a+y+n+ sna+x+h+ f+a+y+l+h+a+y+ m+w+q+t+y+ q+r+a+r+ d+a+r+d+ k+h+
- b+a+ a+g+r+a+y+ d+r+x+w+a+s+t+h+a+ b+h+ w+g+w+d+ aMm+d+h+ a+s+t+. b+h+
- e+n+w+a+n+ m+tka+l+ a+gfr+ b+r+a+y+ a+g+r+a+y+ d+s+t+w+r+ order by
- n+y+a+z+ b+h+ a+n+g+a+m+ m+r+t+b+ s+a+z+y+ b+a+snd+ w+ d+r+ c+w+r+t+y+
- k+h+ hka+f+zHh+ m+snx+c+ snd+h+ b+a+ gfz+y+n+h+ S- b+r+a+y+
- a+y+n+k+a+r+ k+a+f+y+ n+b+a+snd+ s+y+s+t+m+ y+k+ f+a+y+l+ m+w+q+t+
- d+r+ a+y+n+ sna+x+h+ a+y+g+a+d+ m+y+k+n+d+ t+a+ e+m+l+ m+r+t+b+
- s+a+z+y+ r+a+ a+n+g+a+m+ d+h+d+.
-
- f+a+y+l+h+a+y+ m+w+q+t+ m+e+m+w+l+a+:+ b+h+ c+w+r+t+ a+t+w+m+a+t+y+k+
- p+a+k+ m+y+snw+d+ a+m+a+ a+gfr+ postgreSQL d+r+ hky+n+ m+r+t+b+
- s+a+z+y+ crash k+n+d+ aMn+ f+a+y+l+h+a+ b+a+q+y+ m+y+m+a+n+n+d+. b+a+
- stop w+ start k+r+d+n+ b+r+n+a+m+h+ postmaster a+y+n+ f+a+y+l+h+a+
- p+a+k+ m+y+snw+n+d+.
-
- 3.10) tcr+a+ b+r+a+y+ b+h+ r+w+z+ k+r+d+n+ n+s+x+h+ p+a+y+gfa+h+ d+a+d+h+
- m+n+ b+a+y+d+ k+l+ d+a+d+h+ h+a+ r+a+ dump w+ m+g+d+d+a+:+ restore k+n+m+?+
-
- t+y+m+ b+r+n+a+m+h+ n+w+y+s+ postgreSQL d+r+ n+s+x+h+h+a+y+ a+r+a+yHh+
- snd+h+ k+h+ f+q+tj minor aMn+h+a+ m+t+f+a+w+t+ a+s+t+ f+q+tj
- t+i+y+y+r+a+t+ k+w+tck+y+ a+e+m+a+l+ m+y+k+n+n+d+;+ b+n+a+b+r+a+y+n+
- b+r+a+y+ b+h+ r+w+z+ k+r+d+n+ a+z+ n+s+x+h+ 7.2b+h+ 7.2.1 n+y+a+z+y+
- b+h+ dump w+ restore n+y+s+t+. a+m+a+ d+r+ n+s+x+h+h+a+y+y+ k+h+ major
- aMn+h+a+ t+i+y+y+r+ m+y+k+n+d+ i+a+l+b+a+:+ s+a+x+t+a+r+ d+a+x+l+y+
- g+d+a+w+l+ w+ f+a+y+l+h+a+y+ d+a+d+h+ t+i+y+y+r+ m+y+k+n+d+. a+y+n+
- t+i+y+y+r+a+t+ m+e+m+w+l+a+:+ p+y+tcy+d+h+ h+s+t+n+d+. b+r+a+y+
- a+n+t+q+a+l+ d+a+d+h+h+a+y+ m+w+g+w+d+ d+r+ p+a+y+gfa+h+ d+a+d+h+ d+r+
- a+y+n+ hka+l+t+ b+a+y+d+ a+z+ dump w+ restore a+s+t+f+a+d+h+ k+r+d+.
-
- d+r+ n+s+x+h+h+a+y+y+ k+h+ s+a+x+t+a+r+ r+w+y+ d+y+s+k+ t+i+y+y+r+y+
- n+m+y+k+n+d+ m+y+ t+w+a+n+ a+z+ b+r+n+a+m+h+ pg_upgrade b+r+a+y+ b+h+
- r+w+z+ k+r+d+n+ p+a+y+gfa+h+ d+a+d+h+ a+s+t+f+a+d+h+ k+r+d+ b+d+w+n+
- a+y+n+k+h+ n+y+a+z+y+ b+h+ a+s+t+f+a+d+h+ a+z+ dump w+ restore
- b+a+snd+. d+r+ y+a+d+d+a+snt+y+ k+h+ b+h+ h+m+r+a+h+ h+r+ t+w+z+y+e+
- m+y+aMy+d+ dkk+r+ snd+h+ a+s+t+ k+h+ aMy+a+ b+r+n+a+m+h+ pg_upgrade
- b+r+a+y+ a+y+n+ t+w+z+y+e+ w+g+w+d+ d+a+r+d+ y+a+ x+y+r+.
-
- 3.11) a+z+ tch+ s+x+t+ a+f+z+a+r+y+ b+a+y+d+ a+s+t+f+a+d+h+ k+n+m+?+
-
- tcw+n+ a+k+tkr+ s+x+t+a+f+z+a+r+h+a+y+ PC s+a+z+gfa+r+ h+s+t+n+d+
- m+r+d+m+ f+k+r+ m+y+k+n+n+d+ k+h+ k+y+f+y+t+ aMn+h+a+ n+y+z+
- y+k+s+a+n+ a+s+t+. d+r+ hka+l+y+k+h+ a+y+n+tjw+r+ n+y+s+t+.
- a+s+t+f+a+d+h+ a+z+ h+a+r+d+h+a+y+ SCSI w+ hka+f+zHh+h+a+y+ ECC w+
- m+a+d+r+b+r+d+h+a+y+ b+a+ k+y+f+y+t+ b+a+l+a+ n+s+b+t+ b+h+ s+x+t+
- a+f+z+a+r+h+a+y+ a+r+z+a+n+t+r+ n+t+a+y+g+ b+h+t+r+y+ a+z+ n+zHr+
- k+a+r+a+y+y+ w+ p+a+y+d+a+r+y+ s+y+s+t+m+ b+h+m+r+a+h+ x+w+a+h+d+
- d+a+snt+. PostgreSQL r+w+y+ b+y+snt+r+ s+x+t+ a+f+z+a+r+h+a+ a+g+r+a+
- m+y+snw+d+ a+m+a+ a+gfr+ k+a+r+a+y+y+ w+ a+tjm+y+n+a+n+
- f+a+k+t+w+r+h+a+y+ m+h+m+y+ h+s+t+n+d+ b+a+y+d+ s+x+t+ a+f+z+a+r+
- m+n+a+s+b+ a+s+t+f+a+d+h+ snw+d+. d+r+ gfr+w+h+h+a+y+ p+s+t+y+ d+r+
- m+w+r+d+ s+x+t+ a+f+z+a+r+ m+n+a+s+b+ w+ a+n+t+x+a+b+ aMn+ b+hktk
- snd+h+ a+s+t+.
- _________________________________________________________________
-
- s+w+a+l+a+t+ e+m+l+y+a+t+y+
-
- 4.1) t+f+a+w+t+ b+y+n+ binary cursors w+ Normal cursors tcy+s+t+?+
-
- r+a+h+n+m+a+y+ d+s+t+w+r+ DECLARE r+a+ m+tja+l+e+h+ k+n+y+d+.
-
- 4.2) m+n+ tcgfw+n+h+ m+y+t+w+a+n+m+ f+q+tj r+w+y+ tcn+d+ r+d+y+f+ a+w+l+
- y+a+ y+k+ r+d+y+f+ t+c+a+d+f+y+ d+r+x+w+a+s+t+ SELECT b+z+n+m+?+
-
- r+a+h+n+m+a+y+ d+s+t+w+r+ FETCH y+a+ SELECT...LIMIT r+a+
- b+b+y+n+y+d+.
-
- d+r+ w+a+q+e+ k+l+ d+r+x+w+a+s+t+ b+a+y+d+ b+r+r+s+y+ w+
- a+r+z+y+a+b+y+ snw+d+ hkt+y+ a+gfr+ snm+a+ f+q+tj tcn+d+ r+d+y+f+
- a+w+l+ r+a+ b+x+w+a+h+y+d+. b+r+a+y+ m+tka+l+ d+r+x+w+a+s+t+ ORDER BY
- r+a+ d+r+ n+zHr+ b+gfy+r+y+d+. a+gfr+ a+n+d+y+s+ y+a+ n+m+a+y+h+a+y+
- b+r+a+y+ ORDER BY w+g+w+d+ d+a+snt+h+ b+a+snd+,+postgreSQL m+m+k+n+
- a+s+t+ b+t+w+a+n+d+ f+q+tj tcn+d+ s+tjr+ a+w+l+ d+r+x+w+a+s+t+y+ r+a+
- a+r+z+y+a+b+y+ k+n+d+ w+ y+a+ a+y+n+k+h+ k+l+ d+r+x+w+a+s+t+
- p+r+d+a+z+sn snw+d+ t+a+ t+e+d+a+d+ r+d+y+f+h+a+y+ d+r+x+w+a+s+t+y+
- t+w+l+y+d+ snw+d+.
-
- b+r+a+y+ a+n+t+x+a+b+ y+k+ s+tjr+ t+c+a+d+f+y+ b+h+ r+w+sn z+y+r+
- e+m+l+ m+y+k+n+y+m+:
-
+Ãâ ÃËÃâ ÃÂ§ÃÆÃ«Ã± óîêââ¬ÅçÃÂòçñÃâ¡Ã§ÃÅ PC óçòïçñ Ãâ¡Ã³ÃªÃâ ï Ãâ¦Ã±Ã¯Ãâ¦
+ÃÂ̮̱ Ãâ¦ÃŠââ¬ÅÃÆÃâ Ãâ ï ÃÆÃâ¡ ÃÆÃÅ ÃÂÊê âÃâ Ãâ¡Ã§ Ãâ Êò ÃÅ ÃÆÃ³Ã§Ãâ çóê. ïñ
+ÃÂçÃâÃÅ ÃÆÃ⡠çÃÅ Ãâ ÷ÃËñ Ãâ Êóê. çóêÃÂçïÃ⡠çò Ãâ¡Ã§Ã±Ã¯Ãâ¡Ã§ÃÅ SCSI ÃË
+ÃÂçÃÂøÃâ¡Ã¢â¬ÅÃâ¡Ã§ÃÅ ECC ÃË Ãâ¦Ã§Ã¯Ã±Ã¨Ã±Ã¯Ãâ¡Ã§ÃŠèç ÃÆÃÅ ÃÂÊê èçÃâç
+Ãâ óèê èÃ⡠óîê çÃÂòçñÃâ¡Ã§ÃŠçñòçÃâ êñ Ãâ êçÊì èÃâ¡ÃªÃ±ÃŠçò
+Ãâ øñ ̮̤̱̤ÃÅ ÃÅ ÃË Ã¾Ã§ÃŠïçñÊóÊóêÃ⦠èÃâ¡Ãâ¦Ã±Ã§Ã⡠îÃËçÃâ¡Ã¯
+ïçôê. PostgreSQL ñÃËÊèÊôêñ óîê çÃÂòçñÃâ¡Ã§ çìñç
+Ãâ¦ÃŠââ¬ÅôÃËï çÃâ¦Ã§ çïñ ̮̤̱̤ÃÅ ÃÅ ÃË Ã§Ã·Ãâ¦ÃÅ Ãâ çÃâ ÃÂÃÂ§ÃÆÃªÃËñÃâ¡Ã§ÃÅ
+Ãâ¦Ãâ¡Ãâ¦ÃÅ Ãâ¡Ã³ÃªÃâ ï èçÊï óîê çÃÂòçñ Ãâ¦Ãâ çóè çóêÃÂçïÃ⡠ôÃËï.
+ïñ ïñÃËÃâ¡Ãâ¡Ã§ÃŠþóêÊïñ Ãâ¦ÃËñï óîê çÃÂòçñ Ãâ¦Ãâ çóè ÃË
+çÃâ êîçè âÃâ èÃÂë ôïÃ⡠çóê.
+
+
+
+óÃËçÃâçê ùÃâ¦ÃâÊçêÃÅ
+4.1) êÃÂçÃËê èÃÅ Ãâ binary cursors ÃË Normal cursors Ãâ Êóêß
+ñçÃâ¡Ãâ Ãâ¦Ã§ÃŠïóêÃËñ DECLAREââ¬Å ñç Ãâ¦Ã·Ã§ÃâùÃâ¡ ÃÆÃâ Êï.
+4.2) Ãâ¦Ãâ Ãâ ïÃËÃâ Ãâ¡ Ãâ¦ÃŠââ¬ÅêÃËçÃâ Ã⦠ÃÂÃâ÷ ñÃËÃÅ Ãâ Ãâ ï ñïÊàçÃËÃâ Êç
+ÃÅ ÃÆ ñïÊàêõçïÃÂÊïñîÃËçóê SELECTââ¬Å èòÃâ Ãâ¦ÃŸ
+ñçÃâ¡Ãâ Ãâ¦Ã§ÃŠïóêÃËñ FETCH Êç SELECT...LIMIT ñç èèÃÅ Ãâ Êï.
+ïñ ÃËçÃâù ÃÆÃâ ïñîÃËçóê èçÊï èññóÃÅ ÃË Ã§Ã±Ã²ÃŠçèÊôÃËï
+ÃÂêÊçïñ ôÃâ¦Ã§ ÃÂÃâ÷ Ãâ Ãâ ï ñïÊàçÃËÃâ ñç èîÃËçÃâ¡ÃŠï. èñçÃÅ
+Ãâ¦Ã«Ã§Ãâ ïñîÃËçóê ORDER BY ñç ïñ Ãâ øñ èïÊñÊï. çïñ
+çÃâ ïÊó Êç Ãâ Ãâ¦Ã§ÃÅ Ãâ¡Ã¢â¬ÅçÊèñçÃÅ ORDER BY ÃËìÃËï ïçôêÃâ¡
+èçôïÃÅââ¬ÅpostgreSQLââ¬Å Ãâ¦Ãâ¦ÃÆÃâ çóê èêÃËçÃâ ï ÃÂÃâ÷ Ãâ Ãâ ï ó÷ñ
+çÃËÃâ ïñîÃËçóêÊñç çñòÊçèÃÅ ÃÆÃâ ï ÃË ÃŠç çÃÅ Ãâ ÃÆÃâ¡ ÃÆÃâ
+ïñîÃËçóê þñïçòô ôÃËï êç êùïçï ñïÃÅ ÃÂââ¬ÅÃâ¡Ã§ÃÅ
+ïñîÃËçóêÊêÃËÃâÊï ôÃËï.
+èñçÊçÃâ êîçè ÃÅ ÃÆ ó÷ñ êõçïÃÂÊèÃ⡠ñÃËô òÊñ ùÃâ¦Ãâ
+Ãâ¦ÃŠââ¬ÅÃÆÃâ ÃÅ Ãâ¦:
SELECT col
FROM tab
ORDER BY random()
LIMIT 1;
-
- 4.3) m+n+ tcgfw+n+h+ m+y+t+w+a+n+m+ l+y+s+t+y+ a+z+ g+d+a+w+l+ y+a+
- s+a+y+r+ tcy+z+h+a+y+y+ k+h+ d+r+ psql w+g+w+d+ d+a+r+d+ r+a+ b+b+y+n+m+?+
-
- b+r+a+y+ d+y+d+n+ l+y+s+t+ g+d+a+w+l+ d+s+t+w+r+ dt\ r+a+ d+r+
- b+r+n+a+m+h+ psql a+s+t+f+a+d+h+ k+n+y+d+. b+r+a+y+ d+y+d+n+ l+y+s+t+
- k+a+m+l+ f+r+m+a+n+h+a+ ?\ r+a+ a+g+r+a+ k+n+y+d+. r+a+h+ d+y+gfr+
- x+w+a+n+d+n+ m+t+n+ b+r+n+a+m+h+ psql a+s+t+ k+h+ d+r+ sna+x+h+
- pgsql/src/bin/psql/describe.c q+r+a+r+ d+a+r+d+. a+y+n+ f+a+y+l+
- hka+w+y+ f+r+a+m+y+n+ SQLy+y+ a+s+t+ k+h+ x+r+w+g+y+ r+a+ b+r+a+y+
- d+s+t+w+r+a+t+y+ k+h+ b+a+ \d+r+ psql snr+w+e+ m+y+snw+n+d+ t+w+l+y+d+
- m+y+k+n+n+d+. r+a+h+ d+y+gfr+ a+g+r+a+y+ psql b+a+ gfz+y+n+h+ E-
- a+s+t+. a+y+n+k+a+r+ b+a+e+tk m+y+snw+d+ k+h+ psql q+b+l+ a+z+
- a+g+r+a+ h+r+ d+s+t+w+r+ SQLm+t+n+a+zHr+ aMn+ r+a+ n+sna+n+ d+h+d+.
- PostgreSQLh+m+tcn+y+n+ y+k+ b+r+n+a+m+h+ SQLi d+a+r+d+ k+h+ m+y+
- t+w+a+n+ b+a+ a+s+t+f+a+d+h+ a+z+ aMn+ a+tjl+a+e+a+t+ d+a+x+l+y+
- p+a+y+gfa+h+ d+a+d+h+ r+a+ a+s+t+x+r+a+g+ k+r+d+.
-
- 4.4) tcgfw+n+h+ y+k+ s+t+w+n+ g+d+w+l+ r+a+ hkdkf+ m+y+k+n+y+d+?+
- tcgfw+n+h+ n+w+e+ d+a+d+h+ aMn+ r+a+ e+w+dd k+n+y+m+?+
-
- hkdkf+ y+k+ s+t+w+n+ d+r+ t+w+z+y+e+ 7.3 b+a+ a+s+t+f+a+d+h+ a+z+
- d+s+t+w+r+ ALTER TABLE DROP COLUMN a+dda+f+h+ snd+h+ a+s+t+. d+r+
- n+s+x+h+h+a+y+ q+b+l+y+ b+h+ r+w+sn z+y+r+ e+m+l+ k+n+y+d+:
-
+4.3) Ãâ¦Ãâ Ãâ ïÃËÃâ Ãâ¡ Ãâ¦ÃŠââ¬ÅêÃËçÃâ Ã⦠ÃâÊóêÊçò ìïçÃËÃâ Êç óçÊñ
+Ãâ ÊòÃâ¡Ã§ÃÅ ÃÅ ÃÆÃ⡠ïñ psqlââ¬Å ÃËìÃËï ïçñï ñç èèÃÅ Ãâ Ãâ¦ÃŸ
+èñçÊïÊïÃâ ÃâÊóê ìïçÃËÃâ ïóêÃËñ dt\ ñç ïñ èñÃâ çÃâ¦Ãâ¡
+psqlââ¬Å çóêÃÂçïÃâ¡ ÃÆÃâ Êï. èñçÊïÊïÃâ ÃâÊóê ̮̤Ãâ¦Ãâ
+ÃÂñÃâ¦Ã§Ãâ Ãâ¡Ã§ ?\ ñç çìñç ÃÆÃâ Êï. ñçÃ⡠ïÊïñ îÃËçÃâ ïÃâ Ãâ¦ÃªÃâ
+èñÃâ çÃâ¦Ãâ¡ psqlââ¬Å çóê ÃÆÃ⡠ïñ ôçîÃâ¡ pgsql/src/bin/psql/describe.c
+ââ¬ÅÃâñçñ ïçñï. çÃÅ Ãâ ÃÂçÃÅ Ãâ ÃÂçÃËÃÅ ÃÂñçÃâ¦ÃÅ Ãâ SQLÊÊçóê ÃÆÃâ¡
+îñÃËìÊñç èñçÊïóêÃËñçêÃÅ ÃÆÃ⡠èç \ââ¬Åïñ psql ôñÃËù
+Ãâ¦ÃŠââ¬ÅôÃËÃâ ï êÃËÃâÊï Ãâ¦ÃŠââ¬ÅÃÆÃâ Ãâ ï. ñçÃ⡠ïÊïñ çìñçÃÅ psql èç
+ïòÃÅ Ãâ Ãâ¡ E-ââ¬Åçóê. çÃÅ Ãâ ̮̤̱ èçùë Ãâ¦ÃŠââ¬ÅôÃËï ÃÆÃâ¡ psql ÃâèÃâ
+çò çìñç Ãâ¡Ã± ïóêÃËñ SQLââ¬ÅÃâ¦ÃªÃâ çøñ âÃâ ñç Ãâ ôçÃâ ïÃâ¡Ã¯.
+PostgreSQLââ¬ÅÃâ¡Ãâ¦Ãâ Ãâ ÃÅ Ãâ ÃÅ ÃÆ èñÃâ çÃâ¦Ãâ¡ SQLi ïçñï ÃÆÃâ¡ Ãâ¦ÃŠââ¬ÅêÃËçÃâ
+èç çóêÃÂçïÃ⡠çò âÃâ ç÷Ãâçùçê ïçîÃâÊþçÊïçÃ⡠ïçïÃâ¡
+ñç çóêîñçì ÃÆÃ±Ã¯.
+4.4) Ãâ ïÃËÃâ Ãâ¡ ÃÅ ÃÆ óêÃËÃâ ìïÃËÃâ ñç ÃÂðàÃâ¦ÃŠââ¬ÅÃÆÃâ Êïß Ãâ ïÃËÃâ Ãâ¡
+Ãâ ÃËù ïçïÃ⡠âÃâ ñç ùÃËö ÃÆÃâ ÃÅ Ãâ¦ÃŸ
+ÃÂðàÃÅ ÃÆ óêÃËÃâ ïñ êÃËòÊù 7.3 èç çóêÃÂçïÃ⡠çò ïóêÃËñ
+ALTER TABLE DROP COLUMN çöçÃÂÃ⡠ôïÃ⡠çóê. ïñ Ãâ óîÃâ¡Ã¢â¬ÅÃâ¡Ã§ÃÅ
+ÃâèÃâÊèÃ⡠ñÃËô òÊñ ùÃâ¦Ãâ ÃÆÃâ Êï:
BEGIN;
LOCK TABLE old_table;
- SELECT ... -- t+m+a+m+ s+t+w+n+h+a+ i+y+r+ a+z+ s+t+w+n+y+ k+h+ m+y+x+w+a+h+y+d+ aMn+ r+a+ hkdkf+ k+n+y+d+ r+a+ d+r+ a+y+n+g+a+ b+y+a+w+r+y+d+
+ SELECT ... -- êÃâ¦Ã§Ã⦠óêÃËÃâ Ãâ¡Ã§ úÊñ çò óêÃËÃâ ÃÅ ÃÆÃâ¡ Ãâ¦ÃŠââ¬ÅîÃËçÃâ¡ÃŠï âÃâ ñç ÃÂðÃÂ ÃÆÃâ Êï ñç ïñ çÃÅ Ãâ ìç èÊçÃËñÊï
INTO TABLE new_table
FROM old_table;
DROP TABLE old_table;
ALTER TABLE new_table RENAME TO old_table;
COMMIT;
-
- b+r+a+y+ e+w+dd k+r+d+n+ n+w+e+ d+a+d+h+ y+k+ s+t+w+n+ b+h+ r+w+sn
- z+y+r+ e+m+l+ k+n+y+d+:
-
+èñçÊùÃËö ÃÆÃ±Ã¯Ãâ Ãâ ÃËù ïçïÃâ¡ ÃÅ ÃÆ óêÃËÃâ èÃ⡠ñÃËô òÊñ ùÃâ¦Ãâ
+ÃÆÃâ Êï:
BEGIN;
ALTER TABLE tab ADD COLUMN new_col new_data_type;
UPDATE tab SET new_col = CAST(old_col AS new_data_type);
ALTER TABLE tab DROP COLUMN old_col;
COMMIT;
-
- 4.5) hkd+a+k+tkr+ a+n+d+a+z+h+ y+k+ r+d+y+f+,+ g+d+w+l+ w+ x+w+d+
- p+a+y+gfa+h+ d+a+d+h+ tcq+d+r+ a+s+t+?+
-
- m+hkd+w+d+y+t+h+a+ e+b+a+r+t+n+d+ a+z+:
-
- hkd+a+k+tkr+ a+n+d+a+z+h+ p+a+y+gfa+h+ d+a+d+h+ n+a+m+hkd+w+d+(t+a+ 32 t+r+a+b+a+y+t+ w+g+w+d+ d+a+r+d+)
- hkd+a+k+tkr+ a+n+d+a+z+h+ y+k+ g+d+w+l+ 32 t+r+a+b+a+y+t+
- hkd+a+k+tkr+ a+ n+d+a+z+h+ y+k+ r+d+y+f+ 1.6 t+r+a+b+a+y+t+
- hkd+a+k+tkr+ a+n+d+a+z+h+ y+k+ f+y+l+d+ 1 gfy+gfa+ b+a+y+t+
- hkd+a+k+tkr+ a+n+d+a+z+h+ r+d+y+f+h+a+y+ y+k+ g+d+w+l+ n+a+ m+hkd+w+d+
- hkd+a+k+tkr+ s+t+w+n+h+a+y+ y+k+ g+d+w+l+ b+s+t+h+ b+h+ n+w+e+ g+d+w+l+ b+y+n+ 250 t+a+ 6000
- hkd+a+k+tkr+ a+n+d+y+s+h+a+y+ y+k+ g+d+w+l+ n+a+ m+hkd+w+d+
-
- a+l+b+t+h+ d+r+ hka+l+t+ n+a+m+hkd+w+d+ n+y+z+ m+a+ m+hkd+w+d+ b+h+
- hkg+m+ h+a+r+d+d+y+s+k+ w+ f+dda+y+ hka+f+zHh+ x+w+a+h+y+m+ b+w+d+.
- d+r+ c+w+r+t+y+ کh+ m+q+a+d+y+r+ m+snx+c+ snd+h+ b+h+ e+n+w+a+n+
- n+a+m+hkd+w+d+ b+h+ c+w+r+t+ i+y+r+ m+e+m+w+l+y+ b+z+r+k+ snw+n+d+
- k+a+r+a+y+y+ s+y+s+t+m+ k+a+h+sn x+w+a+h+d+ y+a+f+t+.
-
- b+r+a+y+ dkx+y+r+h+ k+r+d+n+ g+d+a+w+l+ b+a+ a+n+d+a+z+h+ x+y+l+y+
- b+z+r+gf n+y+a+z+y+ n+y+s+t+ k+h+ s+y+s+t+m+ e+a+m+l+ a+m+k+a+n+
- a+y+g+a+d+ f+a+y+l+h+a+y+ b+z+r+gf r+a+ d+a+snt+h+ b+a+snd+. b+l+k+h+
- g+d+a+w+l+ x+y+l+y+ b+z+r+gf b+h+ c+w+r+t+ f+a+y+l+h+a+y+y+ b+h+
- hkg+m+ y+k+ gfy+gfa+ b+a+y+t+ n+gfa+h+d+a+r+y+ m+y+snw+n+d+.
-
- a+gfr+ a+n+d+a+z+h+ b+l+w+k+h+a+y+ d+a+d+h+ r+a+ b+r+a+b+r+ 32
- k+y+l+w+ b+a+y+t+ q+r+a+r+ d+h+y+m+ hkd+a+k+tkr+ a+n+d+a+z+h+ g+d+w+l+
- w+ hkd+a+k+tkr+ t+e+d+a+d+ s+t+w+n+h+a+ 4 b+r+a+b+r+ x+w+a+h+d+ snd+.
-
- 4.6) tcq+d+r+ f+dda+y+ d+y+s+k+ s+x+t+ b+r+a+y+ dkx+y+r+h+ k+r+d+n+
- d+a+d+h+h+a+y+ y+k+ f+a+y+l+ m+t+n+y+ m+w+r+d+ n+y+a+z+ a+s+t+?+
-
- y+k+ p+a+y+gfa+h+ d+a+d+h+ PostgreSQL t+a+ 5 b+r+a+b+r+ f+dda+y+y+
- r+w+y+ h+a+r+d+d+y+s+k+ b+r+a+y+ n+gfa+h+d+a+r+y+ y+k+ f+a+y+l+
- m+t+n+y+ n+y+a+z+ d+a+r+d+.
-
- b+h+ e+n+w+a+n+ m+tka+l+ y+k+ f+a+y+l+ b+a+ 100000 x+tj r+a+ d+r+
- n+zHr+ b+gfy+r+y+d+ k+h+ d+r+ h+r+ x+tj y+k+ e+d+d+ c+hky+hk w+ y+k+
- t+w+ddy+hk m+t+n+y+ aMm+d+h+ a+s+t+. f+r+dd k+n+y+d+ k+h+ r+snt+h+
- m+t+n+y+ b+h+ tjw+r+ m+t+w+s+tj 20 b+a+y+t+ b+a+snd+. a+n+d+a+z+h+
- f+a+y+l+ b+r+a+b+r+ 2.8 m+gfa+ b+a+y+t+ x+w+a+h+d+ b+w+d+ w+l+y+
- PostgreSQL b+r+a+y+ n+gfa+h+d+a+r+y+ a+y+n+ f+a+y+l+ b+h+ 6.4 m+gfa+
- b+a+y+t+ a+tjl+a+e+a+t+ n+y+a+z+ x+w+a+h+d+ d+a+snt+.
-
- 32 bytes: a+n+d+a+z+h+ s+r+a+y+n+d+ h+r+ x+tj b+h+ tjw+r+ t+q+r+y+b+y+
- 24 bytes: y+k+ e+d+d+ c+hky+hk w+ y+k+ r+snt+h+ 24 b+a+y+t+y+
- + 4 bytes: a+sna+r+h+ gfr+ r+w+y+ c+f+hkh+ b+h+ y+k+ tcn+d+t+a+y+y+
+4.5) ÃÂïÃÂ§ÃÆÃ«Ã± çÃâ ïçòÃâ¡ ÃÅ ÃÆ ñïÃÅ ÃÂÃÅââ¬Å ìïÃËÃâ ÃË Ã®ÃËï
+þçÊïçÃ⡠ïçïÃâ¡ Ãâ Ãâïñ çóêß
+Ãâ¦ÃÂïÃËïÊêÃâ¡Ã§ ùèçñêÃâ ï çò:
+ ÃÂïÃÂ§ÃÆÃ«Ã± çÃâ ïçòÃ⡠þçÊïçÃ⡠ïçïÃâ¡ Ãâ çÃâ¦ÃÂïÃËï (êç 32 êñçèçÊê ÃËìÃËï ïçñï)
+ ÃÂïÃÂ§ÃÆÃ«Ã± çÃâ ïçòÃâ¡ ÃÅ ÃÆ ìïÃËÃâ 32 êñçèçÊê
+ ÃÂïÃÂ§ÃÆÃ«Ã± ç Ãâ ïçòÃâ¡ ÃÅ ÃÆ ñïÊà1.6 êñçèçÊê
+ ÃÂïÃÂ§ÃÆÃ«Ã± çÃâ ïçòÃâ¡ ÃÅ ÃÆ ÃÂÃÅ Ãâï 1 ïÊïç èçÊê
+ ÃÂïÃÂ§ÃÆÃ«Ã± çÃâ ïçòÃ⡠ñïÃÅ ÃÂÃâ¡Ã§ÃÅ ÃÅ ÃÆ ìïÃËÃâ Ãâ ç Ãâ¦ÃÂïÃËï
+ ÃÂïÃÂ§ÃÆÃ«Ã± óêÃËÃâ Ãâ¡Ã§ÃÅ ÃÅ ÃÆ ìïÃËÃâ èóêÃ⡠èÃâ¡ Ãâ ÃËù ìïÃËÃâ èÃÅ Ãâ 250 êç 6000
+ ÃÂïÃÂ§ÃÆÃ«Ã± çÃâ ïÊóÃâ¡Ã§ÃÅ ÃÅ ÃÆ ìïÃËÃâ Ãâ ç Ãâ¦ÃÂïÃËï
+çÃâèêÃ⡠ïñ ÃÂçÃâê Ãâ çÃâ¦ÃÂïÃËï Ãâ Êò Ãâ¦Ã§ Ãâ¦ÃÂïÃËï èÃâ¡ ÃÂìÃâ¦
+Ãâ¡Ã§Ã±Ã¯Ã¯ÃÅ ÃÂ³ÃÆ ÃË ÃÂöçÃÅ ÃÂçÃÂøÃ⡠îÃËçÃâ¡ÃÅ Ã⦠èÃËï. ïñ õÃËñêÃÅ
+éÃâ¡ Ãâ¦ÃâçïÊñ Ãâ¦Ã´Ã®Ãµ ôïÃ⡠èÃ⡠ùÃâ ÃËçÃâ Ãâ çÃâ¦ÃÂïÃËï èÃ⡠õÃËñê
+úÊñ Ãâ¦Ã¹Ãâ¦ÃËÃâÊèòÃÂ±ÃÆ ôÃËÃâ ï ̮̤̱̤ÊÊóÊóêÃâ¦ ÃÆÃ§Ãâ¡Ã´
+îÃËçÃâ¡Ã¯ ÊçÃÂê.
+èñçÊðîÊñÃâ¡ ÃÆÃ±Ã¯Ãâ ìïçÃËÃâ èç çÃâ ïçòÃ⡠îÃÅ ÃâÊèòñï
+Ãâ ÊçòÃÅ Ãâ Êóê ÃÆÃ⡠óÊóêÃ⦠ùçÃâ¦Ãâ çÃâ¦ÃÆÃ§Ãâ çÊìçï
+ÃÂçÃÅ ÃâÃâ¡Ã§ÃŠèòñï ñç ïçôêÃ⡠èçôï. èÃâÃÆÃ⡠ìïçÃËÃâ îÃÅ ÃâÃÅ
+èòñï èÃ⡠õÃËñê ÃÂçÃÅ ÃâÃâ¡Ã§ÃŠÊèÃâ¡ ÃÂìÃ⦠ÃÅ ÃÆ ïÊïç èçÊê
+Ãâ ïçÃâ¡Ã¯Ã§Ã±ÃÅ Ãâ¦ÃŠââ¬ÅôÃËÃâ ï.
+çïñ çÃâ ïçòÃ⡠èÃâÃËÃÆÃâ¡Ã§ÃŠïçïÃ⡠ñç èñçèñ 32 ÃÆÃÅ ÃâÃË Ã¨Ã§ÃŠê
+Ãâñçñ ïÃâ¡ÃÅ Ã⦠ÃÂïÃÂ§ÃÆÃ«Ã± çÃâ ïçòÃ⡠ìïÃËÃâ ÃË ÃÂïÃÂ§ÃÆÃ«Ã± êùïçï
+óêÃËÃâ Ãâ¡Ã§ 4 èñçèñ îÃËçÃâ¡Ã¯ ôï.
+4.6) Ãâ Ãâïñ ÃÂöçÊïÃÅ ÃÂ³ÃÆ óîê èñçÊðîÊñÃâ¡ ÃÆÃ±Ã¯Ãâ
+ïçïÃâ¡Ã¢â¬Åââ¬ÅÃâ¡Ã§ÃÅ ÃÅ ÃÆ ÃÂçÃÅ Ãâ Ãâ¦ÃªÃâ ÃÅ Ãâ¦ÃËñï Ãâ Êçò çóêß
+ÃÅ ÃÆ þçÊïçÃ⡠ïçïÃâ¡ PostgreSQLââ¬Å êç 5 èñçèñ ÃÂöçÊÊñÃËÃÅ
+Ãâ¡Ã§Ã±Ã¯Ã¯ÃÅ ÃÂ³ÃÆ èñçÃÅ Ãâ ïçÃâ¡Ã¯Ã§Ã±ÃÅ ÃÅ ÃÆ ÃÂçÃÅ Ãâ Ãâ¦ÃªÃâ ÃÅ Ãâ Êçò
+ïçñï.
+èÃ⡠ùÃâ ÃËçÃâ Ãâ¦Ã«Ã§Ãâ ÃÅ ÃÆ ÃÂçÃÅ Ãâ èç 100000 î÷ ñç ïñ Ãâ øñ
+èïÊñÊï ÃÆÃ⡠ïñ Ãâ¡Ã± î÷ ÃÅ ÃÆ ùïï õÃÂÊàÃË ÃÅ ÃÆ êÃËöÃÅ ÃÂ
+Ãâ¦ÃªÃâ ÊâÃâ¦Ã¯Ã⡠çóê. ÃÂñö ÃÆÃâ Êï ÃÆÃ⡠ñôêÃâ¡ Ãâ¦ÃªÃâ ÊèÃ⡠÷ÃËñ
+Ãâ¦ÃªÃËó÷ 20 èçÊê èçôï. çÃâ ïçòÃâ¡ ÃÂçÃÅ Ãâ èñçèñ 2.8 Ãâ¦Ã¯Ã§
+èçÊê îÃËçÃâ¡Ã¯ èÃËï ÃËÃâÃÅ PostgreSQL èñçÃÅ Ãâ ïçÃâ¡Ã¯Ã§Ã±ÃŠçÃÅ Ãâ
+ÃÂçÃÅ Ãâ èÃâ¡ 6.4 Ãâ¦Ã¯Ã§ èçÊê ç÷Ãâçùçê Ãâ Êçò îÃËçÃâ¡Ã¯ ïçôê.
+ 32 bytes: çÃâ ïçòÃ⡠óñçÃÅ Ãâ ï Ãâ¡Ã± î÷ èÃ⡠÷ÃËñ êÃâñÊèÃÅ
+ 24 bytes: ÃÅ ÃÆ ùïï õÃÂÊàÃË ÃÅ ÃÆ ñôêÃâ¡ 24 èçÊêÃÅ
+ + 4 bytes: çôçñÃ⡠ïñ ñÃËÊõÃÂÃÂÃ⡠èÃâ¡ ÃÅ ÃÆ Ãâ Ãâ ïêçÃÅ ÃÅ
----------------------------------------
- 60 bytes d+r+ h+r+ r+d+y+f+
-
-a+n+d+a+z+h+ c+f+hka+t+ d+a+d+h+ d+r+ PostgreSQL b+r+a+b+r+ b+a+ 8 k+y+l+w+ b+a+y+t+ a+s+t+
- 8192 t+e+d+a+d+ b+a+y+t+h+a+ d+r+ h+r+ c+f+hkh+
- ------------------- = 136 t+e+d+a+d+ r+d+y+f+h+a+ d+r+ y+k+ c+f+hkh+ p+a+y+gfa+h+ d+a+d+h+
- 60 t+e+d+a+d+ b+a+y+t+h+a+y+ h+r+ r+d+y+f+
+ 60 bytes ïñ Ãâ¡Ã± ñïÃÅ ÃÂ
- 100000 t+e+d+a+d+ r+d+y+f+h+a+
- -------------------- = t+e+d+a+d+c+f+hka+t+ p+a+y+gfa+h+ d+a+d+h+
- 128 t+e+d+a+d+ r+d+y+f+h+a+ d+r+ h+r+ c+f+hkh+
+çÃâ ïçòÃ⡠õÃÂÃÂçê ïçïÃ⡠ïñ PostgreSQL èñçèñ èç 8 ÃÆÃÅ ÃâÃË Ã¨Ã§ÃŠê çóê
+ 8192 êùïçï èçÊêââ¬ÅÃâ¡Ã§ ïñ Ãâ¡Ã± õÃÂÃÂÃâ¡
+ ------------------- = 136 êùïçï ñïÃÅ ÃÂââ¬ÅÃâ¡Ã§ ïñ ÃÅ ÃÆ õÃÂÃÂÃ⡠þçÊïçÃ⡠ïçïÃâ¡
+ 60 êùïçï èçÊêââ¬ÅÃâ¡Ã§ÃÅ Ãâ¡Ã± ñïÃÅ ÃÂ
-735 t+e+d+a+d+ c+f+hka+t+ * 8192 t+e+d+a+d+ b+a+y+t+h+a+y+ h+r+ c+f+hkh+ = 6,021,120 m+gfa+ b+a+y+t+
+ 100000 êùïçï ñïÃÅ ÃÂÃâ¡Ã§
+ -------------------- = êùïçïõÃÂÃÂçê þçÊïçÃ⡠ïçïÃâ¡
+ 128 êùïçï ñïÃÅ ÃÂÃâ¡Ã§ ïñ Ãâ¡Ã± õÃÂÃÂÃâ¡
- s+r+b+a+r+ a+n+d+y+s+h+a+ y+a+ n+m+a+y+h+h+a+ a+z+ a+y+n+ m+q+d+a+r+
- k+m+t+r+ a+s+t+ w+l+y+ tcw+n+ sna+m+l+ x+w+d+ d+a+d+h+h+a+ h+m+ h+s+t+
- m+m+کn+ a+s+t+ a+n+d+a+z+h+ aMn+h+a+ h+m+ b+z+r+gf snw+d+.
-
- NULLh+a+ b+h+ c+w+r+t+ bitmap dkx+y+r+h+ m+y+snw+n+d+ w+ a+z+
- a+y+n+r+w+ f+dda+y+ b+s+y+a+r+ k+m+y+ r+a+ a+sni+a+l+ m+y+k+n+n+d+.
-
- 4.7) tcgfw+n+h+ m+y+t+w+a+n+m+ b+f+h+m+m+ k+h+ tch+ k+a+r+b+r+a+n+,+
- p+a+y+gfa+h+ d+a+d+h+,+ n+m+a+y+h+ w+ g+d+a+w+l+y+ d+r+ s+y+s+t+m+
- t+e+r+y+f+ snd+h+ a+s+t+?+
-
- psql t+e+d+a+d+ z+y+a+d+y+ d+s+t+w+r+ d+a+r+d+ k+h+ b+a+ \ snr+w+e+
- m+y+snw+n+d+ w+ a+y+n+ a+tjl+a+e+a+t+ r+a+ d+r+ a+x+t+y+a+r+ m+a+
- q+r+a+r+ m+y+d+h+n+d+. b+r+a+y+ d+y+d+n+ aMn+h+a+ d+s+t+w+r+ ?\ r+a+
- a+g+r+a+ k+n+y+d+. h+m+tcn+y+n+ g+d+a+w+l+ s+y+s+t+m+y+ k+h+ n+a+m+
- aMn+h+a+ b+a+ pg_ snr+w+e+ m+y+snw+d+ n+y+z+ a+y+n+ a+tjl+a+e+a+t+
- r+a+ d+r+ x+w+d+ d+a+r+n+d+. a+g+r+a+y+ b+r+n+a+m+h+ psql b+a+
- gfz+y+n+h+ l- n+y+z+ b+a+e+tk n+sna+n+ d+a+d+n+ l+y+s+t+ t+m+a+m+
- p+a+y+gfa+h+h+a+y+ d+a+d+h+ m+y+snw+d+.
-
- h+m+tcn+y+n+ f+a+y+l+ pgsql/src/tutorial/syscat.source n+y+z+
- f+r+m+a+n+h+a+y+ SELECT k+h+ b+a+ a+s+t+f+a+d+h+ a+z+ aMn+ m+y+
- t+w+a+n+ a+tjl+a+e+a+t+ p+a+y+gfa+h+ d+a+d+h+ r+a+ a+s+t+x+r+a+g+
- k+r+d+ snr+hk d+a+d+h+ a+s+t+.
-
- 4.8) tcr+a+ d+r+x+w+a+s+t+h+a+y+ m+n+ k+n+d+ a+g+r+a+ m+y+snw+n+d+ y+a+
- tcr+a+ a+z+ n+m+a+y+h+ h+a+ a+s+t+f+a+d+h+ n+m+y+k+n+n+d+?+
-
- b+h+ tjw+r+ m+e+m+w+l+ b+r+a+y+ d+r+x+w+a+s+t+h+a+ a+z+ n+m+a+y+h+h+a+
- a+s+t+f+a+d+h+ n+m+y+snw+d+. t+n+h+a+ d+r+ c+w+r+t+y+ a+z+ n+m+a+y+h+
- h+a+ a+s+t+f+a+d+h+ m+y+snw+d+ k+h+ a+n+d+a+z+h+ g+d+w+l+ a+z+ y+k+
- a+n+d+a+z+h+ hkd+a+q+l+ b+z+r+gft+r+ b+a+snd+ w+ d+r+x+w+a+s+t+ h+m+
- f+q+tj q+s+m+t+y+ a+z+ r+d+y+f+h+a+y+ g+d+w+l+ r+a+ a+n+t+x+a+b+
- k+r+d+h+ b+a+snd+. d+l+y+l+ a+y+n+ k+a+r+ aMn+ a+s+t+ k+h+
- d+s+t+r+s+y+h+a+y+ t+c+a+d+f+y+ b+h+ h+a+r+d+d+y+s+k+ k+h+ b+h+
- x+a+tjr+ n+m+a+y+h+h+a+ a+y+g+a+d+ m+y+snw+d+ m+m+k+n+ a+s+t+ a+z+
- x+w+a+n+d+n+ m+s+t+q+y+m+ g+d+w+l+ y+a+ x+w+a+n+d+n+ t+r+t+y+b+y+
- r+k+w+r+d+h+a+ k+n+d+t+r+ b+a+snd+.
-
- b+r+a+y+ t+e+y+y+n+ a+y+n+k+h+ a+z+ n+m+a+y+h+ a+s+t+f+a+d+h+ snw+d+
- y+a+ x+y+r+,+ PostgreSQL b+a+y+d+ a+tjl+a+e+a+t+ aMm+a+r+y+ r+a+ d+r+
- m+w+r+d+ y+k+ g+d+w+l+ b+d+a+n+d+. a+y+n+ a+tjl+a+e+a+t+ t+w+s+tj
- d+s+t+w+r+ ANALYZE w+ VACUUM ANALYZE b+h+ d+s+t+ m+y+aMy+d+. b+a+
- a+s+t+f+a+d+h+ a+z+ a+y+n+ a+tjl+a+e+a+t+,+ b+h+y+n+h+ s+a+z+ a+z+
- t+e+d+a+d+ r+d+y+f+h+a+y+ y+k+ g+d+w+l+ a+tjl+a+e+ p+y+d+a+ m+y+k+n+d+
- w+ b+h+t+r+ m+y+t+w+a+n+d+ t+e+y+y+n+ k+n+d+ k+h+ aMy+a+ a+z+
- n+m+a+y+h+ a+s+t+f+a+d+h+ snw+d+ y+a+ x+y+r+. a+tjl+a+e+a+t+
- aMm+a+r+y+ h+m+tcn+y+n+ b+r+a+y+ t+e+y+y+n+ t+r+t+y+b+ a+l+hka+q+ w+
- r+w+snh+a+y+ a+l+hka+q+ b+h+ c+w+r+t+ b+h+y+n+h+ n+y+z+ k+a+r+b+r+d+
- d+a+r+d+. g+m+e+ aMw+r+y+ a+tjl+a+e+a+t+ aMm+a+r+y+ b+a+y+d+ b+h+
- c+w+r+t+ d+w+r+h+a+y+ h+m+z+m+a+n+ b+a+ t+i+y+y+r+ d+a+d+h+h+a+y+
- g+d+w+l+ a+n+g+a+m+ snw+d+.
-
- n+m+a+y+h+h+a+ b+h+ tjw+r+ m+e+m+w+l+ h+m+r+a+h+ b+a+ d+s+t+w+r+ ORDER
- BY b+h+ k+a+r+ b+r+d+h+ n+m+y+snw+n+d+. b+r+a+y+ y+k+ g+d+w+l+
- b+z+r+gf y+k+ p+y+m+a+y+sn t+r+t+y+b+y+ h+m+r+a+h+ b+a+ d+s+t+w+r+
- m+r+t+b+ s+a+z+y+ a+z+ b+h+ k+a+r+ b+r+d+n+ n+m+a+y+h+h+a+
- s+r+y+e+t+r+ x+w+a+h+d+ b+w+d+.
-
- a+m+a+ a+gfr+ h+m+r+a+h+ b+a+ ORDER BY a+z+ LIMIT a+s+t+f+a+d+h+
- snw+d+ a+i+l+b+ a+z+ n+m+a+y+h+h+a+ a+s+t+f+a+d+h+ m+y+snw+d+ tcw+n+
- f+q+tj q+s+m+t+y+ a+z+ g+d+w+l+ b+r+gfr+d+a+n+d+h+ m+y+snw+d+. d+r+
- hkq+y+q+t+ h+r+ tcn+d+ t+w+a+b+e+ ()MIN w+ ()MAX a+z+ n+m+a+y+h+h+a+
- a+s+t+f+a+d+h+ n+m+y+k+n+n+d+ w+l+y+ m+y+t+w+a+n+y+m+ b+a+
- a+s+t+f+a+d+h+ a+z+ d+s+t+w+r+ z+y+r+ b+a+ a+s+t+f+a+d+h+ a+z+
- n+m+a+y+h+h+a+ w+ d+s+t+w+r+ ORDER BY w+ LIMIT ,+ aMn+h+a+ r+a+ b+h+
- d+s+t+ aMw+r+y+m+.
-
+735 êùïçï õÃÂÃÂçê * 8192 êùïçï èçÊêââ¬ÅÃâ¡Ã§ÃÅ Ãâ¡Ã± õÃÂÃÂÃâ¡ = 6,021,120 Ãâ¦Ã¯Ã§ èçÊê
+óñèçñ çÃâ ïÊóÃâ¡Ã§ Êç Ãâ Ãâ¦Ã§ÃÅ Ãâ¡Ã¢â¬ÅÃâ¡Ã§ çò çÃÅ Ãâ Ãâ¦Ãâïçñ ÃÆÃâ¦ÃªÃ±
+çóê ÃËÃâÃÅ Ãâ ÃËÃâ ôçÃâ¦Ãâ îÃËï ïçïÃâ¡Ã¢â¬ÅÃâ¡Ã§ Ãâ¡Ã⦠Ãâ¡Ã³Ãª Ãâ¦Ãâ¦Ã©Ãâ çóê
+çÃâ ïçòÃ⡠âÃâ Ãâ¡Ã§ Ãâ¡Ã⦠èòñï ôÃËï.
+NULLÃâ¡Ã§ èÃ⡠õÃËñê bitmap ðîÊñÃâ¡ Ãâ¦ÃŠââ¬ÅôÃËÃâ ï ÃË Ã§Ã² çÃÅ Ãâ ñÃË
+ÃÂöçÊèóÊçñ ÃÆÃâ¦ÃŠñç çôúçÃâ Ãâ¦ÃŠââ¬ÅÃÆÃâ Ãâ ï.
+4.7) Ãâ ïÃËÃâ Ãâ¡ Ãâ¦ÃŠââ¬ÅêÃËçÃâ Ã⦠èÃÂÃâ¡Ãâ¦Ãâ¦ ÃÆÃâ¡ Ãâ Ãâ¡ ÃÆÃ§Ã±Ã¨Ã±Ã§Ãâ ÃÅââ¬Å
+þçÊïçÃ⡠ïçïÃâ¡ÃÅââ¬Å Ãâ Ãâ¦Ã§ÃÅ Ãâ¡ ÃË Ã¬Ã¯Ã§ÃËÃâÊïñ óÊóêÃ⦠êùñÃÅ ÃÂ
+ôïÃ⡠çóêß
+psql êùïçï òÊçïÊïóêÃËñ ïçñï ÃÆÃ⡠èç \ ôñÃËù
+Ãâ¦ÃŠââ¬ÅôÃËÃâ ï ÃË Ã§ÃÅ Ãâ ç÷Ãâçùçê ñç ïñ çîêÊçñ Ãâ¦Ã§ Ãâñçñ
+Ãâ¦ÃŠââ¬ÅïÃâ¡Ãâ ï. èñçÊïÊïÃâ âÃâ Ãâ¡Ã§ ïóêÃËñ ?\ ñç çìñç
+ÃÆÃâ Êï. Ãâ¡Ãâ¦Ãâ Ãâ ÃÅ Ãâ ìïçÃËÃâ óÊóêÃâ¦ÃÅ ÃÆÃ⡠èç Ãâ çÃ⦠âÃâ Ãâ¡Ã§ pg_
+ââ¬ÅôñÃËù Ãâ¦ÃŠââ¬ÅôÃËï Ãâ Êò çÃÅ Ãâ ç÷Ãâçùçê ñç ïñ îÃËï
+ïçñÃâ ï. çìñçÊèñÃâ çÃâ¦Ãâ¡ psql èç ïòÃÅ Ãâ Ãâ¡ l- Ãâ Êò èçùë
+Ãâ ôçÃâ ïçïÃâ ÃâÊóê êÃâ¦Ã§Ã⦠þçÊïçÃâ¡Ãâ¡Ã§ÃŠïçïÃâ¡ Ãâ¦ÃŠââ¬ÅôÃËï.
+Ãâ¡Ãâ¦Ãâ Ãâ ÃÅ Ãâ ÃÂçÃÅ Ãâ pgsql/src/tutorial/syscat.source Ãâ Êò ÃÂñÃâ¦Ã§Ãâ Ãâ¡Ã§ÃÅ
+SELECT ÃÆÃ⡠èç çóêÃÂçïÃ⡠çò âÃâ Ãâ¦ÃŠââ¬ÅêÃËçÃâ ç÷Ãâçùçê
+þçÊïçÃ⡠ïçïÃ⡠ñç çóêîñçì ÃÆÃ±Ã¯ ôñàïçïÃ⡠çóê.
+4.8) Ãâ ñç ïñîÃËçóêÃâ¡Ã§ÃÅ Ãâ¦Ãâ ÃÆÃâ ï çìñç Ãâ¦ÃŠââ¬ÅôÃËÃâ ï Êç
+Ãâ ñç çò Ãâ Ãâ¦Ã§ÃÅ Ãâ¡ Ãâ¡Ã§ çóêÃÂçïÃâ¡ Ãâ Ãâ¦ÃŠââ¬ÅÃÆÃâ Ãâ ïß
+èÃ⡠÷ÃËñ Ãâ¦Ã¹Ãâ¦ÃËÃâ èñçÊïñîÃËçóêÃâ¡Ã§ çò Ãâ Ãâ¦Ã§ÃÅ Ãâ¡Ã¢â¬ÅÃâ¡Ã§
+çóêÃÂçïÃâ¡ Ãâ Ãâ¦ÃŠââ¬ÅôÃËï. êÃâ Ãâ¡Ã§ ïñ õÃËñêÊçò Ãâ Ãâ¦Ã§ÃÅ Ãâ¡Ã¢â¬ÅÃâ¡Ã§
+çóêÃÂçïÃâ¡ Ãâ¦ÃŠââ¬ÅôÃËï ÃÆÃ⡠çÃâ ïçòÃ⡠ìïÃËÃâ çò ÃÅ ÃÆ çÃâ ïçòÃâ¡
+ÃÂïçÃâÃâ èòñïêñ èçôï ÃË Ã¯Ã±Ã®ÃËçóê Ãâ¡Ã⦠ÃÂÃâ÷ ÃâóÃâ¦ÃªÃŠçò
+ñïÃÅ ÃÂââ¬ÅÃâ¡Ã§ÃŠìïÃËÃâ ñç çÃâ êîçè ÃÆÃ±Ã¯Ã⡠èçôï. ïÃâÃÅ Ãâ çÃÅ Ãâ
+̮̤̱ âÃâ çóê ÃÆÃ⡠ïóêñóÊââ¬ÅÃâ¡Ã§ÃŠêõçïÃÂÊèÃâ¡ Ãâ¡Ã§Ã±Ã¯Ã¯ÃÅ ÃÂ³ÃÆ
+ÃÆÃ⡠èÃ⡠îç÷ñ Ãâ Ãâ¦Ã§ÃÅ Ãâ¡Ã¢â¬ÅÃâ¡Ã§ çÊìçï Ãâ¦ÃŠââ¬ÅôÃËï Ãâ¦Ãâ¦ÃÆÃâ çóê
+çò îÃËçÃâ ïÃâ Ãâ¦Ã³ÃªÃâÃÅ Ã⦠ìïÃËÃâ Êç îÃËçÃâ ïÃâ êñêÊèÃÅ
+ÃÂ±ÃÆÃËñïÃâ¡Ã§ ÃÆÃâ ïêñ èçôï.
+èñçÊêùÃÅ ÃÅ Ãâ çÃÅ Ãâ ÃÆÃ⡠çò Ãâ Ãâ¦Ã§ÃÅ Ã⡠çóêÃÂçïÃ⡠ôÃËï Êç
+îÊñÃÅ PostgreSQL èçÊï ç÷Ãâçùçê âÃâ¦Ã§Ã±ÃŠñç ïñ Ãâ¦ÃËñï ÃÅ ÃÆ
+ìïÃËÃâ èïçÃâ ï. çÃÅ Ãâ ç÷Ãâçùçê êÃËó÷ ïóêÃËñ ANALYZE ÃË VACUUM
+ANALYZE èÃ⡠ïóê Ãâ¦ÃŠââ¬ÅâÊï. èç çóêÃÂçïÃ⡠çò çÃÅ Ãâ
+ç÷ÃâçùçêÃÅââ¬Å èÃâ¡ÃÅ Ãâ Ã⡠óçò çò êùïçï ñïÃÅ ÃÂââ¬ÅÃâ¡Ã§ÃÅ ÃÅ ÃÆ
+ìïÃËÃâ ç÷Ãâçù þÊïç Ãâ¦ÃŠââ¬ÅÃÆÃâ ï ÃË Ã¨Ãâ¡ÃªÃ± Ãâ¦ÃŠââ¬ÅêÃËçÃâ ï
+êùÃÅ ÃÅ Ãâ ÃÆÃâ ï ÃÆÃ⡠âÊç çò Ãâ Ãâ¦Ã§ÃÅ Ã⡠çóêÃÂçïÃ⡠ôÃËï Êç îÊñ.
+ç÷Ãâçùçê âÃâ¦Ã§Ã±ÃÅ Ãâ¡Ãâ¦Ãâ Ãâ ÃÅ Ãâ èñçÊêùÃÅ ÃÅ Ãâ êñêÊè çÃâÃÂçÃâ
+ÃË Ã±ÃËôÃâ¡Ã§ÃŠçÃâÃÂçÃâ èÃ⡠õÃËñê èÃâ¡ÃÅ Ãâ Ãâ¡ Ãâ Êò ̮̤̱̬̱ ïçñï.
+ìÃâ¦Ã¹ âÃËñÊç÷Ãâçùçê âÃâ¦Ã§Ã±ÃŠèçÊï èÃ⡠õÃËñê ïÃËñÃâ¡Ã¢â¬ÅçÃÅ
+Ãâ¡Ãâ¦Ã²Ãâ¦Ã§Ãâ èç êúÊÊñ ïçïÃâ¡Ã¢â¬ÅÃâ¡Ã§ÃŠìïÃËÃâ çÃâ ìçÃ⦠ôÃËï.
+Ãâ Ãâ¦Ã§ÃÅ Ãâ¡Ã¢â¬ÅÃâ¡Ã§ èÃ⡠÷ÃËñ Ãâ¦Ã¹Ãâ¦ÃËÃâ Ãâ¡Ãâ¦Ã±Ã§Ã⡠èç ïóêÃËñ ORDER BY
+èÃâ¡ ÃÆÃ§Ã± èñïÃâ¡ Ãâ Ãâ¦ÃŠââ¬ÅôÃËÃâ ï. èñçÃÅ ÃÅ ÃÆ ìïÃËÃâ èòñï ÃÅ ÃÆ
+þÃÅ Ãâ¦Ã§ÃŠô êñêÊèÃÅ Ãâ¡Ãâ¦Ã±Ã§Ã⡠èç ïóêÃËñ Ãâ¦Ã±ÃªÃ¨ óçòÊçò èÃâ¡
+̮̤̱ èñïÃâ Ãâ Ãâ¦Ã§ÃÅ Ãâ¡Ã¢â¬ÅÃâ¡Ã§ óñÊùêñ îÃËçÃâ¡Ã¯ èÃËï.
+çÃâ¦Ã§ çïñ Ãâ¡Ãâ¦Ã±Ã§Ã⡠èç ORDER BYââ¬Å çò LIMIT çóêÃÂçïÃ⡠ôÃËï
+çúÃâè çò Ãâ Ãâ¦Ã§ÃÅ Ãâ¡Ã¢â¬ÅÃâ¡Ã§ çóêÃÂçïÃâ¡ Ãâ¦ÃŠââ¬ÅôÃËï Ãâ ÃËÃâ ÃÂÃâ÷
+ÃâóÃâ¦ÃªÃŠçò ìïÃËÃâ çóêÃÂçïÃâ¡ Ãâ¦ÃŠââ¬ÅôÃËï. ïñ ÃÂÃâÃÅ Ãâê Ãâ¡Ã±
+Ãâ Ãâ ï êÃËçèù ()MINââ¬Å ÃË ()MAX çò Ãâ Ãâ¦Ã§ÃÅ Ãâ¡Ã¢â¬ÅÃâ¡Ã§ çóêÃÂçïÃâ¡
+Ãâ Ãâ¦ÃŠââ¬ÅÃÆÃâ Ãâ ï ÃËÃâÃÅ Ãâ¦ÃŠââ¬ÅêÃËçÃâ ÃÅ Ã⦠èç çóêÃÂçïÃ⡠çò ïóêÃËñ
+òÊñ èç çóêÃÂçïÃ⡠çò Ãâ Ãâ¦Ã§ÃÅ Ãâ¡Ã¢â¬ÅÃâ¡Ã§ ÃË Ã¯Ã³ÃªÃËñ ORDER BY ÃË
+LIMITââ¬Å âÃâ Ãâ¡Ã§ ñç èÃ⡠ïóê âÃËñÃÅ Ãâ¦.
SELECT col
FROM tab
ORDER BY col [ DESC ]
LIMIT 1;
+çïñ ôÃâ¦Ã§ ÃÂ̮̱ Ãâ¦ÃŠââ¬ÅÃÆÃâ Êï ÃÆÃ⡠èÃâ¡ÃÅ Ãâ Ã⡠óçò óÊóêÃ⦠ïñ
+çÃâ êîçè þÃÅ Ãâ¦Ã§ÃŠô êñêÊèÊçôêèçÃâ¡ ÃÆÃ±Ã¯Ã⡠çóê èç
+ïóêÃËñ 'SET enable_seqscan TO 'off' Ãâ¦ÃŠââ¬ÅêÃËçÃâ Êï èèÃÅ Ãâ Êï âÊç
+çóêÃÂçïÃ⡠çò Ãâ Ãâ¦Ã§ÃÅ Ãâ¡Ã¢â¬ÅÃâ¡Ã§ èçùë çÃÂòçÊô óñùê
+ïñîÃËçóêââ¬ÅÃâ¡Ã§ îÃËçÃâ¡Ã¯ ôï.
+çóêÃÂçïÃ⡠çò Ãâ Ãâ¦Ã§ÃÅ Ãâ¡Ã¢â¬ÅÃâ¡Ã§ Ãâ¡Ãâ ïçÃâ¦ÃÅ ÃÆÃ⡠çò ùÃâçæÃ⦠ÃËÃÅ ÃËÃâ¡
+Ãâ øÃŠñ LIKE ÃË ~ çóêÃÂçïÃâ¡ Ãâ¦ÃŠââ¬ÅÃÆÃâ Êï ÃÂÃâ÷ ïñ èùöÃÅ
+ôñçÊ÷ îçõÃÅ ÃÆÃ⡠ïñ çÃÅ Ãâ ìç ÃÂ°ÃÆÃ± ôïÃ⡠çóê Ãâ¦Ãâ¦ÃÆÃâ çóê:
+ çèêïçÊñôêÃ⡠ìóêìÃË Ã¨Ã§ÃŠï èÃ⡠÷ÃËñ õñÊàÃâ¦Ã´Ã®Ãµ
+ èçôï èñçÃÅ Ãâ¦Ã«Ã§Ãâ:
+ ïóêÃËñçê LIKE Ãâ èçÊï èç ùÃâçÃâ¦Ãª % ôñÃËù ôÃËÃâ ï
+ çÃâïÃËÃâ¡Ã§ÃÅ Ãâ¦Ãâ øÃâ¦ÃÅ ÃÆÃ⡠èç ~ Ãâ¦ÃŠââ¬ÅçÊï ÃÂêÃâ¦Ã§Ã⹠èçÊï èç
+ ùÃâçÃâ¦Ãª ^ ôñÃËù ôÃËï
+ ñôêÃ⡠ìóêìÃË Ãâ èçÊï èç ÃÅ ÃÆ Ãâ¦Ã¬Ãâ¦ÃËùÃ⡠çò
+ ̮̤̱ÃÂ§ÃÆÃªÃ±ââ¬ÅÃâ¡Ã§ Ãâ¦Ã«Ãâ [a-e] ôñÃËù ôÃËï
+ ìóêìÃËÃâ¡Ã§ÃŠúÊñÃÂóçó èÃâ¡ Ãâ¦ÃªÃâ Ãâ¦Ã«Ãâ ILIKEââ¬Å ÃË *~ çò
+ Ãâ Ãâ¦Ã§ÃÅ Ãâ¡Ã¢â¬ÅÃâ¡Ã§ çóêÃÂçïÃâ¡ Ãâ Ãâ¦ÃŠââ¬ÅÃÆÃâ Ãâ ï. ïñ ùÃËö çò
+ êÃËçèù Ãâ Ãâ¦Ã§ÃÅ Ãâ¡Ã¢â¬ÅçÃÅ ÃÆÃ⡠ïñ ÃâóÃâ¦Ãª 4.12 êÃËöÊàïçïÃ⡠ôï
+ çóêÃÂçïÃâ¡ Ãâ¦ÃŠââ¬ÅÃÆÃâ Ãâ ï.
+ Ãâ¦Ãâïçñ þÊô ÃÂñö localeââ¬Å èçÊï ïñ initdb çóêÃÂçïÃ⡠ôÃËï.
- a+gfr+ snm+a+ f+k+r+ m+y+k+n+y+d+ k+h+ b+h+y+n+h+ s+a+z+ s+y+s+t+m+
- d+r+ a+n+t+x+a+b+ p+y+m+a+y+sn t+r+t+y+b+y+ a+snt+b+a+h+ k+r+d+h+
- a+s+t+ b+a+ d+s+t+w+r+ 'SET enable_seqscan TO 'off' m+y+t+w+a+n+y+d+
- b+b+y+n+y+d+ aMy+a+ a+s+t+f+a+d+h+ a+z+ n+m+a+y+h+h+a+ b+a+e+tk
- a+f+z+a+y+sn s+r+e+t+ d+r+x+w+a+s+t+h+a+ x+w+a+h+d+ snd+ y+a+ x+y+r+.
-
- a+s+t+f+a+d+h+ a+z+ n+m+a+y+h+h+a+ h+n+gfa+m+y+ k+h+ a+z+ e+l+a+yHm+
- w+y+zjh+ n+zHy+r+ LIKE w+ ~ a+s+t+f+a+d+h+ m+y+k+n+y+d+ f+q+tj d+r+
- b+e+ddy+ snr+a+y+tj x+a+c+ k+h+ d+r+ a+y+n+g+a+ dkk+r+ snd+h+ a+s+t+
- m+m+k+n+ a+s+t+:
- * a+b+t+d+a+y+ r+snt+h+ g+s+t+g+w+ b+a+y+d+ b+h+ tjw+r+ c+r+y+hk
- m+snx+c+ b+a+snd+ b+r+a+y+ m+tka+l+:
-
- - d+s+t+w+r+a+t+ LIKE n+b+a+y+d+ b+a+ e+l+a+m+t+ % snr+w+e+ snw+n+d+
-
- - a+l+gfw+h+a+y+ m+n+zHm+y+ k+h+ b+a+ ~ m+y+aMy+d+ hkt+m+a+:+ b+a+y+d+
- b+a+ e+l+a+m+t+ ^ snr+w+e+ snw+d+
- * r+snt+h+ g+s+t+g+w+ n+b+a+y+d+ b+a+ y+k+ m+g+m+w+e+h+ a+z+
- k+a+r+a+k+t+r+h+a+ m+tkl+ [a-e] snr+w+e+ snw+d+
- * g+s+t+g+w+h+a+y+ i+y+r+hks+a+s+ b+h+ m+t+n+ m+tkl+ ILIKE w+ *~
- a+z+ n+m+a+y+h+h+a+ a+s+t+f+a+d+h+ n+m+y+k+n+n+d+. d+r+ e+w+dd
- a+z+ t+w+a+b+e+ n+m+a+y+h+a+y+ k+h+ d+r+ q+s+m+t+ 4.12 t+w+ddy+hk
- d+a+d+h+ snd+ a+s+t+f+a+d+h+ m+y+k+n+n+d+.
- * m+q+d+a+r+ p+y+sn f+r+dd locale b+a+y+d+ d+r+ initdb
- a+s+t+f+a+d+h+ snw+d+.
-
- 4.9) tcgfw+n+h+ m+y+t+w+a+n+m+ n+hkw+h+ b+r+r+s+y+ d+r+x+w+a+s+t+ r+a+
- t+w+s+tj b+h+y+n+h+s+a+z+ d+r+x+w+a+s+t+h+a+ m+sna+h+d+h+ k+n+m+?+
-
- r+a+h+n+m+a+y+ d+s+t+w+r+ EXPLAIN r+a+ n+gfa+h+ k+n+y+d+.
-
- 4.10) n+m+a+y+h+ R-tree tcy+s+t+?+
-
- a+z+ n+m+a+y+h+ R-Tree b+r+a+y+ a+n+d+y+s+ k+r+d+n+ d+a+d+h+h+a+y+
- f+a+c+l+h+a+y+ a+s+t+f+a+d+h+ m+y+snw+d+. y+k+ n+m+a+y+h+ hash n+m+y+
- t+w+a+n+d+ g+s+t+g+w+h+a+y+ m+hkd+w+d+h+a+y+ r+a+ a+n+g+a+m+ d+h+d+.
- n+m+a+y+h+ "B-tree" n+y+z+ b+r+a+y+ a+n+g+a+m+ g+s+t+g+w+y+
- m+hkd+w+d+h+a+y+ d+r+ y+k+ g+h+t+ q+a+b+l+ a+s+t+f+a+d+h+ a+s+t+.
- a+m+a+ R-Tree m+y+t+w+a+n+d+ d+a+d+h+h+a+y+ tcn+d+ b+e+d+y+ r+a+
- n+y+z+ p+snt+y+b+a+n+y+ k+n+d+. b+r+a+y+ m+tka+l+ a+gfr+ a+z+
- n+m+a+y+h+ R-tree b+r+a+y+ gfw+n+h+ Point a+s+t+f+a+d+h+ snw+d+
- s+r+e+t+ d+r+x+w+a+s+t+h+a+y+y+ n+zHy+r+ "select all points within a
- bounding rectangle" b+h+ m+r+a+t+b+ a+f+z+a+y+sn m+y+y+a+b+d+.
-
- m+q+a+l+h+a+y+ k+h+ tjr+a+hky+ R-tree r+a+ t+w+ddy+hk d+a+d+h+ a+s+t+
-
- Guttman, A. "R-trees: A Dynamic Index Structure for Spatial
- Searching." Proceedings of the 1984 ACM SIGMOD Int'l Conf on Mgmt of
- Data, 45-57.
-
- R-tree m+y+t+w+a+n+d+ tcn+d+ddl+e+y+h+a+ w+ tcn+d+ w+g+h+y+ r+a+
- p+snt+y+b+a+n+y+ k+n+d+. d+r+ t+yHw+r+y+,+ R-tree m+y+t+w+a+n+d+
- t+e+d+a+d+ b+e+d+h+a+y+ b+a+l+a+t+r+y+ r+a+ n+y+z+ p+snt+y+b+a+n+y+
- k+n+d+. d+r+ e+m+l+ t+w+s+e+h+ R-tree n+y+a+z+ b+h+ k+a+r+
- b+y+snt+r+y+ d+a+r+d+.
-
- 4.11) b+h+y+n+h+ s+a+z+ t+k+w+y+n+y+ d+r+x+w+a+s+t+ tcy+s+t+?+ (Genetic
- Query Optimizer)
-
- a+s+t+f+a+d+h+ a+z+ GEQO s+r+e+t+ b+h+y+n+h+ s+a+z+y+ d+r+x+w+a+s+t+
- r+a+ h+n+gfa+m+y+k+h+ t+e+d+a+d+ z+y+a+d+y+ g+d+w+l+ r+a+ b+a+
- a+s+t+f+a+d+h+ a+z+ a+l+gfw+r+y+t+m+ zjn+t+y+k+ a+l+hka+q+ m+y+
- k+n+y+m+ a+f+z+a+y+sn m+y+d+h+d+.
-
- 4.12) tcgfw+n+h+ a+z+ e+b+a+r+a+t+ m+n+zHm+ b+r+a+y+ g+s+t+g+w+
- a+s+t+f+a+d+h+ k+n+m+?+ tcgfw+n+h+ g+s+t+g+w+y+y+ a+n+g+a+m+ d+h+m+ k+h+
- hks+a+s+ b+h+ m+t+n+ n+b+a+snd+?+ tcgfw+n+h+ b+r+a+y+ y+k+ g+s+t+g+w+y+
- i+y+r+ hks+a+s+ b+h+ m+t+n+ a+z+ n+m+a+y+h+ a+s+t+f+a+d+h+ k+n+m+?+
-
- b+r+a+y+ g+s+t+g+w+y+ e+b+a+r+t+ m+n+zHm+ a+z+ e+m+l+gfr+ ~
- a+s+t+f+a+d+h+ m+y+k+n+y+m+. b+r+a+y+ g+s+t+g+w+y+ i+y+r+ hks+a+s+
- b+h+ m+t+n+ a+z+ e+m+l+gfr+ *~ w+ y+a+ ILIKE a+s+t+f+a+d+h+ m+y+
- k+n+y+m+.
-
- r+w+sn d+y+gfr+ a+n+g+a+m+ g+s+t+g+w+y+ i+y+r+ hks+a+s+ b+h+ m+t+n+
- d+r+ z+y+r+ n+sna+n+ d+a+d+h+ snd+h+ a+s+t+.
+4.9) Ãâ ïÃËÃâ Ãâ¡ Ãâ¦ÃŠââ¬ÅêÃËçÃâ Ã⦠Ãâ ÃÂÃËÃ⡠èññóÊïñîÃËçóê ñç
+êÃËó÷ èÃâ¡ÃÅ Ãâ Ãâ¡Ã¢â¬Åóçò ïñîÃËçóêÃâ¡Ã§ Ãâ¦Ã´Ã§Ãâ¡Ã¯Ãâ¡ ÃÆÃâ Ãâ¦ÃŸ
+ñçÃâ¡Ãâ Ãâ¦Ã§ÃŠïóêÃËñ EXPLAIN ñç Ãâ ïçÃâ¡ ÃÆÃâ Êï.
+4.10) Ãâ Ãâ¦Ã§ÃÅ Ãâ¡ R-treeââ¬Å Ãâ Êóêß
+çò Ãâ Ãâ¦Ã§ÃÅ Ãâ¡ R-Tree èñçÊçÃâ ïÊó ÃÆÃ±Ã¯Ãâ ïçïÃâ¡Ã¢â¬ÅÃâ¡Ã§ÃÅ
+ÃÂçõÃâÃâ¡Ã¢â¬ÅçÊçóêÃÂçïÃâ¡ Ãâ¦ÃŠââ¬ÅôÃËï. ÃÅ ÃÆ Ãâ Ãâ¦Ã§ÃÅ Ãâ¡ hash
+Ãâ Ãâ¦ÃŠââ¬ÅêÃËçÃâ Ãâ ï ìóêìÃËÃâ¡Ã§ÃÅ Ãâ¦ÃÂïÃËïÃâ¡Ã¢â¬ÅçÊñç çÃâ ìçÃâ¦
+ïÃâ¡Ã¯. Ãâ Ãâ¦Ã§ÃÅ Ãâ¡ "B-tree" Ãâ Êò èñçÊçÃâ ìçÃ⦠ìóêìÃËÃÅ
+Ãâ¦ÃÂïÃËïÃâ¡Ã¢â¬ÅçÊïñ ÃÅ ÃÆ ìÃâ¡Ãª ÃâçèÃâ çóêÃÂçïÃ⡠çóê. çÃâ¦Ã§
+R-Tree Ãâ¦ÃŠââ¬ÅêÃËçÃâ ï ïçïÃâ¡Ã¢â¬ÅÃâ¡Ã§ÃÅ Ãâ Ãâ ï èùïÊñç Ãâ Êò
+þôêÊèçÃâ ÃÅ ÃÆÃâ ï. èñçÃÅ Ãâ¦Ã«Ã§Ãâ çóêÃÂçïÃ⡠çïñ çò Ãâ Ãâ¦Ã§ÃÅ Ãâ¡
+R-treeââ¬Å èñçÊïÃËÃâ Ãâ¡ Point çóêÃÂçïÃ⡠ôÃËï óñùê
+ïñîÃËçóêââ¬ÅÃâ¡Ã§ÃÅ ÃÅ Ãâ øÃŠñ "select all points within a bounding
+rectangle" èÃâ¡ Ãâ¦Ã±Ã§ÃªÃ¨ çÃÂòçÊô Ãâ¦ÃŠââ¬ÅÊçèï.
+Ãâ¦ÃâçÃâÃâ¡Ã¢â¬ÅçÃÅ ÃÆÃ⡠÷ñçÃÂÃÅ R-tree ñç êÃËöÊàïçïÃ⡠çóê
+Guttman, A. "R-trees: A Dynamic Index Structure for Spatial Searching."
+Proceedings of the 1984 ACM SIGMOD Int'l Conf on Mgmt of Data, 45-57.
+R-treeââ¬Å Ãâ¦ÃŠââ¬ÅêÃËçÃâ ï Ãâ Ãâ ïöÃâùÃÅ Ãâ¡Ã§ ÃË Ãâ Ãâ ï ÃËìÃâ¡ÃŠñç
+þôêÊèçÃâ ÃÅ ÃÆÃâ ï. ïñ êæÃËñÃÅ R-tree Ãâ¦ÃŠââ¬ÅêÃËçÃâ ï êùïçï
+èùïÃâ¡Ã§ÃŠèçÃâçêñ ñÃÅ Ãâ Êò þôêÊèçÃâ ÃÅ ÃÆÃâ ï. ïñ ùÃâ¦Ãâ
+êÃËóùÃâ¡ R-treeââ¬Å Ãâ Êçò èÃâ¡ ÃÆÃ§Ã± èÊôêñÊïçñï.
+4.11) èÃâ¡ÃÅ Ãâ Ã⡠óçò ÃÂªÃÆÃËÃÅ Ãâ ÊïñîÃËçóê Ãâ Êóêß (Genetic Query
+Optimizer)
+çóêÃÂçïÃ⡠çò GEQO óñùê èÃâ¡ÃÅ Ãâ Ã⡠óçòÊïñîÃËçóê ñç
+Ãâ¡Ãâ ïçÃâ¦ÃÅ ÃÆÃ⡠êùïçï òÊçïÊìïÃËÃâ ñç èç çóêÃÂçïÃ⡠çò
+çÃâïÃËñÊêÃ⦠ÃËÃâ êÃÅ ÃÆ çÃâÃÂçÃâ Ãâ¦ÃŠââ¬ÅÃÆÃâ ÃÅ Ã⦠çÃÂòçÊô
+Ãâ¦ÃŠââ¬ÅïÃâ¡Ã¯.
+4.12) Ãâ ïÃËÃâ Ã⡠çò ùèçñçê Ãâ¦Ãâ øÃ⦠èñçÊìóêìÃË Ã§Ã³ÃªÃÂçïÃâ¡
+ÃÆÃâ Ãâ¦ÃŸ Ãâ ïÃËÃâ Ã⡠ìóêìÃËÊÊçÃâ ìçÃ⦠ïÃâ¡Ãâ¦ ÃÆÃâ¡ ÃÂóçó èÃâ¡ Ãâ¦ÃªÃâ
+Ãâ èçôïß Ãâ ïÃËÃâ Ã⡠èñçÃÅ ÃÅ ÃÆ ìóêìÃËÊúÊñ ÃÂóçó èÃâ¡ Ãâ¦ÃªÃâ
+çò Ãâ Ãâ¦Ã§ÃÅ Ã⡠çóêÃÂçïÃâ¡ ÃÆÃâ Ãâ¦ÃŸ
+èñçÊìóêìÃËÊùèçñê Ãâ¦Ãâ øÃ⦠çò ùÃâ¦Ãâïñ ~ââ¬Å çóêÃÂçïÃâ¡
+Ãâ¦ÃŠââ¬ÅÃÆÃâ ÃÅ Ãâ¦. èñçÊìóêìÃËÊúÊñ ÃÂóçó èÃâ¡ Ãâ¦ÃªÃâ çò
+ùÃâ¦Ãâïñ *~ ÃË ÃŠç ILIKEââ¬Å çóêÃÂçïÃâ¡ Ãâ¦ÃŠââ¬ÅÃÆÃâ ÃÅ Ãâ¦.
+ñÃËô ïÊïñ çÃâ ìçÃ⦠ìóêìÃËÊúÊñ ÃÂóçó èÃâ¡ Ãâ¦ÃªÃâ ïñ òÊñ
+Ãâ ôçÃâ ïçïÃ⡠ôïÃ⡠çóê.
SELECT *
FROM tab
WHERE lower(col) = 'abc';
-
- a+y+n+ a+z+ n+m+a+y+h+h+a+y+ a+s+t+a+n+d+a+r+d+ a+s+t+f+a+d+h+ n+m+y+
- k+n+d+. w+l+y+ snm+a+ m+y+ t+w+a+n+y+d+ b+a+ d+s+t+w+r+ z+y+r+ y+k+
- n+m+a+y+h+ a+y+g+a+d+ k+n+y+d+ w+ a+z+ aMn+ a+s+t+f+a+d+h+ k+n+y+d+.
+çÃÅ Ãâ çò Ãâ Ãâ¦Ã§ÃÅ Ãâ¡Ã¢â¬ÅÃâ¡Ã§ÃŠçóêçÃâ ïçñï çóêÃÂçïÃâ¡
+Ãâ Ãâ¦ÃŠââ¬ÅÃÆÃâ ï. ÃËÃâÊôÃâ¦Ã§ Ãâ¦ÃŠêÃËçÃâ Êï èç ïóêÃËñ òÊñ ÃÅ ÃÆ
+Ãâ Ãâ¦Ã§ÃÅ Ã⡠çÊìçï ÃÆÃâ Êï ÃË Ã§Ã² âÃâ çóêÃÂçïÃâ¡ ÃÆÃâ Êï.
CREATE INDEX tabindex ON tab (lower(col));
-
- 4.13) tcgfw+n+h+ m+y+t+w+a+n+m+ d+r+ y+k+ d+r+x+w+a+s+t+ t+snx+y+c+ d+h+m+
- k+h+ y+k+ f+y+l+d+ NULL a+s+t+?+
-
- b+a+ a+s+t+f+a+d+h+ a+z+ t+w+a+b+e+ IS NULL w+ IS NOT NULL m+y+
- t+w+a+n+y+m+ NULL b+w+d+n+ y+k+ f+y+l+d+ r+a+ t+s+t+ k+n+y+m+.
-
- 4.14) t+f+a+w+t+ b+y+n+ gfw+n+h+h+a+y+ m+x+t+l+f+ character tcy+s+t+?+
-
+4.13) IÃâ ïÃËÃâ Ãâ¡ Ãâ¦ÃŠââ¬ÅêÃËçÃâ Ã⦠ïñ ÃÅ ÃÆ ïñîÃËçóê êôîÊõ ïÃâ¡Ãâ¦
+ÃÆÃâ¡ ÃÅ ÃÆ ÃÂÃÅ Ãâï NULLââ¬Å çóêß
+èç çóêÃÂçïÃ⡠çò êÃËçèù IS NULL ÃË IS NOT NULL Ãâ¦ÃŠââ¬ÅêÃËçÃâ ÃÅ Ãâ¦
+NULL èÃËïÃâ ÃÅ ÃÆ ÃÂÃÅ Ãâï ñç êóê ÃÆÃâ ÃÅ Ãâ¦.
+4.14) êÃÂçÃËê èÃÅ Ãâ ïÃËÃâ Ãâ¡Ã¢â¬ÅÃâ¡Ã§ÃÅ Ãâ¦Ã®ÃªÃâàcharacter Ãâ Êóêß
Type Internal Name Notes
--------------------------------------------------
-VARCHAR(n) varchar a+n+d+a+z+h+,+ hkd+a+k+tkr+ tjw+l+ r+a+ n+sna+n+ m+y+ d+h+d+ b+d+w+n+ a+dda+f+h+ snd+n+ k+a+r+a+k+t+r+ a+dda+f+h+
-CHAR(n) bpchar k+a+r+a+k+t+r+h+a+y+ b+l+a+n+k+ b+r+a+y+ p+r+ snd+n+ tjw+l+ m+snx+c+ snd+h+ a+s+t+f+a+d+h+ m+y+snw+d+
-TEXT text hkd+a+k+tkr+ tjw+l+ r+a+ m+snx+c+ n+m+y+k+n+d+
-BYTEA bytea aMr+a+y+h+a+y+ a+z+ b+a+y+t+ b+a+ tjw+l+ m+t+i+y+r+
-"char" char y+k+ k+a+r+a+k+t+r+
-
- n+a+m+ d+a+x+l+y+ gfw+n+h+h+a+ r+a+ d+r+ system catalogue w+ b+e+ddy+
- a+z+ p+y+i+a+m+h+a+y+ x+tja+ m+y+t+w+a+n+ d+y+d+.
-
- tch+a+r+ gfw+n+h+ a+w+l+ h+m+gfy+ a+z+ n+w+e+ varlena h+s+t+n+d+ (4
- b+a+y+t+ a+w+l+ r+w+y+ d+y+s+k+ tjw+l+ r+a+ m+snx+c+ m+y+k+n+d+ k+h+
- b+h+ d+n+b+a+l+ aMn+ d+a+d+h+h+a+ q+r+a+r+ d+a+r+n+d+.)
- b+n+a+b+r+a+y+n+ f+dda+y+ w+a+q+e+y+ a+s+t+f+a+d+h+ snd+h+ r+w+y+
- d+y+s+k+ a+z+ a+n+d+a+z+h+ t+e+r+y+f+ snd+h+ b+y+snt+r+ a+s+t+. a+m+a+
- a+y+n+ gfw+n+h+h+a+ r+a+ m+y+t+w+a+n+ f+snr+d+h+ k+r+d+ k+h+
- a+y+n+k+a+r+ b+a+e+tk m+y+snw+d+ f+dda+y+ k+m+t+r+y+ r+w+y+ d+y+s+k+
- a+sni+a+l+ k+n+n+d+.
-
- b+r+a+y+ dkx+y+r+h+ r+snt+h+h+a+y+ b+a+ tjw+l+ m+t+i+y+r+(VARCHAR(n
- b+h+t+r+y+n+ a+n+t+x+a+b+ a+s+t+. d+r+ a+y+n+ gfw+n+h+ hkd+a+k+tkr+
- tjw+l+ r+snt+h+ m+hkd+w+d+ a+s+t+ b+r+ x+l+a+f+ text k+h+ h+y+tc
- m+hkd+w+d+y+t+y+ r+w+y+ hkd+a+k+tkr+ a+n+d+a+z+h+ r+snt+h+ n+m+y+
- gfdka+r+d+.(d+r+ a+y+n+ gfw+n+h+ hkd+a+k+tkr+ tjw+l+ y+k+ r+snt+h+
- y+k+ gfy+gfa+ b+a+y+t+ x+w+a+h+d+ b+w+d+)
-
- gfw+n+h+ (CHAR(n b+r+a+y+ dkx+y+r+h+ d+a+d+h+h+a+y+ b+a+ tjw+l+
- y+k+s+a+n+ a+s+t+.y+k+ gfw+n+h+y+ (CHAR(n b+a+ k+a+r+a+k+t+r+h+a+y+
- b+l+a+n+k+ (x+a+l+y+) p+r+ m+y+snw+d+ t+a+ b+h+ tjw+l+ m+snx+c+ snd+h+
- b+r+s+d+ d+r+ hka+l+y+k+h+ gfw+n+h+ VARCHAR k+a+r+a+k+t+r+h+a+ r+a+
- b+h+ h+m+a+n+ c+w+r+t+ k+h+ h+s+t+n+d+ dkx+y+r+h+ m+y+k+n+d+. gfw+n+h+
- BYTEA b+r+a+y+ dkx+y+r+h+ d+a+d+h+h+a+y+ b+a+y+n+r+y+ a+s+t+ b+h+
- x+c+w+c+ d+a+d+h+h+a+y+ b+a+y+n+r+y+ k+h+ sna+m+l+ b+a+y+t+h+a+y+ NULL
- h+s+t+n+d+. a+z+ n+zHr+ k+a+r+a+y+y+ t+m+a+m+ a+y+n+ gfw+n+h+h+a+
- y+k+s+a+n+ h+s+t+n+d+.
-
- 4.15.1) tcgfw+n+h+ m+y+t+w+a+n+m+ y+k+ f+y+l+d+ s+r+y+a+l+ y+a+
- a+f+z+a+y+sny+ a+y+g+a+d+ k+n+m+?+
-
- PostgreSQL a+z+ d+a+d+h+h+a+y+ s+r+y+a+l+ p+snt+y+b+a+n+y+ m+y+k+n+d+.
- b+r+a+y+ a+y+g+a+d+ y+k+ f+y+l+d+ s+r+y+a+l+ (b+r+a+y+ d+a+snt+n+ y+k+
- f+y+l+d+ m+n+hkc+r+ b+h+ f+r+d+ b+r+a+y+ h+r+ r+d+y+f+ )b+h+ r+w+sn
- z+y+r+ e+m+l+ k+n+y+d+:
- CREATE TABLE person (
- id SERIAL,
- name TEXT
+VARCHAR(n) varchar çÃâ ïçòÃâ¡ÃÅ ÃÂïÃÂ§ÃÆÃ«Ã± ÷ÃËÃâ ñç Ãâ ôçÃâ Ãâ¦ÃŠïÃâ¡Ã¯ èïÃËÃâ çöçÃÂÃ⡠ôïÃâ ̮̤̱ÃÂ§ÃÆÃªÃ± çöçÃÂÃâ¡
+CHAR(n) bpchar ̮̤̱ÃÂ§ÃÆÃªÃ±Ãâ¡Ã§ÃŠèÃâçÃâ ÃÆ èñçÊþñ ôïÃâ ÷ÃËÃâ Ãâ¦Ã´Ã®Ãµ ôïÃ⡠çóêÃÂçïÃâ¡ Ãâ¦ÃŠââ¬ÅôÃËï
+TEXT text ÃÂïÃÂ§ÃÆÃ«Ã± ÷ÃËÃâ ñç Ãâ¦Ã´Ã®Ãµ Ãâ Ãâ¦ÃŠââ¬ÅÃÆÃâ ï
+BYTEA bytea âñçÃÅ Ãâ¡Ã¢â¬ÅçÊçò èçÊê èç ÷ÃËÃâ Ãâ¦ÃªÃºÃŠñ
+"char" char ÃÅ ÃÆ ̮̤̱ÃÂ§ÃÆÃªÃ±
+Ãâ çÃ⦠ïçîÃâÊïÃËÃâ Ãâ¡Ã¢â¬ÅÃâ¡Ã§ ñç ïñ system catalogue ââ¬ÅÃË Ã¨Ã¹Ã¶ÃŠçò
+þÊúçÃâ¦Ãâ¡Ã§ÃŠî÷ç Ãâ¦ÃŠââ¬ÅêÃËçÃâ ïÊï.
+Ãâ Ãâ¡Ã§Ã± ïÃËÃâ Ã⡠çÃËÃâ Ãâ¡Ãâ¦Ã¯ÃŠçò Ãâ ÃËù varlena Ãâ¡Ã³ÃªÃâ ï (4 èçÊê
+çÃËÃâ ñÃËÊïÃÅ ÃÂ³ÃÆ ÷ÃËÃâ ñç Ãâ¦Ã´Ã®Ãµ Ãâ¦ÃŠââ¬ÅÃÆÃâ ï ÃÆÃ⡠èÃ⡠ïÃâ èçÃâ
+âÃâ ïçïÃâ¡Ã¢â¬ÅÃâ¡Ã§ Ãâñçñ ïçñÃâ ï.)ââ¬ÅèÃâ çèñçÃÅ Ãâ ÃÂöçÃÅ
+ÃËçÃâùÊçóêÃÂçïÃ⡠ôïÃ⡠ñÃËÊïÃÅ ÃÂ³ÃÆ çò çÃâ ïçòÃ⡠êùñÃÅ ÃÂ
+ôïÃ⡠èÊôêñ çóê. çÃâ¦Ã§ çÃÅ Ãâ ïÃËÃâ Ãâ¡Ã¢â¬ÅÃâ¡Ã§ ñç Ãâ¦ÃŠââ¬ÅêÃËçÃâ
+ÃÂôñïÃâ¡ ÃÆÃ±Ã¯ ÃÆÃ⡠çÃÅ Ãâ ̮̤̱ èçùë Ãâ¦ÃŠââ¬ÅôÃËï ÃÂöçÃÅ ÃÆÃâ¦ÃªÃ±ÃÅ
+ñÃËÊïÃÅ ÃÂ³ÃÆ çôúçÃâ ÃÆÃâ Ãâ ï.
+èñçÊðîÊñÃ⡠ñôêÃâ¡Ã¢â¬ÅÃâ¡Ã§ÃŠèç ÷ÃËÃâ Ãâ¦ÃªÃºÃŠñ(VARCHAR(nââ¬Å
+èÃâ¡ÃªÃ±ÃÅ Ãâ çÃâ êîçè çóê. ïñ çÃÅ Ãâ ïÃËÃâ Ãâ¡ ÃÂïÃÂ§ÃÆÃ«Ã± ÷ÃËÃâ
+ñôêÃâ¡ Ãâ¦ÃÂïÃËï çóê èñ îÃâçàtext ÃÆÃâ¡ Ãâ¡ÃÅ Ãâ Ãâ¦ÃÂïÃËïÊêÃÅ
+ñÃËÃÅ ÃÂïÃÂ§ÃÆÃ«Ã± çÃâ ïçòÃ⡠ñôêÃâ¡ Ãâ Ãâ¦ÃŠââ¬Åïðçñï.(ïñ çÃÅ Ãâ
+ïÃËÃâ Ãâ¡ ÃÂïÃÂ§ÃÆÃ«Ã± ÷ÃËÃâ ÃÅ ÃÆ ñôêÃâ¡ ÃÅ ÃÆ ïÊïç èçÊê îÃËçÃâ¡Ã¯
+èÃËï)
+ïÃËÃâ Ãâ¡ (CHAR(n èñçÊðîÊñÃ⡠ïçïÃâ¡Ã¢â¬ÅÃâ¡Ã§ÃŠèç ÷ÃËÃâ ÃÅ ÃÆÃ³Ã§Ãâ
+çóê.ÃÅ ÃÆ ïÃËÃâ Ãâ¡Ã¢â¬ÅÃÅ (CHAR(n èç ̮̤̱ÃÂ§ÃÆÃªÃ±Ãâ¡Ã§ÃŠèÃâçÃâ ÃÆ
+(îçÃâÃÅ ) þñ Ãâ¦ÃŠââ¬ÅôÃËï êç èÃ⡠÷ÃËÃâ Ãâ¦Ã´Ã®Ãµ ôïÃ⡠èñóï ïñ
+ÃÂçÃâÃÅ ÃÆÃ⡠ïÃËÃâ Ãâ¡ VARCHAR ̮̤̱ÃÂ§ÃÆÃªÃ±Ãâ¡Ã§ ñç èÃâ¡ Ãâ¡Ãâ¦Ã§Ãâ õÃËñê
+ÃÆÃâ¡ Ãâ¡Ã³ÃªÃâ ï ðîÊñÃâ¡ Ãâ¦ÃŠââ¬ÅÃÆÃâ ï. ïÃËÃâ Ãâ¡ BYTEA èñçÊðîÊñÃâ¡
+ïçïÃâ¡Ã¢â¬ÅÃâ¡Ã§ÃŠèçÃÅ Ãâ ñÊçóê èÃ⡠îõÃËõ ïçïÃâ¡Ã¢â¬ÅÃâ¡Ã§ÃÅ
+èçÃÅ Ãâ êñÃÅ ÃÆÃ⡠ôçÃâ¦Ãâ èçÊêââ¬ÅÃâ¡Ã§ÃÅ NULL Ãâ¡Ã³ÃªÃâ ï. çò Ãâ øñ
+̮̤̱̤ÊÊêÃâ¦Ã§Ã⦠çÃÅ Ãâ ïÃËÃâ Ãâ¡Ã¢â¬ÅÃâ¡Ã§ ÃÅ ÃÆÃ³Ã§Ãâ Ãâ¡Ã³ÃªÃâ ï.
+4.15.1) Ãâ ïÃËÃâ Ãâ¡ Ãâ¦ÃŠââ¬ÅêÃËçÃâ Ã⦠ÃÅ ÃÆ ÃÂÃÅ Ãâï óñÊçÃâ Êç
+çÃÂòçÊôÊçÊìçï ÃÆÃâ Ãâ¦ÃŸ
+PostgreSQL çò ïçïÃâ¡Ã¢â¬ÅÃâ¡Ã§ÃŠóñÊçÃâ þôêÊèçÃâ ÃÅ Ãâ¦ÃŠââ¬ÅÃÆÃâ ï.
+èñçÊçÊìçï ÃÅ ÃÆ ÃÂÃÅ Ãâï óñÊçÃâ (èñçÊïçôêÃâ ÃÅ ÃÆ ÃÂÃÅ Ãâï
+Ãâ¦Ãâ ÃÂõñ èÃâ¡ ÃÂñï èñçÃÅ Ãâ¡Ã± ñïÊà)èÃ⡠ñÃËô òÊñ ùÃâ¦Ãâ
+ÃÆÃâ Êï:
+ CREATE TABLE person (
+ id SERIAL,
+ name TEXT
);
-
- d+s+t+w+r+ b+a+l+a+ b+h+ tjw+r+ a+t+w+m+a+t+y+ک b+h+ d+s+t+w+r+
- z+y+r+ t+b+d+y+l+ m+y+snw+d+:
+ïóêÃËñ èçÃâç èÃ⡠÷ÃËñ çêÃËÃâ¦Ã§ÃªÃŠé èÃ⡠ïóêÃËñ òÊñ
+êèïÃÅ Ãâ Ãâ¦ÃŠââ¬ÅôÃËï:
CREATE SEQUENCE person_id_seq;
- CREATE TABLE person (
+ CREATE TABLE person (
id INT4 NOT NULL DEFAULT nextval('person_id_seq'),
- name TEXT
+ name TEXT
);
-
- b+r+a+y+ d+y+d+n+ a+tjl+a+e+a+t+ b+y+snt+r+ b+h+ r+a+h+n+m+a+y+
- d+s+t+w+r+ create_sequence m+r+a+g+e+h+ k+n+y+d+. h+m+tcn+y+n+ m+y+
- t+w+a+n+ a+z+ OIDh+r+ r+d+y+f+ b+h+ e+n+w+a+n+ y+k+ m+q+d+a+r+
- m+n+hkc+r+ b+h+ f+r+d+ a+s+t+f+a+d+h+ k+r+d+. a+m+a+ d+r+ a+y+n+
- hka+l+t+ b+r+a+y+ dump k+r+d+n+ w+ reloadk+r+d+n+ p+a+y+gfa+h+
- d+a+d+h+ b+a+y+d+ d+s+t+w+r+ pg_dumps r+a+ b+a+ gfz+y+n+h+ o- a+g+r+a+
- k+n+y+d+.
-
- 4.15.2) tcgfw+n+h+ m+y+t+w+a+n+m+ m+q+d+a+r+ y+k+ d+r+g+ s+r+y+a+l+y+ r+a+
- b+d+a+n+m+?+
-
- y+k+ r+w+sn b+r+a+y+ gfr+f+t+n+ m+q+d+a+r+ b+e+d+y+ y+k+ f+y+l+d+
- s+r+y+a+l+ a+s+t+f+a+d+h+ a+z+ t+a+b+e+ ()nextval a+s+t+. d+r+ snb+h+
- k+'+d+y+ k+h+ d+r+ a+d+a+m+h+ aMm+d+h+ a+s+t+ r+w+sn a+n+g+a+m+ a+y+n+
- k+a+r+ n+sna+n+ d+a+d+h+ snd+h+ a+s+t+:
+èñçÊïÊïÃâ ç÷Ãâçùçê èÊôêñ èÃ⡠ñçÃâ¡Ãâ Ãâ¦Ã§ÃŠïóêÃËñ
+create_sequence Ãâ¦Ã±Ã§Ã¬Ã¹Ãâ¡ ÃÆÃâ Êï. Ãâ¡Ãâ¦Ãâ Ãâ ÃÅ Ãâ Ãâ¦ÃŠââ¬ÅêÃËçÃâ çò
+OIDââ¬ÅÃâ¡Ã± ñïÊàèÃ⡠ùÃâ ÃËçÃâ ÃÅ ÃÆ Ãâ¦Ãâïçñ Ãâ¦Ãâ ÃÂõñ èÃâ¡ ÃÂñï
+çóêÃÂçïÃâ¡ ÃÆÃ±Ã¯. çÃâ¦Ã§ ïñ çÃÅ Ãâ ÃÂçÃâê èñçÃÅ dump ÃÆÃ±Ã¯Ãâ ÃË
+reloadââ¬ÅÃÆÃ±Ã¯Ãâ þçÊïçÃ⡠ïçïÃ⡠èçÊï ïóêÃËñ pg_dumpsââ¬Å ñç
+èç ïòÃÅ Ãâ Ãâ¡ o-ââ¬Å çìñç ÃÆÃâ Êï.
+4.15.2) Ãâ ïÃËÃâ Ãâ¡ Ãâ¦ÃŠââ¬ÅêÃËçÃâ Ã⦠Ãâ¦Ãâïçñ ÃÅ ÃÆ ïñì óñÊçÃâÊñç
+èïçÃâ Ãâ¦ÃŸ
+ÃÅ ÃÆ ñÃËô èñçÊïñÃÂêÃâ Ãâ¦Ãâïçñ èùïÃÅ ÃÅ ÃÆ ÃÂÃÅ Ãâï óñÊçÃâ
+çóêÃÂçïÃ⡠çò êçèù ()nextval çóê. ïñ ôèÃâ¡ ÃÆÃÂïÃÅ ÃÆÃ⡠ïñ
+çïçÃâ¦Ã⡠âÃâ¦Ã¯Ã⡠çóê ñÃËô çÃâ ìçÃ⦠çÃÅ Ãâ ̮̤̱ Ãâ ôçÃâ ïçïÃâ¡
+ôïÃ⡠çóê:
new_id = execute("SELECT nextval('person_id_seq')");
execute("INSERT INTO person (id, name) VALUES (new_id, 'Blaise Pascal')");
-
- b+a+ a+g+r+a+y+ d+s+t+w+r+ f+w+q+ m+q+d+a+r+ g+d+y+d+ r+a+ d+r+
- m+t+i+y+r+ new_id n+y+z+ x+w+a+h+y+d+d+a+snt+ k+h+ m+y+t+w+a+n+y+d+
- aMn+ r+a+ d+r+ b+q+y+h+ d+r+x+w+a+s+t+h+a+ n+y+z+ a+s+t+f+a+d+h+
- k+n+y+d+. t+w+g+h+ d+a+snt+h+ b+a+sny+d+ k+h+ n+a+m+ SEQUENCEy+y+ k+h+
- b+h+ tjw+r+ a+t+w+m+a+t+y+k+ a+y+g+a+d+ snd+h+ a+s+t+ b+h+ c+w+r+t+
- table_serialcolumn_seq x+w+a+h+d+ b+w+d+. k+h+ d+r+ aMn+ table n+a+m+
- g+d+w+l+ w+ serialcolumn n+a+m+ f+y+l+d+ s+r+y+a+l+ g+d+w+l+ m+y+
- b+a+snd+.
-
- b+r+a+y+ d+y+d+n+ m+q+d+a+r+ n+s+b+t+ d+a+d+h+ snd+h+ b+h+ f+y+l+d+
- s+r+y+a+l+ n+y+z+ m+y+t+w+a+n+ a+z+ t+a+b+e+ () currval b+h+ c+w+r+t+
- z+y+r+ a+s+t+f+a+d+h+ k+r+d+.
+èç çìñç ïóêÃËñ ÃÂÃËÃâ Ãâ¦Ãâïçñ ìïÊï ñç ïñ Ãâ¦ÃªÃºÃŠñ new_id
+Ãâ Êò îÃËçÃâ¡ÃŠïïçôê ÃÆÃâ¡ Ãâ¦ÃŠââ¬ÅêÃËçÃâ Êï âÃâ ñç ïñ èÃâÃÅ Ãâ¡
+ïñîÃËçóêââ¬ÅÃâ¡Ã§ÃÅ Ãâ Êò çóêÃÂçïÃâ¡ ÃÆÃâ Êï. êÃËìÃ⡠ïçôêÃâ¡
+èçôÊï ÃÆÃâ¡ Ãâ çÃ⦠SEQUENCEÃÅ ÃÅ ÃÆÃ⡠èÃ⡠÷ÃËñ çêÃËÃâ¦Ã§ÃªÃÅ ÃÆ çÊìçï
+ôïÃ⡠çóê èÃ⡠õÃËñê table_serialcolumn_seqââ¬Å îÃËçÃâ¡Ã¯ èÃËï. ÃÆÃâ¡
+ïñ âÃâ tableââ¬Å Ãâ çÃ⦠ìïÃËÃâ ÃË serialcolumn Ãâ çÃ⦠ÃÂÃÅ Ãâï óñÊçÃâ
+ìïÃËÃâ Ãâ¦ÃŠââ¬Åèçôï.
+èñçÊïÊïÃâ Ãâ¦Ãâïçñ Ãâ óèê ïçïÃ⡠ôïÃ⡠èÃâ¡ ÃÂÃÅ Ãâï óñÊçÃâ
+Ãâ Êò Ãâ¦ÃŠââ¬ÅêÃËçÃâ çò êçèù () currval èÃ⡠õÃËñê òÊñ
+çóêÃÂçïÃâ¡ ÃÆÃ±Ã¯.
execute("INSERT INTO person (name) VALUES ('Blaise Pascal')");
new_id = execute("SELECT currval('person_id_seq')");
+ÃË Ã³Ã±Ã§Ãâ ìçÃ⦠ôÃâ¦Ã§ Ãâ¦ÃŠââ¬ÅêÃËçÃâ Êï çò Ãâ¦Ãâïçñ OID ÃÆÃ⡠îñÃËìÃÅ
+ïóêÃËñ INSERT çóê èñçÊïÊïÃâ Ãâ¦Ãâïçñ þÊô ÃÂñö
+çóêÃÂçïÃâ¡ ÃÆÃâ Êï. Ãâ¡Ã± Ãâ Ãâ ï çÃÅ Ãâ ñÃËô ïñ Ãâ¡Ãâ¦Ã⡠þÃâêÃÂñÃâ¦Ãâ¡Ã§
+ÃâçèÃâ çóêÃÂçïÃâ¡ Ãâ Êóê ÃË Ã¶Ãâ¦Ãâ çÃÅ Ãâ ÃÆÃâ¡ ÃÂÃÅ Ãâï oidââ¬Å èùï
+çò ùïï 4 Ãâ¦ÃÅ ÃâÊçñï ïÃËèçñÃ⡠õÃÂñ Ãâ¦ÃŠââ¬ÅôÃËï. ïñ òèçÃâ
+perl èç çóêÃÂçïÃ⡠çò DBI ÃË DBD::Pg Ãâ¦Ãâïçñ oidââ¬Åñç
+Ãâ¦ÃŠââ¬ÅêÃËçÃâ Êï èÃâ¡ ÃÂ´ÃÆÃâ òÊñ çóêîñçì ÃÆÃâ Êï: èùï çò
+çìñçÃÅ ()st->execute$ Ãâ¦Ãâïçñ oidââ¬Å ïñ Ãâ¦ÃªÃºÃŠñ sth->pg_oid_status$
+ðîÊñÃ⡠îÃËçÃâ¡Ã¯ ôï.
+4.15.3) âÃÅç êÃËçèù ()nextval ÃË ()currval Ãâ¦Ãâ ìñ èÃ⡠çÃÅìçï
+ôñçÃÅ÷ race èñçÊóçÃÅñ éçñèñçÃâ Ãâ¦ÃŠôÃËÃâ ïß
+îÃÅñÊçóêÃÂçïÃ⡠çò çÃÅÃâ êÃËçèù ôñçÃÅ÷ race ñç èÃâ¡
+ÃËìÃËï Ãâ Ãâ¦ÃŠâÃËñï.
+4.15.4) Ãâ ñç çùïçï óñÃÅçÃâÃÅ Ãâ¦Ã±Ã¨ÃË÷ èÃ⡠êñçéÃâ ôÃâ¡Ã§ÃÅ abort
+ôïÃâ¡ Ãâ¦Ã¬Ã¯Ã¯Ã§Ã⹠çóêÃÂçïÃâ¡ Ãâ Ãâ¦ÃŠôÃËïß Ãâ ñç èÃÅÃâ çùïçï
+óñÃÅçÃâÃÅ ÃÅé ÃÂçõÃâÃ⡠îçÃâÊçÃÅìçï Ãâ¦ÃŠôÃËïß
+èñçÊèçÃâç èñïÃâ çÃâ¦Ã©Ã§Ãâ çìñçÃÅ Ãâ¡Ãâ¦Ã²Ãâ¦Ã§Ãâ êñçéÃâ ôÃâ¡Ã§ÃÅ
+çùïçï óñÃÅçÃâÊèÃâ¡ Ãâ¦ÃÂö çìñçÊêñçéÃâ ô èÃ⡠âÃâ Ãâ¡Ã§
+êîõÃÅõ Ãâ¦ÃÅ ÃÅçèï ïñ çÃÅÃâ ÃÂçÃâê çïñ èùöÊçò
+êñçéÃâ ôÃâ¡Ã§ abort ôÃËÃâ ï èÃÅÃâ çùïçï óñÃÅçÃâÊçóêÃÂçïÃâ¡
+ôïÃâ¡ ÃÅé ÃÂçõÃâÃ⡠îçÃâÊèÃâ¡ ÃËìÃËï Ãâ¦ÃŠâÃÅï.
+4.16) OID ÃË TID Ãâ Ãâ¡ Ãâ¡Ã³ÃªÃâ ïß
+OID ñçÃâ¡ ÃÂÃâ PostgreSQL èñçÊïçôêÃâ ÃÅé ôÃâ çóÃâ¡ Ãâ¦Ãâ ÃÂõñ èÃâ¡
+ÃÂñï èñçÃÅ Ãâ¡Ã± ñïÃÅàçóê. Ãâ¡Ã± ñïÃÅàìïÃÅïÊéÃ⡠çÃÅìçï
+Ãâ¦ÃŠôÃËï ÃÅé OID Ãâ¦Ãâ ÃÂõñ èÃâ¡ ÃÂñï èÃ⡠âÃâ çîêõçõ Ãâ¦ÃÅ
+ÃÅçèï. êÃâ¦Ã§Ã⦠OIDÃâ¡Ã§ÃÅÊéÃ⡠ïñ ÃÂÃÅÃâ initdb çÃÅìçï Ãâ¦ÃŠôÃËÃâ ï
+çò 16384 éÃâ¦ÃªÃ± Ãâ¡Ã³ÃªÃâ ï ÃË OIDÃâ¡Ã§ÃÅÊèùïçÃ⹠êÃËÃâÃÅï Ãâ¦ÃŠôÃËï
+çò çÃÅÃâ ùïï èòñïêñ îÃËçÃâ¡Ã¯ èÃËï. Ãâ éêÃâ¡ Ãâ¦Ãâ¡Ã⦠âÃâ çóê
+éÃâ¡ OIDÃâ¡Ã§ Ãâ Ã⡠êÃâ Ãâ¡Ã§ ïñ ÃÅé ìïÃËÃâ ôèÃÅÃâ¡ Ãâ ÃÅóêÃâ ï èÃâéÃâ¡
+ïñ éÃâ þçÃÅïçÃ⡠ïçïÃâ¡ Ãâ¡ÃÅÃâ ïÃË Ã±Ã¯ÃÅÃÂÊïçñçÃÅ OID ÃÅéóçÃâ
+Ãâ îÃËçÃâ¡Ã¯ èÃËï.
+PostgreSQL çò OID ïñ óÃÅóêÃ⦠ïçîÃâÊîÃËï èñçÊçÃÅìçï
+çñêèç÷ èÃÅÃâ ñïÃÅÃÂÃâ¡Ã§ÃŠìïçÃËÃâ Ãâ¦Ã®ÃªÃâàçóêÃÂçïÃâ¡ Ãâ¦ÃÅ
+éÃâ ï. êÃËõÃÅÃâ¡ Ãâ¦ÃŠôÃËï éÃâ¡ ÃÅé óêÃËÃâ çò Ãâ ÃËù OID èñçÃÅ
+ðîÃÅñÃ⡠çÃÅÃâ ÃÂÃÅÃâï ïñ ìïÃËÃâ çÃÅìçï éÃâ ÃÅï. óçîêÃâ ÃÅé
+Ãâ Ãâ¦Ã§ÃÅÃ⡠èñçÊçÃÅÃâ ÃÂÃÅÃâï èçùë ïóêñóÊóñÃÅùêñ èÃ⡠âÃâ
+îÃËçÃâ¡Ã¯ ôï.
+êÃâ¦Ã§Ã⦠þçÃÅïçÃâ¡Ãâ¡Ã§ÃŠïçïÃ⡠ïñ PostgreSQL èñçÊïñÃÂêÃâ OID
+ìïÃÅï çò ÃÅé Ãâ çÃÂÃÅÃâ¡ Ãâ¦Ã±Ã©Ã²ÃŠçóêÃÂçïÃâ¡ Ãâ¦ÃŠéÃâ ï. ÃËÃâÃÅ
+çïñ èîÃËçÃâ¡ÃÅÃ⦠OID ñç èÃ⡠ñÃËô ïÃÅïñÊèïÃÅñÃÅÃ⦠ÃË ÃÅç
+çÃÅÃâ éÃ⡠ïñ ÃÂÃÅÃâ éþÊéñïÃâ ÃÅé ìïÃËÃâ èîÃËçÃâ¡ÃÅÃ⦠OIDÃâ¡Ã§ÃÅ
+çõÃâÊâÃâ êúÃÅÃÅñ Ãâ éÃâ ï èÃ⡠ñÃËô òÃÅñ Ãâ¦ÃŠêÃËçÃâ ÃÅÃ⦠ùÃâ¦Ãâ
+éÃâ ÃÅÃâ¦:
- w+ s+r+a+n+g+a+m+ snm+a+ m+y+t+w+a+n+y+d+ a+z+ m+q+d+a+r+ OID k+h+
- x+r+w+g+y+ d+s+t+w+r+ INSERT a+s+t+ b+r+a+y+ d+y+d+n+ m+q+d+a+r+
- p+y+sn f+r+dd a+s+t+f+a+d+h+ k+n+y+d+. h+r+ tcn+d+ a+y+n+ r+w+sn d+r+
- h+m+h+ p+l+t+f+r+m+h+a+ q+a+b+l+ a+s+t+f+a+d+h+ n+y+s+t+ w+ ddm+n+
- a+y+n+k+h+ f+y+l+d+ oid b+e+d+ a+z+ e+d+d+ 4 m+y+l+y+a+r+d+
- d+w+b+a+r+h+ c+f+r+ m+y+snw+d+. d+r+ z+b+a+n+ perl b+a+ a+s+t+f+a+d+h+
- a+z+ DBI w+ DBD::Pg m+q+d+a+r+ oidr+a+ m+y+t+w+a+n+y+d+ b+h+ a+y+n+
- snk+l+ a+s+t+x+r+a+g+ k+n+y+d+: b+e+d+ a+z+ a+g+r+a+y+ ()st->execute$
- m+q+d+a+r+ oid d+r+ m+t+i+y+r+ sth->pg_oid_status$ dkx+y+r+h+
- x+w+a+h+d+ snd+.
-
- 4.15.3) aMیa+ t+w+a+b+e+ ()nextval w+ ()currval m+n+g+r+ b+h+
- a+یg+a+d+ snr+a+یtj race b+r+a+ی s+a+یr+
- کa+r+b+r+a+n+ m+ی snw+n+d+?+
-
- x+یr+,+ a+s+t+f+a+d+h+ a+z+ a+یn+ t+w+a+b+e+
- snr+a+یtj race r+a+ b+h+ w+g+w+d+ n+m+ی aMw+r+d+.
-
- 4.15.4) tcr+a+ a+e+d+a+d+ s+r+یa+l+ی m+r+b+w+tj b+h+
- t+r+a+کn+snh+a+ی abort snd+h+ m+g+d+d+a+:+ a+s+t+f+a+d+h+
- n+m+ی snw+d+?+ tcr+a+ b+یn+ a+e+d+a+d+ s+r+یa+l+ی
- یک f+a+c+l+h+ x+a+l+ی a+یg+a+d+ m+ی snw+d+?+
-
- b+r+a+ی b+a+l+a+ b+r+d+n+ a+m+کa+n+ a+g+r+a+ی
- h+m+z+m+a+n+ t+r+a+کn+snh+a+,+ a+e+d+a+d+ s+r+یa+l+ی
- b+h+ m+hkdd a+g+r+a+ی t+r+a+کn+sn b+h+ aMn+h+a+
- t+x+c+یc+ m+ی یa+b+d+ d+r+ a+یn+ hka+l+t+
- a+gfr+ b+e+ddی a+z+ t+r+a+کn+snh+a+ abort snw+n+d+
- b+یn+ a+e+d+a+d+ s+r+یa+l+ی a+s+t+f+a+d+h+ snd+h+
- یک f+a+c+l+h+ x+a+l+ی b+h+ w+g+w+d+ m+ی
- aMیd+.
-
- 4.16) OID w+ TID tch+ h+s+t+n+d+?+
-
- OID r+a+h+ hkl+ PostgreSQL b+r+a+ی d+a+snt+n+ یک
- snn+a+s+h+ m+n+hkc+r+ b+h+ f+r+d+ b+r+a+ی h+r+ r+d+یf+
- a+s+t+. h+r+ r+d+یf+ g+d+یd+ی کh+
- a+یg+a+d+ m+ی snw+d+ یک OID m+n+hkc+r+ b+h+
- f+r+d+ b+h+ aMn+ a+x+t+c+a+c+ m+ی یa+b+d+. t+m+a+m+
- OIDh+a+یی کh+ d+r+ hkیn+ initdb
- a+یg+a+d+ m+ی snw+n+d+ a+z+ 16384 کm+t+r+ h+s+t+n+d+
- w+ OIDh+a+یی b+e+d+a+:+ t+w+l+یd+ m+ی snw+d+
- a+z+ a+یn+ e+d+d+ b+z+r+gft+r+ x+w+a+h+d+ b+w+d+. n+کt+h+
- m+h+m+ aMn+ a+s+t+ کh+ OIDh+a+ n+h+ t+n+h+a+ d+r+ یک
- g+d+w+l+ snb+یh+ n+یs+t+n+d+ b+l+کh+ d+r+ کl+
- p+a+یgfa+h+ d+a+d+h+ h+یtc d+w+ r+d+یf+ی
- d+a+r+a+ی OID یکs+a+n+ n+x+w+a+h+d+ b+w+d+.
-
- PostgreSQL a+z+ OID d+r+ s+یs+t+m+ d+a+x+l+ی x+w+d+
- b+r+a+ی a+یg+a+d+ a+r+t+b+a+tj b+یn+
- r+d+یf+h+a+ی g+d+a+w+l+ m+x+t+l+f+ a+s+t+f+a+d+h+
- m+ی کn+d+. t+w+c+یh+ m+ی snw+d+ کh+
- یک s+t+w+n+ a+z+ n+w+e+ OID b+r+a+ی dkx+یr+h+
- a+یn+ f+یl+d+ d+r+ g+d+w+l+ a+یg+a+d+
- کn+یd+. s+a+x+t+n+ یک n+m+a+یh+
- b+r+a+ی a+یn+ f+یl+d+ b+a+e+tk d+s+t+r+s+ی
- s+r+یe+t+r+ b+h+ aMn+ x+w+a+h+d+ snd+.
-
- t+m+a+m+ p+a+یgfa+h+h+a+ی d+a+d+h+ d+r+ PostgreSQL
- b+r+a+ی gfr+f+t+n+ OID g+d+یd+ a+z+ یک
- n+a+hkیh+ m+r+کz+ی a+s+t+f+a+d+h+ m+ی
- کn+d+. w+l+ی a+gfr+ b+x+w+a+h+یm+ OID r+a+ b+h+
- r+w+sn d+یgfr+ی b+gfیr+یm+ w+ یa+
- a+یn+کh+ d+r+ hkیn+ کp+ی کr+d+n+
- یک g+d+w+l+ b+x+w+a+h+یm+ OIDh+a+ی
- a+c+l+ی aMn+ t+i+ییr+ n+کn+d+ b+h+ r+w+sn
- z+یr+ m+ی t+w+a+n+یm+ e+m+l+ کn+یm+:
-
-
CREATE TABLE new_table(mycol int);
SELECT oid AS old_oid, mycol INTO tmp_table FROM old_table;
COPY tmp_table TO '/tmp/pgtable';
COPY new_table WITH OIDS FROM '/tmp/pgtable';
DROP TABLE tmp_table;
-
- OID یک e+d+d+ c+hkیhk 4 b+a+یt+ی a+s+t+
- w+ b+n+a+b+r+a+یn+ hkd+a+کtkr+ m+q+d+a+r+ aMn+ 4
- m+یl+یa+r+d+ x+w+a+h+d+ b+w+d+ w+ b+e+d+ a+z+ aMn+
- m+q+d+a+r+ aMn+ s+r+r+یz+ x+w+a+h+d+ snd+. a+l+b+t+h+ t+a+
- کn+w+n+ b+r+a+ی کs+ی a+یn+ a+t+f+a+q+
- n+یf+t+a+d+h+ a+s+t+ w+ t+c+m+یm+ gfr+d+a+n+d+gfa+n+
- PostgreSQL aMn+ a+s+t+ کh+ q+b+l+ a+z+ aMn+کh+ a+یn+
- a+t+f+a+q+ r+x+ d+h+d+ a+یn+ m+snکl+ r+a+ b+r+tjr+f+
- کn+n+d+.
-
- TIDh+a+ b+r+a+ی snn+a+s+a+یی m+hkl+
- f+یz+یکی یک r+d+یf+ b+r+
- a+s+a+s+ b+l+w+ک w+ aMf+s+t+ m+ی b+a+snd+. TIDh+a+ b+e+d+
- a+z+ t+i+ییr+ p+یd+a+ کr+d+n+ یک
- r+d+یf+ w+ یa+ b+a+z+x+w+a+n+ی aMn+ e+w+dd
- m+ی snw+n+d+. TIDh+a+ t+w+s+tj n+m+a+یh+ h+a+
- a+s+t+f+a+d+h+ m+ی snw+n+d+.
-
- 4.17) m+e+n+y+ b+e+ddy+ a+z+ t+r+m+h+a+ w+ k+l+m+a+t+y+ k+h+ d+r+
- PostgreSQL a+s+t+f+a+d+h+ m+y+snw+d+ tcy+s+t+?+
-
- l+یs+t+ b+r+x+ی a+z+ t+r+m+h+a+ w+ کl+m+a+t+ی
- کh+ a+s+t+f+a+d+h+ m+ی snw+n+d+:
- * table, relation, class :کl+a+s+,+ r+a+b+tjh+,+ g+d+w+l+
- * row, record, tuple tcn+d+t+a+یی,+ r+کw+r+d+,+
- r+d+یf+
- * column, field, attribute c+f+t+,+ f+یl+d+,+ s+t+w+n+
- * retrieve, select a+n+t+x+a+b+,+ x+w+a+n+d+n+
- * replace, updateb+h+ r+w+z+ کr+d+n+,+
- g+a+یgfz+یn+ی
- * append, insert d+r+g+,+ a+dda+f+h+ کr+d+n+
- * OID, serial value m+q+d+a+r+ s+r+یa+l+
- * portal, cursor
- * range variable, table name, table alias
-
- یک l+یs+t+ e+m+w+m+ی a+z+ t+r+m+h+a+ی
- m+w+r+d+ a+s+t+f+a+d+h+ d+r+ p+a+یgfa+h+ d+a+d+h+ d+r+ aMd+r+s+
- http://hea-www.harvard.edu/MST/simul/software/docs/pkgs/pgsql/glossary
- /glossary.htm w+g+w+d+ d+a+r+d+.
-
- 4.18) tcr+a+ m+n+ x+tja+y+ "ERROR: Memory exhausted in AllocSetAlloc" m+y+
- gfy+r+m+?+
-
- a+یn+ x+tja+ a+hkt+m+a+l+a+:+ یa+ b+h+ x+a+tjr+ t+m+a+m+
- snd+n+ hka+f+zHh+ m+g+a+z+ی s+یs+t+m+ snm+a+s+t+ w+
- یa+ a+یn+کh+ کr+n+l+ b+r+a+ی
- b+r+n+a+m+h+ h+a+ d+r+ m+w+r+d+ m+یz+a+n+ a+s+t+f+a+d+h+ a+z+
- hka+f+zHh+ m+g+a+z+ی m+hkd+w+d+یt+ a+e+m+a+l+
- کr+d+h+ a+s+t+. q+b+l+ a+z+ a+g+r+a+ی b+r+n+a+m+h+
- a+c+l+ی یکی a+z+ d+s+t+w+r+a+t+ z+یr+
- r+a+ a+g+r+a+ کn+یd+.
-
+OID ÃÅé ùïï õÃÂÃÅà4 èçÃÅêÊçóê ÃË Ã¨Ãâ çèñçÃÅÃâ ÃÂïçéëñ
+Ãâ¦Ãâïçñ âÃâ 4 Ãâ¦ÃÅÃâÃÅçñï îÃËçÃâ¡Ã¯ èÃËï ÃË Ã¨Ã¹Ã¯ çò âÃâ
+Ãâ¦Ãâïçñ âÃâ óññÃÅò îÃËçÃâ¡Ã¯ ôï. çÃâèêÃ⡠êç éÃâ ÃËÃâ èñçÃÅ
+éóÊçÃÅÃâ çêÃÂçÃâ Ãâ ÃÅÃÂêçïÃ⡠çóê ÃË ÃªÃµÃâ¦ÃÅÃ⦠ïñïçÃâ ïïçÃâ
+PostgreSQL âÃâ çóê éÃâ¡ ÃâèÃâ çò âÃâ éÃ⡠çÃÅÃâ çêÃÂçÃâ ñî ïÃâ¡Ã¯
+çÃÅÃâ Ãâ¦Ã´Ã©Ãâ ñç èñ÷ñàéÃâ Ãâ ï.
+TIDÃâ¡Ã§ èñçÊôÃâ çóçÃÅÃÅ Ãâ¦ÃÂÃâ ÃÂÃÅòÃÅéÃÅ ÃÅé ñïÃÅàèñ çóçó
+èÃâÃËé ÃË Ã¢ÃÂóê Ãâ¦ÃŠèçôï. TIDÃâ¡Ã§ èùï çò êúÃÅÃÅñ þÃÅïç
+éñïÃâ ÃÅé ñïÃÅàÃË ÃÅç èçòîÃËçÃâ ÊâÃâ ùÃËö Ãâ¦ÃŠôÃËÃâ ï.
+TIDÃâ¡Ã§ êÃËó÷ Ãâ Ãâ¦Ã§ÃÅÃâ¡ Ãâ¡Ã§ çóêÃÂçïÃâ¡ Ãâ¦ÃŠôÃËÃâ ï.
+4.17) Ãâ¦Ã¹Ãâ ÊèùöÊçò êñÃâ¦Ãâ¡Ã§ ÃË ÃÆÃâÃâ¦Ã§ÃªÃÅ ÃÆÃ⡠ïñ PostgreSQLââ¬Å
+çóêÃÂçïÃâ¡ Ãâ¦ÃŠââ¬ÅôÃËï Ãâ Êóêß
+ÃâÃÅóê èñîÊçò êñÃâ¦Ãâ¡Ã§ ÃË Ã©ÃâÃâ¦Ã§ÃªÃŠéÃ⡠çóêÃÂçïÃâ¡ Ãâ¦ÃÅ
+ôÃËÃâ ï:
+ table, relation, class :éÃâçóÊñçè÷Ãâ¡ÃŠìïÃËÃâ
+ row, record, tuple Ãâ Ãâ ïêçÃÅÃÅÊñéÃËñïÊñïÃÅÃÂ
+ column, field, attribute õÃÂêÃÅ ÃÂÃÅÃâïÊóêÃËÃâ
+ retrieve, select çÃâ êîçèÊîÃËçÃâ ïÃâ
+ replace, updateèÃ⡠ñÃËò éñïÃâ ÊìçÃÅïòÃÅÃâ ÃÅ
+ append, insert ïñìÊçöçÃÂÃ⡠éñïÃâ
+ OID, serial value Ãâ¦Ãâïçñ óñÃÅçÃâ
+ portal, cursor
+ range variable, table name, table alias
+ÃÅé ÃâÃÅóê ùÃâ¦ÃËÃâ¦ÃŠçò êñÃâ¦Ãâ¡Ã§ÃÅ Ãâ¦ÃËñï çóêÃÂçïÃ⡠ïñ
+þçÃÅïçÃ⡠ïçïÃ⡠ïñ âïñó
+http://hea-www.harvard.edu/MST/simul/software/docs/pkgs/pgsql/glossary/glossary.htm
+ÃËìÃËï ïçñï.
+4.18) Ãâ ñç Ãâ¦Ãâ î÷çÃÅ "ERROR: Memory exhausted in AllocSetAlloc"
+Ãâ¦ÃŠââ¬ÅïÊñÃâ¦ÃŸ
+çÃÅÃâ î÷ç çÃÂêÃâ¦Ã§ÃâçÃâ¹ ÃÅç èÃ⡠îç÷ñ êÃâ¦Ã§Ã⦠ôïÃâ ÃÂçÃÂøÃâ¡
+Ãâ¦Ã¬Ã§Ã²ÃŠóÃÅóêÃ⦠ôÃâ¦Ã§Ã³Ãª ÃË ÃÅç çÃÅÃâ éÃ⡠éñÃâ Ãâ èñçÃÅ
+èñÃâ çÃâ¦Ãâ¡ Ãâ¡Ã§ ïñ Ãâ¦ÃËñï Ãâ¦ÃÅòçÃâ çóêÃÂçïÃ⡠çò ÃÂçÃÂøÃâ¡
+Ãâ¦Ã¬Ã§Ã²ÃÅ Ãâ¦ÃÂïÃËïÃÅê çùÃâ¦Ã§Ãâ éñïÃ⡠çóê. ÃâèÃâ çò çìñçÃÅ
+èñÃâ çÃâ¦Ã⡠çõÃâÃÅ ÃÅéÊçò ïóêÃËñçê òÃÅñ ñç çìñç éÃâ ÃÅï.
ulimit -d 262144
limit datasize 256m
-
- b+s+t+h+ b+h+ n+w+e+ snl+ یکی a+z+ a+یn+
- d+s+t+w+r+a+t+ m+m+کn+ a+s+t+ b+a+ m+w+f+q+یt+ a+g+r+a+
- snw+d+. b+a+ a+g+r+a+ی aMn+ d+s+t+w+r+ m+hkd+w+d+یt+
- hka+f+zHh+ m+g+a+z+ی b+r+a+ی b+r+n+a+m+h+ h+a+
- b+r+d+a+snt+h+ snd+h+ w+ b+a+ a+یn+ کa+r+ a+hkt+m+a+l+a+:+
- d+r+x+w+a+s+t+ی کh+ q+b+l+a+:+ x+tja+ m+ی d+a+d+h+
- a+s+t+ a+g+r+a+ x+w+a+h+d+ snd+.
-
- 4.19) a+z+ k+g+a+ t+snx+y+c+ d+h+m+ k+h+ w+y+r+a+y+sn y+a+ n+s+x+h+
- PostgreSQLy+y+ k+h+ m+n+ a+s+t+f+a+d+h+ m+y+k+n+m+ tcy+s+t+?+
-
- b+a+ a+g+r+a+ی d+s+t+w+r+ ()SELECT version
-
- 4.20) tcr+a+ hkیn+ a+g+r+a+ی e+m+l+یa+t+ r+w+ی
- large-objecth+a+ x+tja+ی "invalid large obj descriptor"b+h+ w+g+w+d+
- m+ی aMیd+?+
-
- snm+a+ b+a+یd+ q+b+l+ a+z+ snr+w+e+ d+s+t+w+r+a+t+ی
- کh+ b+a+ large-objecth+a+ کa+r+ m+ی کn+n+d+
- BEGIN w+ b+e+d+ a+z+ aMn+h+a+ h+m+ یک END
- b+gfdka+r+یd+. d+r+ hka+l+ hka+ddr+ PostgreSQL h+n+d+l+
- large-objecth+a+ r+a+ d+r+ z+m+a+n+ n+h+a+یی snd+n+
- t+r+a+کn+sn (commitsnd+n+) m+ی b+n+d+d+. b+h+
- h+m+یn+ d+l+یl+ a+w+l+یn+ t+l+a+sn b+r+a+ی
- a+n+g+a+m+ h+r+ کa+r+ی b+a+ h+n+d+l+ m+n+g+r+ b+h+
- x+tja+ی invalid large obj descriptor x+w+a+h+d+ snd+.
- b+r+a+ی g+l+w+gfیr+ی a+z+ a+یn+ x+tja+
- hkt+m+a+:+ b+a+یd+ a+z+ یک t+r+a+کn+sn
- a+s+t+f+a+d+h+ کn+یd+. a+یn+ کa+r+
- h+m+a+n+tjw+r+ کh+ q+b+l+a+:+ gff+t+h+ snd+ b+a+ a+s+t+f+a+d+h+
- a+z+ q+r+a+r+ d+a+d+n+ BEGIN w+ END d+r+ a+b+t+d+a+ w+
- a+n+t+h+a+ی d+s+t+w+r+a+t+ a+n+g+a+m+ m+ی snw+d+.
-
- a+gfr+ a+یn+ x+tja+ r+a+ d+r+ hkیn+ a+s+t+f+a+d+h+ a+z+
- یک d+r+a+یw+r+ ODBC d+r+یa+f+t+
- کr+d+یd+ a+hkt+m+a+l+a+:+ b+a+یd+ a+یn+
- d+s+t+w+r+ r+a+ a+g+r+a+ کn+یd+: set auto-commit off
-
- 4.21) tcgfw+n+h+ y+k+ s+t+w+n+ a+y+g+a+d+ k+n+m+ k+h+ m+q+d+a+r+ z+m+a+n+
- g+a+r+y+ r+a+ b+h+ e+n+w+a+n+ m+q+d+a+r+ p+y+snf+r+dd d+a+snt+h+ b+a+snd+?+
-
- a+z+ CURRENT_TIMESTAMP a+s+t+f+a+d+h+ کn+یd+ d+r+
- m+tka+l+ z+یr+ n+hkw+h+ a+n+g+a+m+ a+یn+ کa+r+
- n+sna+n+ d+a+d+h+ snd+h+ a+s+t+:
-
+èóêÃ⡠èÃâ¡ Ãâ ÃËù ôÃâ ÃÅéÊçò çÃÅÃâ ïóêÃËñçê Ãâ¦Ãâ¦Ã©Ãâ çóê èç
+Ãâ¦ÃËÃÂÃâÃÅê çìñç ôÃËï. èç çìñçÊâÃâ ïóêÃËñ Ãâ¦ÃÂïÃËïÃÅê
+ÃÂçÃÂøÃâ¡ Ãâ¦Ã¬Ã§Ã²ÃŠèñçÊèñÃâ çÃâ¦Ãâ¡ Ãâ¡Ã§ èñïçôêÃ⡠ôïÃâ¡ ÃË Ã¨Ã§
+çÃÅÃâ éçñ çÃÂêÃâ¦Ã§ÃâçÃ⹠ïñîÃËçóêÊéÃâ¡ ÃâèÃâçÃ⹠î÷ç Ãâ¦ÃÅ
+ïçïÃ⡠çóê çìñç îÃËçÃâ¡Ã¯ ôï.
+4.19) çò ÃÆÃ¬Ã§ êôîÊõ ïÃâ¡Ãâ¦ ÃÆÃâ¡ ÃËÊñçÊô Êç Ãâ óîÃâ¡
+PostgreSQLÃÅ ÃÅ ÃÆÃâ¡ Ãâ¦Ãâ çóêÃÂçïÃâ¡ Ãâ¦ÃŠââ¬ÅÃÆÃâ Ã⦠Ãâ Êóêß
+èç çìñçÊïóêÃËñ ()SELECT version
+4.20) Ãâ ñç ïñ ÃÂÃÅÃâ çìñçÊùÃâ¦ÃâÃÅçê ñÃËÃÅ large-objectÃâ¡Ã§
+î÷çÃÅ "invalid large obj descriptor"èÃâ¡ ÃËìÃËï Ãâ¦ÃŠâÃÅïß
+ôÃâ¦Ã§ èçÃÅï ÃâèÃâ çò ôñÃËù ïóêÃËñçêÊéÃ⡠èç large-objectÃâ¡Ã§
+éçñ Ãâ¦ÃŠéÃâ Ãâ ï çò BEGIN ÃË Ã¨Ã¹Ã¯ çò âÃâ Ãâ¡Ã§ Ãâ¡Ã⦠ÃÅé END
+èïðçñÃÅï. ïñ ÃÂçÃâ ÃÂçöñ PostgreSQL Ãâ¡Ãâ ïÃâ large-objectÃâ¡Ã§ ñç
+ïñ òÃâ¦Ã§Ãâ Ãâ Ãâ¡Ã§ÃÅÊôïÃâ êñçéÃâ ô (commitôïÃâ ) Ãâ¦ÃŠèÃâ ïï. èÃâ¡
+Ãâ¡Ãâ¦ÃÅÃâ ïÃâÃÅÃâ çÃËÃâÃÅÃâ êÃâçô èñçÊçÃâ ìçÃ⦠Ãâ¡Ã± éçñÊèç
+Ãâ¡Ãâ ïÃâ Ãâ¦Ãâ ìñ èÃ⡠î÷çÃÅ invalid large obj descriptor îÃËçÃâ¡Ã¯ ôï.
+èñçÊìÃâÃËïÃÅñÊçò çÃÅÃâ î÷ç ÃÂêÃâ¦Ã§Ã⹠èçÃÅï çò ÃÅé
+êñçéÃâ ô çóêÃÂçïÃ⡠éÃâ ÃÅï. çÃÅÃâ éçñ Ãâ¡Ãâ¦Ã§Ãâ ÷ÃËñ éÃâ¡
+ÃâèÃâçÃ⹠ïÃÂêÃ⡠ôï èç çóêÃÂçïÃ⡠çò Ãâñçñ ïçïÃâ BEGIN ÃË END
+ïñ çèêïç ÃË Ã§Ãâ êÃâ¡Ã§ÃŠïóêÃËñçê çÃâ ìçÃ⦠Ãâ¦ÃŠôÃËï.
+çïñ çÃÅÃâ î÷ç ñç ïñ ÃÂÃÅÃâ çóêÃÂçïÃ⡠çò ÃÅé ïñçÃÅÃËñ ODBC
+ïñÃÅçÃÂê éñïÃÅï çÃÂêÃâ¦Ã§ÃâçÃ⹠èçÃÅï çÃÅÃâ ïóêÃËñ ñç
+çìñç éÃâ ÃÅï: set auto-commit off
+4.21) Ãâ ïÃËÃâ Ãâ¡ ÃÅ ÃÆ óêÃËÃâ çÊìçï ÃÆÃâ Ãâ¦ ÃÆÃâ¡ Ãâ¦Ãâïçñ òÃâ¦Ã§Ãâ
+ìçñÊñç èÃ⡠ùÃâ ÃËçÃâ Ãâ¦Ãâïçñ þÊôââ¬ÅÃÂñö ïçôêÃ⡠èçôïß
+çò CURRENT_TIMESTAMP çóêÃÂçïÃ⡠éÃâ ÃÅï ïñ Ãâ¦Ã«Ã§Ãâ òÃÅñ Ãâ ÃÂÃËÃâ¡
+çÃâ ìçÃ⦠çÃÅÃâ éçñ Ãâ ôçÃâ ïçïÃ⡠ôïÃ⡠çóê:
CREATE TABLE test (x int, modtime timestamp DEFAULT CURRENT_TIMESTAMP );
- 4.22) tcr+a+ "z+y+r+ d+r+x+w+a+s+t+h+a+y+y+" k+h+ a+z+ IN a+s+t+f+a+d+h+
- m+y+k+n+n+d+ k+n+d+ h+s+t+n+d+?+
-
- d+r+ n+s+x+h+ h+a+ی q+b+l+ a+z+ 7.4 e+m+l+ a+l+hka+q+
- z+یr+ d+r+x+w+a+s+t+ w+ d+r+x+w+a+s+t+ a+c+l+ی b+h+
- a+یn+ c+w+r+t+ a+n+g+a+m+ m+ی snw+d+ کh+
- n+t+a+یg+ b+h+ d+s+t+ aMm+d+h+ a+z+ z+یr+ d+r+x+w+a+s+t+
- b+h+ c+w+r+t+ t+r+t+یb+ی b+r+a+ی h+r+ r+d+یf+
- a+e+m+a+l+ m+ی snw+d+. a+gfr+ z+یr+d+r+x+w+a+s+t+
- r+d+یf+ h+a+ی کm+ی r+a+ b+h+ e+n+w+a+n+
- x+r+w+g+ی b+r+gfr+d+a+n+d+ w+ d+r+x+w+a+s+t+
- b+یr+w+n+ی r+d+یf+ h+a+ی z+یa+d+ی
- r+a+ sna+m+l+ snw+d+ a+s+t+f+a+d+h+ a+z+ IN b+h+t+r+یn+ r+w+sn
- a+s+t+ d+r+ i+یr+ a+یn+c+w+r+t+ b+h+t+r+ a+s+t+ a+z+
- EXISTS a+s+t+f+a+d+h+ snw+d+
-
+4.22) Ãâ ñç "òÊñ ïñîÃËçóêÃâ¡Ã§ÃÅ ÃÅ " ÃÆÃ⡠çò IN çóêÃÂçïÃâ¡
+Ãâ¦ÃŠââ¬ÅÃÆÃâ Ãâ ï ÃÆÃâ ï Ãâ¡Ã³ÃªÃâ ïß
+ïñ Ãâ óîÃâ¡ Ãâ¡Ã§ÃÅ ÃâèÃâ çò 7.4 ùÃâ¦Ãâ çÃâÃÂçÃâ òÃÅñ ïñîÃËçóê ÃË
+ïñîÃËçóê çõÃâÊèÃ⡠çÃÅÃâ õÃËñê çÃâ ìçÃ⦠Ãâ¦ÃŠôÃËï éÃâ¡
+Ãâ êçÃÅì èÃ⡠ïóê âÃâ¦Ã¯Ã⡠çò òÃÅñ ïñîÃËçóê èÃ⡠õÃËñê
+êñêÃÅèÊèñçÃÅ Ãâ¡Ã± ñïÃÅàçùÃâ¦Ã§Ãâ Ãâ¦ÃŠôÃËï. çïñ
+òÃÅñïñîÃËçóê ñïÃÅàÃâ¡Ã§ÃŠéÃâ¦ÃŠñç èÃ⡠ùÃâ ÃËçÃâ îñÃËìÃÅ
+èñïñïçÃâ ï ÃË Ã¯Ã±Ã®ÃËçóê èÃÅñÃËÃâ ÊñïÃÅàÃâ¡Ã§ÃŠòÃÅçïÊñç
+ôçÃâ¦Ãâ ôÃËï çóêÃÂçïÃ⡠çò IN èÃâ¡ÃªÃ±ÃÅÃâ ñÃËô çóê ïñ úÃÅñ
+çÃÅÃâ õÃËñê èÃâ¡ÃªÃ± çóê çò EXISTS çóêÃÂçïÃ⡠ôÃËï
SELECT *
FROM tab
WHERE col IN (SELECT subcol FROM subtab);
-
- b+h+:
-
+èÃâ¡:
SELECT *
FROM tab
WHERE EXISTS (SELECT subcol FROM subtab WHERE subcol = col);
-
- b+r+a+ی a+g+r+a+ی s+r+یe+ a+یn+ d+r+x+w+a+s+t+
- b+a+یd+ b+r+a+ی s+t+w+n+ subcol n+m+a+یh+
- a+یg+a+d+ snd+h+ b+a+snd+.
-
- d+r+ n+s+x+h+ h+a+ی b+e+d+ a+z+ 7.4 IN b+r+a+ی a+l+hka+q+
- a+z+ h+m+a+n+ t+کn+یک p+یtcیd+h+
- m+w+r+d+ a+s+t+f+a+d+h+ d+r+ d+s+t+w+r+a+t+ m+e+m+w+l+ی
- a+s+t+f+a+d+h+ m+ی کn+d+ w+ b+n+a+b+r+a+یn+
- a+s+t+f+a+d+h+ a+z+ aMn+ n+s+b+t+ b+h+ EXISTS a+r+g+hkیt+
- d+a+r+d+.
-
- 4.23) tcgfw+n+h+ m+y+t+w+a+n+m+ y+k+ a+l+hka+q+ x+a+r+g+y+ (outer join)
- a+n+g+a+m+ d+h+m+?+
-
- b+r+a+ی a+n+g+a+m+ a+l+hka+q+ x+a+r+g+ی b+h+ r+w+sn
- z+یr+ e+m+l+ کn+یd+:
-
+èñçÊçìñçÊóñÃÅù çÃÅÃâ ïñîÃËçóê èçÃÅï èñçÊóêÃËÃâ
+subcol Ãâ Ãâ¦Ã§ÃÅÃ⡠çÃÅìçï ôïÃ⡠èçôï.
+ïñ Ãâ óîÃâ¡ Ãâ¡Ã§ÃŠèùï çò 7.4 IN èñçÊçÃâÃÂçÃâ çò Ãâ¡Ãâ¦Ã§Ãâ
+êéÃâ ÃÅé þÃÅÃâ ÃÅïÃâ¡ Ãâ¦ÃËñï çóêÃÂçïÃ⡠ïñ ïóêÃËñçê Ãâ¦Ã¹Ãâ¦ÃËÃâÃÅ
+çóêÃÂçïÃâ¡ Ãâ¦ÃŠéÃâ ï ÃË Ã¨Ãâ çèñçÃÅÃâ çóêÃÂçïÃ⡠çò âÃâ Ãâ óèê
+èÃâ¡ EXISTS çñìÃÂÃÅê ïçñï.
+4.23) Ãâ ïÃËÃâ Ãâ¡ Ãâ¦ÃŠââ¬ÅêÃËçÃâ Ã⦠ÃÅ ÃÆ çÃâÃÂçÃâ îçñìÃÅ (outer join)
+çÃâ ìçÃ⦠ïÃâ¡Ãâ¦ÃŸ
+èñçÊçÃâ ìçÃ⦠çÃâÃÂçÃâ îçñìÊèÃ⡠ñÃËô òÃÅñ ùÃâ¦Ãâ éÃâ ÃÅï:
SELECT *
FROM t1 LEFT OUTER JOIN t2 ON (t1.col = t2.col);
-
- یa+
-
+̤́
SELECT *
FROM t1 LEFT OUTER JOIN t2 USING (col);
+ïñîÃËçóêÃâ¡Ã§ÃŠèçÃâç t1.col , t2.col ñç èÃâ¡ Ãâ¡Ã⦠çÃâÃÂçÃâ Ãâ¦ÃÅ
+éÃâ ï ÃË Ãâ¡Ãâ¦Ãâ Ãâ ÃÅÃâ ñïÃÅÃÂÃâ¡Ã§ÃÅ t1 éÃâ¡ Ãâ øÃÅñ âÃâ Ãâ¡Ã§ ïñ t2
+Ãâ èÃËïÃ⡠çóê ñç Ãâ ÃÅò èñÃâ¦ÃŠïñïçÃâ ï. çïñ çò RIGHT
+çóêÃÂçïÃ⡠ôÃËï Ãâ êÃÅìÃ⡠èñ ùéó çóê. ÃÅùÃâ ÊñïÃÅÃÂÃâ¡Ã§ÃÅ t2
+éÃâ¡ Ãâ øÃÅñ âÃâ Ãâ¡Ã§ ïñ t1 Ãâ èçôï ñç Ãâ ôçÃâ Ãâ¦ÃŠïÃâ¡Ã¯ ÃË Ã§Ã¯Ã±
+çò FULL çóêÃÂçïÃ⡠ôÃËï Ãâ êÃÅìÃâ¡ Ãâ¡Ã⦠ôçÃâ¦Ãâ ñïÃÅÃÂÃâ¡Ã§ÃÅ t1
+çóê ÃË Ãâ¡Ã⦠ôçÃâ¦Ãâ ñïÃÅÃÂÃâ¡Ã§ÃÅ t2. çóêÃÂçïÃ⡠çò éÃâÃâ¦Ãâ¡ OUTER
+çîêÃÅçñÊçóê Ãâ ñç éÃ⡠çÃÅÃâ éÃâÃâ¦Ã⡠èÃ⡠÷ÃËñ öÃâ¦Ãâ ÃÅ
+ïóêÃËñÃâ¡Ã§ÃÅ LEFT, RIGHT, FULL ÃËìÃËï ïçñï.
+ïñ Ãâ óîÃâ¡ Ãâ¡Ã§ÃÅ ÃâèÃâÊþçÃÅïçÃ⡠ïçïÃâ¡ Ãâ¦ÃŠêÃËçÃâ ÃÅÃ⦠çÃâÃÂçÃâ
+îçñìÊñç èÃ⡠éÃâ¦Ã© ïóêÃËñÃâ¡Ã§ÃÅ UNION, NOT IN ôèÃÅÃ⡠óçòÃÅ
+éÃâ ÃÅÃâ¦. çÃÅÃâ éçñ ïñ Ãâ¦Ã«Ã§Ãâ òÃÅñ Ãâ ôçÃâ ïçïÃ⡠ôïÃ⡠çóê:
- d+r+x+w+a+s+t+h+a+ی b+a+l+a+ t1.col , t2.col r+a+ b+h+ h+m+
- a+l+hka+q+ m+ی کn+d+ w+ h+m+tcn+یn+
- r+d+یf+h+a+ی t1 کh+ n+zHیr+ aMn+h+a+ d+r+ t2
- n+b+w+d+h+ a+s+t+ r+a+ n+یz+ b+r+m+ی gfr+d+a+n+d+. a+gfr+
- a+z+ RIGHT a+s+t+f+a+d+h+ snw+d+ n+t+یg+h+ b+r+ e+کs+
- a+s+t+. یe+n+ی r+d+یf+h+a+ی t2 کh+
- n+zHیr+ aMn+h+a+ d+r+ t1 n+b+a+snd+ r+a+ n+sna+n+ m+ی
- d+h+d+ w+ a+gfr+ a+z+ FULL a+s+t+f+a+d+h+ snw+d+ n+t+یg+h+ h+m+
- sna+m+l+ r+d+یf+h+a+ی t1 a+s+t+ w+ h+m+ sna+m+l+
- r+d+یf+h+a+ی t2. a+s+t+f+a+d+h+ a+z+ کl+m+h+ OUTER
- a+x+t+یa+r+ی a+s+t+ tcr+a+ کh+ a+یn+
- کl+m+h+ b+h+ tjw+r+ ddm+n+ی d+r+ d+s+t+w+r+h+a+ی
- LEFT, RIGHT, FULL w+g+w+d+ d+a+r+d+.
-
- d+r+ n+s+x+h+ h+a+ی q+b+l+ی p+a+یgfa+h+ d+a+d+h+
- m+ی t+w+a+n+یm+ a+l+hka+q+ x+a+r+g+ی r+a+ b+h+
- کm+ک d+s+t+w+r+h+a+ی UNION, NOT IN snb+یh+
- s+a+z+ی کn+یm+. a+یn+ کa+r+ d+r+
- m+tka+l+ z+یr+ n+sna+n+ d+a+d+h+ snd+h+ a+s+t+:
-
SELECT tab1.col1, tab2.col2
FROM tab1, tab2
WHERE tab1.col1 = tab2.col1
@@ -1569,125 +1174,83 @@ CREATE TABLE test (x int, modtime timestamp DEFAULT CURRENT_TIMESTAMP );
FROM tab1
WHERE tab1.col1 NOT IN (SELECT tab2.col1 FROM tab2)
ORDER BY col1
+4.24) Ãâ ïÃËÃâ Ãâ¡ Ãâ¦ÃŠââ¬ÅêÃËçÃâ ïñîÃËçóêÃâ¡Ã§ÃŠÊçò Ãâ Ãâ ï þçÊïçÃâ¡
+ïçïÃ⡠êÃËÃâÊï ÃÆÃ±Ã¯ÃŸ
+ïñ ÃÂçÃâ ÃÂçöñ çÃÅÃâ éçñ çÃâ¦Ã©Ã§Ãâ þðÃÅñ Ãâ ÃÅóê. PostgreSQL
+ÃÂÃâ÷ çÃâ¦Ã©Ã§Ãâ ïñîÃËçóê çò þçÃÅïçÃ⡠ïçïÃ⡠çÊñç Ãâ¦ÃÅ
+ïÃâ¡Ã¯ éÃ⡠ïñ ÃÂçÃâ ÃÂçöñ èÃ⡠âÃâ Ãâ¦ÃªÃµÃâ èçôÃÅï ÃË Ãâ Ãâ¦ÃÅ
+êÃËçÃâ èÃ⡠÷ÃËñ Ãâ¡Ãâ¦Ã²Ãâ¦Ã§Ãâ çò ïÃË Ã¾Ã§ÃÅïçÃ⡠ïçïÃ⡠çóêÃÂçïÃâ¡
+éñï. çÃâèêÃâ¡ ÃÅé èñÃâ çÃâ¦Ã⡠éçñèñïÊîÃËï Ãâ¦ÃŠêÃËçÃâ ï èÃâ¡
+÷ÃËñ Ãâ¡Ãâ¦Ã²Ãâ¦Ã§Ãâ ïÃË Ã¾Ã§ÃÅïçÃ⡠ïçïÃ⡠ñç Ãâ¦ÃËñï çóêÃÂçïÃâ¡
+Ãâñçñ ïçïÃâ¡ ÃË Ãâ êçÃÅì ñç èç Ãâ¡Ã⦠êñéÃÅè éÃâ ï ÃËÃâÃÅ Ãâ Ãâ¦ÃÅ
+êÃËçÃâ ï ïñ ÃÅé ïñîÃËçóê èÃâ¡ Ãâ¡Ã± ïÃË Ã¾Ã§ÃÅïçÃ⡠ïçïÃâ¡
+ñìÃËù éÃâ ï.
+4.25) Ãâ ïÃËÃâ Ã⡠îñÃËìÃÅ ÃÅ ÃÆ êçèù Ãâ¦ÃŠââ¬ÅêÃËçÃâ ï Ãâ Ãâ ï ñïÃÅ ÃÂ
+Êç óêÃËÃâ èçôïß
+ïñ Ãâ óîÃâ¡ 7.3 îñÃËìÃÅ ÃÅé êçèù Ãâ¦ÃŠêÃËçÃâ ï Ãâ Ãâ ï ñïÃÅàÃÅç
+Ãâ Ãâ ï óêÃËÃâ èçôï. èñçÊïÃÅïÃâ ç÷Ãâçùçê èÃÅôêñ èÃâ¡
+óçÃÅê òÃÅñ Ãâ¦Ã±Ã§Ã¬Ã¹Ãâ¡
+éÃâ ÃÅï:http://techdocs.postgresql.org/guides/SetReturningFunctions
+4.26) ïñ êÃËçèù PL/PgSQL Ãâ ñç Ãâ Ãâ¦ÃŠââ¬ÅêÃËçÃâ èç ç÷Ãâ¦ÃÅ Ãâ çÃâ
+ìïçÃËÃâ Ãâ¦ÃËÃâê ñç çÊìçï Êç ÃÂðÃÂ ÃÆÃ±Ã¯ÃŸ
+PL/PgSQL Ãâ¦ÃÂêÃËçÊêÃËçèù ñç ðîÃÅñÃâ¡ (cache) Ãâ¦ÃŠéÃâ ï. ÃÅé
+çëñ èï ìçÃâ èÊçÃÅÃâ éçñ âÃâ çóê éÃ⡠çïñ ïñ êçèù çò
+ÃÅé ìïÃËÃâ Ãâ¦ÃËÃâê çóêÃÂçïÃ⡠ôÃËï ÃË Ã¨Ã¹Ã¯Ã§Ã⹠âÃâ ìïÃËÃâ ÃÂðÃÂ
+ÃË ÃÅé ìïÃËÃâ ìïÃÅï èÃ⡠ìçÊâÃâ çÃÅìçï ôÃËïÊïñ
+ÃÂñçîÃËçÃâ ÃÅ Ãâ¦Ã¬Ã¯Ã¯ âÃâ êçèùÃÅ Ãâ¦ÃÂêÃËçÊðîÃÅñÃ⡠ôïÃâ¡
+êçèù Ãâ¡Ãâ ÃËò èÃ⡠ìïÃËÃâ ÃâïÃÅÃâ¦ÃŠçôçñÃâ¡ Ãâ¦ÃŠéÃâ ï ÃË
+èÃâ çèñçÃÅÃâ çìñçÊêçèù èç çôéçÃâ Ãâ¦ÃËçìÃâ¡ Ãâ¦ÃŠôÃËï.
+ñçÃâ¡ ÃÂÃâ çÃÅÃâ Ãâ¦Ã´Ã©Ãâ âÃâ çóê éÃ⡠èñçÊìïçÃËÃâ Ãâ¦ÃËÃâê çò
+ïóêÃËñ EXECUTE çóêÃÂçïÃ⡠ôÃËï éÃ⡠çÃÅÃâ éçñ óèè Ãâ¦ÃŠôÃËï
+éÃ⡠ïñîÃËçóê èñçÃÅ Ãâ¡Ã± èçñ çìñç Ãâ¦Ã¬Ã¯Ã¯Ã§Ã⹠þÃÅÃâ¦Ã§ÃÅô ÃË
+êÃÂóÃÅñ ôÃËï.
+4.27) Ãâ Ã⡠ïòÃÅ Ãâ Ãâ¡Ã¢â¬ÅÃâ¡Ã§ÃŠÊèñçÃÅ ÃÂªÃÆÃ±Ã§Ã± (replication) ÃËìÃËï
+ïçñïß
+There are several master/slave replication options available. These allow only
+the master to make database changes and the slave can only do database reads.
+The bottom of http://gborg.PostgreSQL.org/genpage?replication_research lists
+them. A multi-master replication solution is being worked on at
+http://gborg.PostgreSQL.org/project/pgreplication/projdisplay.php.
+4.28) Ãâ Ã⡠ïòÃÅ Ãâ Ãâ¡Ã¢â¬ÅÃâ¡Ã§ÃŠÊèñçÊñÃâ¦Ã²Ãâ ïçñÃÅ ÃËìÃËï ïçñïß
+ contrib/pgcrypto ôçÃâ¦Ãâ êÃËçèù ñÃâ¦Ã²Ãâ ïçñÊòÃÅçïÊçóê éÃâ¡
+ Ãâ¦ÃŠêÃËçÃâ çò âÃâ Ãâ¡Ã§ ïñ ïóêÃËñçê SQL çóêÃÂçïÃ⡠éñï.
+ èñçÊñÃâ¦Ã² éñïÃâ çñêèç÷ èÃÅÃâ client ÃË server ÊþçÃÅïçÃâ¡
+ ïçïÃâ¡ ÃÂêÃâ¦Ã§Ã⹠ïòÃÅÃâ Ãâ¡ SSL ñç èñ ñÃËÊþçÃÅïçÃ⡠ïçïÃâ¡
+ ÃÂùçÃâ éÃâ ÃÅÃâ¦.
+ ïñ Ãâ óîÃâ¡ 7.3 èÃ⡠èùï éÃâÃâ¦Ã§Ãª ùèÃËñ éçñèñçÃâ èÃ⡠÷ÃËñ
+ çêÃËÃâ¦Ã§ÃªÃÅé èÃ⡠õÃËñê ñÃâ¦Ã² ôïÃ⡠ðîÃÅñÃâ¡ Ãâ¦ÃŠôÃËï ÃËÃâÃÅ
+ ïñ Ãâ óîÃâ¡ Ãâ¡Ã§ÃÅ ÃâèÃâÊèçÃÅï ïòÃÅÃâ Ãâ¡ PASSWORD_ENCRYPTION ïñ
+ ÃÂçÃÅÃâpostgresql.conf ÃÂùçÃâ éÃâ ÃÅÃâ¦.
+ Ãâ¦ÃŠêÃËçÃâ þçÃÅïçÃâ¡Ãâ¡Ã§ÃŠïçïÃ⡠ñç ñÃËÃÅ ÃÅé ÃÂçÃÅÃâ óÃÅóêÃâ¦
+ ñÃâ¦Ã²Ã´Ã¯Ãâ¡ Ãâ ïçÃâ¡Ã¯Ã§Ã±ÃŠéñï
+
+
- 4.24) tcgfw+n+h+ m+y+t+w+a+n+ d+r+x+w+a+s+t+h+a+y+y+ a+z+ tcn+d+
- p+a+y+gfa+h+ d+a+d+h+ t+w+l+y+d+ k+r+d+?+
-
- d+r+ hka+l+ hka+ddr+ a+یn+ کa+r+ a+m+کa+n+
- p+dkیr+ n+یs+t+. PostgreSQL f+q+tj a+m+کa+n+
- d+r+x+w+a+s+t+ a+z+ p+a+یgfa+h+ d+a+d+h+ a+ی r+a+
- m+ی d+h+d+ کh+ d+r+ hka+l+ hka+ddr+ b+h+ aMn+ m+t+c+l+
- b+a+snیd+ w+ n+m+یt+w+a+n+ b+h+ tjw+r+ h+m+z+m+a+n+ a+z+
- d+w+ p+a+یgfa+h+ d+a+d+h+ a+s+t+f+a+d+h+ کr+d+. a+l+b+t+h+
- یک b+r+n+a+m+h+ کa+r+b+r+d+ی x+w+d+ m+ی
- t+w+a+n+d+ b+h+ tjw+r+ h+m+z+m+a+n+ d+w+ p+a+یgfa+h+ d+a+d+h+
- r+a+ m+w+r+d+ a+s+t+f+a+d+h+ q+r+a+r+ d+a+d+h+ w+ n+t+a+یg+ r+a+
- b+a+ h+m+ t+r+کیb+ کn+d+ w+l+ی n+m+ی
- t+w+a+n+d+ d+r+ یک d+r+x+w+a+s+t+ b+h+ h+r+ d+w+
- p+a+یgfa+h+ d+a+d+h+ r+g+w+e+ کn+d+.
-
- 4.25) tcgfw+n+h+ x+r+w+g+y+ y+k+ t+a+b+e+ m+y+t+w+a+n+d+ tcn+d+ r+d+y+f+
- y+a+ s+t+w+n+ b+a+snd+?+
-
- d+r+ n+s+x+h+ 7.3 x+r+w+g+ی یک t+a+b+e+ m+ی
- t+w+a+n+d+ tcn+d+ r+d+یf+ یa+ tcn+d+ s+t+w+n+ b+a+snd+.
- b+r+a+ی d+یd+n+ a+tjl+a+e+a+t+ b+یsnt+r+ b+h+
- s+a+یt+ z+یr+ m+r+a+g+e+h+
- کn+یd+:http://techdocs.postgresql.org/guides/SetReturningF
- unctions
-
- 4.26) d+r+ t+w+a+b+e+ PL/PgSQL tcr+a+ n+m+y+t+w+a+n+ b+a+ a+tjm+y+n+a+n+
- g+d+a+w+l+ m+w+q+t+ r+a+ a+y+g+a+d+ y+a+ hkdkf+ k+r+d+?+
-
- PL/PgSQL m+hkt+w+a+ی t+w+a+b+e+ r+a+ dkx+یr+h+ (cache)
- m+ی کn+d+. یک a+tkr+ b+d+ g+a+n+b+ی
- a+یn+ کa+r+ aMn+ a+s+t+ کh+ a+gfr+ d+r+ t+a+b+e+
- a+z+ یک g+d+w+l+ m+w+q+t+ a+s+t+f+a+d+h+ snw+d+ w+
- b+e+d+a+:+ aMn+ g+d+w+l+ hkdkf+ w+ یک g+d+w+l+
- g+d+یd+ b+h+ g+a+ی aMn+ a+یg+a+d+ snw+d+,+ d+r+
- f+r+a+x+w+a+n+ی m+g+d+d+ aMn+ t+a+b+e+,+ m+hkt+w+a+ی
- dkx+یr+h+ snd+h+ t+a+b+e+ h+n+w+z+ b+h+ g+d+w+l+
- q+d+یm+ی a+sna+r+h+ m+ی کn+d+ w+
- b+n+a+b+r+a+یn+ a+g+r+a+ی t+a+b+e+ b+a+ a+snکa+l+
- m+w+a+g+h+ m+ی snw+d+. r+a+h+ hkl+ a+یn+ m+snکl+
- aMn+ a+s+t+ کh+ b+r+a+ی g+d+a+w+l+ m+w+q+t+ a+z+
- d+s+t+w+r+ EXECUTE a+s+t+f+a+d+h+ snw+d+ کh+ a+یn+
- کa+r+ s+b+b+ m+ی snw+d+ کh+ d+r+x+w+a+s+t+
- b+r+a+ی h+r+ b+a+r+ a+g+r+a+ m+g+d+d+a+:+ p+یm+a+یsn
- w+ t+f+s+یr+ snw+d+.
-
- 4.27) tch+ gfz+y+n+h+h+a+y+y+ b+r+a+y+ t+k+r+a+r+ (replication) w+g+w+d+
- d+a+r+d+?+
-
- There are several master/slave replication options available. These
- allow only the master to make database changes and the slave can only
- do database reads. The bottom of
- http://gborg.PostgreSQL.org/genpage?replication_research lists them. A
- multi-master replication solution is being worked on at
- http://gborg.PostgreSQL.org/project/pgreplication/projdisplay.php.
-
- 4.28) tch+ gfz+y+n+h+h+a+y+y+ b+r+a+y+ r+m+z+n+gfa+r+y+ w+g+w+d+ d+a+r+d+?+
-
- * contrib/pgcrypto sna+m+l+ t+w+a+b+e+ r+m+z+n+gfa+r+ی
- z+یa+d+ی a+s+t+ کh+ m+ی t+w+a+n+ a+z+
- aMn+h+a+ d+r+ d+s+t+w+r+a+t+ SQL a+s+t+f+a+d+h+ کr+d+.
- * b+r+a+ی r+m+z+ کr+d+n+ a+r+t+b+a+tj b+یn+ client
- w+ server p+a+یgfa+h+ d+a+d+h+ hkt+m+a+:+ gfz+یn+h+
- SSL r+a+ b+r+ r+w+ی p+a+یgfa+h+ d+a+d+h+ f+e+a+l+
- کn+یm+.
- * d+r+ n+s+x+h+ 7.3 b+h+ b+e+d+ کl+m+a+t+ e+b+w+r+
- کa+r+b+r+a+n+ b+h+ tjw+r+ a+t+w+m+a+t+یک b+h+
- c+w+r+t+ r+m+z+ snd+h+ dkx+یr+h+ m+ی snw+d+
- w+l+ی d+r+ n+s+x+h+ h+a+ی q+b+l+ی b+a+یd+
- gfz+یn+h+ PASSWORD_ENCRYPTION r+a+ d+r+
- f+a+یl+postgresql.conf f+e+a+l+ کn+یm+.
- * m+ی t+w+a+n+ p+a+یgfa+h+h+a+ی d+a+d+h+ r+a+
- r+w+ی یک f+a+یl+ s+یs+t+m+
- r+m+z+snd+h+ n+gfa+h+d+a+r+ی کr+d+
- _________________________________________________________________
-
- Extending PostgreSQL
-
- 5.1) m+n+ y+k+ t+a+b+e+ n+w+snt+h+a+m+. tcgfw+n+h+ aMn+ r+a+ d+r+ psql
- a+g+r+a+ k+n+m+?+ tcr+a+ b+a+ a+g+r+a+y+ aMn+ core dump m+y+gfy+r+m+?+
-
- d+l+a+یl+ m+x+t+l+f+ی m+ی t+w+a+n+d+ b+a+e+tk
- b+r+w+z+ a+یn+ m+snکl+ snw+d+. a+m+a+ q+b+l+ a+z+ h+m+h+,+
- t+a+b+e+ x+w+d+ r+a+ b+h+ c+w+r+t+ g+d+a+ t+s+t+ کn+یd+.
-
- 5.2) tcgfw+n+h+ m+y+t+w+a+n+m+ d+r+ t+w+l+y+d+ n+w+e+h+a+ w+ t+w+a+b+e+
- g+d+y+d+ w+ g+a+l+b+ b+r+a+y+ PostgreSQL h+m+k+a+r+y+ w+ m+sna+r+k+t+
- d+a+snt+h+ b+a+snm+?+
-
- کd+ x+w+d+ r+a+ b+h+ gfr+w+h+ p+s+t+ی pgsql-hackers
- a+r+s+a+l+ کn+یd+.
-
- 5.3) tcgfw+n+h+ m+y+t+w+a+n+m+ y+k+ t+a+b+e+ b+h+ z+b+a+n+ C b+n+w+y+s+m+
- k+h+ x+r+w+g+y+ aMn+ y+k+ tuple (tcn+d+ t+a+y+y+) b+a+snd+?+
-
- d+r+ n+s+x+h+ h+a+ی 7.3 b+h+ b+e+d+ یک t+a+b+e+
- m+ی t+w+a+n+d+ یک g+d+w+l+ r+a+ b+h+ e+n+w+a+n+
- x+r+w+g+ی b+r+gfr+d+a+n+d+. a+یn+ w+یzjgfی
- d+r+ t+w+a+b+e+ی کh+ b+h+ z+b+a+n+h+a+ی C w+
- PL/PgSQL n+w+snt+h+ m+یsnw+n+d+ b+h+ tjw+r+ کa+m+l+
- w+g+w+d+ d+a+r+d+. r+a+h+n+m+a+ b+r+n+a+m+h+ n+w+یs+a+n+ r+a+
- m+tja+l+e+h+ کn+یd+. یک m+tka+l+ a+z+ n+hkw+h+
- b+r+gfr+d+a+n+d+n+ یک g+d+w+l+ b+h+ e+n+w+a+n+
- x+r+w+g+ی d+r+ contrib/tablefunc aMm+d+h+ a+s+t+.
-
- 5.4) m+n+ y+k+ f+a+y+l+ m+n+b+e+ r+a+ e+w+dd k+r+d+h+ a+m+ tcr+a+ d+r+
- e+m+l+y+a+t+ k+a+m+p+y+l+ m+g+d+d+ aMn+,+ t+i+y+y+r+ d+y+d+h+ n+m+y+
- snw+d+?+
-
- Makefile b+r+a+ی f+a+یl+h+a+ی include snd+h+
- w+a+b+s+t+gfیh+a+ r+a+ b+h+ d+r+s+t+ی n+sna+n+ n+m+ی
- d+h+d+. b+r+a+ی a+tjm+یn+a+n+ a+z+ a+یn+کh+
- f+a+یl+ی کh+ e+w+dd کr+d+h+ a+یd+
- hkt+m+a+:+ d+w+b+a+r+h+ کa+m+p+یl+ m+یsnw+d+
- d+s+t+w+r+ make clean r+a+ a+g+r+a+ کn+یd+. a+gfr+ a+z+
- کa+m+p+یl+r+ gcc a+s+t+f+a+d+h+ m+ی
- کn+یd+ m+ی t+w+a+n+یd+ a+z+ gfz+یn+h+
- enable-depend-- d+r+ m+w+q+e+ a+g+r+a+ی b+r+n+a+m+h+ configure
- a+s+t+f+a+d+h+ کn+یd+ a+یn+ gfz+یn+h+ b+a+e+tk
- m+ی snw+d+ کh+ w+a+b+s+t+gfیh+a+ b+h+ tjw+r+
- a+t+w+m+a+t+یک t+w+l+یd+ snw+d+.
+Extending PostgreSQL
+5.1) Ãâ¦Ãâ ÃÅ ÃÆ êçèù Ãâ ÃËôêÃâ¡Ã¢â¬ÅçÃâ¦. Ãâ ïÃËÃâ Ã⡠âÃâ ñç ïñ psql
+çìñç ÃÆÃâ Ãâ¦ÃŸ Ãâ ñç èç çìñçÊâÃâ core dump Ãâ¦ÃŠââ¬ÅïÊñÃâ¦ÃŸ
+ïÃâçÃÅÃâ Ãâ¦Ã®ÃªÃâÃÂÃÅ Ãâ¦ÃŠêÃËçÃâ ï èçùë èñÃËò çÃÅÃâ Ãâ¦Ã´Ã©Ãâ
+ôÃËï. çÃâ¦Ã§ ÃâèÃâ çò Ãâ¡Ãâ¦Ã⡠êçèù îÃËï ñç èÃ⡠õÃËñê ìïç
+êóê éÃâ ÃÅï.
+5.2) Ãâ ïÃËÃâ Ãâ¡ Ãâ¦ÃŠââ¬ÅêÃËçÃâ Ã⦠ïñ êÃËÃâÊï Ãâ ÃËùââ¬ÅÃâ¡Ã§ ÃË ÃªÃËçèù
+ìïÊï ÃË Ã¬Ã§Ãâè èñçÃÅ PostgreSQLââ¬Å Ãâ¡Ãâ¦ÃÆÃ§Ã±ÃÅ ÃË Ãâ¦Ã´Ã§ÃÂ±ÃÆÃª
+ïçôêÃ⡠èçôÃâ¦ÃŸ
+éï îÃËï ñç èÃ⡠ïñÃËÃ⡠þóêÃÅ pgsql-hackers çñóçÃâ éÃâ ÃÅï.
+5.3) Ãâ ïÃËÃâ Ãâ¡ Ãâ¦ÃŠââ¬ÅêÃËçÃâ Ã⦠ÃÅ ÃÆ êçèù èÃ⡠òèçÃâ C èÃâ ÃËÊóÃâ¦
+ÃÆÃ⡠îñÃËìÊâÃâ ÃÅ ÃÆ ââ¬Åtuple (Ãâ Ãâ ï êçÃÅ ÃÅ ) èçôïß
+ïñ Ãâ óîÃâ¡ Ãâ¡Ã§ÃÅ 7.3 èÃ⡠èùï ÃÅé êçèù Ãâ¦ÃŠêÃËçÃâ ï ÃÅé ìïÃËÃâ
+ñç èÃ⡠ùÃâ ÃËçÃâ îñÃËìÊèñïñïçÃâ ï. çÃÅÃâ ÃËÃÅÃËïÊïñ
+êÃËçèùÊéÃ⡠èÃ⡠òèçÃâ Ãâ¡Ã§ÃÅ C ÃË PL/PgSQL Ãâ ÃËôêÃâ¡ Ãâ¦ÃŠôÃËÃâ ï
+èÃ⡠÷ÃËñ éçÃâ¦Ãâ ÃËìÃËï ïçñï. ñçÃâ¡Ãâ Ãâ¦Ã§ èñÃâ çÃâ¦Ãâ¡ Ãâ ÃËÃÅóçÃâ
+ñç Ãâ¦Ã·Ã§ÃâùÃ⡠éÃâ ÃÅï. ÃÅé Ãâ¦Ã«Ã§Ãâ çò Ãâ ÃÂÃËÃ⡠èñïñïçÃâ ïÃâ ÃÅé
+ìïÃËÃâ èÃ⡠ùÃâ ÃËçÃâ îñÃËìÊïñ contrib/tablefunc âÃâ¦Ã¯Ã⡠çóê.
+5.4) Ãâ¦Ãâ ÃÅ ÃÆ ÃÂçÃÅ Ãâ Ãâ¦Ãâ èù ñç ùÃËö ÃÆÃ±Ã¯Ã⡠çÃ⦠Ãâ ñç ïñ
+ùÃâ¦ÃâÊçê ̮̤Ãâ¦Ã¾ÃÅ Ãâ Ãâ¦Ã¬Ã¯Ã¯ âÃâ êúÊÊñ ïÊïÃâ¡ Ãâ Ãâ¦ÃŠââ¬ÅôÃËïß
+Makefile èñçÃÅ ÃÂçÃÅÃâÃâ¡Ã§ÃÅ include ôïÃâ¡ ÃËçèóêïÃÅÃâ¡Ã§ ñç èÃâ¡
+ïñóêÃÅ Ãâ ôçÃâ Ãâ Ãâ¦ÃŠïÃâ¡Ã¯. èñçÊç÷Ãâ¦ÃÅÃâ çÃâ çò çÃÅÃâ éÃâ¡
+ÃÂçÃÅÃâÊéÃ⡠ùÃËö éñïÃ⡠çÃÅï ÃÂêÃâ¦Ã§Ã⹠ïÃËèçñÃ⡠éçÃâ¦Ã¾ÃÅÃâ Ãâ¦ÃÅ
+ôÃËï ïóêÃËñ make clean ñç çìñç éÃâ ÃÅï. çïñ çò éçÃâ¦Ã¾ÃÅÃâñ
+gcc çóêÃÂçïÃâ¡ Ãâ¦ÃŠéÃâ ÃÅï Ãâ¦ÃŠêÃËçÃâ ÃÅï çò ïòÃÅÃâ Ãâ¡
+enable-depend-- ïñ Ãâ¦ÃËÃâù çìñçÊèñÃâ çÃâ¦Ãâ¡ configure çóêÃÂçïÃâ¡
+éÃâ ÃÅï çÃÅÃâ ïòÃÅÃâ Ã⡠èçùë Ãâ¦ÃŠôÃËï éÃâ¡ ÃËçèóêïÃÅÃâ¡Ã§ èÃâ¡
+÷ÃËñ çêÃËÃâ¦Ã§ÃªÃÅé êÃËÃâÃÅï ôÃËï.
\ No newline at end of file
diff --git a/doc/src/FAQ/FAQ_farsi.html b/doc/src/FAQ/FAQ_farsi.html
index f9b89147033..b304095b750 100644
--- a/doc/src/FAQ/FAQ_farsi.html
+++ b/doc/src/FAQ/FAQ_farsi.html
@@ -1,388 +1,394 @@
-PostgreSQL FAQ
+PostgreSQL FAQ
-
-
-سوالاتي كه اغلب در مورد
-PostgreSQL
-پرسيده مي شوند
-تاريخ آخرين اصلاح اين فايل:
-28 شهریور 1383 هجری شمسی
-نگهدارنده اصلي فايل (زبان
-انگليسي)در حال حاضر : Bruce Momjian
+
+
+Ø³ÙØ§Ùات٠ÙÙ Ø§ØºÙØ¨ در Ù
ÙØ±Ø¯
+
+PostgreSQLâ
+Ù¾Ø±Ø³ÙØ¯Ù Ù
Ù Ø´ÙÙØ¯
+ØªØ§Ø±ÙØ® آخرÙÙ Ø§ØµÙØ§Ø اÙÙ ÙØ§ÙÙ: 28
+Ø´ÙØ±ÛÙØ± 1383 ÙØ¬Ø±Û Ø´Ù
سÛ
+ÙÚ¯ÙØ¯Ø§Ø±Ùد٠اصÙÙ ÙØ§ÙÙ (زباÙ
+اÙÚ¯ÙÙØ³Ù)در ØØ§Ù ØØ§Ø¶Ø± : Bruce Momjian
pgman@candle.pha.pa.us
-نگهدارنده فايل به زبان فارسي:
+ÙÚ¯ÙØ¯Ø§Ø±ÙØ¯Ù ÙØ§ÙÙ Ø¨Ù Ø²Ø¨Ø§Ù ÙØ§Ø±Ø³Ù:
-m.taghizadeh@imenafzar.net محمود
-تقيزاده مهرجردی
-آخرين نسخه اين فايل را
-ميتوانيد از اين آدرس بگيريد Ù
ØÙ
ÙØ¯
+تÙÙâØ²Ø§Ø¯Ù Ù
ÙØ±Ø¬Ø±Ø¯Û
+آخرÙÙ ÙØ³Ø®Ù اÙÙ ÙØ§Ù٠را
+Ù
ÙâØªÙØ§ÙÙØ¯ از اÙ٠آدرس Ø¨Ú¯ÙØ±Ùد http://www.PostgreSQL.org/docs/faqs/FAQ.html
-سوالاتي كه در مورد يك
-سکوی(پلتفرم)
-خاص است در اين آدرس جواب داده شده اند Ø³ÙØ§Ùات٠Ù٠در Ù
ÙØ±Ø¯ ÙÙ
+سکÙÛ(Ù¾ÙØªÙرÙ
) خاص است در اÙ٠آدرس Ø¬ÙØ§Ø¨ Ø¯Ø§Ø¯Ù Ø´Ø¯Ù Ø§ÙØ¯
+ http://www.PostgreSQL.org/docs/index.html
-سوالات عمومي
-1.1)
-PostgreSQL چيست و چگونه بايد آن را
-تلفظ كرد؟
Ø³ÙØ§Ùات عÙ
ÙÙ
Ù
+1.1) PostgreSQL
+ÚÙØ³Øª Ù ÚÚ¯ÙÙÙ Ø¨Ø§ÙØ¯ آ٠را تÙÙØ¸ ÙØ±Ø¯Ø
1.2)
-قانون كپي رايت (حقوق معنوي) در مورد PostgreSQL
- به چه صورت است؟
ÙØ§ÙÙÙ ÙÙ¾Ù Ø±Ø§ÙØªâ (ØÙÙÙ Ù
عÙÙÙ) در Ù
ÙØ±Ø¯
PostgreSQL
+ ب٠ÚÙ ØµÙØ±Øª استØ
1.3)
-PostgreSQL
روي چه نوع
-يونيكسهايي اجرا ميشود؟
PostgreSQLâ Ø±ÙÙ ÚÙ ÙÙØ¹
+ÙÙÙÙÙØ³ÙاÙ٠اجرا Ù
ÙâØ´ÙØ¯Ø
1.4)
-روي چه محيطهاي غير يونيكسي ميتوان آن
-را اجرا كرد؟
رÙÙ ÚÙ Ù
ØÙØ·ÙØ§Ù ØºÙØ± ÙÙÙÙÙØ³Ù Ù
ÙâØªÙØ§Ù Ø¢Ù
+را اجرا ÙØ±Ø¯Ø
1.5) PostgreSQL
-را از كجا ميتوانم بگيرم؟
1.6)
-از كجا خدمات پشتيباني بگيرم؟
از ÙØ¬Ø§ خدÙ
ات Ù¾Ø´ØªÙØ¨Ø§ÙÙ Ø¨Ú¯ÙØ±Ù
Ø
1.7)
-آخرين نسخه اعلام شده چيست؟
1.8)
-چه مستندات و راهنمائيهايي وجود دارند؟
ÚÙ Ù
Ø³ØªÙØ¯Ø§Øª ٠راÙÙÙ
ائÙÙØ§ÙÙ ÙØ¬Ùد Ø¯Ø§Ø±ÙØ¯Ø
1.9)
-چگونه ميتوانم ازاشكالات شناخته شده و يا امكاناتي كه در اين
-پايگاه داده وجود ندارد مطلع شوم؟
ÚÚ¯ÙÙÙ Ù
ÙâØªÙØ§ÙÙ
Ø§Ø²Ø§Ø´ÙØ§Ùات Ø´ÙØ§Ø®ØªÙ Ø´Ø¯Ù Ù ÙØ§ اÙ
ÙØ§Ùات٠Ù٠در اÙÙ
+پاÙÚ¯Ø§Ù Ø¯Ø§Ø¯Ù ÙØ¬Ùد ÙØ¯Ø§Ø±Ø¯ Ù
Ø·ÙØ¹ Ø´ÙÙ
Ø
1.10)
-چگونه ميتوانم زبان
-SQL را ياد بگيرم؟
ÚÚ¯ÙÙÙ Ù
ÙâØªÙØ§ÙÙ
زباÙ
+SQL را ÙØ§Ø¯ Ø¨Ú¯ÙØ±Ù
Ø
1.11)
-آيا PostgreSQL
-مشكل Y2K
-دارد يا خير؟
PostgreSQL
+Ù
Ø´ÙÙ Y2Kâ
+دارد ÙØ§ Ø®ÙØ±Ø
1.12)
-چگونه ميتوانم به تيم برنامه نويس
+ÚÚ¯ÙÙÙ Ù
ÙâØªÙØ§ÙÙ
ب٠تÙÙ
Ø¨Ø±ÙØ§Ù
Ù ÙÙÙØ³
PostgreSQL
-ملحق شوم؟
1.13)
-چگونه ميتوانم يك اشكال را به گروه برنامه نويس اعلام كنم؟
ÚÚ¯ÙÙÙ Ù
ÙâØªÙØ§ÙÙ
ÙÙ Ø§Ø´ÙØ§Ù را ب٠گرÙÙ Ø¨Ø±ÙØ§Ù
Ù ÙÙÙØ³ Ø§Ø¹ÙØ§Ù
ÙÙÙ
Ø
1.14)
- وضعيت
-PostgreSQL در
-مقايسه با ساير DBMSها به چه
-صورت است؟
ÙØ¶Ø¹Ùت
+PostgreSQLâ Ø¯Ø±
+Ù
ÙØ§Ùس٠با Ø³Ø§ÙØ± DBMSÙØ§ ب٠ÚÙ
+ØµÙØ±Øª استØ
1.15)
-من چگونه ميتوانم از نظر مالي به PostgreSQL
-كمك كنم؟
+Ù
Ù ÚÚ¯ÙÙÙ Ù
ÙâØªÙØ§ÙÙ
از ÙØ¸Ø± Ù
اÙ٠ب٠PostgreSQL
+ÙÙ
Ù ÙÙÙ
Ø
-سوالات مربوط به
-استفاده از پايگاه داده
+Ø³ÙØ§Ùات Ù
Ø±Ø¨ÙØ· بÙ
+Ø§Ø³ØªÙØ§Ø¯Ù از پاÙگا٠دادÙ
2.1)
-آيا هيچ درايور ODBC
-براي PostgreSQL
-وجود دارد؟
Ø¢ÙØ§ ÙÙÚ Ø¯Ø±Ø§ÙÙØ± ODBCâ
+برا٠PostgreSQL
+ÙØ¬Ùد داردØ
2.2)
-چه ابزارهايي براي استفاده از PostgreSQL
-با صفحات وب وجود دارد؟
ÚÙ Ø§Ø¨Ø²Ø§Ø±ÙØ§ÙÙ Ø¨Ø±Ø§Ù Ø§Ø³ØªÙØ§Ø¯Ù از PostgreSQLâ
+با ØµÙØØ§Øª ÙØ¨ ÙØ¬Ùد داردØ
2.3)
-آيا PostgreSQL يك واسط كاربري گرافيكي
-دارد؟
Ø¢ÙØ§ PostgreSQLâ ÙÙ ÙØ§Ø³Ø· ÙØ§Ø±Ø¨Ø±Ù گراÙÙÙÙ
+داردØ
2.4)
-با چه زبانهاي برنامهنويسي ميتوان با PostgreSQL
-ارتباط برقرار كرد؟
+با Ú٠زباÙÙØ§Ù Ø¨Ø±ÙØ§Ù
ÙâÙÙÙØ³Ù Ù
ÙâØªÙØ§Ù با PostgreSQLâ
+ارتباط Ø¨Ø±ÙØ±Ø§Ø± ÙØ±Ø¯Ø
-سوالات مربوط به
-راهبري
+Ø³ÙØ§Ùات Ù
Ø±Ø¨ÙØ· بÙ
+Ø±Ø§ÙØ¨Ø±Ù
3.1)
-چگونه ميتوانم PostgreSQL را در شاخهاي
-غير از /usr/local/pgsql/ نصب كنم؟
ÚÚ¯ÙÙÙ Ù
ÙâØªÙØ§ÙÙ
PostgreSQLâ Ø±Ø§ در شاخÙâØ§Ù
+ØºÙØ± از /usr/local/pgsql/ ÙØµØ¨ ÙÙÙ
Ø
3.2)
-چرا موقعي كه من برنامه postmaster را
-اجرا مي كنم پيام Bad system call و يا core dump
-ميگيرم؟
ÚØ±Ø§ Ù
ÙÙØ¹Ù ÙÙ Ù
Ù Ø¨Ø±ÙØ§Ù
Ù postmasterâ Ø±Ø§
+اجرا Ù
Ù ÙÙÙ
Ù¾ÙØ§Ù
Bad system callâ Ù ÙØ§ core dump
+âÙ
ÙâÚ¯ÙØ±Ù
Ø
3.3)
-چرا موقعي كه من سعي ميكنم برنامه postmaster
-را اجرا كنم خطاي IpcMemoryCreate ميگيرم؟
ÚØ±Ø§ Ù
ÙÙØ¹Ù ÙÙ Ù
٠سع٠Ù
ÙâÙÙÙ
Ø¨Ø±ÙØ§Ù
Ù postmasterâ
+را اجرا ÙÙÙ
خطا٠IpcMemoryCreate Ù
ÙâÚ¯ÙØ±Ù
Ø
3.4)
-چرا موقعي كه من سعي ميكنم برنامه postmaster
-را اجرا كنم خطاي IpcSemaphoreCreate
-ميگيرم؟
ÚØ±Ø§ Ù
ÙÙØ¹Ù ÙÙ Ù
٠سع٠Ù
ÙâÙÙÙ
Ø¨Ø±ÙØ§Ù
Ù postmasterâ
+را اجرا ÙÙÙ
خطا٠IpcSemaphoreCreate
+Ù
ÙâÚ¯ÙØ±Ù
Ø
3.5)
-چگونه ميتوانم اتصالات ساير ماشينها را كنترل كنم؟
ÚÚ¯ÙÙÙ Ù
ÙâØªÙØ§ÙÙ
Ø§ØªØµØ§ÙØ§Øª Ø³Ø§ÙØ± Ù
اشÙÙÙØ§ را ÙÙØªØ±Ù ÙÙÙ
Ø
3.6)
-براي كارايي بالاتر و بهتر پايگاه داده من چه تنظيماتي را بايد
-انجام دهم؟
Ø¨Ø±Ø§Ù ÙØ§Ø±Ø§ÙÙ Ø¨Ø§ÙØ§ØªØ± Ù Ø¨ÙØªØ± پاÙگا٠داد٠Ù
Ù ÚÙ ØªÙØ¸ÙÙ
ات٠را Ø¨Ø§ÙØ¯
+Ø§ÙØ¬Ø§Ù
دÙÙ
Ø
3.7)
-چه امكاناتي براي پيدا كردن اشكال وجود دارد؟
Ú٠اÙ
ÙØ§ÙØ§ØªÙ Ø¨Ø±Ø§Ù Ù¾ÙØ¯Ø§ ÙØ±Ø¯Ù Ø§Ø´ÙØ§Ùâ ÙØ¬Ùد داردØ
3.8)
-چرا موقعي كه من ميخواهم به پايگاه داده وصل شوم پيام "Sorry, too many clients"
-ميگيرم؟
ÚØ±Ø§ Ù
ÙÙØ¹Ù ÙÙ Ù
Ù Ù
ÙâØ®ÙØ§ÙÙ
ب٠پاÙÚ¯Ø§Ù Ø¯Ø§Ø¯Ù ÙØµÙ Ø´ÙÙ
Ù¾ÙØ§Ù
+"Sorry, too many clients"
+âÙ
ÙâÚ¯ÙØ±Ù
Ø
3.9)
-در شاخه pgsql_tmp چه چيزي قرار دارد؟
pgsql_tmp ÚÙ ÚÙØ²Ù ÙØ±Ø§Ø± داردØ
3.10)
-چرا براي به روز كردن نسخه پايگاه داده من بايد كل داده ها را
-dump و مجدداً restore كنم؟
ÚØ±Ø§ Ø¨Ø±Ø§Ù Ø¨Ù Ø±ÙØ² ÙØ±Ø¯Ù ÙØ³Ø®Ù پاÙگا٠داد٠Ù
Ù Ø¨Ø§ÙØ¯ ÙÙ Ø¯Ø§Ø¯Ù ÙØ§ را
+dumpâ Ù Ù
جددا٠restore ÙÙÙ
Ø
3.11)
-از چه سخت افزاري بايد استفاده كنم؟
+از Ú٠سخت Ø§ÙØ²Ø§Ø±Ù Ø¨Ø§ÙØ¯ Ø§Ø³ØªÙØ§Ø¯Ù ÙÙÙ
Ø
-سوالات عملياتي
+Ø³ÙØ§Ùات عÙ
ÙÙØ§ØªÙ
4.1)
-تفاوت بين binary cursors و Normal
-cursors چيست؟
4.1) ØªÙØ§Ùت بÙÙ binary cursors Ù
+Normal cursors ÚÙØ³ØªØ
4.2)
-من چگونه ميتوانم فقط روي چند رديف اول
-يا يك رديف تصادفي درخواست SELECT
-بزنم؟
Ù
Ù ÚÚ¯ÙÙÙ Ù
ÙâØªÙØ§ÙÙ
ÙÙØ· رÙÙ ÚÙØ¯ ردÙ٠اÙÙ ÙØ§ Ù٠ردÙ٠تصادÙÙ Ø¯Ø±Ø®ÙØ§Ø³Øª
+SELECTâ Ø¨Ø²ÙÙ
Ø
4.3)
-من چگونه ميتوانم ليستي از جداول يا ساير چيزهايي كه در
-psql وجود دارد را ببينم؟
Ù
Ù ÚÚ¯ÙÙÙ Ù
ÙâØªÙØ§ÙÙ
ÙÙØ³ØªÙ از جداÙÙ ÙØ§ Ø³Ø§ÙØ± ÚÙØ²ÙاÙÙ Ù٠در
+psqlâ ÙØ¬Ùد دارد را ببÙÙÙ
Ø
4.4)
-چگونه يك ستون جدول را حذف ميكنيد؟ چگونه نوع داده آن را عوض
-كنيم؟
ÚÚ¯ÙÙÙ Ù٠ستÙ٠جدÙ٠را ØØ°Ù Ù
ÙâÙÙÙØ¯Ø ÚÚ¯ÙÙÙ ÙÙØ¹ داد٠آ٠را Ø¹ÙØ¶
+ÙÙÙÙ
Ø
4.5)
-حداكثر اندازه يك رديف، جدول و خود پايگاه داده چقدر است؟
ØØ¯Ø§Ùثر Ø§ÙØ¯Ø§Ø²Ù Ù٠ردÙÙØâ Ø¬Ø¯ÙÙ Ù Ø®ÙØ¯ پاÙگا٠داد٠ÚÙØ¯Ø± استØ
4.6)
-چقدر فضاي ديسك سخت براي ذخيره كردن دادههاي يك فايل متني مورد
-نياز است؟
ÚÙØ¯Ø± ÙØ¶Ø§Ù Ø¯ÙØ³Ù سخت Ø¨Ø±Ø§Ù Ø°Ø®ÙØ±Ù ÙØ±Ø¯Ù دادÙââÙØ§Ù ÙÙ ÙØ§ÙÙ Ù
تÙÙ Ù
ÙØ±Ø¯
+ÙÙØ§Ø² استØ
4.7)
-چگونه ميتوانم بفهمم كه چه كاربران، پايگاه داده، نمايه و
-جداولي در سيستم تعريف شده است؟
ÚÚ¯ÙÙÙ Ù
ÙâØªÙØ§ÙÙ
بÙÙÙ
Ù
ÙÙ ÚÙ ÙØ§Ø±Ø¨Ø±Ø§ÙØâ پاÙÚ¯Ø§Ù Ø¯Ø§Ø¯ÙØâ ÙÙ
اÙÙ Ù
+جداÙÙ٠در Ø³ÙØ³ØªÙ
تعرÙ٠شد٠استØ
4.8)
-چرا درخواستهاي من كند اجرا ميشوند يا چرا از نمايه ها استفاده
-نميكنند؟
ÚØ±Ø§ Ø¯Ø±Ø®ÙØ§Ø³ØªÙا٠Ù
Ù ÙÙØ¯ اجرا Ù
ÙâØ´ÙÙØ¯ ÙØ§ ÚØ±Ø§ از ÙÙ
اÙÙ ÙØ§ Ø§Ø³ØªÙØ§Ø¯Ù
+ÙÙ
ÙâÙÙÙØ¯Ø
4.9)
-چگونه ميتوانم نحوه بررسي درخواست را توسط بهينهساز درخواستها
-مشاهده كنم؟
ÚÚ¯ÙÙÙ Ù
ÙâØªÙØ§ÙÙ
ÙØÙÙ Ø¨Ø±Ø±Ø³Ù Ø¯Ø±Ø®ÙØ§Ø³Øª را ØªÙØ³Ø· بÙÙÙÙâØ³Ø§Ø² Ø¯Ø±Ø®ÙØ§Ø³ØªÙا
+Ù
Ø´Ø§ÙØ¯Ù ÙÙÙ
Ø
4.10)
-نمايه R-tree چيست؟
ÙÙ
اÙÙ R-treeâ ÚÙØ³ØªØ
4.11)
-بهينه ساز تكويني درخواست چيست؟ (Genetic Query Optimizer)
بÙÙÙ٠ساز تÙÙÙÙÙ Ø¯Ø±Ø®ÙØ§Ø³Øª ÚÙØ³ØªØ (Genetic Query Optimizer)
4.12)
-چگونه از عبارات منظم براي جستجو استفاده كنم؟ چگونه جستجويي انجام
-دهم كه حساس به متن نباشد؟ چگونه براي يك جستجوي غير حساس به متن از نمايه استفاده
-كنم؟
ÚÚ¯ÙÙ٠از عبارات Ù
ÙØ¸Ù
Ø¨Ø±Ø§Ù Ø¬Ø³ØªØ¬Ù Ø§Ø³ØªÙØ§Ø¯Ù ÙÙÙ
Ø ÚÚ¯ÙÙ٠جستجÙÙÙ Ø§ÙØ¬Ø§Ù
+دÙÙ
ÙÙ ØØ³Ø§Ø³ ب٠Ù
ØªÙ ÙØ¨Ø§Ø´Ø¯Ø ÚÚ¯ÙÙ٠برا٠Ù٠جستجÙÙ ØºÙØ± ØØ³Ø§Ø³ ب٠Ù
ت٠از ÙÙ
اÙÙ Ø§Ø³ØªÙØ§Ø¯Ù
+ÙÙÙ
Ø
4.13)
-چگونه ميتوانم در يك درخواست تشخيص دهم كه يك فيلد NULL
-است؟
ÚÚ¯ÙÙÙ Ù
ÙâØªÙØ§ÙÙ
در ÙÙ Ø¯Ø±Ø®ÙØ§Ø³Øª ØªØ´Ø®ÙØµ دÙÙ
ÙÙ ÙÙ ÙÙÙØ¯ NULLâ
+استØ
4.14)
-تفاوت بين گونههاي مختلف character چيست؟
ØªÙØ§Ùت بÙÙ Ú¯ÙÙÙâÙØ§Ù Ù
ختÙÙ character ÚÙØ³ØªØ
4.15.1)
-چگونه ميتوانم يك فيلد سريال يا افزايشي ايجاد كنم؟
ÚÚ¯ÙÙÙ Ù
ÙâØªÙØ§ÙÙ
ÙÙ ÙÙÙØ¯ Ø³Ø±ÙØ§Ù ÙØ§ Ø§ÙØ²Ø§ÙØ´Ù Ø§ÙØ¬Ø§Ø¯ ÙÙÙ
Ø
4.15.2)
-چگونه ميتوانم مقدار يك درج سريالي را بدانم؟
4.15.3) آیا توابع ()nextval
-و ()currval منجر به ایجاد شرایط race
-برای سایر کاربران می شوند؟
ÚÚ¯ÙÙÙ Ù
ÙâØªÙØ§ÙÙ
Ù
ÙØ¯Ø§Ø± Ù٠درج Ø³Ø±ÙØ§Ù٠را بداÙÙ
Ø
4.15.3) Ø¢ÛØ§ ØªÙØ§Ø¨Ø¹ ()nextval
+Ù ()currval Ù
ÙØ¬Ø± Ø¨Ù Ø§ÛØ¬Ø§Ø¯ Ø´Ø±Ø§ÛØ· race
+Ø¨Ø±Ø§Û Ø³Ø§ÛØ± کاربرا٠Ù
Û Ø´ÙÙØ¯Ø
4.15.4)
-چرا اعداد سریالی مربوط به تراکنشهای abort
-شده مجدداً استفاده نمی شود؟ چرا بین اعداد سریالی یک فاصله خالی ایجاد می شود؟
4.16)
-OID و TID چه هستند؟
ÚØ±Ø§ اعداد Ø³Ø±ÛØ§ÙÛ Ù
Ø±Ø¨ÙØ· Ø¨Ù ØªØ±Ø§Ú©ÙØ´ÙØ§Û abort
+شد٠Ù
Ø¬Ø¯Ø¯Ø§Ù Ø§Ø³ØªÙØ§Ø¯Ù ÙÙ
Û Ø´ÙØ¯Ø ÚØ±Ø§ بÛ٠اعداد Ø³Ø±ÛØ§ÙÛ ÛÚ© ÙØ§ØµÙ٠خاÙÛ Ø§ÛØ¬Ø§Ø¯ Ù
Û Ø´ÙØ¯Ø
4.16) OID Ù TID ÚÙ
+ÙØ³ØªÙدØ
4.17)
-معني بعضي از ترمها و كلماتي كه در PostgreSQL
-استفاده ميشود چيست؟
Ù
عÙ٠بعض٠از ترÙ
ÙØ§ Ù ÙÙÙ
ات٠Ù٠در PostgreSQLâ
+Ø§Ø³ØªÙØ§Ø¯Ù Ù
ÙâØ´ÙØ¯ ÚÙØ³ØªØ
4.18)
-چرا من خطاي "ERROR: Memory exhausted in AllocSetAlloc"
-ميگيرم؟
"ERROR: Memory exhausted in AllocSetAlloc"
+Ù
ÙâÚ¯ÙØ±Ù
Ø
4.19)
-از كجا تشخيص دهم كه ويرايش يا نسخه PostgreSQLيي
-كه من استفاده ميكنم چيست؟
4.20) چرا در حین اجرای عملیات روی
-large-objectها خطای "invalid large obj descriptor"به
-وجود می آید؟
از ÙØ¬Ø§ ØªØ´Ø®ÙØµ دÙÙ
ÙÙ ÙÙØ±Ø§ÙØ´ ÙØ§ ÙØ³Ø®Ù PostgreSQLÙÙ
+ÙÙ Ù
Ù Ø§Ø³ØªÙØ§Ø¯Ù Ù
ÙâÙÙÙ
ÚÙØ³ØªØ
4.20) ÚØ±Ø§ در ØÛÙ Ø§Ø¬Ø±Ø§Û Ø¹Ù
ÙÛØ§Øª رÙÛ
+large-objectÙØ§ Ø®Ø·Ø§Û "invalid large obj descriptor"بÙ
+ÙØ¬Ùد Ù
Û Ø¢ÛØ¯Ø
4.21)
-چگونه يك ستون ايجاد كنم كه مقدار زمان جاري را به عنوان مقدار
-پيشفرض داشته باشد؟
ÚÚ¯ÙÙÙ Ù٠ستÙÙ Ø§ÙØ¬Ø§Ø¯ ÙÙÙ
ÙÙ Ù
ÙØ¯Ø§Ø± زÙ
ا٠جار٠را ب٠عÙÙØ§Ù Ù
ÙØ¯Ø§Ø±
+Ù¾ÙØ´âÙØ±Ø¶ داشت٠باشدØ
4.22)
-چرا زير درخواستهايي كه از IN استفاده
-ميكنند كند هستند؟
ÚØ±Ø§ Ø²ÙØ± Ø¯Ø±Ø®ÙØ§Ø³ØªÙاÙÙ Ù٠از IN Ø§Ø³ØªÙØ§Ø¯Ù
+Ù
ÙâÙÙÙØ¯ ÙÙØ¯ ÙØ³ØªÙدØ
4.23)
-چگونه ميتوانم يك الحاق خارجي (outer join)
-انجام دهم؟
ÚÚ¯ÙÙÙ Ù
ÙâØªÙØ§ÙÙ
ÙÙ Ø§ÙØØ§Ù Ø®Ø§Ø±Ø¬Ù (outer join)
+Ø§ÙØ¬Ø§Ù
دÙÙ
Ø
4.24)
-چگونه ميتوان درخواستهايي از چند پايگاه داده توليد كرد؟
ÚÚ¯ÙÙÙ Ù
ÙâØªÙØ§Ù Ø¯Ø±Ø®ÙØ§Ø³ØªÙاÙ٠از ÚÙØ¯ پاÙگا٠داد٠تÙÙÙØ¯ ÙØ±Ø¯Ø
4.25)
-چگونه خروجي يك تابع ميتواند چند رديف يا ستون باشد؟
ÚÚ¯ÙÙÙ Ø®Ø±ÙØ¬Ù Ù٠تابع Ù
ÙâØªÙØ§Ùد ÚÙØ¯ ردÙÙ ÙØ§ ستÙ٠باشدØ
4.26)
-در توابع PL/PgSQL چرا نميتوان با اطمينان
-جداول موقت را ايجاد يا حذف كرد؟
در ØªÙØ§Ø¨Ø¹ PL/PgSQL ÚØ±Ø§ ÙÙ
ÙâØªÙØ§Ù با اطÙ
ÙÙØ§Ù
+جداÙÙ Ù
ÙÙØª را Ø§ÙØ¬Ø§Ø¯ ÙØ§ ØØ°Ù ÙØ±Ø¯Ø
4.27)
-چه گزينههايي براي تكرار (replication)
-وجود دارد؟
Ú٠گزÙÙÙâÙØ§ÙÙ Ø¨Ø±Ø§Ù ØªÙØ±Ø§Ø± (replication)
+ÙØ¬Ùد داردØ
4.28)
-چه گزينههايي براي رمزنگاري وجود دارد؟
+Ú٠گزÙÙÙâÙØ§Ù٠برا٠رÙ
زÙÚ¯Ø§Ø±Ù ÙØ¬Ùد داردØ
-PostgreSQL Ø¨Ù ØµÙØ±Øª
+Post-Gres-Q-Lâ ØªÙÙØ¸ Ù
ÙâØ´ÙØ¯. ÙÙ ÙØ§ÙÙ ØµÙØªÙ در آدرس
-http://www.postfresql.org/postgresql.mp3 براي كساني كه مايلند تلفظ
-صحيح را بشنوند وجود دارد.
-PostgreSQL از روي سيستم مديريت پايگاه
-داده POSTGRES توسعه داده شده است (هنوز هم بعضي مواقع
-براي سادگي به آن Postgres گفته ميشود) كه يك نمونه
-تحقيقاتي از پايگاه دادههاي نسل بعد است. PostgreSQL
-همان الگوي داده قوي و انواع داده را حفظ كرده است ولي زبان
-PostQuel را با يك زيرمجموعه پيشرفته از
-SQL جايگزين كرده است. PostgreSQL
-متن باز بوده و متن كامل آن در دسترس است.
-PostgreSQL توسط
-يك تيم برنامهنويس كه همگي در گروه پست الكترونيك برنامهنويسان
-PostgreSQL عضو هستند، انجام ميشود. هماهنگ كننده
-اصلي در حال حاضر Marc G. Fournier به آدرس
+http://www.postfresql.org/postgresql.mp3â Ø¨Ø±Ø§Ù ÙØ³Ø§ÙÙ ÙÙ Ù
اÙÙÙØ¯ تÙÙØ¸
+صØÙØ Ø±Ø§ بشÙÙÙØ¯ ÙØ¬Ùد دارد.
+PostgreSQL از رÙÙ Ø³ÙØ³ØªÙ
Ù
Ø¯ÙØ±Ùت پاÙگاÙ
+داد٠POSTGRES ØªÙØ³Ø¹Ù داد٠شد٠است (ÙÙÙØ² ÙÙ
بعض٠Ù
ÙØ§Ùع
+برا٠سادگ٠ب٠آ٠Postgres Ú¯ÙØªÙ Ù
ÙâØ´ÙØ¯) ÙÙ ÙÙ ÙÙ
ÙÙÙ
+تØÙÙÙØ§ØªÙ از پاÙگا٠دادÙâÙØ§Ù ÙØ³Ù بعد است. PostgreSQL
+ÙÙ
ا٠اÙÚ¯Ù٠داد٠ÙÙ٠٠اÙÙØ§Ø¹ داد٠را ØÙظ ÙØ±Ø¯Ù است ÙÙ٠زباÙ
+PostQuel را با ÙÙ Ø²ÙØ±Ù
جÙ
ÙØ¹Ù Ù¾ÙØ´Ø±Ùت٠از
+SQL جاÙگزÙÙ ÙØ±Ø¯Ù است. PostgreSQL
+Ù
ت٠باز Ø¨ÙØ¯Ù Ù Ù
ØªÙ ÙØ§Ù
٠آ٠در دسترس است.
+PostgreSQL ØªÙØ³Ø· ÙÙ
+تÙÙ
Ø¨Ø±ÙØ§Ù
ÙâÙÙÙØ³ ÙÙ ÙÙ
گ٠در گرÙ٠پست اÙÙØªØ±ÙÙÙÙ Ø¨Ø±ÙØ§Ù
ÙâÙÙÙØ³Ø§Ù
+PostgreSQL Ø¹Ø¶Ù ÙØ³ØªÙØ¯Ø Ø§ÙØ¬Ø§Ù
Ù
ÙâØ´ÙØ¯. ÙÙ
اÙÙÚ¯ ÙÙÙØ¯Ù
+اصÙ٠در ØØ§Ù ØØ§Ø¶Ø± Marc G. Fournierâ Ø¨Ù آدرس
-scrappy@PostgreSQL.org ميباشد. (براي ديدن نحوه ملحق شدن به اين
-تيم قسمت Ù
ÙâØ¨Ø§Ø´Ø¯. (Ø¨Ø±Ø§Ù Ø¯ÙØ¯Ù ÙØÙÙ Ù
ÙØÙ Ø´Ø¯Ù Ø¨Ù Ø§ÙÙ
+تÙÙ
ÙØ³Ù
ت 1.6
-را ببينيد). اين تيم در حاضر مسئوليت تمام مسائل مربوط به برنامهنويسي
-PostgreSQL را بر عهده دارد. اين يك پروژه گروهي است و
-تحت كنترل هيچ شركتي نيست. براي اطلاعات بيشتر در مورد اين تيم به آدرس
+را ببÙÙÙØ¯). اÙ٠تÙÙ
در ØØ§Ø¶Ø± Ù
سئÙÙÙØª تÙ
اÙ
Ù
سائ٠Ù
Ø±Ø¨ÙØ· Ø¨Ù Ø¨Ø±ÙØ§Ù
ÙâÙÙÙØ³Ù
+PostgreSQL را بر Ø¹ÙØ¯Ù دارد. اÙÙ Ù٠پرÙÚ٠گرÙÙ٠است Ù
+ØªØØª ÙÙØªØ±Ù ÙÙÚ Ø´Ø±ÙØªÙ ÙÙØ³Øª. Ø¨Ø±Ø§Ù Ø§Ø·ÙØ§Ø¹Ø§Øª Ø¨ÙØ´ØªØ± در Ù
ÙØ±Ø¯ اÙ٠تÙÙ
ب٠آدرس
http://www.PostgreSQL.org/docs/faqs/FAQ_DEV.html
-مراجعه كنيد.
-اولين نسخه PostgreSQL
-توسط Andrew Yu and Jolly Chen به وجود آمد. افراد بسياري در توسعه و رفع اشكال و
-انتقال آن شركت كردهاند. متن اصلي Postgres كه
-PostgreSQL از روي آن نوشته شده است، توسط تعداد زيادي
-دانشجوي كارشناسي ارشدو دانشجوي كارشناسي و تيم برنامهنويسي كه تحت نظر پروفسور
-Michael Stonebrake در دانشگاه بركلي،كاليفرنيا كار ميكردهاند نوشته شده است.
-نام اصلي نرم افزار در دانشگاه بركلي
-Postgres بود. در سال 1995 بعد از اضافه شدن
-SQL نام آن به Postgres95
-تغيير داده شد. در سال 1996 نام آن به
-PostgreSQL تغيير داده شد.
-1.2) قوانين كپي رايت در مورد
-PostgreSQL به چه صورت است؟
-PostgreSQL تحت قانون
-كپي رايت زير قرار دارد:
+href="http://www.postgresql.org/docs/faqs/FAQ_DEV.html">
+http://www.PostgreSQL.org/docs/faqs/FAQ_DEV.html
+Ù
راجع٠ÙÙÙØ¯.
+اÙÙÙÙ ÙØ³Ø®Ù PostgreSQLâ
+ØªÙØ³Ø· Andrew Yu and Jolly Chen Ø¨Ù ÙØ¬Ùد Ø¢Ù
د. Ø§ÙØ±Ø§Ø¯ Ø¨Ø³ÙØ§Ø±Ù در ØªÙØ³Ø¹Ù Ù Ø±ÙØ¹ Ø§Ø´ÙØ§Ù Ù
+Ø§ÙØªÙØ§Ù Ø¢Ù Ø´Ø±ÙØª ÙØ±Ø¯ÙâØ§ÙØ¯. Ù
ت٠اصÙÙ Postgres ÙÙ
+PostgreSQL از رÙ٠آ٠ÙÙØ´ØªÙ Ø´Ø¯Ù Ø§Ø³ØªØ ØªÙØ³Ø· تعداد Ø²ÙØ§Ø¯Ù
+Ø¯Ø§ÙØ´Ø¬ÙÙ ÙØ§Ø±Ø´ÙØ§Ø³Ù Ø§Ø±Ø´Ø¯Ù Ø¯Ø§ÙØ´Ø¬ÙÙ ÙØ§Ø±Ø´Ùاس٠٠تÙÙ
Ø¨Ø±ÙØ§Ù
ÙâÙÙÙØ³Ù ÙÙ ØªØØª ÙØ¸Ø± پرÙÙØ³Ùر
+Michael Stonebrake در Ø¯Ø§ÙØ´Ú¯Ø§Ù برÙÙÙØâÙØ§ÙÙÙØ±ÙÙØ§ ÙØ§Ø± Ù
ÙâÙØ±Ø¯ÙâØ§ÙØ¯ ÙÙØ´ØªÙ شد٠است.
+ÙØ§Ù
اصÙÙ ÙØ±Ù
Ø§ÙØ²Ø§Ø± در Ø¯Ø§ÙØ´Ú¯Ø§Ù برÙÙÙ
+Postgresâ Ø¨Ùد. در سا٠1995 بعد از اضاÙ٠شدÙ
+SQL ÙØ§Ù
آ٠ب٠Postgres95
+تغÙÙØ± داد٠شد. در سا٠1996 ÙØ§Ù
آ٠بÙ
+PostgreSQL تغÙÙØ± داد٠شد.
+1.2) ÙÙØ§ÙÙÙ ÙÙ¾Ù Ø±Ø§ÙØª در Ù
ÙØ±Ø¯
+PostgreSQL ب٠ÚÙ ØµÙØ±Øª استØ
+PostgreSQL ØªØØª ÙØ§ÙÙÙ
+ÙÙ¾Ù Ø±Ø§ÙØª Ø²ÙØ± ÙØ±Ø§Ø± دارد:
PostgreSQL Data Base Management System
-Portions Copyright (c) 1996-2005, PostgreSQL Global Development Group
-Portions Copyright (c) 1994-6 Regents of the University of California
-Permission to use, copy, modify, and distribute this software and its
-documentation for any purpose, without fee, and without a written agreement is
-hereby granted, provided that the above copyright notice and this paragraph and
-the following two paragraphs appear in all copies.
-IN NO EVENT SHALL THE UNIVERSITY OF CALIFORNIA BE LIABLE TO ANY PARTY FOR
-DIRECT, INDIRECT, SPECIAL, INCIDENTAL, OR CONSEQUENTIAL DAMAGES, INCLUDING LOST
-PROFITS, ARISING OUT OF THE USE OF THIS SOFTWARE AND ITS DOCUMENTATION, EVEN IF
-THE UNIVERSITY OF CALIFORNIA HAS BEEN ADVISED OF THE POSSIBILITY OF SUCH
-DAMAGE.
-THE UNIVERSITY OF CALIFORNIA SPECIFICALLY DISCLAIMS ANY WARRANTIES,
-INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND
-FITNESS FOR A PARTICULAR PURPOSE. THE SOFTWARE PROVIDED HEREUNDER IS ON AN "AS
-IS" BASIS, AND THE UNIVERSITY OF CALIFORNIA HAS NO OBLIGATIONS TO PROVIDE
-MAINTENANCE, SUPPORT, UPDATES, ENHANCEMENTS, OR MODIFICATIONS.
-قانون بالا ليسانس BSD
-كه يك ليسانس كلاسيك براي متنهاي باز است ميباشد. هيچ محدوديتي در مورد نحوه
-استفاده از متن در آن ديده نميشود. ما آن را دوست داريم و هيچ قصدي براي تغيير آن
-نداريم.
-1.3) PostgreSQL روي چه نوع
-يونيكسهايي اجرا ميشود؟
-در حالت كلي PostgreSQL
-روي هر پلتفرم (سكوي) سازگار با يونيكس اجرا ميشود. ليست پلتفرمهايي كه تاكنون
-PostgreSQL روي آنها نصب و تست شده است درقسمت
-دستورالعملهاي نصب آمده است.
-1.4) روي چه محيطهاي غير يونيكسي ميتوان آن
-را اجرا كرد؟
+Portions copyright (c) 1996-2004, PostgreSQL
+Global Development Group Portions Copyright (c) 1994-6 Regents of the University
+of California
+Permission to use, copy, modify, and distribute
+this software and its documentation for any purpose, without fee, and without a
+written agreement is hereby granted, provided that the above copyright notice
+and this paragraph and the following two paragraphs appear in all copies.
+IN NO EVENT SHALL THE UNIVERSITY OF CALIFORNIA
+BE LIABLE TO ANY PARTY FOR DIRECT, INDIRECT, SPECIAL, INCIDENTAL, OR
+CONSEQUENTIAL DAMAGES, INCLUDING LOST PROFITS, ARISING OUT OF THE USE OF THIS
+SOFTWARE AND ITS DOCUMENTATION, EVEN IF THE UNIVERSITY OF CALIFORNIA HAS BEEN
+ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+THE UNIVERSITY OF CALIFORNIA SPECIFICALLY
+DISCLAIMS ANY WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES
+OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE. THE SOFTWARE PROVIDED
+HEREUNDER IS ON AN "AS IS" BASIS, AND THE UNIVERSITY OF CALIFORNIA HAS NO
+OBLIGATIONS TO PROVIDE MAINTENANCE, SUPPORT, UPDATES, ENHANCEMENTS, OR
+MODIFICATIONS.
+ÙØ§ÙÙÙ Ø¨Ø§ÙØ§ ÙÙØ³Ø§Ùس BSD
+ÙÙ ÙÙ ÙÙØ³Ø§Ùس ÙÙØ§Ø³Ù٠برا٠Ù
تÙâÙØ§Ù باز است Ù
ÙâØ¨Ø§Ø´Ø¯. ÙÙÚ Ù
ØØ¯ÙØ¯ÙØªÙ در Ù
ÙØ±Ø¯ ÙØÙÙ
+Ø§Ø³ØªÙØ§Ø¯Ù از Ù
ت٠در Ø¢Ù Ø¯ÙØ¯Ù ÙÙ
ÙâØ´ÙØ¯. Ù
ا آ٠را Ø¯ÙØ³Øª دارÙÙ
Ù ÙÙÚ ÙØµØ¯Ù برا٠تغÙÙØ± Ø¢Ù
+ÙØ¯Ø§Ø±ÙÙ
.
+1.3) PostgreSQLâ
+رÙÙ ÚÙ ÙÙØ¹ ÙÙÙÙÙØ³ÙاÙ٠اجرا Ù
ÙâØ´ÙØ¯Ø
+در ØØ§Ùت ÙÙÙ PostgreSQL
+رÙÙ ÙØ± Ù¾ÙØªÙرÙ
(سÙÙÙ) سازگار با ÙÙÙÙÙØ³ اجرا Ù
ÙâØ´ÙØ¯. ÙÙØ³Øª Ù¾ÙØªÙرÙ
ÙØ§ÙÙ Ù٠تاÙÙÙÙ
+PostgreSQLâ Ø±Ù٠آÙÙØ§ ÙØµØ¨ ٠تست شد٠است Ø¯Ø±ÙØ³Ù
ت
+Ø¯Ø³ØªÙØ±Ø§ÙعÙ
ÙÙØ§Ù ÙØµØ¨ Ø¢Ù
د٠است.
+1.4)
+رÙÙ ÚÙ Ù
ØÙØ·ÙØ§Ù ØºÙØ± ÙÙÙÙÙØ³Ù Ù
ÙâØªÙØ§Ù آ٠را اجرا ÙØ±Ø¯Ø
Client
-ميتوان psql,
-كتابخانه libpq و ساير واسطها و برنامههاي كاربردي را
-طوري كامپيل كرد كه روي محيطهاي ويندوز نيز اجرا شوند. در اين حالت
-Client روي ويندوز اجرا ميشود و از طربق شبكه و پروتكل
-TCP/IP با يك سرور كه روي يك پلتفرم لينوكس در حال
-اجراست ارتباط برقرار ميكند.يك فايل win32.mak همراه با
-كدهاي PostgreSQL وجود دارد كه براي كامپيل كردن
-كتابخانه libpq و برنامه psql
-ميباشد. PostgreSQL همچنين
-امكان ارتباط به صورت ODBC را نيز دارد.
+Ù
ÙâØªÙØ§Ù psql,
+ÙØªØ§Ø¨Ø®Ø§ÙÙ libpq Ù Ø³Ø§ÙØ± ÙØ§Ø³Ø·Ùا Ù Ø¨Ø±ÙØ§Ù
ÙâÙØ§Ù ÙØ§Ø±Ø¨Ø±Ø¯Ù را
+Ø·ÙØ±Ù ÙØ§Ù
Ù¾ÙÙ ÙØ±Ø¯ Ù٠رÙÙ Ù
ØÙØ·ÙØ§Ù ÙÙÙØ¯Ùز ÙÙØ² اجرا Ø´ÙÙØ¯. در اÙÙ ØØ§Ùت
+Client رÙÙ ÙÙÙØ¯Ùز اجرا Ù
ÙâØ´ÙØ¯ ٠از طرب٠شبÙÙ Ù Ù¾Ø±ÙØªÙÙ
+TCP/IP با ÙÙ Ø³Ø±ÙØ± Ù٠رÙÙ ÙÙ Ù¾ÙØªÙرÙ
ÙÙÙÙÙØ³ در ØØ§Ù
+اجراست ارتباط Ø¨Ø±ÙØ±Ø§Ø± Ù
ÙâÙÙØ¯.ÙÙ ÙØ§ÙÙ win32.mak ÙÙ
را٠با
+ÙØ¯Ùا٠PostgreSQL ÙØ¬Ùد دارد ÙÙ Ø¨Ø±Ø§Ù ÙØ§Ù
Ù¾ÙÙ ÙØ±Ø¯Ù
+ÙØªØ§Ø¨Ø®Ø§ÙÙ libpq Ù Ø¨Ø±ÙØ§Ù
Ù psql
+Ù
ÙâØ¨Ø§Ø´Ø¯. PâostgreSQLâ ÙÙ
ÚÙÙÙ
+اÙ
ÙØ§Ù ارتباط Ø¨Ù ØµÙØ±Øª ODBCâ Ø±Ø§ ÙÙØ² دارد.
Server
-با استفاده از
-Cygwin و كتابخانه Cygnus
-ميتوان پايگاه داده را روي ويندوز NT و يا
-Win2K اجرا كرد.براي ديدن اطلاعات بيشتر فايل
+با Ø§Ø³ØªÙØ§Ø¯Ù از
+Cygwinâ Ù ÙØªØ§Ø¨Ø®Ø§ÙÙ Cygnus
+Ù
ÙâØªÙØ§Ù پاÙگا٠داد٠را رÙÙ ÙÙÙØ¯Ùز NT Ù ÙØ§
+Win2K اجرا ÙØ±Ø¯.Ø¨Ø±Ø§Ù Ø¯ÙØ¯Ù Ø§Ø·ÙØ§Ø¹Ø§Øª Ø¨ÙØ´ØªØ± ÙØ§ÙÙ
pgsql/doc/FAQ_MSWIN
-را كه بهمراه توزبعهاي PostgreSQL آمده است
-ببينيد و يا اينكه به اين صفحه http://www.PostgreSQL.org/docs/faqs/text/FAQ_MSWIN
-مراجعه كنيد.
-در حال حاضر يك عمليات انتقال
-PostgreSQL به روي سكوهاي Win NT/2000/XP در
-جريان است. براي ديدن وضعيت اين پروژه به سايتهاي âØ±Ø§ Ù٠بÙÙ
Ø±Ø§Ù ØªÙØ²Ø¨Ø¹âÙØ§Ù PostgreSQL Ø¢Ù
د٠است
+ببÙÙÙØ¯ Ù ÙØ§ اÙÙÙ٠ب٠اÙÙ ØµÙØÙ
+http://www.PostgreSQL.org/docs/faqs/text/FAQ_MSWIN
+Ù
راجع٠ÙÙÙØ¯.
+در ØØ§Ù ØØ§Ø¶Ø± Ù٠عÙ
ÙÙØ§Øª Ø§ÙØªÙاÙ
+PostgreSQL ب٠رÙ٠سÙÙÙØ§Ù Win NT/2000/XP در
+Ø¬Ø±ÙØ§Ù است. Ø¨Ø±Ø§Ù Ø¯ÙØ¯Ù ÙØ¶Ø¹Ùت اÙ٠پرÙÚÙ Ø¨Ù Ø³Ø§ÙØªâÙØ§Ù
-http://momjian.postgresql.org/main/writings/pgsql/win32.htm و http://techdocs.postgresql.org/guides/Windows
-مراجعه كنيد.
-همچنين يك عمليات انتقال بر روي
-Novell Netware 6 نيز در حال انجام است كه در سايت http://forge.novell.com ميتوانيد اطلاعات
-بيشتر را ببينيد.
+http://momjian.postgresql.org/main/writings/pgsql/win32.htm Ù
+http://techdocs.postgresql.org/guides/Windows
+Ù
راجع٠ÙÙÙØ¯.
+ÙÙ
ÚÙÙÙ Ù٠عÙ
ÙÙØ§Øª Ø§ÙØªÙا٠بر رÙÙ
+Novell Netware 6 ÙÙØ² در ØØ§Ù Ø§ÙØ¬Ø§Ù
است Ù٠در Ø³Ø§ÙØª http://forge.novell.com Ù
ÙâØªÙØ§ÙÙØ¯ Ø§Ø·ÙØ§Ø¹Ø§Øª
+Ø¨ÙØ´ØªØ± را ببÙÙÙØ¯.
1.5) PostgreSQL
-را از كجا ميتوانم بگيرم؟
-PostgreSQL را از
-سايت اصلي آن ftp://ftp.PostgreSQL.org/pub ميتوانيد
-بگيريد. در صفحه اصلي سايت ليست ساير آدرسهايي كه ميتوانيد
-PostgreSQL را از آنها بگيريد آمده است.
-1.6) از كجا خدمات پشتيباني بگيرم؟
-گروه پستي اصلي
+PostgreSQLâ Ø±Ø§ از
+Ø³Ø§ÙØª اصÙ٠آ٠ftp://ftp.PostgreSQL.org/pub Ù
ÙâØªÙØ§ÙÙØ¯
+Ø¨Ú¯ÙØ±Ùد. در ØµÙØÙ Ø§ØµÙÙ Ø³Ø§ÙØª ÙÙØ³Øª Ø³Ø§ÙØ± Ø¢Ø¯Ø±Ø³ÙØ§ÙÙ ÙÙ Ù
ÙâØªÙØ§ÙÙØ¯
+PostgreSQLâ Ø±Ø§ از Ø¢ÙÙØ§ Ø¨Ú¯ÙØ±Ùد Ø¢Ù
د٠است.
+1.6)
+از ÙØ¬Ø§ خدÙ
ات Ù¾Ø´ØªÙØ¨Ø§ÙÙ Ø¨Ú¯ÙØ±Ù
Ø
+گرÙ٠پست٠اصÙÙ pgsql-general@PostgreSQL.org
-ميباشد. اين گروه براي بحث در مورد موضوعات مختلف در زمينه
-PostgreSQL است. براي عضو شدن در اين گروه پستي يك نامه الكترونيكي
-به آدرس گروه با
-محتوياتی كه در ادامه آمده است ارسال كنيد. در قسمت
-Subject چيزي ننويسيد.
+Ù
ÙâØ¨Ø§Ø´Ø¯. اÙ٠گرÙÙ Ø¨Ø±Ø§Ù Ø¨ØØ« در Ù
ÙØ±Ø¯ Ù
ÙØ¶Ùعات Ù
ختÙ٠در زÙ
ÙÙÙ
+PostgreSQL است. برا٠عض٠شد٠در اÙ٠گرÙ٠پست٠ÙÙ ÙØ§Ù
٠اÙÙØªØ±ÙÙÙÙ٠ب٠آدرس
+گرÙ٠با Ù
ØØªÙÙØ§ØªÛ Ù٠در اداÙ
٠آÙ
د٠است ارسا٠ÙÙÙØ¯. در ÙØ³Ù
ت
+Subject ÚÙØ²Ù ÙÙÙÙØ³Ùد.
-آدرس گروه: pgsql-general-request@PostgreSQL.org
-همچنين يك گروه پستي هم به صورت ارسال چكيده
-پيامها وجود دارد. براي عضو شدن در اين گروه يك نامه با محتويات زير به
-این آدرس
-ارسال كنيد. pgsql-general-digest-request@PostgreSQL.org
+آدرس گرÙÙ:
+pgsql-general-request@PostgreSQL.org
+ÙÙ
ÚÙÙÙ Ù٠گرÙ٠پست٠ÙÙ
Ø¨Ù ØµÙØ±Øª ارسا٠ÚÙÙØ¯Ù
+Ù¾ÙØ§Ù
ÙØ§ ÙØ¬Ùد دارد. برا٠عض٠شد٠در اÙ٠گرÙÙ ÙÙ ÙØ§Ù
٠با Ù
ØØªÙÙØ§Øª Ø²ÙØ± ب٠اÛ٠آدرس
+ارسا٠ÙÙÙØ¯.
+pgsql-general-digest-request@PostgreSQL.org
-در اين گروه هر موقع حجم نامهها به 30 كيلوبايت
-رسيد براي تمام اعضاء ارسال ميشود.
-گروه پستي بررسي اِشكالات هم وجود دارد. براي عضو
-شدن در اين گروه يك نامه با محتويات زير به
+در اÙ٠گرÙÙ ÙØ± Ù
ÙÙØ¹ ØØ¬Ù
ÙØ§Ù
ÙâÙØ§ ب٠30 ÙÙÙÙØ¨Ø§Ùت
+Ø±Ø³ÙØ¯ برا٠تÙ
اÙ
اعضاء ارسا٠Ù
ÙâØ´ÙØ¯.
+گرÙÙ Ù¾Ø³ØªÙ Ø¨Ø±Ø±Ø³Ù Ø§ÙØ´ÙØ§ÙØ§Øª ÙÙ
ÙØ¬Ùد دارد. برا٠عضÙ
+شد٠در اÙ٠گرÙÙ ÙÙ ÙØ§Ù
٠با Ù
ØØªÙÙØ§Øª Ø²ÙØ± بÙ
pgsql-bugs-request@PostgreSQL.org
-ارسال كنيد.
+href="mailto:pgsql-bugs-request@PostgreSQL.org">
+pgsql-bugs-request@PostgreSQL.org
+ارسا٠ÙÙÙØ¯.
-گروه پستي مخصوص توسعه دهندگان
-(برنامهنويسان) نيز وجوددارد. براي عضويت در اين گروه يك نامه به آدرس زير با
-محتويات مشخص شده ارسال كنيد.
+گرÙ٠پست٠Ù
Ø®ØµÙØµ ØªÙØ³Ø¹Ù دÙÙØ¯Ú¯Ø§Ù (Ø¨Ø±ÙØ§Ù
ÙâÙÙÙØ³Ø§Ù)
+ÙÙØ² ÙØ¬Ùددارد. برا٠عضÙÙØª در اÙ٠گرÙÙ ÙÙ ÙØ§Ù
٠ب٠آدرس Ø²ÙØ± با Ù
ØØªÙÙØ§Øª Ù
شخص شدÙ
+ارسا٠ÙÙÙØ¯.
pgsql-hackers-request@PostgreSQL.org
@@ -391,280 +397,293 @@ href="mailto:pgsql-hackers-request@PostgreSQL.org">pgsql-hackers-
end
-گروههاي پستي ديگري نيز در زمينه
-PostgreSQL وجود دارد كه ميتوانيد در سايت http://www.postgresql.org ببينيد.
-همچنين يك كانال IRC
-روي Freenode و EFNet بنام PostgreSQL#
-وجود دارد. شما ميتوانيد از فرمان يونيكسي
-irc -c '#PostgreSQL'
-"$USER" irc.phoenix.net.
يا
-irc -c '#PostgreSQL' "$USER" irc.freenode.net
-استفاده كنيد.
-ليست شركتهايي كه از طريق آنها ميتوانيد خدمات
-پشتيباني تجاري در زمينه PostgreSQL دريافت كنيد در اين
-آدرس http://techdocs.postgresql.org/companies.php
-موجود است.
+گرÙÙÙØ§Ù پست٠دÙگر٠ÙÙØ² در زÙ
ÙÙÙ
+PostgreSQLâ ÙØ¬Ùد دارد ÙÙ Ù
ÙâØªÙØ§ÙÙØ¯ در Ø³Ø§ÙØª http://www.postgresql.org ببÙÙÙØ¯.
+ÙÙ
ÚÙÙÙ ÙÙ ÙØ§Ùا٠IRC
+رÙÙ Freenode Ù EFNet Ø¨ÙØ§Ù
+PostgreSQL#
+ÙØ¬Ùد دارد. Ø´Ù
ا Ù
ÙâØªÙØ§ÙÙØ¯ از ÙØ±Ù
ا٠ÙÙÙÙÙØ³Ù
+irc -c '#PostgreSQL' "$USER" irc.phoenix.net.
+ÙØ§
+irc -c '#PostgreSQL' "$USER" irc.freenode.net
+Ø§Ø³ØªÙØ§Ø¯Ù ÙÙÙØ¯.
+ÙÙØ³Øª Ø´Ø±ÙØªÙاÙÙ Ù٠از طرÙ٠آÙÙØ§ Ù
ÙâØªÙØ§ÙÙØ¯ خدÙ
ات
+Ù¾Ø´ØªÙØ¨Ø§Ù٠تجار٠در زÙ
ÙÙÙ PostgreSQL Ø¯Ø±ÙØ§Ùت ÙÙÙØ¯ در اÙÙ
+آدرس
+http://techdocs.postgresql.org/companies.php
+Ù
ÙØ¬Ùد است.
1.7)
-آخرين نسخه اعلام شده چيست؟
-آخرين نسخه PostgreSQL
- كه وجود دارد 7.4.3 است.
-هدف ما آن است كه هر 6 ماه تا 8 ماه يك نسخه جديد
-ارائه شود.
-1.8) چه مستندات و راهنمائيهايي وجود دارند؟
-چندين كتابچه و صفحات راهنما و مثالهاي كوچك
-همراه با متن اصلي PostgreSQL در شاخه
-doc وجود دارد. براي ديدن صفحات راهنما ميتوانيد به
-سايت
+آخرÙÙ ÙØ³Ø®Ù PostgreSQLâ
+ ÙÙ ÙØ¬Ùد دارد 7.4.3 است.
+ÙØ¯Ù Ù
ا آ٠است ÙÙ ÙØ± 6 Ù
ا٠تا 8 Ù
ا٠ÙÙ ÙØ³Ø®Ù Ø¬Ø¯ÙØ¯
+Ø§Ø±Ø§Ø¦Ù Ø´ÙØ¯.
+1.8)
+ÚÙ Ù
Ø³ØªÙØ¯Ø§Øª ٠راÙÙÙ
ائÙÙØ§ÙÙ ÙØ¬Ùد Ø¯Ø§Ø±ÙØ¯Ø
+ÚÙØ¯ÙÙ ÙØªØ§Ø¨ÚÙ Ù ØµÙØØ§Øª راÙÙÙ
ا Ù Ù
ثاÙÙØ§Ù ÙÙÚÙ
+ÙÙ
را٠با Ù
ت٠اصÙÙ PostgreSQLâ Ø¯Ø± شاخÙ
+doc ÙØ¬Ùد دارد. Ø¨Ø±Ø§Ù Ø¯ÙØ¯Ù ØµÙØØ§Øª راÙÙÙ
ا Ù
ÙâØªÙØ§ÙÙØ¯ بÙ
+Ø³Ø§ÙØª http://www.PostgreSQL.org/docs
- نيز مراجعه نماييد.
-دو كتاب در زمينه PostgreSQL
- در آدرسهاي ÙÙØ² Ù
راجع٠ÙÙ
اÙÙØ¯.
+Ø¯Ù ÙØªØ§Ø¨ در زÙ
ÙÙÙ PostgreSQLâ
+ در آدرسâÙØ§Ù
http://www.PostgreSQL.org/docs/awbook.htm
-و http://www.commandprompt.com/ppbook
-وجود دارد. ليستي از كتابهايي كه قابل خريد است در آدرس http://techdocs.PostgreSQL.org/techdocs/bookreviews.php
-وجود دارد. همچنين ليستي از مقالات فني در مورد
-PostgreSQL در آدرس
+http://techdocs.PostgreSQL.org/techdocs/bookreviews.php
+ÙØ¬Ùد دارد. ÙÙ
ÚÙÙÙ ÙÙØ³ØªÙ از Ù
ÙØ§Ùات ÙÙ٠در Ù
ÙØ±Ø¯
+PostgreSQL در آدرس http://techdocs.PostgreSQL.org
-وجود دارد.
-برنامه psql يك دستور
-d\ دارد كه اطلاعاتي در مورد انواع دادههاي قابل تعريف
-و عملگرها و توابع و ... به ما نشان ميدهد. در سايت اصلي ما اطلاعات بيشتري را
-ميتوانيد پيدا كنيد.
+ÙØ¬Ùد دارد.
+Ø¨Ø±ÙØ§Ù
Ù psql ÙÙ Ø¯Ø³ØªÙØ±
+d\ دارد ÙÙ Ø§Ø·ÙØ§Ø¹Ø§ØªÙ در Ù
ÙØ±Ø¯ اÙÙØ§Ø¹ دادÙâÙØ§Ù ÙØ§Ø¨Ù تعرÙÙ
+٠عÙ
ÙگرâÙØ§ Ù ØªÙØ§Ø¨Ø¹ Ù ... ب٠Ù
ا ÙØ´Ø§Ù Ù
ÙâØ¯ÙØ¯. در Ø³Ø§ÙØª اصÙÙ Ù
ا Ø§Ø·ÙØ§Ø¹Ø§Øª Ø¨ÙØ´ØªØ±Ù را
+Ù
ÙâØªÙØ§ÙÙØ¯ Ù¾ÙØ¯Ø§ ÙÙÙØ¯.
1.9)
-چگونه ميتوانم ازاشكالات شناخته شده و يا امكاناتي كه در اين
-پايگاه داده وجود ندارد مطلع شوم؟
-PostgreSQL يك زير
-مجموعه پيشرفته از SQL-92 را پشتيباني ميكند. در ليست
+ÚÚ¯ÙÙÙ Ù
ÙâØªÙØ§ÙÙ
Ø§Ø²Ø§Ø´ÙØ§Ùات Ø´ÙØ§Ø®ØªÙ Ø´Ø¯Ù Ù ÙØ§ اÙ
ÙØ§Ùات٠Ù٠در اÙÙ
+پاÙÚ¯Ø§Ù Ø¯Ø§Ø¯Ù ÙØ¬Ùد ÙØ¯Ø§Ø±Ø¯ Ù
Ø·ÙØ¹ Ø´ÙÙ
Ø
+
PostgreSQL ÙÙ Ø²ÙØ±
+Ù
جÙ
ÙØ¹Ù Ù¾ÙØ´Ø±Ùت٠از SQL-92 را Ù¾Ø´ØªÙØ¨Ø§ÙÙ Ù
ÙâÙÙØ¯. در ÙÙØ³Øª
TODO اِشكالات
-شناخته شده يا امكاناتي كه وجود ندارد و يا برنامههاي آينده آمده است.
-1.10) چگونه ميتوانم زبان
-SQL را ياد بگيرم؟
-كتاب PostgreSQL در
-آدرس SQL http://www.PostgreSQL.org/docs/awbook.html
-را آموزش ميدهد. همچنين يك كتاب در آدرس TODO Ø§ÙØ´ÙØ§ÙØ§Øª
+Ø´ÙØ§Ø®ØªÙ Ø´Ø¯Ù ÙØ§ اÙ
ÙØ§Ùات٠ÙÙ ÙØ¬Ùد ÙØ¯Ø§Ø±Ø¯ Ù ÙØ§ Ø¨Ø±ÙØ§Ù
ÙââÙØ§Ù Ø¢ÙÙØ¯Ù Ø¢Ù
د٠است.
+1.10)
+ÚÚ¯ÙÙÙ Ù
ÙâØªÙØ§ÙÙ
زباÙ
+SQL را ÙØ§Ø¯ Ø¨Ú¯ÙØ±Ù
Ø
+ÙØªØ§Ø¨ PostgreSQL در
+آدرس SQL
+http://www.PostgreSQL.org/docs/awbook.html
+âØ±Ø§ Ø¢Ù
ÙØ²Ø´ Ù
ÙâØ¯ÙØ¯. ÙÙ
ÚÙÙÙ ÙÙ ÙØªØ§Ø¨ در آدرس http://www.commandprompt.com/ppbook
-وجود دارد. يك راهنماي خيلي خوب هم در سايتهاي http://www.intermedia.net/support/sql/sqltut.shtm
-و http://ourworld.compuserve.com/homepages/graeme_birchall/HTM_COOK.HTM
-و http://sqlcourse.com در مورد
-SQL وجود دارد.
-كتاب ديگري كه ميتوان براي يادگيري
-SQL از آن استفاده كرد كتاب "SQL
-را در 21 روز ياد بگيريد، ويرايش دوم" در سايت http://members.tripod.com/er4ebus/sql/index.htm
-ميباشد.
-تعداد زيادي از كاربران كتاب
-The Practical SQL را ترجيح ميدهند. كتاب ديگر The
-Complete Refrence SQL انتشارات McGraw-Hill
-ميباشد.
+ÙØ¬Ùد دارد. Ù٠راÙÙÙ
ا٠خÙÙÙ Ø®ÙØ¨ ÙÙ
در Ø³Ø§ÙØªâÙØ§Ù
+http://www.intermedia.net/support/sql/sqltut.shtm
+Ù
+http://ourworld.compuserve.com/homepages/graeme_birchall/HTM_COOK.HTM
+Ù http://sqlcourse.com در Ù
ÙØ±Ø¯
+SQL ÙØ¬Ùد دارد.
+ÙØªØ§Ø¨ دÙگر٠ÙÙ Ù
ÙâØªÙØ§Ù Ø¨Ø±Ø§Ù ÙØ§Ø¯Ú¯ÙرÙ
+SQL از Ø¢Ù Ø§Ø³ØªÙØ§Ø¯Ù ÙØ±Ø¯ ÙØªØ§Ø¨ "SQL
+را در 21 Ø±ÙØ² ÙØ§Ø¯ Ø¨Ú¯ÙØ±ÙدØâ ÙÙØ±Ø§ÙØ´ دÙÙ
" در Ø³Ø§ÙØª
+http://members.tripod.com/er4ebus/sql/index.htm
+Ù
ÙâØ¨Ø§Ø´Ø¯.
+تعداد Ø²ÙØ§Ø¯Ù از ÙØ§Ø±Ø¨Ø±Ø§Ù ÙØªØ§Ø¨
+The Practical SQL را ØªØ±Ø¬ÙØ Ù
ÙâØ¯ÙÙØ¯. ÙØªØ§Ø¨ دÙگر The
+Complete Refrence SQL Ø§ÙØªØ´Ø§Ø±Ø§Øª McGraw-Hill
+Ù
ÙâØ¨Ø§Ø´Ø¯.
1.11)
-آيا PostgreSQL
-مشكل Y2K
-دارد يا خير؟
-خير،PostgreSQL با
-تاريخهاي قبل و بعد از 2000 مشكلي ندارد.
-1.12) چگونه ميتوانم به تيم برنامه نويس
+Ø¢ÙØ§ PostgreSQL
+Ù
Ø´ÙÙ Y2Kâ
+دارد ÙØ§ Ø®ÙØ±Ø
+Ø®ÙØ±ØâPostgreSQLâ Ø¨Ø§
+ØªØ§Ø±ÙØ®âÙØ§Ù ÙØ¨Ù ٠بعد از 2000 Ù
Ø´ÙÙÙ ÙØ¯Ø§Ø±Ø¯.
+1.12)
+ÚÚ¯ÙÙÙ Ù
ÙâØªÙØ§ÙÙ
ب٠تÙÙ
Ø¨Ø±ÙØ§Ù
Ù ÙÙÙØ³
PostgreSQL
-ملحق شوم؟
-ابتدا،آخرين سورس را دونلود كرده و مستندات
-مربوط به برنامهنويسي PostgreSQL را در سايت مطالعه
-كنيد. سپس به گروههاي پستي pgsql-patches
-و pgsql-hackers
- عضو شويد. در مرحله آخر وصلههاي با كيفيت بالا را به
-pgsql-patches ارسال كنيد.
-تعداد زيادي از برنامهنويسان وجود دارند كه
-امتياز انجام تغييرات در cvs را دارند. هر كدام از آنها
-تعداد زيادي وصله با كيفيت بالا به گروه ارسال كردهاند كه اعتماد گردانندگان
-PostgreSQL را به دست آوردهاند.
+Ù
ÙØÙ Ø´ÙÙ
Ø
+
ابتداØâآخرÙÙ Ø³ÙØ±Ø³ را دÙÙÙÙØ¯ ÙØ±Ø¯Ù Ù Ù
Ø³ØªÙØ¯Ø§Øª
+Ù
Ø±Ø¨ÙØ· Ø¨Ù Ø¨Ø±ÙØ§Ù
ÙâÙÙÙØ³Ù PostgreSQL را در Ø³Ø§ÙØª Ù
Ø·Ø§ÙØ¹Ù
+ÙÙÙØ¯. سپس ب٠گرÙÙÙØ§Ù پست٠â pgsql-patches
+Ù pgsql-hackers
+ عض٠شÙÙØ¯. در Ù
رØÙ٠آخر ÙØµÙÙâÙØ§Ù با ÙÙÙÙØª Ø¨Ø§ÙØ§ را بÙ
+pgsql-patches ارسا٠ÙÙÙØ¯.
+تعداد Ø²ÙØ§Ø¯Ù از Ø¨Ø±ÙØ§Ù
ÙâÙÙÙØ³Ø§Ù ÙØ¬Ùد Ø¯Ø§Ø±ÙØ¯ ÙÙ
+اÙ
ØªÙØ§Ø² Ø§ÙØ¬Ø§Ù
تغÙÙØ±Ø§Øª در cvsâ Ø±Ø§ Ø¯Ø§Ø±ÙØ¯. ÙØ± ÙØ¯Ø§Ù
از Ø¢ÙÙØ§
+تعداد Ø²ÙØ§Ø¯Ù ÙØµÙÙââ Ø¨Ø§ ÙÙÙÙØª Ø¨Ø§ÙØ§ ب٠گرÙÙ Ø§Ø±Ø³Ø§Ù ÙØ±Ø¯ÙâØ§ÙØ¯ Ù٠اعتÙ
اد گرداÙÙØ¯Ú¯Ø§Ù
+PostgreSQL را ب٠دست Ø¢ÙØ±Ø¯ÙâØ§ÙØ¯.
1.13)
-چگونه ميتوانم يك اِشكال را به گروه برنامه نويس اعلام كنم؟
-لطفاً صفحه مربوط به اِشكالات
-PostgreSQL را در سايت http://www.PostgreSQL.org/bugs/bugs.php
-مشاهده كنيد. در اين سايت نحوه گزارش و ارسال يك
-اشكال توضيح داده شده است.
- همچنين براي
-ديدن نسخههاي جديدتر PostgreSQL و يا وجود يك وصله جديد
-از سايت ftp://ftp.PostgreSQL.org/pub بازديد
-كنيد.
+ÚÚ¯ÙÙÙ Ù
ÙâØªÙØ§ÙÙ
ÙÙ Ø§ÙØ´Ùا٠را ب٠گرÙÙ Ø¨Ø±ÙØ§Ù
Ù ÙÙÙØ³ Ø§Ø¹ÙØ§Ù
ÙÙÙ
Ø
+ÙØ·ÙØ§Ù ØµÙØÙ Ù
Ø±Ø¨ÙØ· Ø¨Ù Ø§ÙØ´ÙØ§ÙØ§Øª
+PostgreSQL را در Ø³Ø§ÙØª
+http://www.PostgreSQL.org/bugs/bugs.php
+Ù
Ø´Ø§ÙØ¯Ùâ ÙÙÙØ¯. در اÙÙ Ø³Ø§ÙØª ÙØÙ٠گزارش ٠ارسا٠ÙÙ
+Ø§Ø´ÙØ§Ù ØªÙØ¶ÙØ Ø¯Ø§Ø¯Ù Ø´Ø¯Ù Ø§Ø³Øª.
+ ÙÙ
ÚÙÙÙ Ø¨Ø±Ø§Ù Ø¯ÙØ¯Ù
+ÙØ³Ø®ÙâÙØ§Ù Ø¬Ø¯ÙØ¯ØªØ± PostgreSQL Ù ÙØ§ ÙØ¬Ùد ÙÙ ÙØµÙÙ Ø¬Ø¯ÙØ¯ از
+Ø³Ø§ÙØª ftp://ftp.PostgreSQL.org/pub Ø¨Ø§Ø²Ø¯ÙØ¯
+ÙÙÙØ¯.
1.14)
-وضعيت
-PostgreSQL در
-مقايسه با ساير DBMSها به چه
-صورت است؟
-راههاي مختلفي براي اندازهگيري و مقايسه
-نرمافزارها وجود دارد كه عبارتند از امكانات، كارايي، قابليت اعتماد، پشتيباني و
-قيمت
+ÙØ¶Ø¹Ùت
+PostgreSQLâ Ø¯Ø±
+Ù
ÙØ§Ùس٠با Ø³Ø§ÙØ± DBMSÙØ§ ب٠ÚÙ
+ØµÙØ±Øª استØ
+راÙÙØ§Ù Ù
ختÙÙÙ Ø¨Ø±Ø§Ù Ø§ÙØ¯Ø§Ø²ÙâÚ¯ÙØ±Ù Ù Ù
ÙØ§ÙسÙ
+ÙØ±Ù
âØ§ÙØ²Ø§Ø±Ùا ÙØ¬Ùد دارد ÙÙ Ø¹Ø¨Ø§Ø±ØªÙØ¯ از اÙ
ÙØ§ÙØ§ØªØ ÙØ§Ø±Ø§ÙÙØ ÙØ§Ø¨ÙÙØª اعتÙ
Ø§Ø¯Ø Ù¾Ø´ØªÙØ¨Ø§ÙÙ Ù
+ÙÙÙ
ت
- - امكانات
- - PostgreSQL بيشتر امكانات
- موجود در سيستمهاي پايگاه داده تجاري بزرگ نظير
+
- اÙ
ÙØ§Ùات
+ - PostgreSQL Ø¨ÙØ´ØªØ± اÙ
ÙØ§Ùات
+ Ù
ÙØ¬Ùد در Ø³ÙØ³ØªÙ
âÙØ§Ù پاÙگا٠داد٠تجار٠بزرگ ÙØ¸Ùر
transactions, subselets, triggers, views, foreign key referential integrity
- و sophisticated locking را دارد. در
- PostgreSQL امكاناتي وجود دارد كه پايگاههاي داده
- ديگر آن را ندارند نظير user-defined typesو
- Inheritanceو rulesو
+
Ù sophisticated lockingâ Ø±Ø§ دارد. در
+ PostgreSQLââ Ø§Ù
ÙØ§ÙØ§ØªÙ ÙØ¬Ùد دارد Ù٠پاÙگاÙÙØ§Ù دادÙ
+ دÙگر آ٠را ÙØ¯Ø§Ø±Ùد ÙØ¸Ùر user-defined typesâÙ
+ InheritanceâÙ rulesâÙ
multi-version concurrency control
-
-
كارايي
- كارايي PostgreSQL در حد بقيه سيستمهاي تجاري و
- متن باز است. در بعضي موارد سريعتر و در بعضي موارد از آنها كندتر است. در
- مقايسه با MySQL براي كاربران بيشتر و درخواستهاي
- پيچيده و بار زياد خواندن/نوشتن سريعتر است. در درخواستهاي ساده
- SELECT از MySQL كندتر است. البته
- MySQL خيلي از امكانات
- PostgreSQL كه در بالا به آن اشاره شد را ندارد. هدف اصلي ما امكانات و
- قابليت اعتماد بالاست در ضمن آنكه تلاش ميكنيم تا كارايي آن نيز بهبود يابد.
- در آدرس http://openacs.org/philosophy/why-not-mysql.html
- يك مقايسه جالب بين MySQL و
- PostgreSQL وجود دارد. از طرف ديگر MySQL يك
- شركت است كه محصول خود را به صورت متن باز ارائه ميكند ولي براي نرمافزار غير
- متن باز خود احتياج به ليسانس تجاري دارد بر خلاف
- PostgreSQL كه يك گروه كاملاً متن باز هستند.
+ ÙØ§Ø±Ø§ÙÙ
+ ÙØ§Ø±Ø§ÙÙ PostgreSQL در ØØ¯ بÙÙÙ Ø³ÙØ³ØªÙ
âÙØ§Ù تجار٠Ù
+ Ù
ت٠باز است. در بعض٠Ù
ÙØ§Ø±Ø¯ Ø³Ø±ÙØ¹ØªØ± ٠در بعض٠Ù
ÙØ§Ø±Ø¯ از Ø¢ÙÙØ§ ÙÙØ¯ØªØ± است. در
+ Ù
ÙØ§Ùس٠با MySQL Ø¨Ø±Ø§Ù ÙØ§Ø±Ø¨Ø±Ø§Ù Ø¨ÙØ´ØªØ± Ù Ø¯Ø±Ø®ÙØ§Ø³ØªâÙØ§Ù
+ Ù¾ÙÚÙØ¯Ù ٠بار Ø²ÙØ§Ø¯ Ø®ÙØ§ÙدÙ/ÙÙØ´ØªÙ Ø³Ø±ÙØ¹ØªØ± است. در Ø¯Ø±Ø®ÙØ§Ø³ØªâÙØ§Ù سادÙ
+ SELECTâ Ø§Ø² MySQL ÙÙØ¯ØªØ± است. Ø§ÙØ¨ØªÙ
+ MySQL Ø®ÙÙ٠از اÙ
ÙØ§Ùات
+ PostgreSQL Ù٠در Ø¨Ø§ÙØ§ ب٠آ٠اشار٠شد را ÙØ¯Ø§Ø±Ø¯. ÙØ¯Ù اصÙÙ Ù
ا اÙ
ÙØ§Ùات Ù
+ ÙØ§Ø¨ÙÙØª اعتÙ
اد Ø¨Ø§ÙØ§Ø³Øª در ضÙ
٠آÙÙÙ ØªÙØ§Ø´ Ù
ÙâÙÙÙÙ
تا ÙØ§Ø±Ø§Ù٠آ٠ÙÙØ² Ø¨ÙØ¨Ùد ÙØ§Ø¨Ø¯.
+ در آدرس
+ http://openacs.org/philosophy/why-not-mysql.html
+ ÙÙ Ù
ÙØ§ÙØ³Ù Ø¬Ø§ÙØ¨ بÙÙ MySQL Ù
+ PostgreSQL ÙØ¬Ùد دارد. از طر٠دÙگر MySQLâ ÙÙ
+ Ø´Ø±ÙØª است ÙÙ Ù
ØØµÙÙ Ø®ÙØ¯ را Ø¨Ù ØµÙØ±Øª Ù
ت٠باز ارائ٠Ù
ÙâÙÙØ¯ ÙÙÙ Ø¨Ø±Ø§Ù ÙØ±Ù
âØ§ÙØ²Ø§Ø± ØºÙØ±
+ Ù
ت٠باز Ø®ÙØ¯ Ø§ØØªÙاج ب٠ÙÙØ³Ø§Ùس تجار٠دارد بر Ø®ÙØ§Ù
+ PostgreSQL ÙÙ Ù٠گرÙÙ ÙØ§Ù
ÙØ§Ù Ù
ت٠باز ÙØ³ØªÙد.
-
- - قابليت اطمينان
- - ما فكر ميكنيم كه يك سيستم پايگاه دادهاي كه مطمئن
- نباشد ارزشي ندارد. ما تمام تلاشمان را براي ارائه كدهاي پايداري كه به خوبي
- تست شده باشند و كمترين اِشكالات را داشته باشند ميكنيم. هر نسخه جديدي كه
- ارائه ميشود حداقل يك ماه را در مرحله تست بتا ميگذراند. ما بر اين باور
- هستيم كه قابليت اطمينان PostgreSQL در مقايسه با
- ساير سيستمهاي پايگاه داده قابل توجه است و نسخههايي كه تاكنون ارائه شده است
- نشان ميدهد كه ما توانايي ارائه يك سيستم قوي و محكم و مطمئن را كه آماده
- بهرهبرداري است داريم.
+ - ÙØ§Ø¨ÙÙØª اطÙ
ÙÙØ§Ù
+ - Ù
ا ÙÙØ± Ù
ÙâÙÙÙÙ
ÙÙ ÙÙ Ø³ÙØ³ØªÙ
پاÙگا٠دادÙâØ§Ù ÙÙ Ù
Ø·Ù
ئÙ
+ ÙØ¨Ø§Ø´Ø¯ Ø§Ø±Ø²Ø´Ù ÙØ¯Ø§Ø±Ø¯. Ù
ا تÙ
اÙ
ØªÙØ§Ø´Ù
ا٠را Ø¨Ø±Ø§Ù Ø§Ø±Ø§Ø¦Ù ÙØ¯ÙØ§Ù Ù¾Ø§ÙØ¯Ø§Ø±Ù ÙÙ Ø¨Ù Ø®ÙØ¨Ù
+ تست Ø´Ø¯Ù Ø¨Ø§Ø´ÙØ¯ Ù ÙÙ
ترÙÙ Ø§ÙØ´ÙØ§ÙØ§Øª را Ø¯Ø§Ø´ØªÙ Ø¨Ø§Ø´ÙØ¯ Ù
ÙâÙÙÙÙ
. ÙØ± ÙØ³Ø®Ù Ø¬Ø¯ÙØ¯Ù ÙÙ
+ ارائ٠Ù
ÙâØ´ÙØ¯ ØØ¯Ø§ÙÙ ÙÙ Ù
ا٠را در Ù
رØÙ٠تست بتا Ù
ÙâÚ¯Ø°Ø±Ø§ÙØ¯. Ù
ا بر اÙÙ Ø¨Ø§ÙØ±
+ ÙØ³ØªÙÙ
ÙÙ ÙØ§Ø¨ÙÙØª اطÙ
ÙÙØ§Ù PostgreSQLâ Ø¯Ø± Ù
ÙØ§Ùس٠با
+ Ø³Ø§ÙØ± Ø³ÙØ³ØªÙ
âÙØ§Ù پاÙÚ¯Ø§Ù Ø¯Ø§Ø¯Ù ÙØ§Ø¨Ù ØªÙØ¬Ù است Ù ÙØ³Ø®ÙâÙØ§ÙÙ Ù٠تاÙÙÙ٠ارائ٠شد٠است
+ ÙØ´Ø§Ù Ù
ÙâØ¯ÙØ¯ ÙÙ Ù
ا ØªÙØ§ÙاÙ٠ارائ٠ÙÙ Ø³ÙØ³ØªÙ
ÙÙÙ Ù Ù
ØÙÙ
Ù Ù
Ø·Ù
ئ٠را Ù٠آÙ
ادÙ
+ Ø¨ÙØ±ÙâØ¨Ø±Ø¯Ø§Ø±Ù Ø§Ø³Øª دارÙÙ
.
-
- - پشتيباني
- - گروههاي پستي ما امكان ارتباط و تماس به گروه بزرگي از
- برنامه نويسان و كاربران را ميدهد كه ميتوانند در حل مشكلات به ديگران كمك
- كنند. دسترسي مستقيم به برنامهنويسان و گروههاي كاربران و راهنماها و كداصلي
- باعث ميشود كه پشتيباني PostgreSQL نسبت به ساير
- پايگاههاي داده به نحو بهتري انجام شود. همچنين امكان ارائه خدمات پشتيباني به
- صورت تجاري نيز وجود دارد. براي ديدن اطلاعات بيشتر به FAQ
- section 1.6 مراجعه كنيد.
+ - Ù¾Ø´ØªÙØ¨Ø§ÙÙ
+ - گرÙÙÙØ§Ù پست٠Ù
ا اÙ
ÙØ§Ù ارتباط ٠تÙ
اس ب٠گرÙ٠بزرگ٠از
+ Ø¨Ø±ÙØ§Ù
Ù ÙÙÙØ³Ø§Ù Ù ÙØ§Ø±Ø¨Ø±Ø§Ù را Ù
ÙâØ¯ÙØ¯ ÙÙ Ù
ÙâØªÙØ§ÙÙØ¯ در ØÙ Ù
Ø´ÙÙØ§Øª ب٠دÙگرا٠ÙÙ
Ù
+ ÙÙÙØ¯. دسترس٠Ù
ستÙÙÙ
Ø¨Ù Ø¨Ø±ÙØ§Ù
ÙâÙÙÙØ³Ø§Ù ٠گرÙÙÙØ§Ù ÙØ§Ø±Ø¨Ø±Ø§Ù ٠راÙÙÙ
Ø§ÙØ§ Ù ÙØ¯Ø§ØµÙÙ
+ باعث Ù
ÙâØ´ÙØ¯ ÙÙ Ù¾Ø´ØªÙØ¨Ø§ÙÙ PostgreSQL ÙØ³Ø¨Øª Ø¨Ù Ø³Ø§ÙØ±
+ پاÙگاÙÙØ§Ù Ø¯Ø§Ø¯Ù Ø¨Ù ÙØÙ Ø¨ÙØªØ±Ù Ø§ÙØ¬Ø§Ù
Ø´ÙØ¯. ÙÙ
ÚÙÙ٠اÙ
ÙØ§Ù ارائ٠خدÙ
ات Ù¾Ø´ØªÙØ¨Ø§Ù٠بÙ
+ ØµÙØ±Øª تجار٠ÙÙØ² ÙØ¬Ùد دارد. Ø¨Ø±Ø§Ù Ø¯ÙØ¯Ù Ø§Ø·ÙØ§Ø¹Ø§Øª Ø¨ÙØ´ØªØ± ب٠FAQ section 1.6 Ù
راجع٠ÙÙÙØ¯.
-
- - قيمت
- - هم براي استفاده تجاري و هم غير تجاري هيچ هزينهاي
- نبايد پرداخت شود. هيچ محدوديتي براي انجام تغييرات در
- PostgreSQL توسط استفاده كنندگان وجود ندارد به جز مواردي كه در ليسانس
- BSD به آن اشاره شده است.
+ - ÙÙÙ
ت
+ - ÙÙ
Ø¨Ø±Ø§Ù Ø§Ø³ØªÙØ§Ø¯Ù تجار٠٠ÙÙ
ØºÙØ± تجار٠ÙÙÚ ÙØ²ÙÙÙâØ§Ù
+ ÙØ¨Ø§Ùد پرداخت Ø´ÙØ¯. ÙÙÚ Ù
ØØ¯ÙØ¯ÙØªÙ Ø¨Ø±Ø§Ù Ø§ÙØ¬Ø§Ù
تغÙÙØ±Ø§Øª در
+ PostgreSQL ØªÙØ³Ø· Ø§Ø³ØªÙØ§Ø¯Ù ÙÙÙØ¯Ú¯Ø§Ù ÙØ¬Ùد ÙØ¯Ø§Ø±Ø¯ ب٠جز Ù
ÙØ§Ø±Ø¯Ù Ù٠در ÙÙØ³Ø§Ùس
+ BSD ب٠آ٠اشار٠شد٠است.
1.15)
-من چگونه ميتوانم از نظر مالي به PostgreSQL
-كمك كنم؟
-PostgreSQL داراي
-يك ساختار تشكيلاتي درجه اول است كه آن را مديون Marc Fournier
-است كه اين ساختار را ايجاد كرده است.
-كيفيت يك ساختار براي يك پروژه متن باز بسيار
-اهميت دارد. يك ساختار خوب ميتواند مانع از حوادثي شود كه در حركت روبهجلوي پروژه
-خللي وارد ميكنند.
-البته اين ساختار تشكيلاتي ارزان نيست. هزينههاي
-ثابت ماهانه و روزمره براي نگهداري و حفظ اين ساختار مورد نياز است. اگر شما يا
-شركت شما مايل است كه از نظر مالي به اين حركت كمك كند لطفاً به سايت Ù
Ù ÚÚ¯ÙÙÙ Ù
ÙâØªÙØ§ÙÙ
از ÙØ¸Ø± Ù
اÙ٠ب٠PostgreSQL
+ÙÙ
Ù ÙÙÙ
Ø
+
PostgreSQL دارا٠ÙÙ
+ساختار تشÙÙÙØ§ØªÙ درج٠اÙ٠است Ù٠آ٠را Ù
دÙÙÙ Marc Fournierâ
+است Ù٠اÙ٠ساختار را Ø§ÙØ¬Ø§Ø¯ ÙØ±Ø¯Ù است.
+ÙÙÙÙØª Ù٠ساختار برا٠Ù٠پرÙÚÙ Ù
ت٠باز Ø¨Ø³ÙØ§Ø±
+اÙÙ
ÙØª دارد. Ù٠ساختار Ø®ÙØ¨ Ù
ÙâØªÙØ§Ùد Ù
Ø§ÙØ¹ از ØÙØ§Ø¯Ø«Ù Ø´ÙØ¯ Ù٠در ØØ±Ùت Ø±ÙØ¨ÙâØ¬ÙÙ٠پرÙÚÙ
+Ø®ÙÙÙ ÙØ§Ø±Ø¯ Ù
ÙâÙÙÙØ¯.
+Ø§ÙØ¨ØªÙ اÙ٠ساختار تشÙÙÙØ§ØªÙ ارزا٠ÙÙØ³Øª. ÙØ²ÙÙÙâÙØ§Ù
+ثابت Ù
Ø§ÙØ§ÙÙ Ù Ø±ÙØ²Ù
ر٠برا٠ÙÚ¯ÙØ¯Ø§Ø±Ù Ù ØÙظ اÙ٠ساختار Ù
ÙØ±Ø¯ ÙÙØ§Ø² است. اگر Ø´Ù
ا ÙØ§
+Ø´Ø±ÙØª Ø´Ù
ا Ù
اÙ٠است Ù٠از ÙØ¸Ø± Ù
اÙ٠ب٠اÙÙ ØØ±Ùت ÙÙ
Ù ÙÙØ¯ ÙØ·ÙØ§Ù Ø¨Ù Ø³Ø§ÙØª http://store.pgsql.com/shopping
-مراجعه كرده و كمك خود را اهدا كنيد.
-هر چند در صفحه اصلي عبارت
-PostgreSQL,Inc ذكر شده است ولي مشاركت عمدتاً براي پشتيباني از پروژه
-PostgreSQL مي باشد و نه براي يك شركت مشخص. اگر ترجيح
-ميدهيد ميتوانيد يك چك به آدرس مشخص شده ارسال كنيد.
-اگر يك استفاده موفق از
-PostgreSQL سراغ داريد لطفاً آن را به سايت http://advocacy.postgresql.org گزارش
-دهيد.
+Ù
Ø±Ø§Ø¬Ø¹Ù ÙØ±Ø¯Ù Ù ÙÙ
Ù Ø®ÙØ¯ را Ø§ÙØ¯Ø§ ÙÙÙØ¯.
+ÙØ± ÚÙØ¯ در ØµÙØÙ Ø§ØµÙ٠عبارت
+PostgreSQL,Incâ Ø°Ùر شد٠است ÙÙÙ Ù
Ø´Ø§Ø±ÙØª عÙ
Ø¯ØªØ§Ù Ø¨Ø±Ø§Ù Ù¾Ø´ØªÙØ¨Ø§Ù٠از پرÙÚÙ
+PostgreSQLâ Ù
٠باشد Ù Ù٠برا٠ÙÙ Ø´Ø±ÙØª Ù
شخص. اگر ØªØ±Ø¬ÙØ
+Ù
ÙâØ¯ÙÙØ¯ Ù
ÙâØªÙØ§ÙÙØ¯ ÙÙ Ú٠ب٠آدرس Ù
شخص شد٠ارسا٠ÙÙÙØ¯.
+اگر ÙÙ Ø§Ø³ØªÙØ§Ø¯Ù Ù
ÙÙ٠از
+PostgreSQL سراغ Ø¯Ø§Ø±ÙØ¯ ÙØ·Ùا٠آ٠را Ø¨Ù Ø³Ø§ÙØª http://advocacy.postgresql.org گزارش
+دÙÙØ¯.
-سوالات مربوط به
-استفاده از پايگاه داده
+Ø³ÙØ§Ùات Ù
Ø±Ø¨ÙØ· بÙ
+Ø§Ø³ØªÙØ§Ø¯Ù از پاÙگا٠دادÙ
2.1)
-آيا هيچ درايور ODBC
-براي PostgreSQL
-وجود دارد؟
-دو درايور ODBC
-بنامهاي psqlODBC و OpenLink براي
-PostgreSQL وجود دارد.
-براي گرفتن psqlODBC
-به سايت http://gborg.postgresql.org/project/psqlodbc/projdisplay.php
-مراجعه كنيد.
-OpenLlink را از اين
-سايت http://www.openlinksw.com ميتوانيد
-بگيريد. اين درايور با نرمافزارهاي مختلف ODBC كار
-ميكند بنابراين شما قادر خواهيد بود با استفاده از OpenLink
-روي اكثر سكوهايي كه نرمافزارODBCدارند بدون مشكل به
-PostgreSQL نيز متصل شويد.
-اين محصول به كساني كه احتياج به خدمات پشتيباني
-تجاري دارند فروخته ميشود. ولي نسخه آزاد اين نرمافزار هميشه در درسترس ميباشد.
-براي كسب اطلاعات بيشتر سوالات خود را به آدرس Ø¢ÙØ§ ÙÙÚ Ø¯Ø±Ø§ÙÙØ± ODBCâ
+برا٠PostgreSQL
+ÙØ¬Ùد داردØ
+
د٠دراÙÙØ± ODBC
+Ø¨ÙØ§Ù
ÙØ§Ù psqlODBCâ Ù OpenLink براÙ
+PostgreSQLâ ÙØ¬Ùد دارد.
+Ø¨Ø±Ø§Ù Ú¯Ø±ÙØªÙ psqlODBC
+Ø¨Ù Ø³Ø§ÙØª
+http://gborg.postgresql.org/project/psqlodbc/projdisplay.php
+Ù
راجع٠ÙÙÙØ¯.
+OpenLlink را از اÙÙ
+Ø³Ø§ÙØª http://www.openlinksw.com Ù
ÙâØªÙØ§ÙÙØ¯
+Ø¨Ú¯ÙØ±Ùد. اÙ٠دراÙÙØ± با ÙØ±Ù
âØ§ÙØ²Ø§Ø±Ùا٠Ù
ختÙÙ ODBC ÙØ§Ø±
+Ù
ÙâÙÙØ¯ Ø¨ÙØ§Ø¨Ø±Ø§ÙÙ Ø´Ù
ا ÙØ§Ø¯Ø± Ø®ÙØ§ÙÙØ¯ Ø¨ÙØ¯ با Ø§Ø³ØªÙØ§Ø¯Ù از OpenLink
+رÙÙ Ø§ÙØ«Ø± سÙÙâÙØ§ÙÙ ÙÙ ÙØ±Ù
âØ§ÙØ²Ø§Ø±ODBCâØ¯Ø§Ø±ÙØ¯ بدÙÙ Ù
Ø´Ù٠بÙ
+PostgreSQL ÙÙØ² Ù
تص٠شÙÙØ¯.
+اÙÙ Ù
ØØµÙÙ Ø¨Ù ÙØ³Ø§ÙÙ ÙÙ Ø§ØØªÙاج ب٠خدÙ
ات Ù¾Ø´ØªÙØ¨Ø§ÙÙ
+ØªØ¬Ø§Ø±Ù Ø¯Ø§Ø±ÙØ¯ ÙØ±Ùخت٠Ù
ÙâØ´ÙØ¯. ÙÙÙ ÙØ³Ø®Ù آزاد اÙÙ ÙØ±Ù
âØ§ÙØ²Ø§Ø± ÙÙ
ÙØ´Ù در درسترس Ù
ÙâØ¨Ø§Ø´Ø¯.
+Ø¨Ø±Ø§Ù ÙØ³Ø¨ Ø§Ø·ÙØ§Ø¹Ø§Øª Ø¨ÙØ´ØªØ± Ø³ÙØ§Ùات Ø®ÙØ¯ را ب٠آدرس postgres95@openlink.co.uk
-ارسال نماييد.
+âØ§Ø±Ø³Ø§Ù ÙÙ
اÙÙØ¯.
2.2)
-چه ابزارهايي براي استفاده از PostgreSQL
-با صفحات وب وجود دارد؟
-در سايت http://www.webreview.com براي استفاده از
-PostgreSQL در صفحات وب راهنماييهاي خوبي وجود دارد.
-براي تركيب و استفاده در صفحات وب زبان
-PHP يك واسط بسيار مناسب است. اطلاعات بيشتر راجع به
-PHPدر سايت http://www.php.net وجود
-دارد.
-مثالهايي نيز با استفاده از
-Perl و CGI.pm و mod_perl
-وجود دارد.
+ÚÙ Ø§Ø¨Ø²Ø§Ø±ÙØ§ÙÙ Ø¨Ø±Ø§Ù Ø§Ø³ØªÙØ§Ø¯Ù از PostgreSQLâ
+با ØµÙØØ§Øª ÙØ¨ ÙØ¬Ùد داردØ
+در Ø³Ø§ÙØª http://www.webreview.com Ø¨Ø±Ø§Ù Ø§Ø³ØªÙØ§Ø¯Ù از
+PostgreSQLâ Ø¯Ø± ØµÙØØ§Øª ÙØ¨ راÙÙÙ
اÙÙÙØ§Ù Ø®ÙØ¨Ù ÙØ¬Ùد دارد.
+برا٠ترÙÙØ¨ Ù Ø§Ø³ØªÙØ§Ø¯Ù در ØµÙØØ§Øª ÙØ¨ زباÙ
+PHPâ ÙÙ ÙØ§Ø³Ø· Ø¨Ø³ÙØ§Ø± Ù
ÙØ§Ø³Ø¨ است. Ø§Ø·ÙØ§Ø¹Ø§Øª Ø¨ÙØ´ØªØ± راجع بÙ
+PHPâØ¯Ø± Ø³Ø§ÙØª http://www.php.net ÙØ¬Ùد
+دارد.
+Ù
ثاÙÙØ§ÙÙ ÙÙØ² با Ø§Ø³ØªÙØ§Ø¯Ù از
+Perlâ Ù CGI.pm Ù mod_perl
+ÙØ¬Ùد دارد.
2.3)
-آيا PostgreSQL يك واسط كاربري گرافيكي
-دارد؟
-چند نرم افزار گرافيكي براي
-PostgreSQL وجود دارد كه شامل pgAccess درسايت Ø¢ÙØ§ PostgreSQLâ ÙÙ ÙØ§Ø³Ø· ÙØ§Ø±Ø¨Ø±Ù گراÙÙÙÙ
+داردØ
+
ÚÙØ¯ ÙØ±Ù
Ø§ÙØ²Ø§Ø± گراÙÙÙ٠براÙ
+PostgreSQLâ ÙØ¬Ùد دارد Ù٠شاÙ
Ù pgAccess Ø¯Ø±Ø³Ø§ÙØª http://www.pgaccess.org
-و pgAdmin III در سايت Ù pgAdmin III در Ø³Ø§ÙØª http://www.pgadmin.org
-و RHDB Admin در سايت Ù RHDB Admin در Ø³Ø§ÙØª http://sources.redhat.com/rhdb
-و Rekall در سايت
-http://www.thekompany.com/products/rekall ميباشد.
-همچنين يك phpPgAdmin هم در سايت
-http://phppgadmin.sourceforge.net وجود دارد كه يك
-واسط وبي براي مديريت PostgreSQL ميباشد.
-براي ديدن اطلاعات بيشتر راجع به نرمافزارهاي
-گرافيكي براي PostgreSQL به آدرس http://techdocs.postgresql.org/guides/GUITools
-مراجعه كنيد.
+Ù Rekall در Ø³Ø§ÙØª
+http://www.thekompany.com/products/rekall
+ Ù
ÙâØ¨Ø§Ø´Ø¯. ÙÙ
ÚÙÙÙ ÙÙ phpPgAdmin ÙÙ
در Ø³Ø§ÙØª
+http://phppgadmin.sourceforge.net ÙØ¬Ùد دارد ÙÙ ÙÙ
+ÙØ§Ø³Ø· ÙØ¨Ù برا٠Ù
Ø¯ÙØ±Ùت PostgreSQL Ù
ÙâØ¨Ø§Ø´Ø¯.
+Ø¨Ø±Ø§Ù Ø¯ÙØ¯Ù Ø§Ø·ÙØ§Ø¹Ø§Øª Ø¨ÙØ´ØªØ± راجع Ø¨Ù ÙØ±Ù
âØ§ÙØ²Ø§Ø±ÙاÙ
+گراÙÙÙ٠برا٠PostgreSQL ب٠آدرس
+http://techdocs.postgresql.org/guides/GUITools
+Ù
راجع٠ÙÙÙØ¯.
2.4)
-با چه زبانهاي برنامهنويسي ميتوان با PostgreSQL
-ارتباط برقرار كرد؟
-بيشتر زبانهاي برنامهنويسي
-ميتوانند با PostgreSQL ارتباط برقرار كنند. به همراه
-سورس PostgreSQL تعدادي از واسطهاي مورد نياز براي ارتباط
-با پايگاه داده از طريق زبانهاي مختلف آمده است كه در زير ليست آنها را مشاهده
-ميكنيد.
+با Ú٠زباÙÙØ§Ù Ø¨Ø±ÙØ§Ù
ÙâÙÙÙØ³Ù Ù
ÙâØªÙØ§Ù با PostgreSQLâ
+ارتباط Ø¨Ø±ÙØ±Ø§Ø± ÙØ±Ø¯Ø
+Ø¨ÙØ´ØªØ± زباÙÙØ§Ù Ø¨Ø±ÙØ§Ù
ÙâÙÙÙØ³Ù
+Ù
ÙâØªÙØ§ÙÙØ¯ با PostgreSQLâ Ø§Ø±ØªØ¨Ø§Ø· Ø¨Ø±ÙØ±Ø§Ø± ÙÙÙØ¯. ب٠ÙÙ
راÙ
+Ø³ÙØ±Ø³ PostgreSQL تعداد٠از ÙØ§Ø³Ø·Ùا٠Ù
ÙØ±Ø¯ ÙÙØ§Ø² برا٠ارتباط
+با پاÙگا٠داد٠از طرÙ٠زباÙÙØ§Ù Ù
ختÙ٠آÙ
د٠است Ù٠در Ø²ÙØ± ÙÙØ³Øª Ø¢ÙÙØ§ را Ù
Ø´Ø§ÙØ¯Ù
+Ù
ÙâÙÙÙØ¯.
-
C (libpq)
@@ -679,233 +698,235 @@ href="http://techdocs.postgresql.org/guides/GUITools">http://techdocs.postgresql
-
TCL (libpgtcl)
-واسطهاي ديگر در
-سايت ÙØ§Ø³Ø·Ùا٠دÙگر در
+Ø³Ø§ÙØª http://gborg.postgresql.org
-در قسمت Drivers/Interfaces وجود
-دارد.
+در ÙØ³Ù
ت Drivers/Interfaces ÙØ¬Ùد
+دارد.
-سوالات مديريتي
+Ø³ÙØ§Ùات Ù
Ø¯ÙØ±ÙتÙ
3.1)
-چگونه ميتوانم PostgreSQL را در شاخهاي
-غير از /usr/local/pgsql/ نصب كنم؟
-موقع اجراي دستور
-configure از گزينه prefix-- استفاده كنيد.
+ÚÚ¯ÙÙÙ Ù
ÙâØªÙØ§ÙÙ
PostgreSQLâ Ø±Ø§ در شاخÙâØ§Ù
+ØºÙØ± از /usr/local/pgsql/ ÙØµØ¨ ÙÙÙ
Ø
+Ù
ÙÙØ¹ Ø§Ø¬Ø±Ø§Ù Ø¯Ø³ØªÙØ±
+configure از گزÙÙÙ prefix-- Ø§Ø³ØªÙØ§Ø¯Ù ÙÙÙØ¯.
3.2)
-چرا موقعي كه من برنامه postmaster را
-اجرا مي كنم پيام Bad system call و يا core dump
-ميگيرم؟
-به دلايل مختلف ممكن است اين اتفاق بيفتد. اما در
-قدم اول شما مطمئن شويد كه كه امكانات اضافه System V
-در كرنل شما نصب شده باشد. PostgreSQL براي اجرا شدن
-نياز به استفاده از امكانات حافظه مشترك و سمافورها دارد.
+ÚØ±Ø§ Ù
ÙÙØ¹Ù ÙÙ Ù
Ù Ø¨Ø±ÙØ§Ù
Ù postmasterâ Ø±Ø§
+اجرا Ù
Ù ÙÙÙ
Ù¾ÙØ§Ù
Bad system callâ Ù ÙØ§ core dump
+âÙ
ÙâÚ¯ÙØ±Ù
Ø
+Ø¨Ù Ø¯ÙØ§ÙÙ Ù
ختÙÙ Ù
Ù
Ù٠است اÙÙ Ø§ØªÙØ§Ù بÙÙØªØ¯. اÙ
ا در
+ÙØ¯Ù
اÙÙ Ø´Ù
ا Ù
Ø·Ù
ئ٠شÙÙØ¯ ÙÙ Ù٠اÙ
ÙØ§Ùات اضاÙÙ System Vâ
+در ÙØ±ÙÙ Ø´Ù
ا ÙØµØ¨ شد٠باشد. PostgreSQL برا٠اجرا شدÙ
+ÙÙØ§Ø² Ø¨Ù Ø§Ø³ØªÙØ§Ø¯Ù از اÙ
ÙØ§Ùات ØØ§Ùظ٠Ù
شتر٠٠سÙ
اÙÙØ±Ùا دارد.
3.3)
-چرا موقعي كه من سعي ميكنم برنامه postmaster
-را اجرا كنم خطاي IpcMemoryCreate ميگيرم؟
-احتمالاً قسمت ايجاد حافظه مشترك در كرنل به
-درستي تنظيم نشده است و يا اينكه بايد فضاي حافظه اشتراكي در كرنل را زياد كرد.
-ميزان دقيق حافظه مشترك مورد نياز بسته به معماري و نحوه استفاده از بافرها توسط
-برنامه postmaster دارد. براي بيشتر سيستمها كه
-با تنظيمات پيشفرض كار ميكنند مقدار اين حافظه حدود 1
-مگابايت است. براي ديدن اطلاعات بيشتر راجع به حافظه مشترك و سمافور به PostgreSQL
-Administrator's Guide مراجعه كنيد.
-3.4) چرا موقعي كه من سعي ميكنم برنامه postmaster
-را اجرا كنم خطاي IpcSemaphoreCreate
-ميگيرم؟
-اگر پيغام خطا
-(pcSemaphoreCreate: semget failed (No space left on device
- باشد به اين معني است كه تعداد سمافورهاي تنظيم شده در كرنل كافي
-نيست. PostgreSQL براي هر فرايندي كه در
-backend اجرا ميشود به يك سمافور نياز دارد. يك راه حل
-موقت براي اين مسئله آن است كه postmaster را با
-اعمال محدوديت روي تعداد فرايندهايي كه ميتواند ايجاد كند اجرا كنيم. براي اينكار
-از گزينه N- و يك عدد كمتر از 32 استفاده كنيد. راه حل
-دائمي اين مشكل آن است كه پارامترهاي SEMMNS, SEMMNI
-كرنل را افزايش دهيم.
-در زمان دسترسي خيلي زياد به پايگاه داده،
-سمافورهاي نامعتبر ميتوانند باعث crash كردن سيستم
-شوند.
-اگر پيغام خطا چيز ديگري باشد احتمالاً به دليل
-آن است كه كرنل از سمافورها پشتيباني نميكند. براي ديدن اطلاعات بيشتر راهنماي
-مديريتي PostgreSQL را مطالعه كنيد.
+ÚØ±Ø§ Ù
ÙÙØ¹Ù ÙÙ Ù
٠سع٠Ù
ÙâÙÙÙ
Ø¨Ø±ÙØ§Ù
Ù postmasterâ
+را اجرا ÙÙÙ
خطا٠IpcMemoryCreate Ù
ÙâÚ¯ÙØ±Ù
Ø
+Ø§ØØªÙ
Ø§ÙØ§Ùâ ÙØ³Ù
ت Ø§ÙØ¬Ø§Ø¯ ØØ§Ùظ٠Ù
شتر٠در ÙØ±Ù٠بÙ
+Ø¯Ø±Ø³ØªÙ ØªÙØ¸ÙÙ
ÙØ´Ø¯Ù است Ù ÙØ§ اÙÙÙÙ Ø¨Ø§ÙØ¯ ÙØ¶Ø§Ù ØØ§Ùظ٠اشتراÙ٠در ÙØ±Ù٠را Ø²ÙØ§Ø¯ ÙØ±Ø¯.
+Ù
ÙØ²Ø§Ù دÙÙÙ ØØ§Ùظ٠Ù
شتر٠Ù
ÙØ±Ø¯ ÙÙØ§Ø² بست٠ب٠Ù
عÙ
Ø§Ø±Ù Ù ÙØÙÙ Ø§Ø³ØªÙØ§Ø¯Ù از Ø¨Ø§ÙØ±Ùا ØªÙØ³Ø·
+Ø¨Ø±ÙØ§Ù
Ù postmaster دارد. Ø¨Ø±Ø§Ù Ø¨ÙØ´ØªØ± Ø³ÙØ³ØªÙ
âÙØ§ ÙÙ
+با ØªÙØ¸ÙÙ
ات Ù¾ÙØ´âÙØ±Ø¶ ÙØ§Ø± Ù
ÙâÙÙÙØ¯ Ù
ÙØ¯Ø§Ø± اÙÙ ØØ§ÙØ¸Ù ØØ¯Ùد 1
+Ù
Ú¯Ø§Ø¨Ø§ÙØª است. Ø¨Ø±Ø§Ù Ø¯ÙØ¯Ù Ø§Ø·ÙØ§Ø¹Ø§Øª Ø¨ÙØ´ØªØ± راجع Ø¨Ù ØØ§Ùظ٠Ù
شتر٠٠سÙ
اÙÙØ± بÙ
+PostgreSQL Administrator's Guide Ù
راجع٠ÙÙÙØ¯.
+3.4) ÚØ±Ø§ Ù
ÙÙØ¹Ù
+ÙÙ Ù
٠سع٠Ù
ÙâÙÙÙ
Ø¨Ø±ÙØ§Ù
Ù postmasterâ Ø±Ø§ اجرا ÙÙÙ
خطاÙ
+ IpcSemaphoreCreate
+Ù
ÙâÚ¯ÙØ±Ù
Ø
+اگر Ù¾ÙØºØ§Ù
خطا
+(âpcSemaphoreCreate: semget failed (No space left on device
+ باشد ب٠اÙÙ Ù
عÙ٠است Ù٠تعداد سÙ
اÙÙØ±ÙØ§Ù ØªÙØ¸ÙÙ
شد٠در ÙØ±ÙÙ ÙØ§ÙÙ ÙÙØ³Øª.
+PostgreSQLâ Ø¨Ø±Ø§Ù ÙØ± ÙØ±Ø§ÙÙØ¯Ù Ù٠در
+backend اجرا Ù
ÙâØ´ÙØ¯ ب٠Ù٠سÙ
اÙÙØ± ÙÙØ§Ø² دارد. Ù٠را٠ØÙ
+Ù
ÙÙØª برا٠اÙÙ Ù
سئÙ٠آ٠است ÙÙ postmaster را با
+اعÙ
ا٠Ù
ØØ¯ÙØ¯ÙØª رÙ٠تعداد ÙØ±Ø§ÙÙØ¯ÙاÙÙ ÙÙ Ù
ÙâØªÙØ§Ùد Ø§ÙØ¬Ø§Ø¯ ÙÙØ¯ اجرا ÙÙÙÙ
. برا٠اÙÙÙØ§Ø±
+از گزÙÙÙ N- Ù Ù٠عدد ÙÙ
تر از 32 Ø§Ø³ØªÙØ§Ø¯Ù ÙÙÙØ¯. را٠ØÙ
+دائÙ
٠اÙÙ Ù
Ø´Ù٠آ٠است Ù٠پاراÙ
ØªØ±ÙØ§Ù SEMMNS, SEMMNI
+ÙØ±Ù٠را Ø§ÙØ²Ø§ÙØ´ دÙÙÙ
.
+در زÙ
ا٠دسترس٠خÙÙÙ Ø²ÙØ§Ø¯ ب٠پاÙÚ¯Ø§Ù Ø¯Ø§Ø¯ÙØ â
+سÙ
اÙÙØ±ÙØ§Ù ÙØ§Ù
عتبر Ù
ÙâØªÙØ§ÙÙØ¯ باعث crashâ ÙØ±Ø¯Ù Ø³ÙØ³ØªÙ
+Ø´ÙÙØ¯.
+اگر Ù¾ÙØºØ§Ù
خطا ÚÙØ² دÙگر٠باشد Ø§ØØªÙ
Ø§ÙØ§Ù ب٠دÙÙÙ
+آ٠است ÙÙ ÙØ±Ù٠از سÙ
اÙÙØ±Ùا Ù¾Ø´ØªÙØ¨Ø§ÙÙ ÙÙ
ÙâÙÙØ¯. Ø¨Ø±Ø§Ù Ø¯ÙØ¯Ù Ø§Ø·ÙØ§Ø¹Ø§Øª Ø¨ÙØ´ØªØ± راÙÙÙ
اÙ
+Ù
Ø¯ÙØ±Ùت٠PostgreSQL را Ù
Ø·Ø§ÙØ¹Ù ÙÙÙØ¯.
3.5)
-چگونه ميتوانم اتصالات ساير ماشينها را كنترل كنم؟
-به صورت پيش فرض فقط از ماشيني كه
-PostgreSQL روي آن در حال اجراست ميتوان با استفاده از
-سوكتهاي يونيكسي به آن متصل شد. ساير ماشينها قادر نيستند به
-PostgreSQL متصل شوند مگر آنكه گزينه tcp_sockets
-در فايل postgresql.conf فعال شده و همچنين با اصلاح
-فايل PGDATA/ph_hba.conf هويتشناسي مبتني بر ميزبان نيز
-فعال شود. با اين كار ميتوان اتصالات TCP/IP به
-PostgreSQL ايجاد كرد.
+ÚÚ¯ÙÙÙ Ù
ÙâØªÙØ§ÙÙ
Ø§ØªØµØ§ÙØ§Øª Ø³Ø§ÙØ± Ù
اشÙÙÙØ§ را ÙÙØªØ±Ù ÙÙÙ
Ø
+Ø¨Ù ØµÙØ±Øª Ù¾ÙØ´ ÙØ±Ø¶ ÙÙØ· از Ù
اشÙÙÙ ÙÙ
+PostgreSQL رÙ٠آ٠در ØØ§Ù اجراست Ù
ÙâØªÙØ§Ù با Ø§Ø³ØªÙØ§Ø¯Ù از
+سÙÙØªâÙØ§Ù ÙÙÙÙÙØ³Ù ب٠آ٠Ù
تص٠شد. Ø³Ø§ÙØ± Ù
اشÙÙâÙØ§ ÙØ§Ø¯Ø± ÙÙØ³ØªÙد بÙ
+PostgreSQL Ù
تص٠شÙÙØ¯ Ù
گر Ø¢ÙÙ٠گزÙÙÙ tcp_sockets
+در ÙØ§ÙÙ postgresql.conf ÙØ¹Ø§Ù شد٠٠ÙÙ
ÚÙÙ٠با Ø§ØµÙØ§Ø
+ÙØ§ÙÙ PGDATA/ph_hba.conf ÙÙÙØªâØ´ÙØ§Ø³Ù Ù
بتÙ٠بر Ù
ÙØ²Ø¨Ø§Ù ÙÙØ²
+ÙØ¹Ø§Ù Ø´ÙØ¯. با اÙÙ ÙØ§Ø± Ù
ÙâØªÙØ§Ù Ø§ØªØµØ§ÙØ§Øª TCP/IP بÙ
+PostgreSQLâ Ø§Ùجاد ÙØ±Ø¯.
3.6)
-براي كارايي بالاتر و بهتر پايگاه داده من چه تنظيماتي را بايد
-انجام دهم؟
-به طور حتم استفاده از انديسها باعث بالا رفتن
-سرعت پاسخگويي به درخواستها خواهد شد. دستور EXPLAIN ANALYZE
-به شما امكان ديدن نحوه پردازش يك دستور توسط PostgreSQL
-را ميدهد.
-اگر شما تعداد زيادي INSERT
-داريد سعي كنيد آنها را با قرار دادن در يك فايل با دستور COPY
-اجرا كنيد. اين دستور به مراتب از INSERT سريعتر است.
-حتيالامكان سعي كنيد از تراكنشها استفاده نكنيد. تراكنشها مجموعه دستوراتي هستند
-كه بيند BEGIN و COMMIT
-ميآيند. اگر يك دستور به صورت عادي اجرا شود PostgreSQL
-خود آن دستور را به صورت يك تراكنش مستقل نگاه كرده و اجرا ميكند. موقعی كه
-تغييرات زيادي در پايگاه داده انجام ميشود انديسهاي قبلي را حذف و مجدداً ايجاد
-كنيد.
-استفاده از گزينه o -F-
-در فرمان postmaster باعث غير فعال كردن
-()fsync ميشود. اين دستور بعد از هر تراكنش اطلاعات را
-روي هاردديسك منتقل ميكند.
-براي افزايش تعداد بافرهاي حافظه اشتراكي از
-گزينه B- به همراه فرمان
-postmaster استفاده كنيد. توجه كنيد كه اگر اين عدد خيلي بزرگ باشد ممكن
-است postmaster اصلاً اجرا نشود. هر بافر 8 كيلو
-بايت حافظه نياز دارد و تعداد بافرها به طور پيش فرض 64 است.
-همچنين ميتوان با گزينه S-
-ميزان حافظهاي كه براي مرتبسازيهاي موقت توسط PostgreSQL
-استفاده ميشود را افزايش داد. مقدار پيش فرض 512 كيلو بايت است.
-استفاده از دستور CLUSTER
-نيز براي بالا بردن كارايي موثر ا ست. دستور راهنماي CLUSTER
-اطلاعات بيشتري در اين زمينه به شما ميدهد.
+Ø¨Ø±Ø§Ù ÙØ§Ø±Ø§ÙÙ Ø¨Ø§ÙØ§ØªØ± Ù Ø¨ÙØªØ± پاÙگا٠داد٠Ù
Ù ÚÙ ØªÙØ¸ÙÙ
ات٠را Ø¨Ø§ÙØ¯
+Ø§ÙØ¬Ø§Ù
دÙÙ
Ø
+Ø¨Ù Ø·ÙØ± ØØªÙ
Ø§Ø³ØªÙØ§Ø¯Ù از Ø§ÙØ¯ÙسâÙØ§ باعث Ø¨Ø§ÙØ§ Ø±ÙØªÙ
+سرعت پاسخâÚ¯ÙÙÙ Ø¨Ù Ø¯Ø±Ø®ÙØ§Ø³ØªâÙØ§ Ø®ÙØ§Ùد شد. Ø¯Ø³ØªÙØ± EXPLAIN ANALYZE
+ب٠شÙ
ا اÙ
ÙØ§Ù Ø¯ÙØ¯Ù ÙØÙ٠پردازش ÙÙ Ø¯Ø³ØªÙØ± ØªÙØ³Ø· PostgreSQL
+را Ù
ÙâØ¯ÙØ¯.
+اگر Ø´Ù
ا تعداد Ø²ÙØ§Ø¯Ù INSERTâ
+Ø¯Ø§Ø±ÙØ¯ سع٠ÙÙÙØ¯ Ø¢ÙÙØ§ را با ÙØ±Ø§Ø± داد٠در ÙÙ ÙØ§Ù٠با Ø¯Ø³ØªÙØ± COPYâ
+اجرا ÙÙÙØ¯. اÙÙ Ø¯Ø³ØªÙØ± ب٠Ù
راتب از INSERT Ø³Ø±ÙØ¹ØªØ± است.
+ØØªÙâØ§ÙØ§Ù
ÙØ§Ù سع٠ÙÙÙØ¯ از تراÙÙØ´Ùا Ø§Ø³ØªÙØ§Ø¯Ù ÙÙÙÙØ¯. تراÙÙØ´Ùا Ù
جÙ
ÙØ¹Ù Ø¯Ø³ØªÙØ±Ø§ØªÙ ÙØ³ØªÙد
+Ù٠بÙÙØ¯ BEGIN Ù âCOMMIT
+Ù
ÙâØ¢ÙÙØ¯. اگر ÙÙ Ø¯Ø³ØªÙØ± Ø¨Ù ØµÙØ±Øª عاد٠اجرا Ø´ÙØ¯ PostgreSQL
+Ø®ÙØ¯ Ø¢Ù Ø¯Ø³ØªÙØ± را Ø¨Ù ØµÙØ±Øª Ù٠تراÙÙØ´ Ù
ستÙÙ ÙÚ¯Ø§Ù ÙØ±Ø¯Ù ٠اجرا Ù
ÙâÙÙØ¯. Ù
ÙÙØ¹Û ÙÙ
+تغÙÙØ±Ø§Øª Ø²ÙØ§Ø¯Ù در پاÙÚ¯Ø§Ù Ø¯Ø§Ø¯Ù Ø§ÙØ¬Ø§Ù
Ù
ÙâØ´ÙØ¯ Ø§ÙØ¯ÙØ³ÙØ§Ù ÙØ¨Ù٠را ØØ°Ù Ù Ù
جدداÙâ Ø§Ùجاد
+ÙÙÙØ¯.
+Ø§Ø³ØªÙØ§Ø¯Ù از گزÙÙÙ o -F-
+در ÙØ±Ù
ا٠postmaster باعث ØºÙØ± ÙØ¹Ø§Ù ÙØ±Ø¯Ù
+()fsync Ù
ÙâØ´ÙØ¯. اÙÙ Ø¯Ø³ØªÙØ± بعد از ÙØ± تراÙÙØ´ Ø§Ø·ÙØ§Ø¹Ø§Øª را
+رÙÙ ÙØ§Ø±Ø¯Ø¯Ùس٠Ù
ÙØªÙÙ Ù
ÙâÙÙØ¯.
+Ø¨Ø±Ø§Ù Ø§ÙØ²Ø§ÙØ´ تعداد Ø¨Ø§ÙØ±ÙØ§Ù ØØ§Ùظ٠اشتراÙ٠از
+گزÙÙÙ B- ب٠ÙÙ
Ø±Ø§Ù ÙØ±Ù
اÙ
+postmaster Ø§Ø³ØªÙØ§Ø¯Ù ÙÙÙØ¯. ØªÙØ¬Ù ÙÙÙØ¯ Ù٠اگر اÙ٠عدد Ø®ÙÙ٠بزرگ باشد Ù
Ù
ÙÙ
+است postmaster Ø§ØµÙØ§Ùâ Ø§Ø¬Ø±Ø§ ÙØ´Ùد. ÙØ± Ø¨Ø§ÙØ± 8 ÙÙÙÙ
+Ø¨Ø§ÙØª ØØ§Ùظ٠ÙÙØ§Ø² دارد ٠تعداد Ø¨Ø§ÙØ±Ùا Ø¨Ù Ø·ÙØ± Ù¾ÙØ´ ÙØ±Ø¶ 64 است.
+ÙÙ
ÚÙÙÙ Ù
ÙâØªÙØ§Ù با گزÙÙÙ S-
+Ù
ÙØ²Ø§Ù ØØ§ÙظÙâØ§Ù Ù٠برا٠Ù
Ø±ØªØ¨âØ³Ø§Ø²ÙâÙØ§Ù Ù
ÙÙØª ØªÙØ³Ø· PostgreSQL
+Ø§Ø³ØªÙØ§Ø¯Ù Ù
ÙâØ´ÙØ¯ را Ø§ÙØ²Ø§ÙØ´ داد. Ù
ÙØ¯Ø§Ø± Ù¾ÙØ´ ÙØ±Ø¶ 512 ÙÙÙÙ Ø¨Ø§ÙØª است.
+Ø§Ø³ØªÙØ§Ø¯Ù از Ø¯Ø³ØªÙØ± CLUSTER
+ÙÙØ² Ø¨Ø±Ø§Ù Ø¨Ø§ÙØ§ Ø¨Ø±Ø¯Ù ÙØ§Ø±Ø§ÙÙ Ù
ÙØ«Ø± ا ست. Ø¯Ø³ØªÙØ± راÙÙÙ
ا٠CLUSTER
+Ø§Ø·ÙØ§Ø¹Ø§Øª Ø¨ÙØ´ØªØ±Ù در اÙ٠زÙ
ÙÙ٠ب٠شÙ
ا Ù
ÙâØ¯ÙØ¯.
3.7)
-چه امكاناتي براي پيدا كردن اشكال وجود دارد؟
-PostgerSQL امكانات
-مختلفي براي گزارش دادن وضعيت خود دارد كه براي اشكال زدايي ميتوان از آنها
-استفاده كرد.
-با استفاده از گزينه enable-assert--
-تعداد زيادي ()assert براي مونيتور كردن و توقف برنامه
-در صورت بروز خطاهاي ناخواسته فعال ميشود.
-هم Postmaster
-و هم postgres گزينههاي زيادي براي اشكال زدايي
-دارند. موقعي كه postmaster را اجرا ميكنيد
-خروجي استاندارد و خطا را سمت فايل log ارسال كنيد.
+Ú٠اÙ
ÙØ§ÙØ§ØªÙ Ø¨Ø±Ø§Ù Ù¾ÙØ¯Ø§ ÙØ±Ø¯Ù Ø§Ø´ÙØ§Ùâ ÙØ¬Ùد داردØ
+PostgerSQLâ Ø§Ù
ÙØ§Ùات
+Ù
ختÙÙ٠برا٠گزارش Ø¯Ø§Ø¯Ù ÙØ¶Ø¹Ùت Ø®ÙØ¯ دارد ÙÙ Ø¨Ø±Ø§Ù Ø§Ø´ÙØ§Ù زداÙÙ Ù
ÙâØªÙØ§Ù از Ø¢ÙÙØ§
+Ø§Ø³ØªÙØ§Ø¯Ù ÙØ±Ø¯.
+با Ø§Ø³ØªÙØ§Ø¯Ù از گزÙÙÙ
+enable-assert--
+تعداد Ø²ÙØ§Ø¯Ù ()assert برا٠Ù
ÙÙÙØªÙر ÙØ±Ø¯Ù ٠تÙÙÙ Ø¨Ø±ÙØ§Ù
Ù
+در ØµÙØ±Øª Ø¨Ø±ÙØ² Ø®Ø·Ø§ÙØ§Ù ÙØ§Ø®ÙØ§Ø³ØªÙ ÙØ¹Ø§Ù Ù
ÙâØ´ÙØ¯.
+ÙÙ
Postmaster
+Ù ÙÙ
postgres گزÙÙÙâÙØ§Ù Ø²ÙØ§Ø¯Ù Ø¨Ø±Ø§Ù Ø§Ø´ÙØ§Ù زداÙÙ
+Ø¯Ø§Ø±ÙØ¯. Ù
ÙÙØ¹Ù ÙÙ postmaster را اجرا Ù
ÙâÙÙÙØ¯
+Ø®Ø±ÙØ¬Ù Ø§Ø³ØªØ§ÙØ¯Ø§Ø±Ø¯ ٠خطا را سÙ
ت ÙØ§ÙÙ log ارسا٠ÙÙÙØ¯.
cd /usr/local/pgsql
./bin/postmaster >server.log 2>&1 &
-اين كار يك فايل
+اÙÙ ÙØ§Ø± ÙÙ ÙØ§ÙÙ
log
-در بالاترين شاخه PostgreSQL ايجاد ميكند. اين فايل
-حاوي اطلاعات مفيدي در مورد مسائل و خطاهايي است كه براي سرور اتفاق افتاده است.
-براي ديدن جزئيات بيشتر ميتوان از d- به همراه
-فرمان postmaster استفاده كرد. گزينه
-d- همچنين يك عدد ميگيرد كه نشان دهنده سطح جزئياتي است
-كه در Logفايل نوشته ميشود. با بالابردن اين عدد حجم
-اطلاعات توليد شده در Logفايل نيز افزايش مييابد.
-اگر postmaster
-در حال اجرا نباشد، ميتوانيم postgres را به طور مستقيم
-از خط فرمان اجرا كرده و دستورات SQL را به آن
-بدهيم. اين كار فقط براي اشكاليابي توصيه ميشود. توجه كنيد كه در اين حالت يك
-دستور با كاراكتر newline خاتمه پيدا ميكند و نه با
-;. اگر postmaster را با
-امكانات اشكاليابي كامپيل كرده باشيد ميتوانيد با استفاده از يك برنامه اشكالياب
-اجراي برنامه را مونيتور كنيد.
-اگر postmaster
-در حال اجرا باشد با دستور psql ميتوان به
-postgres متصل شد. با پيدا كردن PID
-فرايند postgres كه psql به
-آن متصل شده است ميتوان آن را مونيتور كرد. براي اينكار بايد يك برنامه اشكالياب
-را به آن pid متصل كرد. اگر بخواهيم بالا آمدن
-postgres را مونيتور كنيم كافي است
-"PGOPTIONS="-W n و psql
-را اجرا كنيم. اين كار باعث ميشود كه postgres با
-n ثانيه تاخير اجرا شود و در اين فاصله شما ميتوانيد
-برنامه اشكالياب را به آن متصل كرده و با قرار دادن يك نقطه توقف روند اجراي
-آن را مونيتور كنيد.
+در Ø¨Ø§ÙØ§ØªØ±Ù٠شاخ٠PostgreSQLâ Ø§Ùجاد Ù
ÙâÙÙØ¯. اÙÙ ÙØ§ÙÙ
+ØØ§ÙÙ Ø§Ø·ÙØ§Ø¹Ø§Øª Ù
ÙÙØ¯Ù در Ù
ÙØ±Ø¯ Ù
Ø³Ø§Ø¦Ù Ù Ø®Ø·Ø§ÙØ§Ù٠است ÙÙ Ø¨Ø±Ø§Ù Ø³Ø±ÙØ± Ø§ØªÙØ§Ù Ø§ÙØªØ§Ø¯Ù است.
+Ø¨Ø±Ø§Ù Ø¯ÙØ¯Ù Ø¬Ø²Ø¦ÙØ§Øª Ø¨ÙØ´ØªØ± Ù
ÙâØªÙØ§Ù از d- ب٠ÙÙ
راÙ
+ÙØ±Ù
ا٠postmasterâ Ø§Ø³ØªÙØ§Ø¯Ù ÙØ±Ø¯. گزÙÙÙ
+d- ÙÙ
ÚÙÙÙ Ù٠عدد Ù
ÙâÚ¯ÙØ±Ø¯ ÙÙ ÙØ´Ø§Ù دÙÙØ¯Ù Ø³Ø·Ø Ø¬Ø²Ø¦ÙØ§ØªÙ است
+Ù٠در LogâÙØ§ÙÙ ÙÙØ´ØªÙ Ù
ÙâØ´ÙØ¯. با Ø¨Ø§ÙØ§Ø¨Ø±Ø¯Ù اÙ٠عدد ØØ¬Ù
+Ø§Ø·ÙØ§Ø¹Ø§Øª تÙÙÙØ¯ شد٠در LogÙØ§ÙÙ ÙÙØ² Ø§ÙØ²Ø§ÙØ´ Ù
ÙâÙØ§Ø¨Ø¯.
+اگر postmaster
+در ØØ§Ù اجرا ÙØ¨Ø§Ø´Ø¯Ø Ù
ÙâØªÙØ§ÙÙÙ
postgres را Ø¨Ù Ø·ÙØ± Ù
ستÙÙÙ
+از خط ÙØ±Ù
ا٠اجرا ÙØ±Ø¯Ù Ù Ø¯Ø³ØªÙØ±Ø§Øª SQL را ب٠آÙ
+بدÙÙÙ
. اÙÙ ÙØ§Ø± ÙÙØ· Ø¨Ø±Ø§Ù Ø§Ø´ÙØ§ÙâÙØ§Ø¨Ù ØªÙØµÙÙ Ù
ÙâØ´ÙØ¯. ØªÙØ¬Ù ÙÙÙØ¯ Ù٠در اÙÙ ØØ§Ùت ÙÙ
+Ø¯Ø³ØªÙØ± با ÙØ§Ø±Ø§Ùتر newline خاتÙ
Ù Ù¾ÙØ¯Ø§ Ù
ÙâÙÙØ¯ Ù Ù٠با
+;. اگر postmaster را با
+اÙ
ÙØ§Ùات Ø§Ø´ÙØ§ÙâÙØ§Ø¨Ù ÙØ§Ù
Ù¾ÙÙ ÙØ±Ø¯Ù Ø¨Ø§Ø´ÙØ¯ Ù
ÙâØªÙØ§ÙÙØ¯ با Ø§Ø³ØªÙØ§Ø¯Ù از ÙÙ Ø¨Ø±ÙØ§Ù
Ù Ø§Ø´ÙØ§ÙâÙØ§Ø¨
+Ø§Ø¬Ø±Ø§Ù Ø¨Ø±ÙØ§Ù
٠را Ù
ÙÙÙØªÙر ÙÙÙØ¯.
+اگر postmaster
+در ØØ§Ù اجرا باشد با Ø¯Ø³ØªÙØ± psql Ù
ÙâØªÙØ§Ù بÙ
+postgres Ù
تص٠شد. با Ù¾ÙØ¯Ø§ ÙØ±Ø¯Ù PID
+ÙØ±Ø§ÙÙØ¯ postgres ÙÙ psql بÙ
+Ø¢Ù Ù
تص٠شد٠است Ù
ÙâØªÙØ§Ù آ٠را Ù
ÙÙÙØªÙر ÙØ±Ø¯. برا٠اÙÙÙØ§Ø± Ø¨Ø§ÙØ¯ ÙÙ Ø¨Ø±ÙØ§Ù
Ù Ø§Ø´ÙØ§ÙâÙØ§Ø¨
+را ب٠آ٠pid Ù
ØªØµÙ ÙØ±Ø¯. اگر Ø¨Ø®ÙØ§ÙÙÙ
Ø¨Ø§ÙØ§ Ø¢Ù
دÙ
+postgres را Ù
ÙÙÙØªÙر ÙÙÙÙ
ÙØ§Ù٠است
+"PGOPTIONS="-W n Ù psql
+را اجرا ÙÙÙÙ
. اÙÙ ÙØ§Ø± باعث Ù
ÙâØ´ÙØ¯ ÙÙ postgres با
+n ثاÙÙÙ ØªØ§Ø®ÙØ± اجرا Ø´ÙØ¯ ٠در اÙÙ ÙØ§ØµÙÙ Ø´Ù
ا Ù
ÙâØªÙØ§ÙÙØ¯
+Ø¨Ø±ÙØ§Ù
Ù Ø§Ø´ÙØ§ÙâÙØ§Ø¨ را ب٠آ٠Ù
ØªØµÙ ÙØ±Ø¯Ù ٠با ÙØ±Ø§Ø± داد٠ÙÙ ÙÙØ·Ù تÙÙ٠رÙÙØ¯ اجراÙ
+آ٠را Ù
ÙÙÙØªÙر ÙÙÙØ¯.
postgres
-گزينههاي s- و A- و
-t- دارد كه براي پيدا كردن اشكالات بسيار مناسب هستند.
-شما ميتوانيد postgreSQL
-را با امكانات profiling كامپيل كنيد. اين كار باعث
-ميشود كه زمان اجراي دقيق هر تابع در برنامه مشخص شود. خروجيهاي توليد شده در اين
-حالت در فايل DLINUX_PROFILE. ريخته ميشود.
+گزÙÙÙâÙØ§Ù s-â Ù A- Ù
+t-â Ø¯Ø§Ø±Ø¯ ÙÙ Ø¨Ø±Ø§Ù Ù¾ÙØ¯Ø§ ÙØ±Ø¯Ù Ø§Ø´ÙØ§Ùات Ø¨Ø³ÙØ§Ø± Ù
ÙØ§Ø³Ø¨ ÙØ³ØªÙد.
+Ø´Ù
ا Ù
ÙâØªÙØ§ÙÙØ¯ postgreSQL
+را با اÙ
ÙØ§Ùات profiling ÙØ§Ù
Ù¾ÙÙ ÙÙÙØ¯. اÙÙ ÙØ§Ø± باعث
+Ù
ÙâØ´ÙØ¯ Ù٠زÙ
ا٠اجرا٠دÙÙÙ ÙØ± تابع در Ø¨Ø±ÙØ§Ù
Ù Ù
شخص Ø´ÙØ¯. Ø®Ø±ÙØ¬ÙâÙØ§Ù تÙÙÙØ¯ شد٠در اÙÙ
+ØØ§Ùت در ÙØ§ÙÙ DLINUX_PROFILE. Ø±ÙØ®ØªÙ Ù
ÙâØ´ÙØ¯.
3.8)
-چرا موقعي كه من ميخواهم به پايگاه داده وصل شوم پيام "Sorry, too many clients"
-ميگيرم؟
-شما بايد حداكثر تعداد فرايندهاي همزمان
-postmaster را افزايش دهيد. مقدار پيش فرض 32 است.
-براي افزايش آن ميتوان از گزينه N- استفاده كرد و يا
-فايل postgresql.conf را اصلاح نمود
-توجه كنيد كه اگر N-
-مقداري بيشتر از 32 داشته باشد بايد مقدار B- را نيز
-افزايش دهيم. اين مقدار بايد حداقل دو برابر مقدار N-
-باشد. براي اعداد خيلي بالا بايد بعضي از پارامترهاي كرنل را نيز اصلاح كرد.
-پارامترهايي نظير حداكثر اندازه حافظه اشتراكي SHMMAX ،
-حداكثر تعداد سمافورها SEMMNI و
-SEMMNS ، حداكثر تعداد فرايندها NPROC، حداكثر
-فرايندهاي يك كاربر MAXUPRC و حداكثر فايلهاي باز
-NFILE و NINODE. يكي از
-دلايلي كه تعداد اتصالات همزمان postgreSQL محدود است آن
-است كه نيازهاي PostgreSQL بيش از منابع موجود سيستم
-نباشد.
+ÚØ±Ø§ Ù
ÙÙØ¹Ù ÙÙ Ù
Ù Ù
ÙâØ®ÙØ§ÙÙ
ب٠پاÙÚ¯Ø§Ù Ø¯Ø§Ø¯Ù ÙØµÙ Ø´ÙÙ
Ù¾ÙØ§Ù
+"Sorry, too many clients"
+âÙ
ÙâÚ¯ÙØ±Ù
Ø
+Ø´Ù
ا Ø¨Ø§ÙØ¯ ØØ¯Ø§Ùثر تعداد ÙØ±Ø§ÙÙØ¯Ùا٠ÙÙ
زÙ
اÙ
+postmaster را Ø§ÙØ²Ø§ÙØ´ دÙÙØ¯. Ù
ÙØ¯Ø§Ø± Ù¾ÙØ´ ÙØ±Ø¶ 32 است.
+Ø¨Ø±Ø§Ù Ø§ÙØ²Ø§ÙØ´ Ø¢Ù Ù
ÙâØªÙØ§Ù از گزÙÙÙ N- Ø§Ø³ØªÙØ§Ø¯Ù ÙØ±Ø¯ Ù ÙØ§
+ÙØ§ÙÙ postgresql.conf را Ø§ØµÙØ§Ø ÙÙ
ÙØ¯
+ØªÙØ¬Ù ÙÙÙØ¯ Ù٠اگر N-
+Ù
ÙØ¯Ø§Ø±Ù Ø¨ÙØ´ØªØ± از 32 داشت٠باشد Ø¨Ø§ÙØ¯ Ù
ÙØ¯Ø§Ø± B- را ÙÙØ²
+Ø§ÙØ²Ø§ÙØ´ دÙÙÙ
. اÙÙ Ù
ÙØ¯Ø§Ø± Ø¨Ø§ÙØ¯ ØØ¯Ø§Ù٠د٠برابر Ù
ÙØ¯Ø§Ø± N-â
+باشد. برا٠اعداد Ø®ÙÙÙ Ø¨Ø§ÙØ§ Ø¨Ø§ÙØ¯ بعض٠از پاراÙ
ØªØ±ÙØ§Ù ÙØ±Ù٠را ÙÙØ² Ø§ØµÙØ§Ø ÙØ±Ø¯.
+پاراÙ
ØªØ±ÙØ§ÙÙ ÙØ¸Ùر ØØ¯Ø§Ùثر Ø§ÙØ¯Ø§Ø²Ù ØØ§Ùظ٠اشتراÙÙ SHMMAX Ø
+ØØ¯Ø§Ùثر تعداد سÙ
اÙÙØ±Ùا SEMMNIâ Ù
+SEMMNS Ø ØØ¯Ø§Ùثر تعداد ÙØ±Ø§ÙÙØ¯Ùا NPROCØ ØØ¯Ø§Ùثر
+ÙØ±Ø§ÙÙØ¯Ùا٠ÙÙ ÙØ§Ø±Ø¨Ø± MAXUPRC Ù ØØ¯Ø§Ùثر ÙØ§ÙÙÙØ§Ù باز
+NFILE Ù NINODE. ÙÙ٠از
+Ø¯ÙØ§ÙÙÙ Ù٠تعداد Ø§ØªØµØ§ÙØ§Øª ÙÙ
زÙ
ا٠postgreSQL Ù
ØØ¯Ùد است Ø¢Ù
+است ÙÙ ÙÙØ§Ø²Ùا٠PostgreSQL Ø¨ÙØ´ از Ù
ÙØ§Ø¨Ø¹ Ù
ÙØ¬Ùد Ø³ÙØ³ØªÙ
+ÙØ¨Ø§Ø´Ø¯.
3.9)
-در شاخه pgsql_tmp چه چيزي قرار دارد؟
-دراين شاخه فايلهاي موقتي قرار دارد كه با اجراي
-درخواستها به وجود آمده است. به عنوان مثال اگر براي اجراي دستور
-order by نياز به انجام مرتب سازي باشد و در صورتي كه
-حافظه مشخص شده با گزينه S- براي اينكار كافي نباشد
-سيستم يك فايل موقت در اين شاخه ايجاد ميكند تا عمل مرتب سازي را انجام دهد.
-فايلهاي موقت معمولاً به صورت اتوماتيك پاك
-ميشود اما اگر postgreSQL در حين مرتب سازي
-crash كند آن فايلها باقي ميمانند. با
-stop و start كردن برنامه
-postmaster اين فايلها پاك ميشوند.
+در شاخ٠pgsql_tmp ÚÙ ÚÙØ²Ù ÙØ±Ø§Ø± داردØ
+دراÙÙ Ø´Ø§Ø®Ù ÙØ§ÙÙÙØ§Ù Ù
ÙÙØªÙ ÙØ±Ø§Ø± دارد Ù٠با اجراÙ
+Ø¯Ø±Ø®ÙØ§Ø³ØªÙا Ø¨Ù ÙØ¬Ùد Ø¢Ù
د٠است. ب٠عÙÙØ§Ù Ù
ثا٠اگر Ø¨Ø±Ø§Ù Ø§Ø¬Ø±Ø§Ù Ø¯Ø³ØªÙØ±
+order by ÙÙØ§Ø² Ø¨Ù Ø§ÙØ¬Ø§Ù
Ù
رتب ساز٠باشد ٠در ØµÙØ±ØªÙ ÙÙ
+ØØ§Ùظ٠Ù
شخص شد٠با گزÙÙÙ S- برا٠اÙÙÙØ§Ø± ÙØ§ÙÙ ÙØ¨Ø§Ø´Ø¯
+Ø³ÙØ³ØªÙ
ÙÙ ÙØ§ÙÙ Ù
ÙÙØª در اÙÙ Ø´Ø§Ø®Ù Ø§ÙØ¬Ø§Ø¯ Ù
ÙâÙÙØ¯ تا عÙ
Ù Ù
رتب ساز٠را Ø§ÙØ¬Ø§Ù
Ø¯ÙØ¯.
+ÙØ§ÙÙÙØ§Ù Ù
ÙÙØª Ù
عÙ
ÙÙØ§Ù Ø¨Ù ØµÙØ±Øª اتÙÙ
اتÙ٠پاÙ
+Ù
ÙâØ´ÙØ¯ اÙ
ا اگر postgreSQL در ØÙÙ Ù
رتب سازÙ
+crashâ ÙÙØ¯ Ø¢Ù ÙØ§ÙÙÙØ§ باÙÙ Ù
ÙâÙ
اÙÙØ¯. با
+stop Ù start ÙØ±Ø¯Ù Ø¨Ø±ÙØ§Ù
Ù
+postmaster اÙÙ ÙØ§ÙÙÙØ§ پا٠Ù
ÙâØ´ÙÙØ¯.
3.10)
-چرا براي به روز كردن نسخه پايگاه داده من بايد كل داده ها را
-dump و مجدداً restore كنم؟
-تيم برنامه نويس postgreSQL
-در نسخههاي ارائه شده كه فقط minor آنها متفاوت است فقط
-تغييرات كوچكي اعمال ميكنند؛ بنابراين براي به روز كردن از نسخه
-7.2به 7.2.1 نيازي به
-dump و restore نيست. اما در
-نسخههايي كه major آنها تغيير ميكند غالباً ساختار
-داخلي جداول و فايلهاي داده تغيير ميكند. اين تغييرات معمولاً پيچيده هستند. براي
-انتقال دادههاي موجود در پايگاه داده در اين حالت بايد از
-dump و restore استفاده كرد.
-در نسخههايي كه ساختار روي ديسك تغييري نميكند
-مي توان از برنامه pg_upgrade براي به روز كردن پايگاه
-داده استفاده كرد بدون اينكه نيازي به استفاده از dump و
-restore باشد. در يادداشتي كه به همراه هر توزيع
-ميآيد ذكر شده است كه آيا برنامه pg_upgrade براي اين
-توزيع وجود دارد يا خير.
+ÚØ±Ø§ Ø¨Ø±Ø§Ù Ø¨Ù Ø±ÙØ² ÙØ±Ø¯Ù ÙØ³Ø®Ù پاÙگا٠داد٠Ù
Ù Ø¨Ø§ÙØ¯ ÙÙ Ø¯Ø§Ø¯Ù ÙØ§ را
+dumpâ Ù Ù
جددا٠restore ÙÙÙ
Ø
+تÙÙ
Ø¨Ø±ÙØ§Ù
Ù ÙÙÙØ³ postgreSQL
+در ÙØ³Ø®ÙâÙØ§Ù ارائ٠شد٠ÙÙ ÙÙØ· minor Ø¢ÙÙØ§ Ù
ØªÙØ§Ùت است ÙÙØ·
+تغÙÙØ±Ø§Øª ÙÙÚÙ٠اعÙ
ا٠Ù
ÙâÙÙÙØ¯Ø Ø¨ÙØ§Ø¨Ø±Ø§ÙÙ Ø¨Ø±Ø§Ù Ø¨Ù Ø±ÙØ² ÙØ±Ø¯Ù از ÙØ³Ø®Ù
+7.2âØ¨Ù 7.2.1 ÙÙØ§Ø²Ù بÙ
+dump Ù restore ÙÙØ³Øª. اÙ
ا در
+ÙØ³Ø®ÙâÙØ§ÙÙ ÙÙ major Ø¢ÙÙØ§ تغÙÙØ± Ù
ÙâÙÙØ¯ ØºØ§ÙØ¨Ø§Ù ساختار
+داخÙ٠جداÙÙ Ù ÙØ§ÙÙÙØ§Ù داد٠تغÙÙØ± Ù
ÙâÙÙØ¯. اÙ٠تغÙÙØ±Ø§Øª Ù
عÙ
ÙÙØ§Ùâ Ù¾ÙÚÙØ¯Ù ÙØ³ØªÙد. براÙ
+Ø§ÙØªÙا٠دادÙâÙØ§Ù Ù
ÙØ¬Ùد در پاÙگا٠داد٠در اÙÙ ØØ§Ùت Ø¨Ø§ÙØ¯ âØ§Ø²
+dump Ù restore Ø§Ø³ØªÙØ§Ø¯Ù ÙØ±Ø¯.
+در ÙØ³Ø®ÙâÙØ§ÙÙ Ù٠ساختار رÙÙ Ø¯ÙØ³Ù تغÙÙØ±Ù ÙÙ
ÙâÙÙØ¯
+Ù
Ù ØªÙØ§Ù از Ø¨Ø±ÙØ§Ù
Ù pg_upgrade Ø¨Ø±Ø§Ù Ø¨Ù Ø±ÙØ² ÙØ±Ø¯Ù پاÙگاÙ
+Ø¯Ø§Ø¯Ù Ø§Ø³ØªÙØ§Ø¯Ù ÙØ±Ø¯ بدÙ٠اÙÙÙÙ ÙÙØ§Ø²Ù Ø¨Ù Ø§Ø³ØªÙØ§Ø¯Ù از dump Ù
+restore باشد. در ÙØ§Ø¯Ø¯Ø§Ø´ØªÙ Ù٠ب٠ÙÙ
Ø±Ø§Ù ÙØ± ØªÙØ²Ùع Ù
ÙâØ¢ÙØ¯
+Ø°ÙØ± شد٠است ÙÙ Ø¢ÙØ§ Ø¨Ø±ÙØ§Ù
Ù pg_upgrade برا٠اÙÙ ØªÙØ²Ùع
+ÙØ¬Ùد دارد ÙØ§ Ø®ÙØ±.
3.11)
-از چه سخت افزاري بايد استفاده كنم؟
+از Ú٠سخت Ø§ÙØ²Ø§Ø±Ù Ø¨Ø§ÙØ¯ Ø§Ø³ØªÙØ§Ø¯Ù ÙÙÙ
Ø
-چون اكثر سختافزارهاي PC
- سازگار هستند مردم فكر ميكنند كه كيفيت آنها نيز يكسان است. در
-حاليكه اينطور نيست. استفاده از هاردهاي SCSI و
-حافظههاي ECC و مادربردهاي با كيفيت بالا نسبت به سخت
-افزارهاي ارزانتر نتايج بهتري از نظر كارايي و پايداري سيستم بهمراه خواهد داشت.
-PostgreSQL روي بيشتر سخت افزارها اجرا ميشود اما اگر كارايي و اطمينان
-فاكتورهاي مهمي هستند بايد سخت افزار مناسب استفاده شود. در گروههاي پستي در مورد
-سخت افزار مناسب و انتخاب آن بحث شده است.
+ÚÙÙ Ø§ÙØ«Ø± Ø³Ø®ØªâØ§ÙØ²Ø§Ø±Ùا٠PC
+ سازگار ÙØ³ØªÙد Ù
ردÙ
ÙÙØ± Ù
ÙâÙÙÙØ¯ ÙÙ ÙÙÙÙØª Ø¢ÙÙØ§ ÙÙØ² ÙÙØ³Ø§Ù است. در ØØ§ÙÙÙÙ
+اÙÙØ·Ùر ÙÙØ³Øª. Ø§Ø³ØªÙØ§Ø¯Ù از ÙØ§Ø±Ø¯Ùا٠SCSI Ù ØØ§ÙظÙâÙØ§Ù
+ECC Ù Ù
Ø§Ø¯Ø±Ø¨Ø±Ø¯ÙØ§Ù با ÙÙÙÙØª Ø¨Ø§ÙØ§ ÙØ³Ø¨Øª ب٠سخت Ø§ÙØ²Ø§Ø±ÙØ§Ù Ø§Ø±Ø²Ø§ÙØªØ± ÙØªØ§Ùج Ø¨ÙØªØ±Ù
+از ÙØ¸Ø± ÙØ§Ø±Ø§ÙÙ Ù Ù¾Ø§ÙØ¯Ø§Ø±Ù Ø³ÙØ³ØªÙ
بÙÙ
Ø±Ø§Ù Ø®ÙØ§Ùد داشت.
+PostgreSQL رÙÙ Ø¨ÙØ´ØªØ± سخت Ø§ÙØ²Ø§Ø±Ùا اجرا Ù
ÙâØ´ÙØ¯ اÙ
ا اگر ÙØ§Ø±Ø§Ù٠٠اطÙ
ÙÙØ§Ù
+ÙØ§ÙØªÙØ±Ùا٠Ù
ÙÙ
Ù ÙØ³ØªÙد Ø¨Ø§ÙØ¯ سخت Ø§ÙØ²Ø§Ø± Ù
ÙØ§Ø³Ø¨ Ø§Ø³ØªÙØ§Ø¯Ù Ø´ÙØ¯. در گرÙÙÙØ§Ù پست٠در Ù
ÙØ±Ø¯
+سخت Ø§ÙØ²Ø§Ø± Ù
ÙØ§Ø³Ø¨ Ù Ø§ÙØªØ®Ø§Ø¨ Ø¢Ù Ø¨ØØ« شد٠است.
-سوالات عملياتي
-4.1) تفاوت بين
-binary cursors و Normal cursors
-چيست؟
-راهنماي دستور DECLARE
-را مطالعه كنيد.
+Ø³ÙØ§Ùات عÙ
ÙÙØ§ØªÙ
+4.1) ØªÙØ§Ùت بÙÙ
+binary cursors Ù Normal cursors
+ÚÙØ³ØªØ
+راÙÙÙ
Ø§Ù Ø¯Ø³ØªÙØ± DECLAREâ
+را Ù
Ø·Ø§ÙØ¹Ù ÙÙÙØ¯.
4.2)
-من چگونه ميتوانم فقط روي چند رديف اول
-يا يك رديف تصادفي درخواست SELECT
-بزنم؟
-راهنماي دستور FETCH
- يا SELECT...LIMIT را ببينيد.
-در واقع كل درخواست بايد بررسي و
-ارزيابي شود حتي اگر شما فقط چند رديف اول را بخواهيد. براي مثال درخواست
-ORDER BY را در نظر بگيريد. اگر انديس يا نمايهاي براي ORDER
-BY وجود داشته باشد،postgreSQL ممكن است
-بتواند فقط چند سطر اول درخواستي را ارزيابي كند و يا اينكه كل درخواست پردازش شود
-تا تعداد رديفهاي درخواستي توليد شود.
-براي انتخاب يك سطر تصادفي به
-روش زير عمل ميكنيم:
+
Ù
Ù ÚÚ¯ÙÙÙ Ù
ÙâØªÙØ§ÙÙ
ÙÙØ· رÙÙ ÚÙØ¯ ردÙ٠اÙÙ ÙØ§ Ù٠ردÙ٠تصادÙÙ Ø¯Ø±Ø®ÙØ§Ø³Øª
+SELECT
â Ø¨Ø²ÙÙ
Ø
+
راÙÙÙ
Ø§Ù Ø¯Ø³ØªÙØ± FETCH
+ ÙØ§ SELECT...LIMIT را ببÙÙÙØ¯.
+
در ÙØ§Ùع ÙÙ Ø¯Ø±Ø®ÙØ§Ø³Øª Ø¨Ø§ÙØ¯ بررس٠Ù
+Ø§Ø±Ø²ÙØ§Ø¨Ù Ø´ÙØ¯ ØØªÙ اگر Ø´Ù
ا ÙÙØ· ÚÙØ¯ ردÙ٠اÙ٠را Ø¨Ø®ÙØ§ÙÙØ¯. برا٠Ù
Ø«Ø§Ù Ø¯Ø±Ø®ÙØ§Ø³Øª
+ORDER BY را در ÙØ¸Ø± Ø¨Ú¯ÙØ±Ùد. اگر Ø§ÙØ¯Ùس ÙØ§ ÙÙ
اÙÙâØ§Ù Ø¨Ø±Ø§Ù
+ORDER BY ÙØ¬Ùد داشت٠باشدØâpostgreSQLâ
+Ù
Ù
Ù٠است Ø¨ØªÙØ§Ùد ÙÙØ· ÚÙØ¯ سطر اÙÙ Ø¯Ø±Ø®ÙØ§Ø³ØªÙ را Ø§Ø±Ø²ÙØ§Ø¨Ù ÙÙØ¯ Ù ÙØ§ اÙÙÙÙ ÙÙ Ø¯Ø±Ø®ÙØ§Ø³Øª
+پردازش Ø´ÙØ¯ تا تعداد ردÙÙâÙØ§Ù Ø¯Ø±Ø®ÙØ§Ø³ØªÙ تÙÙÙØ¯ Ø´ÙØ¯.
+
Ø¨Ø±Ø§Ù Ø§ÙØªØ®Ø§Ø¨ Ù٠سطر تصادÙ٠بÙ
+Ø±ÙØ´ Ø²ÙØ± عÙ
Ù Ù
ÙâÙÙÙÙ
:
SELECT col
FROM tab
ORDER BY random()
@@ -913,30 +934,30 @@ BY وجود داشت
4.3)
-من چگونه ميتوانم ليستي از جداول يا ساير چيزهايي كه در
-psql وجود دارد را ببينم؟
-
براي ديدن ليست جداول دستور
-dt\ را در برنامه psql
-استفاده كنيد. براي ديدن ليست كامل فرمانها ?\ را اجرا
-كنيد. راه ديگر خواندن متن برنامه psql است كه در شاخه
- pgsql/src/bin/psql/describe.c قرار
-دارد. اين فايل حاوي فرامين SQLيي است كه خروجي را
-براي دستوراتي كه با \در psql
-شروع ميشوند توليد ميكنند. راه ديگر اجراي psql با گزينه
-E-است. اينكار باعث ميشود كه psql
-قبل از اجرا هر دستور SQLمتناظر آن را نشان دهد.
-PostgreSQLهمچنين يك برنامه SQLi دارد كه
-ميتوان با استفاده از آن اطلاعات داخلي پايگاه داده را استخراج كرد.
+
Ù
Ù ÚÚ¯ÙÙÙ Ù
ÙâØªÙØ§ÙÙ
ÙÙØ³ØªÙ از جداÙÙ ÙØ§ Ø³Ø§ÙØ± ÚÙØ²ÙاÙÙ Ù٠در
+psql
â ÙØ¬Ùد دارد را ببÙÙÙ
Ø
+
Ø¨Ø±Ø§Ù Ø¯ÙØ¯Ù ÙÙØ³Øª جداÙÙ Ø¯Ø³ØªÙØ±
+dt\ را در Ø¨Ø±ÙØ§Ù
Ù psqlâ
+Ø§Ø³ØªÙØ§Ø¯Ù ÙÙÙØ¯. Ø¨Ø±Ø§Ù Ø¯ÙØ¯Ù ÙÙØ³Øª ÙØ§Ù
Ù ÙØ±Ù
اÙÙØ§ ?\ را اجرا
+ÙÙÙØ¯. را٠دÙگر Ø®ÙØ§Ùد٠Ù
ØªÙ Ø¨Ø±ÙØ§Ù
Ù psqlâ Ø§Ø³Øª Ù٠در شاخÙ
+ pgsql/src/bin/psql/describe.c âÙØ±Ø§Ø±
+دارد. اÙÙ ÙØ§ÙÙ ØØ§ÙÙ ÙØ±Ø§Ù
ÙÙ SQLÙ٠است ÙÙ Ø®Ø±ÙØ¬Ù را
+Ø¨Ø±Ø§Ù Ø¯Ø³ØªÙØ±Ø§ØªÙ Ù٠با \âØ¯Ø± psql
+Ø´Ø±ÙØ¹ Ù
ÙâØ´ÙÙØ¯ تÙÙÙØ¯ Ù
ÙâÙÙÙØ¯. را٠دÙگر اجرا٠psql با گزÙÙÙ
+E-âØ§Ø³Øª. اÙÙÙØ§Ø± باعث Ù
ÙâØ´ÙØ¯ ÙÙ psql
+ÙØ¨Ù از اجرا ÙØ± Ø¯Ø³ØªÙØ± SQLâÙ
ØªÙØ§Ø¸Ø± آ٠را ÙØ´Ø§Ù Ø¯ÙØ¯.
+PostgreSQLâÙÙ
ÚÙÙÙ ÙÙ Ø¨Ø±ÙØ§Ù
Ù SQLi دارد ÙÙ
+Ù
ÙâØªÙØ§Ù با Ø§Ø³ØªÙØ§Ø¯Ù از Ø¢Ù Ø§Ø·ÙØ§Ø¹Ø§Øª داخÙ٠پاÙگا٠داد٠را استخراج ÙØ±Ø¯.
4.4)
-چگونه يك ستون جدول را حذف ميكنيد؟ چگونه نوع داده آن را عوض
-كنيم؟
-
حذف يك ستون در توزيع 7.3
-با استفاده از دستور ALTER TABLE DROP COLUMN
-اضافه شده است. در نسخههاي قبلي به روش زير عمل كنيد:
+
ÚÚ¯ÙÙÙ Ù٠ستÙ٠جدÙ٠را ØØ°Ù Ù
ÙâÙÙÙØ¯Ø ÚÚ¯ÙÙÙ ÙÙØ¹ داد٠آ٠را Ø¹ÙØ¶
+ÙÙÙÙ
Ø
+
ØØ°Ù Ù٠ستÙ٠در ØªÙØ²Ùع 7.3
+با Ø§Ø³ØªÙØ§Ø¯Ù از Ø¯Ø³ØªÙØ± ALTER TABLE DROP COLUMN
+اضاÙ٠شد٠است. در ÙØ³Ø®ÙâÙØ§Ù ÙØ¨ÙÙ Ø¨Ù Ø±ÙØ´ Ø²ÙØ± عÙ
Ù ÙÙÙØ¯:
BEGIN;
LOCK TABLE old_table;
- SELECT ... -- تمام ستونها غير از ستوني كه ميخواهيد آن را حذف كنيد را در اينجا بياوريد
+ SELECT ... -- تÙ
اÙ
ستÙÙÙØ§ ØºÙØ± از ستÙÙÙ ÙÙ Ù
ÙâØ®ÙØ§ÙÙØ¯ آ٠را ØØ°Ù ÙÙÙØ¯ را در اÙÙØ¬Ø§ Ø¨ÙØ§ÙØ±ÙØ¯
INTO TABLE new_table
FROM old_table;
DROP TABLE old_table;
@@ -944,8 +965,8 @@ PostgreSQLهمچنين
COMMIT;
-
براي عوض كردن نوع داده يك ستون
-به روش زير عمل كنيد:
+
Ø¨Ø±Ø§Ù Ø¹ÙØ¶ ÙØ±Ø¯Ù ÙÙØ¹ داد٠Ù٠ستÙÙ
+Ø¨Ù Ø±ÙØ´ Ø²ÙØ± عÙ
Ù ÙÙÙØ¯:
BEGIN;
ALTER TABLE tab ADD COLUMN new_col new_data_type;
@@ -955,105 +976,102 @@ PostgreSQLهمچنين
4.5)
-حداكثر اندازه يك رديف، جدول و خود پايگاه داده چقدر است؟
-
محدوديتها عبارتند از:
+
ØØ¯Ø§Ùثر Ø§ÙØ¯Ø§Ø²Ù Ù٠ردÙÙØâ Ø¬Ø¯ÙÙ Ù Ø®ÙØ¯ پاÙگا٠داد٠ÚÙØ¯Ø± استØ
+
Ù
ØØ¯ÙØ¯ÙØªÙا Ø¹Ø¨Ø§Ø±ØªÙØ¯ از:
-
حداكثر اندازه پايگاه داده نامحدود (تا 32 ترابايت وجود دارد)
- حداكثر اندازه يك جدول 32 ترابايت
- حداكثر ا ندازه يك رديف 1.6 ترابايت
- حداكثر اندازه يك فيلد 1 گيگا بايت
- حداكثر اندازه رديفهاي يك جدول نا محدود
- حداكثر ستونهاي يك جدول بسته به نوع جدول بين 250 تا 6000
- حداكثر انديسهاي يك جدول نا محدود
+ ØØ¯Ø§Ùثر Ø§ÙØ¯Ø§Ø²Ù پاÙÚ¯Ø§Ù Ø¯Ø§Ø¯Ù ÙØ§Ù
ØØ¯Ùد (تا 32 ØªØ±Ø§Ø¨Ø§ÙØª ÙØ¬Ùد دارد)
+ ØØ¯Ø§Ùثر Ø§ÙØ¯Ø§Ø²Ù Ù٠جدÙÙ 32 ØªØ±Ø§Ø¨Ø§ÙØª
+ ØØ¯Ø§Ùثر ا ÙØ¯Ø§Ø²Ù Ù٠ردÙÙ 1.6 ØªØ±Ø§Ø¨Ø§ÙØª
+ ØØ¯Ø§Ùثر Ø§ÙØ¯Ø§Ø²Ù ÙÙ ÙÙÙØ¯ 1 Ú¯Ùگا Ø¨Ø§ÙØª
+ ØØ¯Ø§Ùثر Ø§ÙØ¯Ø§Ø²Ù ردÙÙÙØ§Ù Ù٠جدÙÙ ÙØ§ Ù
ØØ¯Ùد
+ ØØ¯Ø§Ùثر ستÙÙÙØ§Ù Ù٠جدÙ٠بست٠ب٠ÙÙØ¹ جدÙ٠بÙÙ 250 تا 6000
+ ØØ¯Ø§Ùثر Ø§ÙØ¯ÙØ³ÙØ§Ù Ù٠جدÙÙ ÙØ§ Ù
ØØ¯Ùد
-
البته در حالت نامحدود نيز ما
-محدود به حجم هاردديسك و فضاي حافظه خواهيم بود. در صورتي
-که مقادير مشخص شده به عنوان
-نامحدود به صورت غير معمولي بزرك شوند كارايي سيستم كاهش خواهد يافت.
-
براي ذخيره كردن جداول با اندازه
-خيلي بزرگ نيازي نيست كه سيستم عامل امكان ايجاد فايلهاي بزرگ را داشته باشد. بلكه
-جداول خيلي بزرگ به صورت فايلهايي به حجم يك گيگا بايت نگاهداري ميشوند.
-
اگر اندازه بلوكهاي داده را
-برابر 32 كيلو بايت قرار دهيم حداكثر اندازه جدول و حداكثر تعداد ستونها 4 برابر
-خواهد شد.
+
Ø§ÙØ¨ØªÙ در ØØ§Ùت ÙØ§Ù
ØØ¯Ùد ÙÙØ² Ù
ا
+Ù
ØØ¯Ùد Ø¨Ù ØØ¬Ù
ÙØ§Ø±Ø¯Ø¯ÙØ³Ù Ù ÙØ¶Ø§Ù ØØ§ÙØ¸Ù Ø®ÙØ§ÙÙÙ
Ø¨ÙØ¯. در ØµÙØ±ØªÙ Ú©Ù Ù
ÙØ§Ø¯Ùر Ù
شخص شد٠بÙ
+عÙÙØ§Ù ÙØ§Ù
ØØ¯Ùد Ø¨Ù ØµÙØ±Øª ØºÙØ± Ù
عÙ
ÙÙ٠بزر٠شÙÙØ¯ ÙØ§Ø±Ø§ÙÙ Ø³ÙØ³ØªÙ
ÙØ§ÙØ´ Ø®ÙØ§Ùد ÙØ§Ùت.
+
Ø¨Ø±Ø§Ù Ø°Ø®ÙØ±Ù ÙØ±Ø¯Ù جداÙ٠با Ø§ÙØ¯Ø§Ø²Ù
+Ø®ÙÙ٠بزرگ ÙÙØ§Ø²Ù ÙÙØ³Øª ÙÙ Ø³ÙØ³ØªÙ
عاÙ
٠اÙ
ÙØ§Ù Ø§ÙØ¬Ø§Ø¯ ÙØ§ÙÙÙØ§Ù بزرگ را داشت٠باشد. بÙÙÙ
+جداÙÙ Ø®ÙÙ٠بزرگ Ø¨Ù ØµÙØ±Øª ÙØ§ÙÙÙØ§ÙÙ Ø¨Ù ØØ¬Ù
ÙÙ Ú¯Ùگا Ø¨Ø§ÙØª ÙÚ¯Ø§ÙØ¯Ø§Ø±Ù Ù
ÙâØ´ÙÙØ¯.
+
اگر Ø§ÙØ¯Ø§Ø²Ù بÙÙÙÙØ§Ù داد٠را
+برابر 32 ÙÙÙÙ Ø¨Ø§ÙØª ÙØ±Ø§Ø± دÙÙÙ
ØØ¯Ø§Ùثر Ø§ÙØ¯Ø§Ø²Ù جدÙÙ Ù ØØ¯Ø§Ùثر تعداد ستÙÙÙØ§ 4 برابر
+Ø®ÙØ§Ùد شد.
4.6)
-چقدر فضاي ديسك سخت براي ذخيره كردن دادههاي يك فايل متني مورد
-نياز است؟
-
يك پايگاه داده
-PostgreSQL تا 5 برابر فضايي روي هاردديسك براي نگاهداري يك فايل
-متني نياز دارد.
-
به عنوان مثال يك فايل با 100000
-خط را در نظر بگيريد كه در هر خط يك عدد صحيح و يك توضيح متني آمده است. فرض كنيد
-كه رشته متني به طور متوسط 20 بايت باشد. اندازه فايل برابر 2.8 مگا بايت خواهد بود
-ولي PostgreSQL براي نگاهداري اين فايل به 6.4 مگا بايت
-اطلاعات نياز خواهد داشت.
+
ÚÙØ¯Ø± ÙØ¶Ø§Ù Ø¯ÙØ³Ù سخت Ø¨Ø±Ø§Ù Ø°Ø®ÙØ±Ù ÙØ±Ø¯Ù دادÙââÙØ§Ù ÙÙ ÙØ§ÙÙ Ù
تÙÙ Ù
ÙØ±Ø¯
+ÙÙØ§Ø² استØ
+
Ù٠پاÙگا٠دادÙ
+PostgreSQLâ ØªØ§ 5 برابر ÙØ¶Ø§Ù٠رÙÙ ÙØ§Ø±Ø¯Ø¯Ùس٠برا٠ÙÚ¯Ø§ÙØ¯Ø§Ø±Ù ÙÙ ÙØ§ÙÙ
+Ù
تÙÙ ÙÙØ§Ø² دارد.
+
ب٠عÙÙØ§Ù Ù
ثا٠ÙÙ ÙØ§Ù٠با 100000
+خط را در ÙØ¸Ø± Ø¨Ú¯ÙØ±Ùد Ù٠در ÙØ± خط Ù٠عدد صØÙØ Ù ÙÙ ØªÙØ¶ÙØ Ù
تÙ٠آÙ
د٠است. ÙØ±Ø¶ ÙÙÙØ¯
+Ù٠رشت٠Ù
تÙÙ Ø¨Ù Ø·ÙØ± Ù
ØªÙØ³Ø· 20 Ø¨Ø§ÙØª باشد. Ø§ÙØ¯Ø§Ø²Ù ÙØ§Ù٠برابر 2.8 Ù
گا Ø¨Ø§ÙØª Ø®ÙØ§Ùد Ø¨ÙØ¯
+ÙÙÙ PostgreSQL برا٠ÙÚ¯Ø§ÙØ¯Ø§Ø±Ù اÙÙ ÙØ§Ù٠ب٠6.4 Ù
گا Ø¨Ø§ÙØª
+Ø§Ø·ÙØ§Ø¹Ø§Øª ÙÙØ§Ø² Ø®ÙØ§Ùد داشت.
-
32 bytes: اندازه سرايند هر خط به طور تقريبي
- 24 bytes: يك عدد صحيح و يك رشته 24 بايتي
- + 4 bytes: اشاره گر روي صفحه به يك چندتايي
+ 32 bytes: Ø§ÙØ¯Ø§Ø²Ù سراÙÙØ¯ ÙØ± خط Ø¨Ù Ø·ÙØ± ØªÙØ±ÙبÙ
+ 24 bytes: Ù٠عدد صØÙØ Ù Ù٠رشت٠24 Ø¨Ø§ÙØªÙ
+ + 4 bytes: اشار٠گر رÙÙ ØµÙØÙ Ø¨Ù ÙÙ ÚÙØ¯ØªØ§ÙÙ
----------------------------------------
- 60 bytes در هر رديف
+ 60 bytes در ÙØ± ردÙÙ
-اندازه صفحات داده در PostgreSQL برابر با 8 كيلو بايت است
- 8192 تعداد بايتها در هر صفحه
- ------------------- = 136 تعداد رديفها در يك صفحه پايگاه داده
- 60 تعداد بايتهاي هر رديف
+Ø§ÙØ¯Ø§Ø²Ù ØµÙØØ§Øª داد٠در PostgreSQL برابر با 8 ÙÙÙÙ Ø¨Ø§ÙØª است
+ 8192 تعداد Ø¨Ø§ÙØªâÙØ§ در ÙØ± ØµÙØÙ
+ ------------------- = 136 تعداد ردÙÙâÙØ§ در ÙÙ ØµÙØÙ Ù¾Ø§Ùگا٠دادÙ
+ 60 تعداد Ø¨Ø§ÙØªâÙØ§Ù ÙØ± ردÙÙ
- 100000 تعداد رديفها
- -------------------- = تعدادصفحات پايگاه داده
- 128 تعداد رديفها در هر صفحه
+ 100000 تعداد ردÙÙÙØ§
+ -------------------- = ØªØ¹Ø¯Ø§Ø¯ØµÙØØ§Øª پاÙگا٠دادÙ
+ 128 تعداد ردÙÙÙØ§ در ÙØ± ØµÙØÙ
-735 تعداد صفحات * 8192 تعداد بايتهاي هر صفحه = 6,021,120 مگا بايت
+735 تعداد ØµÙØØ§Øª * 8192 تعداد Ø¨Ø§ÙØªâÙØ§Ù ÙØ± ØµÙØÙ = 6,021,120 Ù
گا Ø¨Ø§ÙØª
-
سربار انديسها يا نمايهها از
-اين مقدار كمتر است ولي چون شامل خود دادهها هم هست
-ممکن است اندازه آنها هم بزرگ شود.
-
NULLها به صورت bitmap
-ذخيره ميشوند و از اينرو فضاي بسيار كمي را اشغال ميكنند.
+
سربار Ø§ÙØ¯ÙØ³ÙØ§ ÙØ§ ÙÙ
اÙÙâÙØ§ از
+اÙÙ Ù
ÙØ¯Ø§Ø± ÙÙ
تر است ÙÙÙ ÚÙ٠شاÙ
Ù Ø®ÙØ¯ دادÙâÙØ§ ÙÙ
ÙØ³Øª
+Ù
Ù
ک٠است Ø§ÙØ¯Ø§Ø²Ù Ø¢ÙÙØ§ ÙÙ
بزرگ Ø´ÙØ¯.
+
NULLÙØ§ Ø¨Ù ØµÙØ±Øª bitmap
+Ø°Ø®ÙØ±Ù Ù
ÙâØ´ÙÙØ¯ ٠از اÙÙØ±Ù ÙØ¶Ø§Ù Ø¨Ø³ÙØ§Ø± ÙÙ
٠را اشغا٠Ù
ÙâÙÙÙØ¯.
4.7)
-چگونه ميتوانم بفهمم كه چه كاربران، پايگاه داده، نمايه و
-جداولي در سيستم تعريف شده است؟
+
ÚÚ¯ÙÙÙ Ù
ÙâØªÙØ§ÙÙ
بÙÙÙ
Ù
ÙÙ ÚÙ ÙØ§Ø±Ø¨Ø±Ø§ÙØâ پاÙÚ¯Ø§Ù Ø¯Ø§Ø¯ÙØâ ÙÙ
اÙÙ Ù
+جداÙÙ٠در Ø³ÙØ³ØªÙ
تعرÙ٠شد٠استØ
psql
-تعداد زيادي دستور دارد كه با \ شروع
-ميشوند و اين اطلاعات را در اختيار ما قرار ميدهند. براي ديدن آنها دستور
-?\ را اجرا كنيد. همچنين جداول سيستمي كه نام آنها
-با
-pg_ شروع ميشود نيز اين اطلاعات
-را در خود دارند. اجراي برنامه psql با گزينه l-
- نيز باعث نشان دادن ليست تمام پايگاههاي داده ميشود.
-
همچنين فايل pgsql/src/tutorial/syscat.source
-نيز فرمانهاي SELECT كه با
-استفاده از آن ميتوان اطلاعات پايگاه داده را استخراج كرد شرح داده است.
+
تعداد Ø²ÙØ§Ø¯Ù Ø¯Ø³ØªÙØ± دارد Ù٠با \
Ø´Ø±ÙØ¹
+Ù
ÙâØ´ÙÙØ¯ ٠اÙÙ Ø§Ø·ÙØ§Ø¹Ø§Øª را در Ø§Ø®ØªÙØ§Ø± Ù
ا ÙØ±Ø§Ø± Ù
ÙâØ¯ÙÙØ¯. Ø¨Ø±Ø§Ù Ø¯ÙØ¯Ù Ø¢ÙÙØ§ Ø¯Ø³ØªÙØ±
+?\
را اجرا ÙÙÙØ¯. ÙÙ
ÚÙÙ٠جداÙÙ Ø³ÙØ³ØªÙ
Ù Ù٠با ÙØ§Ù
Ø¢ÙÙØ§
+pg
_ âØ´Ø±ÙØ¹ Ù
ÙâØ´ÙØ¯ ÙÙØ² اÙÙ Ø§Ø·ÙØ§Ø¹Ø§Øª
+را در Ø®ÙØ¯ Ø¯Ø§Ø±ÙØ¯. Ø§Ø¬Ø±Ø§Ù Ø¨Ø±ÙØ§Ù
Ù psql
با گزÙÙÙ l-
+
ÙÙØ² باعث ÙØ´Ø§Ù داد٠ÙÙØ³Øª تÙ
اÙ
پاÙگاÙÙØ§Ù داد٠Ù
ÙâØ´ÙØ¯.
+
ÙÙ
ÚÙÙÙ ÙØ§ÙÙ
+pgsql/src/tutorial/syscat.source
+ÙÙØ² ÙØ±Ù
اÙÙØ§Ù SELECT Ù٠با
+Ø§Ø³ØªÙØ§Ø¯Ù از Ø¢Ù Ù
ÙâØªÙØ§Ù Ø§Ø·ÙØ§Ø¹Ø§Øª پاÙگا٠داد٠را استخراج ÙØ±Ø¯ Ø´Ø±Ø Ø¯Ø§Ø¯Ù Ø§Ø³Øª.
4.8)
-چرا درخواستهاي من كند اجرا ميشوند يا چرا از نمايه ها استفاده
-نميكنند؟
-
به طور معمول
-براي درخواستها
-از نمايهها استفاده نميشود.
-تنها در صورتي از نمايهها استفاده ميشود كه اندازه جدول از يك اندازه حداقل
-بزرگتر باشد و درخواست هم فقط قسمتي از رديفهاي جدول را انتخاب كرده باشد. دليل
-اين كار آن است كه دسترسيهاي تصادفي به هاردديسك كه به خاطر نمايهها ايجاد ميشود
-ممكن است از خواندن مستقيم جدول يا خواندن ترتيبي ركوردها كندتر باشد.
-
براي تعيين اينكه از نمايه
-استفاده شود يا خير، PostgreSQL بايد اطلاعات آماري را در
-مورد يك جدول بداند. اين اطلاعات توسط دستور ANALYZE و
-VACUUM ANALYZE به دست ميآيد. با استفاده از اين اطلاعات،
-بهينه ساز از تعداد رديفهاي يك جدول اطلاع پيدا ميكند و بهتر ميتواند تعيين كند
-كه آيا از نمايه استفاده شود يا خير. اطلاعات آماري همچنين براي تعيين ترتيب الحاق
-و روشهاي الحاق به صورت بهينه نيز كاربرد دارد. جمع آوري اطلاعات آماري بايد به صورت
-دورهاي همزمان با تغيير دادههاي جدول انجام شود.
-
نمايهها به طور معمول همراه با
-دستور ORDER BY به كار برده نميشوند. براي يك جدول بزرگ يك
-پيمايش ترتيبي همراه با دستور مرتب سازي از به كار بردن نمايهها سريعتر خواهد بود.
-
اما اگر همراه با ORDER
-BY از LIMIT استفاده شود اغلب از نمايهها
-استفاده ميشود چون فقط قسمتي از جدول
-برگردانده ميشود. در حقيقت هر چند
-توابع ()MIN و ()MAX
-از نمايهها استفاده نميكنند ولي ميتوانيم با استفاده از دستور
-زير با استفاده از نمايهها و دستور ORDER BY و
-LIMIT ، آنها را به دست آوريم.
+
ÚØ±Ø§ Ø¯Ø±Ø®ÙØ§Ø³ØªÙا٠Ù
Ù ÙÙØ¯ اجرا Ù
ÙâØ´ÙÙØ¯ ÙØ§ ÚØ±Ø§ از ÙÙ
اÙÙ ÙØ§ Ø§Ø³ØªÙØ§Ø¯Ù
+ÙÙ
ÙâÙÙÙØ¯Ø
+
Ø¨Ù Ø·ÙØ± Ù
عÙ
ÙÙ
+Ø¨Ø±Ø§Ù Ø¯Ø±Ø®ÙØ§Ø³ØªÙا از ÙÙ
اÙÙâÙØ§ Ø§Ø³ØªÙØ§Ø¯Ù ÙÙ
ÙâØ´ÙØ¯.
+تÙÙØ§ در ØµÙØ±ØªÙ از ÙÙ
اÙÙâÙØ§ Ø§Ø³ØªÙØ§Ø¯Ù Ù
ÙâØ´ÙØ¯ ÙÙ Ø§ÙØ¯Ø§Ø²Ù جدÙ٠از ÙÙ Ø§ÙØ¯Ø§Ø²Ù ØØ¯Ø§ÙÙ
+بزرگتر باشد Ù Ø¯Ø±Ø®ÙØ§Ø³Øª ÙÙ
ÙÙØ· ÙØ³Ù
ت٠از ردÙÙâÙØ§Ù جدÙ٠را Ø§ÙØªØ®Ø§Ø¨ ÙØ±Ø¯Ù باشد. دÙÙÙ
+اÙÙ ÙØ§Ø± آ٠است Ù٠دسترسÙâÙØ§Ù تصادÙÙ Ø¨Ù ÙØ§Ø±Ø¯Ø¯Ùس٠Ù٠ب٠خاطر ÙÙ
اÙÙâÙØ§ Ø§ÙØ¬Ø§Ø¯ Ù
ÙâØ´ÙØ¯
+Ù
Ù
Ù٠است از Ø®ÙØ§Ùد٠Ù
ستÙÙÙ
جدÙÙ ÙØ§ Ø®ÙØ§ÙØ¯Ù ØªØ±ØªÙØ¨Ù رÙÙØ±Ø¯Ùا ÙÙØ¯ØªØ± باشد.
+
برا٠تعÙÙ٠اÙÙÙ٠از ÙÙ
اÙÙ
+Ø§Ø³ØªÙØ§Ø¯Ù Ø´ÙØ¯ ÙØ§ Ø®ÙØ±Ø PostgreSQL Ø¨Ø§ÙØ¯ Ø§Ø·ÙØ§Ø¹Ø§Øª Ø¢Ù
ار٠را در
+Ù
ÙØ±Ø¯ Ù٠جدÙÙ Ø¨Ø¯Ø§ÙØ¯. اÙÙ Ø§Ø·ÙØ§Ø¹Ø§Øª ØªÙØ³Ø· Ø¯Ø³ØªÙØ± ANALYZE Ù
+VACUUM ANALYZE ب٠دست Ù
ÙâØ¢ÙØ¯. با Ø§Ø³ØªÙØ§Ø¯Ù از اÙÙ Ø§Ø·ÙØ§Ø¹Ø§ØªØâ
+بÙÙÙ٠ساز از تعداد ردÙÙâÙØ§Ù Ù٠جدÙÙ Ø§Ø·ÙØ§Ø¹ Ù¾ÙØ¯Ø§ Ù
ÙâÙÙØ¯ Ù Ø¨ÙØªØ± Ù
ÙâØªÙØ§Ùد تعÙÙÙ ÙÙØ¯
+ÙÙ Ø¢ÙØ§ از ÙÙ
اÙÙ Ø§Ø³ØªÙØ§Ø¯Ù Ø´ÙØ¯ ÙØ§ Ø®ÙØ±. Ø§Ø·ÙØ§Ø¹Ø§Øª Ø¢Ù
ار٠ÙÙ
ÚÙÙ٠برا٠تعÙÙÙ ØªØ±ØªÙØ¨ Ø§ÙØØ§Ù
+Ù Ø±ÙØ´ÙØ§Ù Ø§ÙØØ§Ù Ø¨Ù ØµÙØ±Øª بÙÙÙÙ ÙÙØ² ÙØ§Ø±Ø¨Ø± دارد. جÙ
ع Ø¢ÙØ±Ù Ø§Ø·ÙØ§Ø¹Ø§Øª Ø¢Ù
Ø§Ø±Ù Ø¨Ø§ÙØ¯ Ø¨Ù ØµÙØ±Øª
+Ø¯ÙØ±ÙâØ§Ù ÙÙ
زÙ
ا٠با تغÙÙØ± دادÙâÙØ§Ù جدÙÙ Ø§ÙØ¬Ø§Ù
Ø´ÙØ¯.
+
ÙÙ
اÙÙâÙØ§ Ø¨Ù Ø·ÙØ± Ù
عÙ
ÙÙ ÙÙ
را٠با
+Ø¯Ø³ØªÙØ± ORDER BY Ø¨Ù ÙØ§Ø± برد٠ÙÙ
ÙâØ´ÙÙØ¯. برا٠Ù٠جدÙ٠بزرگ ÙÙ
+Ù¾ÙÙ
Ø§ÙØ´ ØªØ±ØªÙØ¨Ù ÙÙ
را٠با Ø¯Ø³ØªÙØ± Ù
رتب ساز٠از Ø¨Ù ÙØ§Ø± برد٠ÙÙ
اÙÙâÙØ§ Ø³Ø±ÙØ¹ØªØ± Ø®ÙØ§Ùد Ø¨ÙØ¯.
+
اÙ
ا اگر ÙÙ
را٠با ORDER
+BYâ Ø§Ø² LIMIT Ø§Ø³ØªÙØ§Ø¯Ù Ø´ÙØ¯ Ø§ØºÙØ¨ از ÙÙ
اÙÙâÙØ§
+Ø§Ø³ØªÙØ§Ø¯Ù Ù
ÙâØ´ÙØ¯ ÚÙÙ ÙÙØ· ÙØ³Ù
ت٠از جدÙÙ Ø§Ø³ØªÙØ§Ø¯Ù Ù
ÙâØ´ÙØ¯. در ØÙÙÙØª ÙØ± ÚÙØ¯
+ØªÙØ§Ø¨Ø¹ ()MINâ Ù ()MAX
+از ÙÙ
اÙÙâÙØ§ Ø§Ø³ØªÙØ§Ø¯Ù ÙÙ
ÙâÙÙÙØ¯ ÙÙÙ Ù
ÙâØªÙØ§ÙÙÙ
با Ø§Ø³ØªÙØ§Ø¯Ù از Ø¯Ø³ØªÙØ±
+Ø²ÙØ± با Ø§Ø³ØªÙØ§Ø¯Ù از ÙÙ
اÙÙâÙØ§ Ù Ø¯Ø³ØªÙØ± ORDER BY Ù
+LIMITâ Ø¢ÙÙØ§ را ب٠دست Ø¢ÙØ±ÙÙ
.
SELECT col
FROM tab
@@ -1061,355 +1079,356 @@ LIMIT ، آنها را
LIMIT 1;
-
اگر شما فكر ميكنيد كه بهينه
-ساز سيستم در انتخاب پيمايش ترتيبي اشتباه كرده است با دستور 'SET enable_seqscan TO 'off'
-ميتوانيد ببينيد آيا استفاده از نمايهها باعث افزايش سرعت درخواستها خواهد شد
-يا خير.
-
استفاده از نمايهها هنگامي كه
-از علائم ويژه نظير LIKE و ~
-استفاده ميكنيد فقط در بعضي شرايط خاص كه در اينجا ذكر شده است ممكن است:
+
اگر Ø´Ù
ا ÙÙØ± Ù
ÙâÙÙÙØ¯ Ù٠بÙÙÙÙ
+ساز Ø³ÙØ³ØªÙ
در Ø§ÙØªØ®Ø§Ø¨ Ù¾ÙÙ
Ø§ÙØ´ ØªØ±ØªÙØ¨Ù Ø§Ø´ØªØ¨Ø§Ù ÙØ±Ø¯Ù است با Ø¯Ø³ØªÙØ± 'SET
+enable_seqscan TO 'off'
+Ù
ÙâØªÙØ§ÙÙØ¯ ببÙÙÙØ¯ Ø¢ÙØ§ Ø§Ø³ØªÙØ§Ø¯Ù از ÙÙ
اÙÙâÙØ§ باعث Ø§ÙØ²Ø§ÙØ´ سرعت Ø¯Ø±Ø®ÙØ§Ø³ØªâÙØ§ Ø®ÙØ§Ùد شد.
+
Ø§Ø³ØªÙØ§Ø¯Ù از ÙÙ
اÙÙâÙØ§ ÙÙگاÙ
Ù ÙÙ
+از Ø¹ÙØ§Ø¦Ù
ÙÙÚÙ ÙØ¸Ùر LIKE Ù ~
+Ø§Ø³ØªÙØ§Ø¯Ù Ù
ÙâÙÙÙØ¯ ÙÙØ· در Ø¨Ø¹Ø¶Ù Ø´Ø±Ø§ÙØ· خاص٠Ù٠در اÙÙØ¬Ø§ Ø°ÙØ± شد٠است Ù
Ù
Ù٠است:
-
- دستورات
- LIKE نبايد با علامت
-% شروع
- شوند
-
- الگوهاي منظمي كه با
-~ ميآيد حتماً بايد با علامت
-^ شروع
- شود
-
+ Ø§Ø¨ØªØ¯Ø§Ù Ø±Ø´ØªÙ Ø¬Ø³ØªØ¬Ù Ø¨Ø§ÙØ¯ بÙ
+ Ø·ÙØ± ØµØ±ÙØ Ù
شخص باشد برا٠Ù
ثاÙ:
+
-
+
Ø¯Ø³ØªÙØ±Ø§Øª
+ LIKE ÙØ¨Ø§Ùد با Ø¹ÙØ§Ù
ت % Ø´Ø±ÙØ¹
+ Ø´ÙÙØ¯
+ -
+
اÙÚ¯ÙÙØ§Ù Ù
ÙØ¸Ù
Ù Ù٠با
+ ~ Ù
ÙâØ§ÙØ¯ ØØªÙ
Ø§Ù Ø¨Ø§ÙØ¯ با Ø¹ÙØ§Ù
ت ^ Ø´Ø±ÙØ¹
+ Ø´ÙØ¯
-
-
رشته جستجو نبايد با يك
- مجموعه از كاراكترها مثل [a-e] شروع شود
+ Ø±Ø´ØªÙ Ø¬Ø³ØªØ¬Ù ÙØ¨Ø§Ùد با ÙÙ
+ Ù
جÙ
ÙØ¹Ù از ÙØ§Ø±Ø§ÙترâÙØ§ Ù
ث٠[a-e] Ø´Ø±ÙØ¹ Ø´ÙØ¯
-
-
جستجوهاي غيرحساس به متن مثل
- ILIKE و *~ از نمايهها
- استفاده نميكنند. در عوض از توابع نمايهاي كه در قسمت
+ جستجÙÙØ§Ù ØºÙØ±ØØ³Ø§Ø³ ب٠Ù
ت٠Ù
Ø«Ù
+ ILIKEâ Ù *~ از ÙÙ
اÙÙâÙØ§
+ Ø§Ø³ØªÙØ§Ø¯Ù ÙÙ
ÙâÙÙÙØ¯. در Ø¹ÙØ¶ از ØªÙØ§Ø¨Ø¹ ÙÙ
اÙÙâØ§Ù Ù٠در ÙØ³Ù
ت
4.12
- توضيح داده شد استفاده ميكنند.
+ ØªÙØ¶ÙØ Ø¯Ø§Ø¯Ù Ø´Ø¯ Ø§Ø³ØªÙØ§Ø¯Ù Ù
ÙâÙÙÙØ¯.
-
-
مقدار پيش فرض locale
- بايد در initdb استفاده شود.
+ Ù
ÙØ¯Ø§Ø± Ù¾ÙØ´ ÙØ±Ø¶ localeâ
+ Ø¨Ø§ÙØ¯ در initdb Ø§Ø³ØªÙØ§Ø¯Ù Ø´ÙØ¯.
4.9)
-چگونه ميتوانم نحوه بررسي درخواست را توسط بهينهساز درخواستها
-مشاهده كنم؟
-
راهنماي دستور EXPLAIN
-را نگاه كنيد.
+
ÚÚ¯ÙÙÙ Ù
ÙâØªÙØ§ÙÙ
ÙØÙÙ Ø¨Ø±Ø±Ø³Ù Ø¯Ø±Ø®ÙØ§Ø³Øª را ØªÙØ³Ø· بÙÙÙÙâØ³Ø§Ø² Ø¯Ø±Ø®ÙØ§Ø³ØªÙا
+Ù
Ø´Ø§ÙØ¯Ù ÙÙÙ
Ø
+
راÙÙÙ
Ø§Ù Ø¯Ø³ØªÙØ± EXPLAIN
+را Ùگا٠ÙÙÙØ¯.
4.10)
-نمايه R-tree چيست؟
-
از نمايه R-Tree
- براي انديس كردن دادههاي فاصلهاي استفاده ميشود. يك نمايه
-hash نميتواند جستجوهاي محدودهاي را انجام دهد. نمايه
-"B-tree" نيز براي انجام جستجوي محدودهاي در يك جهت قابل استفاده
-است. اما R-Tree ميتواند دادههاي چند بعدي را نيز
-پشتيباني كند. براي مثال اگر از نمايه R-tree براي
-گونه Point استفاده شود سرعت درخواستهايي نظير "select
-all points within a bounding rectangle" به مراتب افزايش مييابد.
-
مقالهاي كه طراحي R-tree
-را توضيح داده است
-
Guttman, A. "R-trees: A Dynamic Index Structure for Spatial Searching."
-Proceedings of the 1984 ACM SIGMOD Int'l Conf on Mgmt of Data, 45-57.
-
R-tree ميتواند چندضلعيها و
-چند وجهي را پشتيباني كند. در تئوري، R-tree ميتواند تعداد بعدهاي بالاتري
-را نيز پشتيباني كند. در عمل توسعه R-tree
-نياز به كار بيشتري دارد.
+
ÙÙ
اÙÙ R-tree
â ÚÙØ³ØªØ
+
از ÙÙ
اÙÙ R-Tree
+ Ø¨Ø±Ø§Ù Ø§ÙØ¯Ùس ÙØ±Ø¯Ù دادÙâÙØ§Ù ÙØ§ØµÙÙâØ§Ù Ø§Ø³ØªÙØ§Ø¯Ù Ù
ÙâØ´ÙØ¯. ÙÙ ÙÙ
اÙÙ
+hash ÙÙ
ÙâØªÙØ§ÙÙØ¯ جستجÙÙØ§Ù Ù
ØØ¯ÙدÙâØ§Ù Ø±Ø§ Ø§ÙØ¬Ø§Ù
Ø¯ÙØ¯. ÙÙ
اÙÙ
+"B-tree" ÙÙØ² Ø¨Ø±Ø§Ù Ø§ÙØ¬Ø§Ù
جستجÙÙ Ù
ØØ¯ÙدÙâØ§Ù Ø¯Ø± ÙÙ Ø¬ÙØª ÙØ§Ø¨Ù Ø§Ø³ØªÙØ§Ø¯Ù
+است. اÙ
ا R-Tree Ù
ÙâØªÙØ§Ùد دادÙâÙØ§Ù ÚÙØ¯ بعد٠را ÙÙØ²
+Ù¾Ø´ØªÙØ¨Ø§ÙÙ ÙÙØ¯. برا٠Ù
Ø«Ø§Ù Ø§Ø³ØªÙØ§Ø¯Ù اگر از ÙÙ
اÙÙ R-treeâ Ø¨Ø±Ø§Ù
+Ú¯ÙÙÙ Point Ø§Ø³ØªÙØ§Ø¯Ù Ø´ÙØ¯ سرعت Ø¯Ø±Ø®ÙØ§Ø³ØªâÙØ§ÙÙ ÙØ¸Ùر "select
+all points within a bounding rectangle" ب٠Ù
راتب Ø§ÙØ²Ø§ÙØ´ Ù
ÙâÙØ§Ø¨Ø¯.
+
Ù
ÙØ§ÙÙâØ§Ù Ù٠طراØÙ R-tree
+را ØªÙØ¶ÙØ Ø¯Ø§Ø¯Ù Ø§Ø³Øª
+
Guttman, A. "R-trees: A Dynamic Index Structure for
+Spatial Searching." Proceedings of the 1984 ACM SIGMOD Int'l Conf on Mgmt of
+Data, 45-57.
+
R-treeâ Ù
ÙâØªÙØ§Ùد ÚÙØ¯Ø¶ÙعÙÙØ§ Ù
+ÚÙØ¯ ÙØ¬Ù٠را Ù¾Ø´ØªÙØ¨Ø§ÙÙ ÙÙØ¯. در ØªØ¦ÙØ±Ù R-tree Ù
ÙâØªÙØ§Ùد تعداد
+Ø¨Ø¹Ø¯ÙØ§Ù Ø¨Ø§ÙØ§ØªØ± ر٠ÙÙØ² Ù¾Ø´ØªÙØ¨Ø§ÙÙ ÙÙØ¯. در عÙ
Ù ØªÙØ³Ø¹Ù R-treeâ
+ÙÙØ§Ø² Ø¨Ù ÙØ§Ø± Ø¨ÙØ´ØªØ±Ù دارد.
4.11)
-بهينه ساز تكويني درخواست چيست؟ (Genetic Query Optimizer)
-
استفاده از GEQO
-سرعت بهينه سازي درخواست را هنگاميكه تعداد زيادي جدول را با استفاده از الگوريتم
-ژنتيك الحاق ميكنيم افزايش ميدهد.
+
بÙÙÙ٠ساز تÙÙÙÙÙ Ø¯Ø±Ø®ÙØ§Ø³Øª ÚÙØ³ØªØ (Genetic Query Optimizer)
+
Ø§Ø³ØªÙØ§Ø¯Ù از GEQO
+سرعت بÙÙÙÙ Ø³Ø§Ø²Ù Ø¯Ø±Ø®ÙØ§Ø³Øª را ÙÙگاÙ
ÙÙ٠تعداد Ø²ÙØ§Ø¯Ù جدÙ٠را با Ø§Ø³ØªÙØ§Ø¯Ù از اÙÚ¯ÙØ±ÙتÙ
+ÚÙØªÙÙ Ø§ÙØØ§Ù Ù
ÙâÙÙÙÙ
Ø§ÙØ²Ø§ÙØ´ Ù
ÙâØ¯ÙØ¯.
4.12)
-چگونه از عبارات منظم براي جستجو استفاده كنم؟ چگونه جستجويي انجام
-دهم كه حساس به متن نباشد؟ چگونه براي يك جستجوي غير حساس به متن از نمايه استفاده
-كنم؟
-
براي جستجوي عبارت منظم از عملگر
-~ استفاده ميكنيم. براي جستجوي غير حساس به متن از عملگر
-*~ و يا ILIKE استفاده ميكنيم.
-
روش ديگر انجام جستجوي غير حساس
-به متن در زير نشان داده شده است.
+
ÚÚ¯ÙÙ٠از عبارات Ù
ÙØ¸Ù
Ø¨Ø±Ø§Ù Ø¬Ø³ØªØ¬Ù Ø§Ø³ØªÙØ§Ø¯Ù ÙÙÙ
Ø ÚÚ¯ÙÙ٠جستجÙÙÙ Ø§ÙØ¬Ø§Ù
+دÙÙ
ÙÙ ØØ³Ø§Ø³ ب٠Ù
ØªÙ ÙØ¨Ø§Ø´Ø¯Ø ÚÚ¯ÙÙ٠برا٠Ù٠جستجÙÙ ØºÙØ± ØØ³Ø§Ø³ ب٠Ù
ت٠از ÙÙ
اÙÙ Ø§Ø³ØªÙØ§Ø¯Ù
+ÙÙÙ
Ø
+
برا٠جستجÙ٠عبارت Ù
ÙØ¸Ù
از عÙ
Ùگر
+~â Ø§Ø³ØªÙاد٠Ù
ÙâÙÙÙÙ
. برا٠جستجÙÙ ØºÙØ± ØØ³Ø§Ø³ ب٠Ù
ت٠از عÙ
Ùگر
+*~ Ù ÙØ§ ILIKEâ Ø§Ø³ØªÙاد٠Ù
ÙâÙÙÙÙ
.
+
Ø±ÙØ´ دÙگر Ø§ÙØ¬Ø§Ù
جستجÙÙ ØºÙØ± ØØ³Ø§Ø³
+ب٠Ù
ت٠در Ø²ÙØ± ÙØ´Ø§Ù داد٠شد٠است.
SELECT *
FROM tab
- WHERE lower(col) = 'abc';
+ WHERE lower(col) = 'abc';
-
اين از نمايههاي استاندارد
-استفاده نميكند. ولي شما مي توانيد با دستور زير يك نمايه ايجاد كنيد و از آن
-استفاده كنيد.
+
اÙ٠از ÙÙ
اÙÙâÙØ§Ù Ø§Ø³ØªØ§ÙØ¯Ø§Ø±Ø¯
+Ø§Ø³ØªÙØ§Ø¯Ù ÙÙ
ÙâÙÙØ¯. ÙÙÙ Ø´Ù
ا Ù
Ù ØªÙØ§ÙÙØ¯ با Ø¯Ø³ØªÙØ± Ø²ÙØ± ÙÙ ÙÙ
اÙÙ Ø§ÙØ¬Ø§Ø¯ ÙÙÙØ¯ ٠از Ø¢Ù
+Ø§Ø³ØªÙØ§Ø¯Ù ÙÙÙØ¯.
CREATE INDEX tabindex ON tab (lower(col));
-
4.13) چگونه ميتوانم در يك درخواست تشخيص دهم كه يك فيلد NULL
-است؟
-
با استفاده از توابع IS
-NULL و IS NOT NULL ميتوانيم NULL
-بودن يك فيلد را تست كنيم.
+
4.13) IÚÚ¯ÙÙÙ
+Ù
ÙâØªÙØ§ÙÙ
در ÙÙ Ø¯Ø±Ø®ÙØ§Ø³Øª ØªØ´Ø®ÙØµ دÙÙ
ÙÙ ÙÙ ÙÙÙØ¯ NULLâ Ø§Ø³ØªØ
+
با Ø§Ø³ØªÙØ§Ø¯Ù از ØªÙØ§Ø¨Ø¹ IS
+NULL Ù IS NOT NULL Ù
ÙâØªÙØ§ÙÙÙ
NULL
+Ø¨ÙØ¯Ù ÙÙ ÙÙÙØ¯ را تست ÙÙÙÙ
.
4.14)
-تفاوت بين گونههاي مختلف character چيست؟
+
ØªÙØ§Ùت بÙÙ Ú¯ÙÙÙâÙØ§Ù Ù
ختÙÙ character
ÚÙØ³ØªØ
Type Internal Name Notes
--------------------------------------------------
-VARCHAR(n) varchar اندازه، حداكثر طول را نشان مي دهد بدون اضافه شدن كاراكتر اضافه
-CHAR(n) bpchar كاراكترهاي بلانك براي پر شدن طول مشخص شده استفاده ميشود
-TEXT text حداكثر طول را مشخص نميكند
-BYTEA bytea آرايهاي از بايت با طول متغير
-"char" char يك كاراكتر
+VARCHAR(n) varchar Ø§ÙØ¯Ø§Ø²ÙØ ØØ¯Ø§Ùثر Ø·Ù٠را ÙØ´Ø§Ù Ù
Ù Ø¯ÙØ¯ بدÙ٠اضاÙÙ Ø´Ø¯Ù ÙØ§Ø±Ø§Ùتر اضاÙÙ
+CHAR(n) bpchar ÙØ§Ø±Ø§ÙØªØ±ÙØ§Ù Ø¨ÙØ§Ù٠برا٠پر شد٠طÙÙ Ù
شخص Ø´Ø¯Ù Ø§Ø³ØªÙØ§Ø¯Ù Ù
ÙâØ´ÙØ¯
+TEXT text ØØ¯Ø§Ùثر Ø·Ù٠را Ù
شخص ÙÙ
ÙâÙÙØ¯
+BYTEA bytea آراÙÙâØ§Ù Ø§Ø² Ø¨Ø§ÙØª با Ø·ÙÙ Ù
ØªØºÙØ±
+"char" char ÙÙ ÙØ§Ø±Ø§Ùتر
-
نام داخلي گونهها را در
-system catalogue و بعضي از پيغامهاي خطا ميتوان ديد.
-
چهار گونه اول همگي از نوع
-varlena هستند (4 بايت اول روي ديسك طول را مشخص ميكند كه
-به دنبال آن دادهها قرار دارند.)بنابراين فضاي واقعي استفاده شده روي ديسك از
-اندازه تعريف شده بيشتر است. اما اين گونهها را ميتوان فشرده كرد كه اينكار باعث
-ميشود فضاي كمتري روي ديسك اشغال كنند.
-
براي ذخيره رشتههاي با طول
-متغير(VARCHAR(n
-بهترين انتخاب است. در اين گونه حداكثر طول رشته محدود است بر خلاف
-text كه هيچ محدوديتي روي حداكثر
-اندازه رشته نميگذارد.(در اين گونه حداكثر طول يك رشته يك گيگا بايت خواهد بود)
-
گونه (CHAR(n
- براي ذخيره دادههاي با طول يكسان است.يك
-گونهي
+ÙØ§Ù
داخÙÙ Ú¯ÙÙÙâÙØ§ را در
+system catalogue â٠بعض٠از Ù¾ÙØºØ§Ù
ÙØ§Ù خطا Ù
ÙâØªÙØ§Ù Ø¯ÙØ¯.
+ÚÙØ§Ø± Ú¯ÙÙ٠اÙÙ ÙÙ
گ٠از ÙÙØ¹
+varlena ÙØ³ØªÙد (4 Ø¨Ø§ÙØª اÙ٠رÙÙ Ø¯ÙØ³Ù Ø·Ù٠را Ù
شخص Ù
ÙâÙÙØ¯ ÙÙ
+Ø¨Ù Ø¯ÙØ¨Ø§Ù آ٠دادÙâÙØ§ ÙØ±Ø§Ø± Ø¯Ø§Ø±ÙØ¯.)âØ¨ÙØ§Ø¨Ø±Ø§ÙÙ ÙØ¶Ø§Ù ÙØ§ÙØ¹Ù Ø§Ø³ØªÙØ§Ø¯Ù شد٠رÙÙ Ø¯ÙØ³Ù از
+Ø§ÙØ¯Ø§Ø²Ù تعرÙÙ Ø´Ø¯Ù Ø¨ÙØ´ØªØ± است. اÙ
ا اÙÙ Ú¯ÙÙÙâÙØ§ را Ù
ÙâØªÙØ§Ù ÙØ´Ø±Ø¯Ù ÙØ±Ø¯ Ù٠اÙÙÙØ§Ø± باعث
+Ù
ÙâØ´ÙØ¯ ÙØ¶Ø§Ù ÙÙ
تر٠رÙÙ Ø¯ÙØ³Ù اشغا٠ÙÙÙØ¯.
+Ø¨Ø±Ø§Ù Ø°Ø®ÙØ±Ù رشتÙâÙØ§Ù با Ø·ÙÙ
+Ù
ØªØºÙØ±(VARCHAR(nâ
+Ø¨ÙØªØ±ÙÙ Ø§ÙØªØ®Ø§Ø¨ است. در اÙÙ Ú¯ÙÙÙ ØØ¯Ø§Ùثر Ø·Ù٠رشت٠Ù
ØØ¯Ùد است بر Ø®ÙØ§Ù
+text ÙÙ ÙÙÚ Ù
ØØ¯ÙØ¯ÙØªÙ رÙÙ ØØ¯Ø§Ùثر
+Ø§ÙØ¯Ø§Ø²Ù رشت٠ÙÙ
Ùâگذارد.(در اÙÙ Ú¯ÙÙÙ ØØ¯Ø§Ùثر Ø·ÙÙ Ù٠رشت٠ÙÙ Ú¯Ùگا Ø¨Ø§ÙØª Ø®ÙØ§Ùد Ø¨ÙØ¯)
+Ú¯ÙÙÙ (CHAR(n
+ Ø¨Ø±Ø§Ù Ø°Ø®ÙØ±Ù دادÙâÙØ§Ù با Ø·ÙÙ ÙÙØ³Ø§Ù است.ÙÙ Ú¯ÙÙÙâÙ
(CHAR(n
-با كاراكترهاي بلانك (خالي) پر ميشود تا به طول مشخص شده برسد در
-حاليكه گونه VARCHAR
-كاراكترها را به همان صورت كه هستند ذخيره ميكند. گونه BYTEA
-براي ذخيره دادههاي باينري است به خصوص دادههاي باينري كه شامل بايتهاي
-NULL هستند. از نظر كارايي تمام اين گونهها يكسان هستند.
+با ÙØ§Ø±Ø§ÙØªØ±ÙØ§Ù Ø¨ÙØ§ÙÙ (خاÙÙ) پر Ù
ÙâØ´ÙØ¯ تا ب٠طÙÙ Ù
شخص شد٠برسد در
+ØØ§ÙÙÙÙ Ú¯ÙÙÙ VARCHAR
+ÙØ§Ø±Ø§ÙØªØ±ÙØ§ را ب٠ÙÙ
Ø§Ù ØµÙØ±Øª ÙÙ ÙØ³ØªÙد Ø°Ø®ÙØ±Ù Ù
ÙâÙÙØ¯. Ú¯ÙÙÙ BYTEA
+Ø¨Ø±Ø§Ù Ø°Ø®ÙØ±Ù دادÙâÙØ§Ù باÙÙØ±Ù است Ø¨Ù Ø®ØµÙØµ دادÙâÙØ§Ù باÙÙØªØ±Ù Ù٠شاÙ
Ù Ø¨Ø§ÙØªâÙØ§Ù
+NULL ÙØ³ØªÙد. از ÙØ¸Ø± ÙØ§Ø±Ø§Ù٠تÙ
اÙ
اÙÙ Ú¯ÙÙÙâÙØ§ ÙÙØ³Ø§Ù ÙØ³ØªÙد.
4.15.1)
-چگونه ميتوانم يك فيلد سريال يا افزايشي ايجاد كنم؟
-
PostgreSQL از دادههاي سريال
-پشتيباني ميكند. براي ايجاد يك فيلد سريال (براي داشتن يك فيلد منحصر به فرد براي
-هر رديف )به روش زير عمل كنيد:
+
ÚÚ¯ÙÙÙ Ù
ÙâØªÙØ§ÙÙ
ÙÙ ÙÙÙØ¯ Ø³Ø±ÙØ§Ù ÙØ§ Ø§ÙØ²Ø§ÙØ´Ù Ø§ÙØ¬Ø§Ø¯ ÙÙÙ
Ø
+
PostgreSQL از دادÙâÙØ§Ù Ø³Ø±ÙØ§Ù
+Ù¾Ø´ØªÙØ¨Ø§ÙÙ Ù
ÙâÙÙØ¯. Ø¨Ø±Ø§Ù Ø§ÙØ¬Ø§Ø¯ ÙÙ ÙÙÙØ¯ Ø³Ø±ÙØ§Ù (برا٠داشت٠ÙÙ ÙÙÙØ¯ Ù
ÙØØµØ± Ø¨Ù ÙØ±Ø¯ براÙ
+ÙØ± ردÙÙ )Ø¨Ù Ø±ÙØ´ Ø²ÙØ± عÙ
Ù ÙÙÙØ¯:
CREATE TABLE person (
id SERIAL,
name TEXT
);
-
دستور بالا به طور اتوماتيک به
-دستور زير تبديل ميشود:
+
Ø¯Ø³ØªÙØ± Ø¨Ø§ÙØ§ Ø¨Ù Ø·ÙØ± اتÙÙ
اتÙÚ© بÙ
+Ø¯Ø³ØªÙØ± Ø²ÙØ± تبدÙÙ Ù
ÙâØ´ÙØ¯:
CREATE SEQUENCE person_id_seq;
CREATE TABLE person (
- id INT4 NOT NULL DEFAULT nextval('person_id_seq'),
+ id INT4 NOT NULL DEFAULT nextval('person_id_seq'),
name TEXT
);
-
براي ديدن اطلاعات بيشتر به
-راهنماي دستور create_sequence مراجعه كنيد.
-همچنين ميتوان از OIDهر رديف به عنوان يك مقدار منحصر به
-فرد استفاده كرد. اما در اين حالت براي dump كردن و
-reloadكردن پايگاه داده بايد دستور pg_dumps
-را با گزينه o- اجرا كنيد.
-
4.15.2) چگونه ميتوانم مقدار يك درج سريالي را بدانم؟
-
يك روش براي گرفتن مقدار بعدي يك
-فيلد سريال استفاده از تابع ()nextval است.
-در شبه كُدي كه در ادامه آمده است روش انجام اين كار نشان داده شده
-است:
-
new_id = execute("SELECT nextval('person_id_seq')");
- execute("INSERT INTO person (id, name) VALUES (new_id, 'Blaise Pascal')");
+Ø¨Ø±Ø§Ù Ø¯ÙØ¯Ù Ø§Ø·ÙØ§Ø¹Ø§Øª Ø¨ÙØ´ØªØ± بÙ
+راÙÙÙ
Ø§Ù Ø¯Ø³ØªÙØ± create_sequence Ù
راجع٠ÙÙÙØ¯.
+ÙÙ
ÚÙÙÙ Ù
ÙâØªÙØ§Ù از OIDâÙØ± ردÙ٠ب٠عÙÙØ§Ù ÙÙ Ù
ÙØ¯Ø§Ø± Ù
ÙØØµØ± بÙ
+ÙØ±Ø¯ Ø§Ø³ØªÙØ§Ø¯Ù ÙØ±Ø¯. اÙ
ا در اÙÙ ØØ§Ùت برا٠dump ÙØ±Ø¯Ù Ù
+reloadâÙØ±Ø¯Ù پاÙÚ¯Ø§Ù Ø¯Ø§Ø¯Ù Ø¨Ø§ÙØ¯ Ø¯Ø³ØªÙØ± pg_dumpsâ
+را با گزÙÙÙ o-â Ø§Ø¬Ø±Ø§ ÙÙÙØ¯.
+4.15.2)
+ÚÚ¯ÙÙÙ Ù
ÙâØªÙØ§ÙÙ
Ù
ÙØ¯Ø§Ø± Ù٠درج Ø³Ø±ÙØ§Ù٠را بداÙÙ
Ø
+ÙÙ Ø±ÙØ´ Ø¨Ø±Ø§Ù Ú¯Ø±ÙØªÙ Ù
ÙØ¯Ø§Ø± بعد٠ÙÙ
+ÙÙÙØ¯ Ø³Ø±ÙØ§Ù Ø§Ø³ØªÙØ§Ø¯Ù از تابع ()nextval است.
+در شب٠ÙÙØ¯Ù Ù٠در اداÙ
٠آÙ
د٠است Ø±ÙØ´ Ø§ÙØ¬Ø§Ù
اÙÙ ÙØ§Ø± ÙØ´Ø§Ù داد٠شدÙ
+است:
+ new_id = execute("SELECT nextval('person_id_seq')");
+ execute("INSERT INTO person (id, name) VALUES (new_id, 'Blaise Pascal')");
-با اجراي دستور فوق مقدار جديد را
-در متغير new_id نيز خواهيدداشت كه ميتوانيد آن را در بقيه
-درخواستها نيز استفاده كنيد. توجه داشته باشيد كه نام SEQUENCEيي
-كه به طور اتوماتيك ايجاد شده است به صورت table_serialcolumn_seq
-خواهد بود. كه در آن
-table نام جدول و serialcolumn نام فيلد
-سريال جدول ميباشد.
-براي ديدن مقدار نسبت داده شده
-به فيلد سريال نيز ميتوان از تابع () currval
-به صورت زير استفاده كرد.
- execute("INSERT INTO person (name) VALUES ('Blaise Pascal')");
- new_id = execute("SELECT currval('person_id_seq')");
+با اجرا Ø¯Ø³ØªÙØ± ÙÙÙ Ù
ÙØ¯Ø§Ø± Ø¬Ø¯ÙØ¯ را
+در Ù
ØªØºÙØ± new_id ÙÙØ² Ø®ÙØ§ÙÙØ¯Ø¯Ø§Ø´Øª ÙÙ Ù
ÙâØªÙØ§ÙÙØ¯ آ٠را در بÙÙÙ
+Ø¯Ø±Ø®ÙØ§Ø³ØªâÙØ§Ù ÙÙØ² Ø§Ø³ØªÙØ§Ø¯Ù ÙÙÙØ¯. ØªÙØ¬Ù Ø¯Ø§Ø´ØªÙ Ø¨Ø§Ø´ÙØ¯ ÙÙ ÙØ§Ù
SEQUENCEÙÙ
+ÙÙ Ø¨Ù Ø·ÙØ± اتÙÙ
اتÙÙ Ø§ÙØ¬Ø§Ø¯ شد٠است Ø¨Ù ØµÙØ±Øª table_serialcolumn_seqâ
+Ø®ÙØ§Ùد Ø¨ÙØ¯. Ù٠در Ø¢Ù
+tableâ ÙØ§Ù
جدÙÙ Ù serialcolumn ÙØ§Ù
ÙÙÙØ¯
+Ø³Ø±ÙØ§Ù جدÙÙ Ù
ÙâØ¨Ø§Ø´Ø¯.
+Ø¨Ø±Ø§Ù Ø¯ÙØ¯Ù Ù
ÙØ¯Ø§Ø± ÙØ³Ø¨Øª داد٠شدÙ
+ب٠ÙÙÙØ¯ Ø³Ø±ÙØ§Ù ÙÙØ² Ù
ÙâØªÙØ§Ù از تابع () currval
+Ø¨Ù ØµÙØ±Øª Ø²ÙØ± Ø§Ø³ØªÙØ§Ø¯Ù ÙØ±Ø¯.
+ execute("INSERT INTO person (name) VALUES ('Blaise Pascal')");
+ new_id = execute("SELECT currval('person_id_seq')");
-و سرانجام شما ميتوانيد از
-مقدار OID كه خروجي دستور INSERT است
-براي ديدن مقدار پيش فرض استفاده كنيد. هر چند اين روش در همه پلتفرمها قابل
-استفاده نيست و ضمن اينكه فيلد oid بعد از عدد 4 ميليارد
-دوباره صفر ميشود. در زبان perl با استفاده از DBI
-و DBD::Pg مقدار oidرا ميتوانيد
-به اين شكل استخراج كنيد: بعد از اجراي ()st->execute$
-مقدار oid در متغير sth->pg_oid_status$
-ذخيره خواهد شد.
-4.15.3) آیا
-توابع ()nextval و ()currval منجر
-به ایجاد شرایط race برای سایر کاربران می شوند؟
-خیر، استفاده از این توابع شرایط
-race را به وجود نمی آورد.
+Ù Ø³Ø±Ø§ÙØ¬Ø§Ù
Ø´Ù
ا Ù
ÙâØªÙØ§ÙÙØ¯ از
+Ù
ÙØ¯Ø§Ø± OID ÙÙ Ø®Ø±ÙØ¬Ù Ø¯Ø³ØªÙØ± INSERT
+ است Ø¨Ø±Ø§Ù Ø¯ÙØ¯Ù Ù
ÙØ¯Ø§Ø± Ù¾ÙØ´ ÙØ±Ø¶ Ø§Ø³ØªÙØ§Ø¯Ù ÙÙÙØ¯. ÙØ± ÚÙØ¯ اÙÙ Ø±ÙØ´ در ÙÙ
Ù Ù¾ÙØªÙرÙ
ÙØ§ ÙØ§Ø¨Ù
+Ø§Ø³ØªÙØ§Ø¯Ù ÙÙØ³Øª ٠ضÙ
٠اÙÙÙÙ ÙÙÙØ¯ oidâ Ø¨Ø¹Ø¯ از عدد 4 Ù
ÙÙÙØ§Ø±Ø¯
+Ø¯ÙØ¨Ø§Ø±Ù ØµÙØ± Ù
ÙâØ´ÙØ¯. در زبا٠perl با Ø§Ø³ØªÙØ§Ø¯Ù از DBI
+Ù DBD::Pg Ù
ÙØ¯Ø§Ø± oidâØ±Ø§ Ù
ÙâØªÙØ§ÙÙØ¯
+ب٠شÙÙ Ø²ÙØ± استخراج ÙÙÙØ¯: بعد از اجرا٠()st->execute$
+Ù
ÙØ¯Ø§Ø± oidâ Ø¯Ø± Ù
ØªØºÙØ± sth->pg_oid_status$
+Ø°Ø®ÙØ±Ù Ø®ÙØ§Ùد شد.
+4.15.3) Ø¢ÛØ§
+ØªÙØ§Ø¨Ø¹ ()nextval Ù ()currval Ù
ÙØ¬Ø±
+Ø¨Ù Ø§ÛØ¬Ø§Ø¯ Ø´Ø±Ø§ÛØ· race Ø¨Ø±Ø§Û Ø³Ø§ÛØ± کاربرا٠Ù
Û Ø´ÙÙØ¯Ø
+Ø®ÛØ±Ø Ø§Ø³ØªÙØ§Ø¯Ù از اÛÙ ØªÙØ§Ø¨Ø¹ Ø´Ø±Ø§ÛØ·
+race را Ø¨Ù ÙØ¬Ùد ÙÙ
Û Ø¢ÙØ±Ø¯.
4.15.4)
-چرا اعداد سریالی مربوط به تراکنشهای abort شده مجدداً
-استفاده نمی شود؟ چرا بین اعداد سریالی یک فاصله خالی ایجاد می شود؟
-برای بالا بردن امکان اجرای
-همزمان تراکنشها، اعداد سریالی به محض اجرای تراکنش به آنها تخصیص می یابد در این
-حالت اگر بعضی از تراکنشها abort شوند بین اعداد سریالی
-استفاده شده یک فاصله خالی به وجود می آید.
-4.16) OID و TID چه هستند؟
-OID راه حل PostgreSQL
-برای داشتن یک شناسه منحصر به فرد برای هر ردیف است. هر ردیف جدیدی که ایجاد می شود
-یک OID منحصر به فرد به آن اختصاص می یابد. تمام OIDهایی
-که در حین initdb ایجاد می شوند از 16384 کمتر هستند و
-OIDهایی بعداً تولید می شود از این عدد بزرگتر خواهد بود.
-نکته مهم آن است که OIDها نه تنها در یک جدول شبیه نیستند
-بلکه در کل پایگاه داده هیچ دو ردیفی دارای OID یکسان
-نخواهد بود.
-PostgreSQL از OID
-در سیستم داخلی خود برای ایجاد ارتباط بین ردیفهای جداول مختلف استفاده می کند.
-توصیه می شود که یک ستون از نوع OID برای ذخیره این فیلد در
-جدول ایجاد کنید. ساختن یک نمایه برای این فیلد باعث دسترسی سریعتر به آن خواهد شد.
-تمام پایگاههای داده در
-PostgreSQL برای گرفتن OID جدید از یک
-ناحیه مرکزی استفاده می کند. ولی اگر بخواهیم OID را به روش
-دیگری بگیریم و یا اینکه در حین کپی کردن یک جدول بخواهیم OIDهای
-اصلی آن تغییر نکند به روش زیر می توانیم عمل کنیم:
+ÚØ±Ø§ اعداد Ø³Ø±ÛØ§ÙÛ Ù
Ø±Ø¨ÙØ· Ø¨Ù ØªØ±Ø§Ú©ÙØ´ÙØ§Û abort شد٠Ù
جدداÙ
+Ø§Ø³ØªÙØ§Ø¯Ù ÙÙ
Û Ø´ÙØ¯Ø ÚØ±Ø§ بÛ٠اعداد Ø³Ø±ÛØ§ÙÛ ÛÚ© ÙØ§ØµÙ٠خاÙÛ Ø§ÛØ¬Ø§Ø¯ Ù
Û Ø´ÙØ¯Ø
+Ø¨Ø±Ø§Û Ø¨Ø§ÙØ§ برد٠اÙ
کا٠اجراÛ
+ÙÙ
زÙ
Ø§Ù ØªØ±Ø§Ú©ÙØ´ÙØ§Ø Ø§Ø¹Ø¯Ø§Ø¯ Ø³Ø±ÛØ§ÙÛ Ø¨Ù Ù
ØØ¶ Ø§Ø¬Ø±Ø§Û ØªØ±Ø§Ú©ÙØ´ ب٠آÙÙØ§ ØªØ®ØµÛØµ Ù
Û ÛØ§Ø¨Ø¯ در اÛÙ
+ØØ§Ùت اگر Ø¨Ø¹Ø¶Û Ø§Ø² ØªØ±Ø§Ú©ÙØ´Ùا abort Ø´ÙÙØ¯ بÛ٠اعداد Ø³Ø±ÛØ§ÙÛ
+Ø§Ø³ØªÙØ§Ø¯Ù شد٠ÛÚ© ÙØ§ØµÙ٠خاÙÛ Ø¨Ù ÙØ¬Ùد Ù
Û Ø¢ÛØ¯.
+4.16) OID Ù
+TID ÚÙ ÙØ³ØªÙدØ
+OID را٠ØÙ PostgreSQL
+Ø¨Ø±Ø§Û Ø¯Ø§Ø´ØªÙ ÛÚ© Ø´ÙØ§Ø³Ù Ù
ÙØØµØ± Ø¨Ù ÙØ±Ø¯ Ø¨Ø±Ø§Û ÙØ± ردÛ٠است. ÙØ± ردÛÙ Ø¬Ø¯ÛØ¯Û Ú©Ù Ø§ÛØ¬Ø§Ø¯ Ù
Û Ø´ÙØ¯
+ÛÚ© OID Ù
ÙØØµØ± Ø¨Ù ÙØ±Ø¯ ب٠آ٠اختصاص Ù
Û ÛØ§Ø¨Ø¯. تÙ
اÙ
OIDÙØ§ÛÛ
+ک٠در ØÛÙ initdb Ø§ÛØ¬Ø§Ø¯ Ù
Û Ø´ÙÙØ¯ از 16384 Ú©Ù
تر ÙØ³ØªÙد Ù
+OIDÙØ§ÛÛ Ø¨Ø¹Ø¯Ø§Ù ØªÙÙÛØ¯ Ù
Û Ø´ÙØ¯ از اÛ٠عدد بزرگتر Ø®ÙØ§Ùد Ø¨ÙØ¯.
+Ùکت٠Ù
ÙÙ
آ٠است Ú©Ù OIDÙØ§ Ù٠تÙÙØ§ در ÛÚ© جدÙ٠شبÛÙ ÙÛØ³ØªÙد
+بÙک٠در ک٠پاÛگا٠داد٠ÙÛÚ Ø¯Ù Ø±Ø¯ÛÙÛ Ø¯Ø§Ø±Ø§Û OID ÛکساÙ
+ÙØ®ÙØ§ÙØ¯ Ø¨ÙØ¯.
+PostgreSQL از OID
+در Ø³ÛØ³ØªÙ
داخÙÛ Ø®ÙØ¯ Ø¨Ø±Ø§Û Ø§ÛØ¬Ø§Ø¯ ارتباط بÛ٠ردÛÙÙØ§Û جداÙÙ Ù
ختÙÙ Ø§Ø³ØªÙØ§Ø¯Ù Ù
Û Ú©ÙØ¯.
+ØªÙØµÛÙ Ù
Û Ø´ÙØ¯ Ú©Ù ÛÚ© ستÙ٠از ÙÙØ¹ OID Ø¨Ø±Ø§Û Ø°Ø®ÛØ±Ù اÛÙ ÙÛÙØ¯ در
+جدÙÙ Ø§ÛØ¬Ø§Ø¯ Ú©ÙÛØ¯. ساخت٠ÛÚ© ÙÙ
اÛÙ Ø¨Ø±Ø§Û Ø§ÛÙ ÙÛÙØ¯ باعث Ø¯Ø³ØªØ±Ø³Û Ø³Ø±ÛØ¹ØªØ± Ø¨Ù Ø¢Ù Ø®ÙØ§Ùد شد.
+تÙ
اÙ
پاÛگاÙÙØ§Û داد٠در
+PostgreSQL Ø¨Ø±Ø§Û Ú¯Ø±ÙØªÙ OID Ø¬Ø¯ÛØ¯ از ÛÚ©
+ÙØ§ØÛÙ Ù
Ø±Ú©Ø²Û Ø§Ø³ØªÙØ§Ø¯Ù Ù
Û Ú©ÙØ¯. ÙÙÛ Ø§Ú¯Ø± Ø¨Ø®ÙØ§ÙÛÙ
OID را Ø¨Ù Ø±ÙØ´
+دÛÚ¯Ø±Û Ø¨Ú¯ÛØ±ÛÙ
Ù ÛØ§ اÛÙک٠در ØÛÙ Ú©Ù¾Û Ú©Ø±Ø¯Ù ÛÚ© جدÙÙ Ø¨Ø®ÙØ§ÙÛÙ
OIDÙØ§Û
+اصÙÛ Ø¢Ù ØªØºÛÛØ± ÙÚ©ÙØ¯ Ø¨Ù Ø±ÙØ´ Ø²ÛØ± Ù
Û ØªÙØ§ÙÛÙ
عÙ
Ù Ú©ÙÛÙ
:
CREATE TABLE new_table(mycol int);
SELECT oid AS old_oid, mycol INTO tmp_table FROM old_table;
- COPY tmp_table TO '/tmp/pgtable';
- COPY new_table WITH OIDS FROM '/tmp/pgtable';
+ COPY tmp_table TO '/tmp/pgtable';
+ COPY new_table WITH OIDS FROM '/tmp/pgtable';
DROP TABLE tmp_table;
-OID یک عدد صحیح 4 بایتی است و
-بنابراین حداکثر مقدار آن 4 میلیارد خواهد بود و بعد از آن مقدار آن سرریز خواهد
-شد. البته تا کنون برای کسی این اتفاق نیفتاده است و تصمیم
-گرداندگان PostgreSQL آن است که قبل از آنکه این اتفاق رخ
-دهد این مشکل را برطرف کنند.
-TIDها برای شناسایی محل فیزیکی
-یک ردیف بر اساس بلوک و آفست می باشد. TIDها بعد از تغییر
-پیدا کردن یک ردیف و یا بازخوانی آن عوض می شوند. TIDها
-توسط نمایه ها استفاده می شوند.
+OID ÛÚ© عدد صØÛØ 4 Ø¨Ø§ÛØªÛ است Ù
+Ø¨ÙØ§Ø¨Ø±Ø§ÛÙ ØØ¯Ø§Ú©Ø«Ø± Ù
ÙØ¯Ø§Ø± Ø¢Ù 4 Ù
ÛÙÛØ§Ø±Ø¯ Ø®ÙØ§Ùد Ø¨ÙØ¯ ٠بعد از Ø¢Ù Ù
ÙØ¯Ø§Ø± Ø¢Ù Ø³Ø±Ø±ÛØ² Ø®ÙØ§Ùد
+شد. Ø§ÙØ¨ØªÙ تا Ú©ÙÙÙ Ø¨Ø±Ø§Û Ú©Ø³Û Ø§ÛÙ Ø§ØªÙØ§Ù ÙÛÙØªØ§Ø¯Ù است ٠تصÙ
ÛÙ
+Ú¯Ø±Ø¯Ø§ÙØ¯Ú¯Ø§Ù PostgreSQL آ٠است Ú©Ù ÙØ¨Ù از Ø¢Ùک٠اÛÙ Ø§ØªÙØ§Ù رخ
+Ø¯ÙØ¯ اÛÙ Ù
شک٠را برطر٠کÙÙØ¯.
+TIDÙØ§ Ø¨Ø±Ø§Û Ø´ÙØ§Ø³Ø§ÛÛ Ù
ØÙ ÙÛØ²ÛÚ©Û
+ÛÚ© ردÛ٠بر اساس بÙÙÚ© Ù Ø¢ÙØ³Øª Ù
Û Ø¨Ø§Ø´Ø¯. TIDÙØ§ بعد از تغÛÛØ±
+Ù¾ÛØ¯Ø§ کرد٠ÛÚ© ردÛÙ Ù ÛØ§ Ø¨Ø§Ø²Ø®ÙØ§ÙÛ Ø¢Ù Ø¹ÙØ¶ Ù
Û Ø´ÙÙØ¯. TIDÙØ§
+ØªÙØ³Ø· ÙÙ
اÛÙ ÙØ§ Ø§Ø³ØªÙØ§Ø¯Ù Ù
Û Ø´ÙÙØ¯.
4.17)
-معني بعضي از ترمها و كلماتي كه در PostgreSQL
-استفاده ميشود چيست؟
-لیست برخی از ترمها و کلماتی که
-استفاده می شوند:
+Ù
عÙ٠بعض٠از ترÙ
ÙØ§ Ù ÙÙÙ
ات٠Ù٠در PostgreSQLâ
+Ø§Ø³ØªÙØ§Ø¯Ù Ù
ÙâØ´ÙØ¯ ÚÙØ³ØªØ
+ÙÛØ³Øª Ø¨Ø±Ø®Û Ø§Ø² ترÙ
ÙØ§ Ù Ú©ÙÙ
Ø§ØªÛ Ú©Ù
+Ø§Ø³ØªÙØ§Ø¯Ù Ù
Û Ø´ÙÙØ¯:
-
table, relation, class
- :کلاس، رابطه، جدول
-
-
row, record, tuple چندتایی،
- رکورد، ردیف
-
+ :Ú©ÙØ§Ø³Ø Ø±Ø§Ø¨Ø·ÙØ جدÙÙ
-
+
row, record, tuple ÚÙØ¯ØªØ§ÛÛØ
+ Ø±Ú©ÙØ±Ø¯Ø ردÛÙ
-
column, field, attribute
- صفت، فیلد، ستون
-
-
retrieve, select انتخاب،
- خواندن
-
-
replace, updateبه روز کردن،
- جایگزینی
+ ØµÙØªØ ÙÛÙØ¯Ø ستÙÙ
-
+
retrieve, select Ø§ÙØªØ®Ø§Ø¨Ø
+ Ø®ÙØ§ÙدÙ
-
+
replace, updateØ¨Ù Ø±ÙØ² Ú©Ø±Ø¯ÙØ
+ جاÛگزÛÙÛ
-
-
append, insert درج، اضافه
- کردن
-
+
append, insert Ø¯Ø±Ø¬Ø Ø§Ø¶Ø§ÙÙ
+ کردÙ
-
OID, serial value
- مقدار سریال
-
+ Ù
ÙØ¯Ø§Ø± Ø³Ø±ÛØ§Ù
-
portal, cursor
-
range variable, table name, table alias
-
یک لیست عمومی از ترمهای مورد
-استفاده در پایگاه داده در آدرس ÛÚ© ÙÛØ³Øª عÙ
ÙÙ
Û Ø§Ø² ترÙ
ÙØ§Û Ù
ÙØ±Ø¯
+Ø§Ø³ØªÙØ§Ø¯Ù در پاÛگا٠داد٠در آدرس
http://hea-www.harvard.edu/MST/simul/software/docs/pkgs/pgsql/glossary/glossary.htm
-وجود دارد.
+
ÙØ¬Ùد دارد.
4.18)
-چرا من خطاي "ERROR: Memory exhausted in AllocSetAlloc"
-ميگيرم؟
-
این خطا احتمالاً یا به خاطر
-تمام شدن حافظه مجازی سیستم شماست و یا اینکه کرنل برای برنامه ها در مورد میزان
-استفاده از حافظه مجازی محدودیت اعمال کرده است. قبل از اجرای برنامه اصلی یکی از
-دستورات زیر را اجرا کنید.
+ÚØ±Ø§ Ù
٠خطاÙ
"ERROR: Memory exhausted in AllocSetAlloc"
+Ù
ÙâÚ¯ÙØ±Ù
Ø
+
اÛ٠خطا Ø§ØØªÙ
Ø§ÙØ§Ù ÛØ§ ب٠خاطر
+تÙ
اÙ
Ø´Ø¯Ù ØØ§Ùظ٠Ù
Ø¬Ø§Ø²Û Ø³ÛØ³ØªÙ
Ø´Ù
است Ù ÛØ§ اÛÙک٠کرÙÙ Ø¨Ø±Ø§Û Ø¨Ø±ÙØ§Ù
Ù ÙØ§ در Ù
ÙØ±Ø¯ Ù
ÛØ²Ø§Ù
+Ø§Ø³ØªÙØ§Ø¯Ù از ØØ§Ùظ٠Ù
Ø¬Ø§Ø²Û Ù
ØØ¯ÙØ¯ÛØª اعÙ
ا٠کرد٠است. ÙØ¨Ù از Ø§Ø¬Ø±Ø§Û Ø¨Ø±ÙØ§Ù
٠اصÙÛ ÛÚ©Û Ø§Ø²
+Ø¯Ø³ØªÙØ±Ø§Øª Ø²ÛØ± را اجرا Ú©ÙÛØ¯.
ulimit -d 262144
limit datasize 256m
-
بسته به نوع شل یکی از این
-دستورات ممکن است با موفقیت اجرا شود. با اجرای آن دستور محدودیت حافظه مجازی برای
-برنامه ها برداشته شده و با این کار احتمالاً درخواستی که قبلاً خطا می داده است
-اجرا خواهد شد.
-
4.19) از كجا
-تشخيص دهم كه ويرايش يا نسخه PostgreSQLيي
-كه من استفاده ميكنم چيست؟
-
با اجرای دستور
+بست٠ب٠ÙÙØ¹ Ø´Ù ÛÚ©Û Ø§Ø² اÛÙ
+Ø¯Ø³ØªÙØ±Ø§Øª Ù
Ù
ک٠است با Ù
ÙÙÙÛØª اجرا Ø´ÙØ¯. با Ø§Ø¬Ø±Ø§Û Ø¢Ù Ø¯Ø³ØªÙØ± Ù
ØØ¯ÙØ¯ÛØª ØØ§Ùظ٠Ù
Ø¬Ø§Ø²Û Ø¨Ø±Ø§Û
+Ø¨Ø±ÙØ§Ù
Ù ÙØ§ برداشت٠شد٠٠با اÛ٠کار Ø§ØØªÙ
Ø§ÙØ§Ù Ø¯Ø±Ø®ÙØ§Ø³ØªÛ Ú©Ù ÙØ¨Ùا٠خطا Ù
Û Ø¯Ø§Ø¯Ù Ø§Ø³Øª
+اجرا Ø®ÙØ§Ùد شد.
+4.19) از ÙØ¬Ø§
+ØªØ´Ø®ÙØµ دÙÙ
ÙÙ ÙÙØ±Ø§ÙØ´ ÙØ§ ÙØ³Ø®Ù PostgreSQLÙÙ ÙÙ Ù
Ù Ø§Ø³ØªÙØ§Ø¯Ù
+Ù
ÙâÙÙÙ
ÚÙØ³ØªØ
+با Ø§Ø¬Ø±Ø§Û Ø¯Ø³ØªÙØ±
()SELECT version
-4.20) چرا
-حین اجرای عملیات روی large-objectها خطای "invalid
-large obj descriptor"به وجود می آید؟
-شما باید قبل از
-شروع دستوراتی که با large-objectها کار می کنند BEGIN و بعد از آنها هم یک END
-بگذارید. در حال حاضر PostgreSQL هندل large-objectها
-را در زمان نهایی شدن تراکنش (commitشدن)
-می بندد. به همین دلیل اولین تلاش برای انجام هر کاری با هندل منجر
-به خطای invalid large obj descriptor خواهد شد.
-برای جلوگیری از این خطا حتماً باید از یک تراکنش استفاده کنید.
-این کار همانطور که قبلاً گفته شد با استفاده از قرار دادن BEGIN
-و END در ابتدا و انتهای دستورات انجام می شود.
-اگر این خطا را در حین استفاده
-از یک درایور ODBC دریافت کردید احتمالاً باید این دستور را
-اجرا کنید: set auto-commit off
+4.20) ÚØ±Ø§ در
+ØÛÙ Ø§Ø¬Ø±Ø§Û Ø¹Ù
ÙÛØ§Øª رÙÛ large-objectÙØ§ Ø®Ø·Ø§Û "invalid
+large obj descriptor"Ø¨Ù ÙØ¬Ùد Ù
Û Ø¢ÛØ¯Ø
+Ø´Ù
ا Ø¨Ø§ÛØ¯ ÙØ¨Ù از
+Ø´Ø±ÙØ¹ Ø¯Ø³ØªÙØ±Ø§ØªÛ ک٠با large-objectÙØ§ کار Ù
Û Ú©ÙÙØ¯ از
+BEGIN ٠بعد از Ø¢ÙÙØ§ ÙÙ
ÛÚ© END
+Ø¨Ú¯Ø°Ø§Ø±ÛØ¯. در ØØ§Ù ØØ§Ø¶Ø± PostgreSQL ÙÙØ¯Ù large-objectÙØ§
+را در زÙ
ا٠ÙÙØ§ÛÛ Ø´Ø¯Ù ØªØ±Ø§Ú©ÙØ´ (commitشدÙ)
+Ù
Û Ø¨ÙØ¯Ø¯. ب٠ÙÙ
Û٠دÙÛ٠اÙÙÛÙ ØªÙØ§Ø´ Ø¨Ø±Ø§Û Ø§ÙØ¬Ø§Ù
ÙØ± Ú©Ø§Ø±Û Ø¨Ø§ ÙÙØ¯Ù Ù
ÙØ¬Ø±
+Ø¨Ù Ø®Ø·Ø§Û invalid large obj descriptor Ø®ÙØ§Ùد شد.
+Ø¨Ø±Ø§Û Ø¬ÙÙÚ¯ÛØ±Û از اÛ٠خطا ØØªÙ
Ø§Ù Ø¨Ø§ÛØ¯ از ÛÚ© ØªØ±Ø§Ú©ÙØ´ Ø§Ø³ØªÙØ§Ø¯Ù Ú©ÙÛØ¯.
+اÛ٠کار ÙÙ
Ø§ÙØ·Ùر Ú©Ù ÙØ¨ÙØ§Ù Ú¯ÙØªÙ شد با Ø§Ø³ØªÙØ§Ø¯Ù از ÙØ±Ø§Ø± داد٠BEGIN
+Ù END در ابتدا Ù Ø§ÙØªÙØ§Û Ø¯Ø³ØªÙØ±Ø§Øª Ø§ÙØ¬Ø§Ù
Ù
Û Ø´ÙØ¯.
+اگر اÛ٠خطا را در ØÛÙ Ø§Ø³ØªÙØ§Ø¯Ù
+از ÛÚ© دراÛÙØ± ODBC Ø¯Ø±ÛØ§Ùت Ú©Ø±Ø¯ÛØ¯ Ø§ØØªÙ
Ø§ÙØ§Ù Ø¨Ø§ÛØ¯ اÛÙ Ø¯Ø³ØªÙØ± را
+اجرا Ú©ÙÛØ¯: set auto-commit off
4.21)
-چگونه يك ستون ايجاد كنم كه مقدار زمان جاري را به عنوان مقدار
-پيشفرض داشته باشد؟
-از CURRENT_TIMESTAMP
- استفاده کنید در مثال زیر نحوه
-انجام این کار نشان داده شده است:
+ÚÚ¯ÙÙÙ Ù٠ستÙÙ Ø§ÙØ¬Ø§Ø¯ ÙÙÙ
ÙÙ Ù
ÙØ¯Ø§Ø± زÙ
ا٠جار٠را ب٠عÙÙØ§Ù Ù
ÙØ¯Ø§Ø±
+Ù¾ÙØ´âÙØ±Ø¶ داشت٠باشدØ
+
از CURRENT_TIMESTAMP
+ Ø§Ø³ØªÙØ§Ø¯Ù Ú©ÙÛØ¯ در Ù
Ø«Ø§Ù Ø²ÛØ± ÙØÙÙ Ø§ÙØ¬Ø§Ù
+اÛ٠کار ÙØ´Ø§Ù داد٠شد٠است:
CREATE TABLE test (x int, modtime timestamp DEFAULT CURRENT_TIMESTAMP );
4.22)
-چرا "زير درخواستهايي" كه از IN استفاده
-ميكنند كند هستند؟
-
در نسخه های قبل از 7.4 عمل
-الحاق زیر درخواست و درخواست اصلی به این صورت انجام می شود که نتایج به دست آمده
-از زیر درخواست به صورت ترتیبی برای هر ردیف اعمال می شود. اگر زیردرخواست ردیف های
-کمی را به عنوان خروجی برگرداند و درخواست بیرونی ردیف های زیادی را شامل شود
-استفاده از IN بهترین روش است در غیر اینصورت بهتر است از
-EXISTS استفاده شود
+
ÚØ±Ø§ "Ø²ÙØ± Ø¯Ø±Ø®ÙØ§Ø³ØªÙاÙÙ" Ù٠از IN
Ø§Ø³ØªÙØ§Ø¯Ù
+Ù
ÙâÙÙÙØ¯ ÙÙØ¯ ÙØ³ØªÙدØ
+
در ÙØ³Ø®Ù ÙØ§Û ÙØ¨Ù از 7.4 عÙ
Ù
+Ø§ÙØØ§Ù Ø²ÛØ± Ø¯Ø±Ø®ÙØ§Ø³Øª Ù Ø¯Ø±Ø®ÙØ§Ø³Øª اصÙÛ Ø¨Ù Ø§ÛÙ ØµÙØ±Øª Ø§ÙØ¬Ø§Ù
Ù
Û Ø´ÙØ¯ Ú©Ù ÙØªØ§Ûج ب٠دست Ø¢Ù
دÙ
+از Ø²ÛØ± Ø¯Ø±Ø®ÙØ§Ø³Øª Ø¨Ù ØµÙØ±Øª ØªØ±ØªÛØ¨Û Ø¨Ø±Ø§Û ÙØ± ردÛ٠اعÙ
ا٠Ù
Û Ø´ÙØ¯. اگر Ø²ÛØ±Ø¯Ø±Ø®Ùاست ردÛÙ ÙØ§Û
+Ú©Ù
Û Ø±Ø§ ب٠عÙÙØ§Ù Ø®Ø±ÙØ¬Û Ø¨Ø±Ú¯Ø±Ø¯Ø§ÙØ¯ Ù Ø¯Ø±Ø®ÙØ§Ø³Øª Ø¨ÛØ±ÙÙÛ Ø±Ø¯ÛÙ ÙØ§Û Ø²ÛØ§Ø¯Û را شاÙ
Ù Ø´ÙØ¯
+Ø§Ø³ØªÙØ§Ø¯Ù از IN Ø¨ÙØªØ±ÛÙ Ø±ÙØ´ است در ØºÛØ± اÛÙØµÙرت Ø¨ÙØªØ± است از
+EXISTS Ø§Ø³ØªÙØ§Ø¯Ù Ø´ÙØ¯
SELECT *
FROM tab
WHERE col IN (SELECT subcol FROM subtab);
-
به:
+
بÙ:
SELECT *
FROM tab
WHERE EXISTS (SELECT subcol FROM subtab WHERE subcol = col);
-
برای اجرای سریع این درخواست
-باید برای ستون subcol نمایه ایجاد شده باشد.
-
در نسخه های بعد از 7.4
-IN برای الحاق از همان تکنیک پیچیده مورد استفاده در دستورات
-معمولی استفاده می کند و بنابراین استفاده از آن نسبت به EXISTS
-ارجحیت دارد.
4.23) چگونه ميتوانم يك الحاق خارجي (outer join)
-انجام دهم؟
-
برای انجام الحاق خارجی به روش
-زیر عمل کنید:
+
Ø¨Ø±Ø§Û Ø§Ø¬Ø±Ø§Û Ø³Ø±ÛØ¹ اÛÙ Ø¯Ø±Ø®ÙØ§Ø³Øª
+Ø¨Ø§ÛØ¯ Ø¨Ø±Ø§Û Ø³ØªÙÙ subcol ÙÙ
اÛÙ Ø§ÛØ¬Ø§Ø¯ شد٠باشد.
+
در ÙØ³Ø®Ù ÙØ§Û بعد از 7.4
+IN Ø¨Ø±Ø§Û Ø§ÙØØ§Ù Ø§Ø² ÙÙ
ا٠تکÙÛÚ© Ù¾ÛÚÛØ¯Ù Ù
ÙØ±Ø¯ Ø§Ø³ØªÙØ§Ø¯Ù در Ø¯Ø³ØªÙØ±Ø§Øª
+Ù
عÙ
ÙÙÛ Ø§Ø³ØªÙØ§Ø¯Ù Ù
Û Ú©ÙØ¯ Ù Ø¨ÙØ§Ø¨Ø±Ø§ÛÙ Ø§Ø³ØªÙØ§Ø¯Ù از Ø¢Ù ÙØ³Ø¨Øª ب٠EXISTS
+ارجØÛت دارد.
4.23)
+ÚÚ¯ÙÙÙ Ù
ÙâØªÙØ§ÙÙ
ÙÙ Ø§ÙØØ§Ù Ø®Ø§Ø±Ø¬Ù (outer join) Ø§ÙØ¬Ø§Ù
دÙÙ
Ø
+
Ø¨Ø±Ø§Û Ø§ÙØ¬Ø§Ù
Ø§ÙØØ§Ù Ø®Ø§Ø±Ø¬Û Ø¨Ù Ø±ÙØ´
+Ø²ÛØ± عÙ
Ù Ú©ÙÛØ¯:
SELECT *
FROM t1 LEFT OUTER JOIN t2 ON (t1.col = t2.col);
-
یا
+
ÛØ§
SELECT *
FROM t1 LEFT OUTER JOIN t2 USING (col);
-
درخواستهای بالا t1.col ,
-t2.col را به هم الحاق می کند و همچنین ردیفهای t1
-که نظیر آنها در t2 نبوده است را نیز برمی گرداند. اگر از
-RIGHT استفاده شود نتیجه بر عکس است. یعنی ردیفهای
-t2 که نظیر آنها در t1 نباشد را نشان می
-دهد و اگر از FULL استفاده شود نتیجه هم شامل ردیفهای
-t1 است و هم شامل ردیفهای t2.
-استفاده از کلمه OUTER اختیاری است چرا که این کلمه به طور
-ضمنی در دستورهای LEFT, RIGHT, FULL وجود دارد.
-
در نسخه های قبلی پایگاه داده می
-توانیم الحاق خارجی را به کمک دستورهای UNION, NOT IN شبیه
-سازی کنیم. این کار در مثال زیر نشان داده شده است:
+
Ø¯Ø±Ø®ÙØ§Ø³ØªÙØ§Û Ø¨Ø§ÙØ§ t1.col ,
+t2.col را ب٠ÙÙ
Ø§ÙØØ§Ù Ù
Û Ú©ÙØ¯ Ù ÙÙ
ÚÙÛ٠ردÛÙÙØ§Û t1
+Ú©Ù ÙØ¸Ûر Ø¢ÙÙØ§ در t2 ÙØ¨Ùد٠است را ÙÛØ² برÙ
Û Ú¯Ø±Ø¯Ø§ÙØ¯. اگر از
+RIGHT Ø§Ø³ØªÙØ§Ø¯Ù Ø´ÙØ¯ ÙØªÛج٠بر عکس است. ÛØ¹ÙÛ Ø±Ø¯ÛÙÙØ§Û
+t2 Ú©Ù ÙØ¸Ûر Ø¢ÙÙØ§ در t1 ÙØ¨Ø§Ø´Ø¯ را ÙØ´Ø§Ù Ù
Û
+Ø¯ÙØ¯ ٠اگر از FULL Ø§Ø³ØªÙØ§Ø¯Ù Ø´ÙØ¯ ÙØªÛج٠ÙÙ
شاÙ
٠ردÛÙÙØ§Û
+t1 است Ù ÙÙ
شاÙ
٠ردÛÙÙØ§Û t2.
+Ø§Ø³ØªÙØ§Ø¯Ù از Ú©ÙÙ
Ù OUTER Ø§Ø®ØªÛØ§Ø±Û است ÚØ±Ø§ ک٠اÛÙ Ú©ÙÙ
Ù Ø¨Ù Ø·ÙØ±
+ضÙ
ÙÛ Ø¯Ø³ØªÙØ±ÙØ§Û LEFT, RIGHT, FULL ÙØ¬Ùد دارد.
+
در ÙØ³Ø®Ù ÙØ§Û ÙØ¨ÙÛ Ù¾Ø§Ûگا٠داد٠Ù
Û
+ØªÙØ§ÙÛÙ
Ø§ÙØØ§Ù Ø®Ø§Ø±Ø¬Û Ø±Ø§ ب٠کÙ
Ú© Ø¯Ø³ØªÙØ±ÙØ§Û UNION, NOT IN شبÛÙ
+Ø³Ø§Ø²Û Ú©ÙÛÙ
. اÛ٠کار در Ù
Ø«Ø§Ù Ø²ÛØ± ÙØ´Ø§Ù داد٠شد٠است:
SELECT tab1.col1, tab2.col2
FROM tab1, tab2
@@ -1422,90 +1441,93 @@ t2 که نظیر آن
4.24)
-چگونه ميتوان درخواستهايي از چند پايگاه داده توليد كرد؟
-
در حال حاضر این کار امکان پذیر
-نیست. PostgreSQL فقط امکان درخواست از پایگاه داده ای را
-می دهد که در حال حاضر به آن متصل باشید و نمیتوان به طور همزمان از دو پایگاه
-داده استفاده کرد. البته یک برنامه کاربردی خود می تواند به طور همزمان دو
-پایگاه داده را مورد استفاده قرار داده و نتایج را با هم ترکیب کند ولی نمی تواند
-در یک درخواست به هر دو پایگاه داده رجوع کند.
+
ÚÚ¯ÙÙÙ Ù
ÙâØªÙØ§Ù Ø¯Ø±Ø®ÙØ§Ø³ØªÙاÙ٠از ÚÙØ¯ پاÙگا٠داد٠تÙÙÙØ¯ ÙØ±Ø¯Ø
+
در ØØ§Ù ØØ§Ø¶Ø± اÛ٠کار اÙ
Ú©Ø§Ù Ù¾Ø°ÛØ±
+ÙÛØ³Øª. PostgreSQL ÙÙØ· اÙ
Ú©Ø§Ù Ø¯Ø±Ø®ÙØ§Ø³Øª از پاÛÚ¯Ø§Ù Ø¯Ø§Ø¯Ù Ø§Û Ø±Ø§
+Ù
Û Ø¯ÙØ¯ ک٠در ØØ§Ù ØØ§Ø¶Ø± ب٠آ٠Ù
ØªØµÙ Ø¨Ø§Ø´ÛØ¯ Ù ÙÙ
Û ØªÙØ§Ù Ø¨Ù Ø·ÙØ± ÙÙ
زÙ
ا٠از د٠پاÛگاÙ
+Ø¯Ø§Ø¯Ù Ø§Ø³ØªÙØ§Ø¯Ù کرد. Ø§ÙØ¨ØªÙ ÛÚ© Ø¨Ø±ÙØ§Ù
Ù Ú©Ø§Ø±Ø¨Ø±Ø¯Û Ø®ÙØ¯ Ù
Û ØªÙØ§Ùد Ø¨Ù Ø·ÙØ± ÙÙ
زÙ
ا٠دÙ
+پاÛگا٠داد٠را Ù
ÙØ±Ø¯ Ø§Ø³ØªÙØ§Ø¯Ù ÙØ±Ø§Ø± Ø¯Ø§Ø¯Ù Ù ÙØªØ§Ûج را با ÙÙ
ØªØ±Ú©ÛØ¨ Ú©ÙØ¯ ÙÙÛ ÙÙ
Û ØªÙØ§Ùد
+در ÛÚ© Ø¯Ø±Ø®ÙØ§Ø³Øª Ø¨Ù ÙØ± د٠پاÛÚ¯Ø§Ù Ø¯Ø§Ø¯Ù Ø±Ø¬ÙØ¹ Ú©ÙØ¯.
4.25)
-چگونه خروجي يك تابع ميتواند چند رديف يا ستون باشد؟
-
در نسخه 7.3 خروجی یک تابع می
-تواند چند ردیف یا چند ستون باشد. برای دیدن اطلاعات بیشتر به سایت زیر
-مراجعه کنید:ÚÚ¯ÙÙÙ Ø®Ø±ÙØ¬Ù Ù٠تابع Ù
ÙâØªÙØ§Ùد ÚÙØ¯ ردÙÙ ÙØ§ ستÙ٠باشدØ
+
در ÙØ³Ø®Ù 7.3 Ø®Ø±ÙØ¬Û ÛÚ© تابع Ù
Û
+ØªÙØ§Ùد ÚÙØ¯ ردÛÙ ÛØ§ ÚÙØ¯ ستÙ٠باشد. Ø¨Ø±Ø§Û Ø¯ÛØ¯Ù Ø§Ø·ÙØ§Ø¹Ø§Øª Ø¨ÛØ´ØªØ± Ø¨Ù Ø³Ø§ÛØª Ø²ÛØ±
+Ù
راجع٠کÙÛØ¯:http://techdocs.postgresql.org/guides/SetReturningFunctions
4.26)
-در توابع PL/PgSQL چرا نميتوان با اطمينان
-جداول موقت را ايجاد يا حذف كرد؟
-
PL/PgSQL محتوای توابع را ذخیره
-(cache) می کند. یک اثر بد جانبی
-این کار آن است که اگر در تابع از یک جدول موقت استفاده شود و بعداً آن جدول حذف و
-یک جدول جدید به جای آن ایجاد شود، در فراخوانی مجدد آن تابع، محتوای ذخیره
-شده تابع هنوز به جدول قدیمی اشاره می کند و بنابراین اجرای تابع با اشکال
-مواجه می شود. راه حل این مشکل آن است که برای جداول موقت از دستور EXECUTE
-استفاده شود که این کار سبب می شود که درخواست برای هر بار اجرا مجدداً پیمایش و
-تفسیر شود.
+
در ØªÙØ§Ø¨Ø¹ PL/PgSQL
ÚØ±Ø§ ÙÙ
ÙâØªÙØ§Ù با اطÙ
ÙÙØ§Ù
+جداÙÙ Ù
ÙÙØª را Ø§ÙØ¬Ø§Ø¯ ÙØ§ ØØ°Ù ÙØ±Ø¯Ø
+
PL/PgSQL Ù
ØØªÙØ§Û ØªÙØ§Ø¨Ø¹ را Ø°Ø®ÛØ±Ù
+(cache) Ù
Û Ú©ÙØ¯. ÛÚ© اثر بد Ø¬Ø§ÙØ¨Û
+اÛ٠کار آ٠است ک٠اگر در تابع از ÛÚ© جدÙÙ Ù
ÙÙØª Ø§Ø³ØªÙØ§Ø¯Ù Ø´ÙØ¯ ٠بعدا٠آ٠جدÙÙ ØØ°Ù Ù
+ÛÚ© جدÙÙ Ø¬Ø¯ÛØ¯ Ø¨Ù Ø¬Ø§Û Ø¢Ù Ø§ÛØ¬Ø§Ø¯ Ø´ÙØ¯Ø در ÙØ±Ø§Ø®ÙاÙÛ Ù
جدد Ø¢Ù ØªØ§Ø¨Ø¹Ø Ù
ØØªÙØ§Û Ø°Ø®ÛØ±Ù
+شد٠تابع ÙÙÙØ² ب٠جدÙÙ ÙØ¯ÛÙ
Û Ø§Ø´Ø§Ø±Ù Ù
Û Ú©ÙØ¯ Ù Ø¨ÙØ§Ø¨Ø±Ø§ÛÙ Ø§Ø¬Ø±Ø§Û ØªØ§Ø¨Ø¹ با اشکاÙ
+Ù
ÙØ§Ø¬Ù Ù
Û Ø´ÙØ¯. را٠ØÙ اÛÙ Ù
شک٠آ٠است Ú©Ù Ø¨Ø±Ø§Û Ø¬Ø¯Ø§ÙÙ Ù
ÙÙØª از Ø¯Ø³ØªÙØ± EXECUTE
+Ø§Ø³ØªÙØ§Ø¯Ù Ø´ÙØ¯ ک٠اÛ٠کار سبب Ù
Û Ø´ÙØ¯ Ú©Ù Ø¯Ø±Ø®ÙØ§Ø³Øª Ø¨Ø±Ø§Û ÙØ± بار اجرا Ù
جددا٠پÛÙ
Ø§ÛØ´ Ù
+ØªÙØ³Ûر Ø´ÙØ¯.
4.27)
-چه گزينههايي براي تكرار (replication)
-وجود دارد؟
+Ú٠گزÙÙÙâÙØ§ÙÙ Ø¨Ø±Ø§Ù ØªÙØ±Ø§Ø± (replication)
+ÙØ¬Ùد داردØ
-
There are several master/slave replication options available. These allow
-only the master to make database changes and the slave can only do database
-reads. The bottom of http://gborg.PostgreSQL.org/genpage?replication_research
+There are several master/slave replication
+options available. These allow only the master to make database changes and the
+slave can only do database reads. The bottom of
+http://gborg.PostgreSQL.org/genpage?replication_research
lists them. A multi-master replication solution is being worked on at http://gborg.PostgreSQL.org/project/pgreplication/projdisplay.php.
+href="http://gborg.postgresql.org/project/pgreplication/projdisplay.php">
+http://gborg.PostgreSQL.org/project/pgreplication/projdisplay.php.
4.28)
-چه گزينههايي براي رمزنگاري وجود دارد؟
+Ú٠گزÙÙÙâÙØ§Ù٠برا٠رÙ
زÙÚ¯Ø§Ø±Ù ÙØ¬Ùد داردØ
-
contrib/pgcrypto
- شامل توابع رمزنگاری زیادی است که می توان از آنها در دستورات SQL
- استفاده کرد.
-
-
برای رمز کردن ارتباط بین
- client و server پایگاه داده
- حتماً گزینه SSL را بر روی پایگاه داده فعال کنیم.
-
-
در نسخه 7.3 به بعد کلمات
- عبور کاربران به طور اتوماتیک به صورت رمز شده ذخیره می شود ولی در نسخه های
- قبلی باید گزینه
- PASSWORD_ENCRYPTION را در فایلpostgresql.conf
- فعال کنیم.
+ شاÙ
Ù ØªÙØ§Ø¨Ø¹ رÙ
زÙÚ¯Ø§Ø±Û Ø²ÛØ§Ø¯Û است Ú©Ù Ù
Û ØªÙØ§Ù از Ø¢ÙÙØ§ در Ø¯Ø³ØªÙØ±Ø§Øª SQL
+ Ø§Ø³ØªÙØ§Ø¯Ù کرد.
-
+
Ø¨Ø±Ø§Û Ø±Ù
ز کرد٠ارتباط بÛÙ
+ client Ù server Ø Ù¾Ø§Ûگا٠دادÙ
+ ØØªÙ
ا٠گزÛÙÙ SSL را بر رÙÛ Ù¾Ø§ÛÚ¯Ø§Ù Ø¯Ø§Ø¯Ù ÙØ¹Ø§Ù Ú©ÙÛÙ
.
-
+
در ÙØ³Ø®Ù 7.3 ب٠بعد Ú©ÙÙ
ات
+ Ø¹Ø¨ÙØ± Ú©Ø§Ø±Ø¨Ø±Ø§Ù Ø¨Ù Ø·ÙØ± اتÙÙ
اتÛÚ© Ø¨Ù ØµÙØ±Øª رÙ
ز Ø´Ø¯Ù Ø°Ø®ÛØ±Ù Ù
Û Ø´ÙØ¯ ÙÙÛ Ø¯Ø± ÙØ³Ø®Ù ÙØ§Û
+ ÙØ¨ÙÛ Ø¨Ø§ÛØ¯ گزÛÙÙ
+ PASSWORD_ENCRYPTION در ÙØ§ÛÙpostgresql.conf
+ ÙØ¹Ø§Ù Ú©ÙÛÙ
.
-
-
می توان پایگاههای داده را
- روی یک فایل سیستم رمزشده نگاهداری کرد
+
Ù
Û ØªÙØ§Ù پاÛگاÙÙØ§Û داد٠را
+ رÙÛ ÛÚ© ÙØ§ÛÙ Ø³ÛØ³ØªÙ
رÙ
زشد٠ÙÚ¯Ø§ÙØ¯Ø§Ø±Û کرد
Extending PostgreSQL
5.1)
-من يك تابع نوشتهام. چگونه آن را در psql
-اجرا كنم؟ چرا با اجراي آن core dump ميگيرم؟
-
دلایل مختلفی می تواند باعث بروز
-این مشکل شود. اما قبل از همه، تابع خود را به صورت جدا تست کنید.
-
5.2) چگونه ميتوانم در توليد نوعها و توابع جديد و جالب براي
-PostgreSQL همكاري و مشاركت داشته باشم؟
-
کد خود را به گروه پستی
+Ù
Ù Ù٠تابع ÙÙØ´ØªÙâØ§Ù
. ÚÚ¯ÙÙ٠آ٠را در psql
+اجرا ÙÙÙ
Ø ÚØ±Ø§ با اجرا٠آ٠core dump Ù
ÙâÚ¯ÙØ±Ù
Ø
+Ø¯ÙØ§ÛÙ Ù
ختÙÙÛ Ù
Û ØªÙØ§Ùد باعث Ø¨Ø±ÙØ²
+اÛÙ Ù
Ø´Ú©Ù Ø´ÙØ¯. اÙ
ا ÙØ¨Ù از ÙÙ
٠تابع Ø®ÙØ¯ را Ø¨Ù ØµÙØ±Øª جدا تست Ú©ÙÛØ¯.
+5.2) ÚÚ¯ÙÙÙ
+Ù
ÙâØªÙØ§ÙÙ
در تÙÙÙØ¯ ÙÙØ¹âÙØ§ Ù ØªÙØ§Ø¨Ø¹ Ø¬Ø¯ÙØ¯ Ù Ø¬Ø§ÙØ¨ براÙ
+PostgreSQLâ ÙÙ
ÙØ§Ø±Ù Ù Ù
Ø´Ø§Ø±ÙØª داشت٠باشÙ
Ø
+کد Ø®ÙØ¯ را ب٠گرÙ٠پستÛ
pgsql-hackers
- ارسال کنید.
+ ارسا٠کÙÛØ¯.
5.3)
-چگونه ميتوانم يك تابع به زبان C بنويسم
-كه خروجي آن يك tuple (چند
-تايي) باشد؟
-
در نسخه های 7.3 به بعد یک تابع
-می تواند یک جدول را به عنوان خروجی برگرداند. این ویژگی در توابعی که به زبانهای
-C و PL/PgSQL نوشته میشوند به طور
-کامل وجود دارد. راهنما برنامه نویسان را مطالعه کنید. یک مثال از نحوه برگرداندن
-یک جدول به عنوان خروجی در contrib/tablefunc آمده
-است.
+
ÚÚ¯ÙÙÙ Ù
ÙâØªÙØ§ÙÙ
Ù٠تابع ب٠زبا٠C
بÙÙÙØ³Ù
+ÙÙ Ø®Ø±ÙØ¬Ù Ø¢Ù ÙÙ âtuple
(ÚÙØ¯
+تاÙÙ) باشدØ
+
در ÙØ³Ø®Ù ÙØ§Û 7.3 ب٠بعد ÛÚ© تابع
+Ù
Û ØªÙØ§Ùد ÛÚ© جدÙ٠را ب٠عÙÙØ§Ù Ø®Ø±ÙØ¬Û Ø¨Ø±Ú¯Ø±Ø¯Ø§ÙØ¯. اÛÙ ÙÛÚÚ¯Û Ø¯Ø± ØªÙØ§Ø¨Ø¹Û ک٠ب٠زباÙÙØ§Û
+C Ù PL/PgSQL ÙÙØ´ØªÙ Ù
Û Ø´ÙÙØ¯ Ø¨Ù Ø·ÙØ±
+کاÙ
Ù ÙØ¬Ùد دارد. راÙÙÙ
ا Ø¨Ø±ÙØ§Ù
Ù ÙÙÛØ³Ø§Ù را Ù
Ø·Ø§ÙØ¹Ù Ú©ÙÛØ¯. ÛÚ© Ù
ثا٠از ÙØÙÙ Ø¨Ø±Ú¯Ø±Ø¯Ø§ÙØ¯Ù
+ÛÚ© جدÙ٠ب٠عÙÙØ§Ù Ø®Ø±ÙØ¬Û در contrib/tablefunc Ø¢Ù
دÙ
+است.
5.4)
-من يك فايل منبع را عوض كرده ام چرا در عمليات كامپيل مجدد آن،
-تغيير ديده نميشود؟
-
Makefile برای فایلهای
-include شده وابستگیها را به درستی نشان نمی دهد. برای اطمینان از
-اینکه فایلی که عوض کرده اید حتماً دوباره کامپیل میشود دستور make clean
-را اجرا کنید. اگر از کامپیلر gcc استفاده می کنید می
-توانید از گزینه enable-depend-- در موقع اجرای برنامه
-configure استفاده کنید این گزینه باعث می شود که وابستگیها
-به طور اتوماتیک تولید شود.
\ No newline at end of file
+
Ù
Ù ÙÙ ÙØ§ÙÙ Ù
ÙØ¨Ø¹ را Ø¹ÙØ¶ ÙØ±Ø¯Ù اÙ
ÚØ±Ø§ در عÙ
ÙÙØ§Øª ÙØ§Ù
Ù¾ÙÙ Ù
جدد Ø¢Ù
+تغÙÙØ± Ø¯ÙØ¯Ù ÙÙ
ÙâØ´ÙØ¯Ø
+
Makefile Ø¨Ø±Ø§Û ÙØ§ÛÙÙØ§Û
+include Ø´Ø¯Ù ÙØ§Ø¨Ø³ØªÚ¯ÛÙØ§ را Ø¨Ù Ø¯Ø±Ø³ØªÛ ÙØ´Ø§Ù ÙÙ
Û Ø¯ÙØ¯. Ø¨Ø±Ø§Û Ø§Ø·Ù
ÛÙØ§Ù از
+اÛÙÚ©Ù ÙØ§ÛÙÛ Ú©Ù Ø¹ÙØ¶ Ú©Ø±Ø¯Ù Ø§ÛØ¯ ØØªÙ
Ø§Ù Ø¯ÙØ¨Ø§Ø±Ù کاÙ
Ù¾ÛÙ Ù
Û Ø´ÙØ¯ Ø¯Ø³ØªÙØ± make clean
+را اجرا Ú©ÙÛØ¯. اگر از کاÙ
Ù¾ÛÙØ± gcc Ø§Ø³ØªÙØ§Ø¯Ù Ù
Û Ú©ÙÛØ¯ Ù
Û
+ØªÙØ§ÙÛØ¯ از گزÛÙÙ enable-depend-- در Ù
ÙÙØ¹ Ø§Ø¬Ø±Ø§Û Ø¨Ø±ÙØ§Ù
Ù
+configure Ø§Ø³ØªÙØ§Ø¯Ù Ú©ÙÛØ¯ اÛ٠گزÛÙ٠باعث Ù
Û Ø´ÙØ¯ Ú©Ù ÙØ§Ø¨Ø³ØªÚ¯ÛÙØ§
+Ø¨Ù Ø·ÙØ± اتÙÙ
اتÛÚ© تÙÙÛØ¯ Ø´ÙØ¯.
\ No newline at end of file