Postgres Professional Π²ΡΠΏΡΡΡΠΈΠ»Π° ΡΡΠ΅Π±Π½ΠΈΠΊ ΠΏΠΎ SQL Π΄Π»Ρ Π‘Π£ΠΠ PostgreSQL
![](/wp-content/uploads/postgresql-samouchitel_0.jpg)
ΠΠ΅ΡΠ²ΡΠΉ ΡΡΠ΅Π±Π½ΠΈΠΊ ΠΏΠΎ ΠΎΡΠ½ΠΎΠ²Π°ΠΌ SQL ΠΏΡΠΈΠΌΠ΅Π½ΠΈΡΠ΅Π»ΡΠ½ΠΎ ΠΊ ΡΠ²ΠΎΠ±ΠΎΠ΄Π½ΠΎ ΡΠ°ΡΠΏΡΠΎΡΡΡΠ°Π½ΡΠ΅ΠΌΠΎΠΉ ΡΠΈΡΡΠ΅ΠΌΠ΅ ΡΠΏΡΠ°Π²Π»Π΅Π½ΠΈΡ Π±Π°Π·Π°ΠΌΠΈ Π΄Π°Π½Π½ΡΡ (Π‘Π£ΠΠ) PostgreSQL Π²ΡΡΠ΅Π» Π² ΡΠ²Π΅Ρ 19 ΠΈΡΠ½Ρ ΠΏΡΠΈ ΠΏΠΎΠ΄Π΄Π΅ΡΠΆΠΊΠ΅ ΠΊΠΎΠΌΠΏΠ°Π½ΠΈΠΈ Postgres Professional. Π£ΡΠ΅Π±Π½ΠΈΠΊ Π±Π΅ΡΠΏΠ»Π°ΡΠ΅Π½, ΠΎΠ½ Π΄ΠΎΡΡΡΠΏΠ΅Π½ ΠΏΠΎ ΡΠ²ΠΎΠ±ΠΎΠ΄Π½ΠΎΠΉ Π»ΠΈΡΠ΅Π½Π·ΠΈΠΈ.
ΠΠ²ΡΠΎΡ ΠΏΠΎΡΠΎΠ±ΠΈΡ β ΠΠ²Π³Π΅Π½ΠΈΠΉ ΠΠΎΡΠ³ΡΠ½ΠΎΠ², ΠΊΠ°Π½Π΄ΠΈΠ΄Π°Ρ ΡΠ΅Ρ Π½ΠΈΡΠ΅ΡΠΊΠΈΡ Π½Π°ΡΠΊ, Π΄ΠΎΡΠ΅Π½Ρ ΠΊΠ°ΡΠ΅Π΄ΡΡ ΠΈΠ½ΡΠΎΡΠΌΠ°ΡΠΈΠΊΠΈ ΠΈ Π²ΡΡΠΈΡΠ»ΠΈΡΠ΅Π»ΡΠ½ΠΎΠΉ ΡΠ΅Ρ Π½ΠΈΠΊΠΈ Π‘ΠΈΠ±ΠΈΡΡΠΊΠΎΠ³ΠΎ Π³ΠΎΡΡΠ΄Π°ΡΡΡΠ²Π΅Π½Π½ΠΎΠ³ΠΎ ΡΠ½ΠΈΠ²Π΅ΡΡΠΈΡΠ΅ΡΠ° Π½Π°ΡΠΊΠΈ ΠΈ ΡΠ΅Ρ Π½ΠΎΠ»ΠΎΠ³ΠΈΠΉ ΠΈΠΌΠ΅Π½ΠΈ Π°ΠΊΠ°Π΄Π΅ΠΌΠΈΠΊΠ° Π. Π€. Π Π΅ΡΠ΅ΡΠ½ΡΠ²Π°. ΠΠΎΡΠ³ΡΠ½ΠΎΠ² ΠΏΡΠΈΠΌΠ΅Π½ΡΠ΅Ρ Π‘Π£ΠΠ PostgreSQL Π² ΠΏΡΠ΅ΠΏΠΎΠ΄Π°Π²Π°Π½ΠΈΠΈ Π΄ΠΈΡΡΠΈΠΏΠ»ΠΈΠ½Ρ Β«Π’Π΅Ρ Π½ΠΎΠ»ΠΎΠ³ΠΈΡ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΠΈΡΠΎΠ²Π°Π½ΠΈΡΒ» Π² ΡΠ΅ΡΠ΅Π½ΠΈΠ΅ 17 Π»Π΅Ρ. SQL (Structured Query Language, ΠΏΡΠΎΠΈΠ·Π½ΠΎΡΠΈΡΡΡ Β«ΡΡ-ΠΊΡΡ-ΡΠ»ΡΒ», ΡΠ΅ΠΆΠ΅ Β«ΡΠΈΠΊΠ²Π΅Π»Β»; Π²ΡΠΎΡΠΎΠΉ Π²Π°ΡΠΈΠ°Π½Ρ ΠΏΡΠΎΠΈΠ·Π½ΠΎΡΠ΅Π½ΠΈΡ ΠΎΡΡΠ°Π»ΡΡ ΡΠΎ Π²ΡΠ΅ΠΌΡΠ½ ΠΏΡΠ΅Π΄ΡΠ΄ΡΡΠ΅Π³ΠΎ Π½Π°Π·Π²Π°Π½ΠΈΡ ΡΠ·ΡΠΊΠ°, Β«SEQUELΒ») β ΡΠΈΡΠΎΠΊΠΎ ΡΠ°ΡΠΏΡΠΎΡΡΡΠ°Π½ΡΠ½Π½ΡΠΉ ΡΠΎΡΠΌΠ°Π»ΡΠ½ΡΠΉ ΡΠ·ΡΠΊ ΠΎΠΏΠΈΡΠ°Π½ΠΈΡ Π·Π°ΠΏΡΠΎΡΠΎΠ² ΠΊ Π±Π°Π·Π°ΠΌ Π΄Π°Π½Π½ΡΡ .
Π‘Π²ΠΎΠ±ΠΎΠ΄Π½Π°Ρ Π»ΠΈΡΠ΅Π½Π·ΠΈΡ ΠΈ Π΄ΠΎΡΡΡΠΏ ΠΊ ΠΈΡΡ ΠΎΠ΄Π½ΠΎΠΌΡ ΠΊΠΎΠ΄Ρ ΠΏΠΎΠ·Π²ΠΎΠ»ΡΡΡ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡ Π‘Π£ΠΠ PostgreSQL Π² ΡΡΠ΅Π±Π½ΠΎΠΌ ΠΏΡΠΎΡΠ΅ΡΡΠ΅. ΠΠ½ΡΠ΅ΡΠ΅Ρ ΠΊ ΡΡΠ΅Π±Π½ΠΈΠΊΡ ΡΠΆΠ΅ ΠΏΡΠΎΡΠ²ΠΈΠ»ΠΈ Π£Π»ΡΡΠ½ΠΎΠ²ΡΠΊΠΈΠΉ Π³ΠΎΡΡΠ΄Π°ΡΡΡΠ²Π΅Π½Π½ΡΠΉ ΡΠ΅Ρ Π½ΠΈΡΠ΅ΡΠΊΠΈΠΉ ΡΠ½ΠΈΠ²Π΅ΡΡΠΈΡΠ΅Ρ ΠΈ ΡΡΠ΄ Π΄ΡΡΠ³ΠΈΡ Π²ΡΠ·ΠΎΠ², ΡΠΎΠΎΠ±ΡΠ°Π΅Ρ ΠΊΠΎΠΌΠΏΠ°Π½ΠΈΡ.
ΠΠ°ΠΊ Π³ΠΎΠ²ΠΎΡΠΈΡΡΡ Π² ΡΠΎΠΎΠ±ΡΠ΅Π½ΠΈΠΈ, Π²Π½Π΅Π΄ΡΠ΅Π½ΠΈΠ΅ PostgreSQL Π² Π²ΡΠ·Π°Ρ Π΄ΠΎ Π½Π΅Π΄Π°Π²Π½Π΅Π³ΠΎ Π²ΡΠ΅ΠΌΠ΅Π½ΠΈ ΡΠΎΡΠΌΠΎΠ·ΠΈΠ»ΠΎΡΡ ΠΎΡΡΡΡΡΡΠ²ΠΈΠ΅ΠΌ Π΄ΠΎΠΊΡΠΌΠ΅Π½ΡΠ°ΡΠΈΠΈ Π½Π° ΡΡΡΡΠΊΠΎΠΌ ΡΠ·ΡΠΊΠ΅, ΡΡΠ΅Π±Π½ΡΡ ΠΏΠΎΡΠΎΠ±ΠΈΠΉ, Π° ΡΠ°ΠΊΠΆΠ΅ Π»ΠΎΠ±Π±ΠΈΡΠΎΠ²Π°Π½ΠΈΠ΅ΠΌ ΠΈΠ½ΡΠ΅ΡΠ΅ΡΠΎΠ² Π·Π°ΡΡΠ±Π΅ΠΆΠ½ΡΡ ΠΏΡΠΎΠΈΠ·Π²ΠΎΠ΄ΠΈΡΠ΅Π»Π΅ΠΉ Π‘Π£ΠΠ. ΠΠΎΠΌΠΏΠ°Π½ΠΈΡ Postgres Professional, ΡΠΎΡΡΠΈΠΉΡΠΊΠΈΠΉ Π²Π΅Π½Π΄ΠΎΡ Π‘Π£ΠΠ PostgreSQL, ΠΏΠ΅ΡΠ΅Π²Π΅Π»Π° Π½Π° ΡΡΡΡΠΊΠΈΠΉ ΡΠ·ΡΠΊ Π΄ΠΎΠΊΡΠΌΠ΅Π½ΡΠ°ΡΠΈΡ ΠΏΠΎ PostgreSQL. ΠΠ»Ρ ΠΏΠΎΠ΄Π³ΠΎΡΠΎΠ²ΠΊΠΈ ΡΡΠ΅Π±Π½ΡΡ ΠΏΠΎΡΠΎΠ±ΠΈΠΉ ΠΈ ΠΌΠ°Π³ΠΈΡΡΠ΅ΡΡΠΊΠΈΡ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌ Π΄Π»Ρ Π³Π»ΡΠ±ΠΎΠΊΠΎΠ³ΠΎ ΠΈΠ·ΡΡΠ΅Π½ΠΈΡ ΡΠ΅Ρ Π½ΠΎΠ»ΠΎΠ³ΠΈΠΉ ΡΠΏΡΠ°Π²Π»Π΅Π½ΠΈΡ Π±Π°Π·Π°ΠΌΠΈ Π΄Π°Π½Π½ΡΡ Π½Π° ΠΏΡΠΈΠΌΠ΅ΡΠ΅ PostgreSQL ΠΏΠΎΡΡΠ΅Π±ΡΠ΅ΡΡΡ ΡΠΎΠ²ΠΌΠ΅ΡΡΠ½Π°Ρ ΡΠ°Π±ΠΎΡΠ° Ρ Π²ΡΠ·Π°ΠΌΠΈ.
Π£ΡΠ΅Π±Π½ΠΈΠΊ ΠΏΡΠ΅Π΄ΡΡΠ°Π²Π»ΡΠ΅Ρ ΡΠΎΠ±ΠΎΠΉ ΠΏΠ΅ΡΠ²ΡΡ, Π±Π°Π·ΠΎΠ²ΡΡ ΡΠ°ΡΡΡ ΡΡΠ΅Π±Π½ΠΎΠ³ΠΎ ΠΊΡΡΡΠ° ΠΏΠΎ ΡΠ·ΡΠΊΡ SQL ΠΏΡΠΈΠΌΠ΅Π½ΠΈΡΠ΅Π»ΡΠ½ΠΎ ΠΊ Π‘Π£ΠΠ PostgreSQL. Π ΠΏΠΎΡΠΎΠ±ΠΈΠΈ ΡΠ°ΡΡΠΌΠ°ΡΡΠΈΠ²Π°ΡΡΡΡ Π²ΡΠ΅ ΠΎΡΠ½ΠΎΠ²Π½ΡΠ΅ Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡΠΈ ΡΠ·ΡΠΊΠ° SQL, Π²ΠΊΠ»ΡΡΠ°Ρ ΠΊΠΎΠΌΠ°Π½Π΄Ρ ΡΠΎΠ·Π΄Π°Π½ΠΈΡ ΠΎΠ±ΡΠ΅ΠΊΡΠΎΠ² ΠΠ, ΠΌΠ°Π½ΠΈΠΏΡΠ»ΠΈΡΠΎΠ²Π°Π½ΠΈΡ Π΄Π°Π½Π½ΡΠΌΠΈ ΠΈ ΡΠΏΡΠ°Π²Π»Π΅Π½ΠΈΡ ΡΡΠ°Π½Π·Π°ΠΊΡΠΈΡΠΌΠΈ, Π° ΡΠ°ΠΊΠΆΠ΅ ΡΠΏΠ΅ΡΠΈΠ°Π»ΡΠ½ΡΠ΅ ΡΠΈΠΏΡ Π΄Π°Π½Π½ΡΡ , ΡΠΏΠ΅ΡΠΈΡΠΈΠΊΠ° ΠΈΠ½Π΄Π΅ΠΊΡΠ½ΠΎΠΉ ΠΏΠΎΠ΄Π΄Π΅ΡΠΆΠΊΠΈ PostgreSQL ΠΈ Π½Π°ΡΡΡΠΎΠΉΠΊΠΈ Π·Π°ΠΏΡΠΎΡΠΎΠ². ΠΠ½ΠΎΠ³ΠΎ Π²Π½ΠΈΠΌΠ°Π½ΠΈΡ ΡΠ΄Π΅Π»ΡΠ΅ΡΡΡ ΡΠ°Π·Π²ΠΈΡΠΈΡ ΠΏΡΠ°ΠΊΡΠΈΡΠ΅ΡΠΊΠΈΡ Π½Π°Π²ΡΠΊΠΎΠ² ΠΎΠ±ΡΡΠ°Π΅ΠΌΡΡ . Π ΠΊΠΎΠ½ΡΠ΅ ΠΊΠ°ΠΆΠ΄ΠΎΠΉ Π³Π»Π°Π²Ρ ΠΏΡΠΈΠ²Π΅Π΄Π΅Π½Ρ ΡΠΏΡΠ°ΠΆΠ½Π΅Π½ΠΈΡ. ΠΠ»Ρ ΠΏΡΠ°ΠΊΡΠΈΡΠ΅ΡΠΊΠΈΡ Π·Π°Π΄Π°Π½ΠΈΠΉ ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠ΅ΡΡΡ Π΄Π΅ΠΌΠΎΠ½ΡΡΡΠ°ΡΠΈΠΎΠ½Π½Π°Ρ Π±Π°Π·Π° Π΄Π°Π½Π½ΡΡ . Π ΠΌΠ΅ΡΠΎΠ΄ΠΈΡΠ΅ΡΠΊΠΈΡ ΡΠ΅Π»ΡΡ ΠΏΡΠ΅Π΄Π»ΠΎΠΆΠ΅Π½Π° ΡΠ°Π·Π±ΠΈΠ²ΠΊΠ° ΠΌΠ°ΡΠ΅ΡΠΈΠ°Π»Π° Π½Π° ΡΡΠ΅Π±Π½ΡΠΉ ΡΠ΅ΠΌΠ΅ΡΡΡ ΠΈΠ· ΡΠ°ΡΡΠ΅ΡΠ° 36 ΠΈΠ»ΠΈ 54 ΡΠ°ΡΠΎΠ².
![](/wp-content/uploads/postgresql-samouchitel_1.jpg)
Π Π°Π½Π΅Π΅ Postgres Professional Π²ΡΠΏΡΡΡΠΈΠ»Π° ΡΡΠ΅Π±Π½ΡΠ΅ ΠΊΡΡΡΡ ΠΏΠΎ Π°Π΄ΠΌΠΈΠ½ΠΈΡΡΡΠΈΡΠΎΠ²Π°Π½ΠΈΡ Π‘Π£ΠΠ PostgreSQL (Π±Π°Π·ΠΎΠ²ΡΠΉ ΠΈ ΡΠ°ΡΡΠΈΡΠ΅Π½Π½ΡΠΉ ΡΡΠΎΠ²Π΅Π½Ρ), Π΄ΠΎΡΡΡΠΏΠ½ΡΠ΅ Π² Π²ΠΈΠ΄Π΅ΠΎΡΠΎΡΠΌΠ°ΡΠ΅ ΠΈ Π² Π²ΠΈΠ΄Π΅ ΠΎΡΠ½ΡΡ Π·Π°Π½ΡΡΠΈΠΉ Π² ΡΠ΅ΡΡΡΠ΅Ρ ΡΠ΅ΡΡΠΈΡΠΈΡΠΈΡΠΎΠ²Π°Π½Π½ΡΡ ΡΡΠ΅Π±Π½ΡΡ ΡΠ΅Π½ΡΡΠ°Ρ . Π’Π°ΠΊΠΆΠ΅ Π΄ΠΎΡΡΡΠΏΠ΅Π½ ΠΊΡΡΡ Π΄Π»Ρ ΡΠ°Π·ΡΠ°Π±ΠΎΡΡΠΈΠΊΠΎΠ² Hacking PostgreSQL. Π ΠΈΡΠ»Π΅ 2017 Π³ΠΎΠ΄Π° ΠΎΠΆΠΈΠ΄Π°Π΅ΡΡΡ Π²ΡΡ ΠΎΠ΄ Π±Π°Π·ΠΎΠ²ΠΎΠ³ΠΎ ΠΈ ΡΠ°ΡΡΠΈΡΠ΅Π½Π½ΠΎΠ³ΠΎ ΠΊΡΡΡΠ° Π΄Π»Ρ ΡΠ°Π·ΡΠ°Π±ΠΎΡΡΠΈΠΊΠΎΠ² ΡΠ΅ΡΠ²Π΅ΡΠ½ΠΎΠΉ ΡΠ°ΡΡΠΈ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΡ.
Π ΡΠ»Π΅ΠΊΡΡΠΎΠ½Π½ΠΎΠΌ Π²ΠΈΠ΄Π΅ ΡΡΠ΅Π±Π½ΠΈΠΊ Π΄ΠΎΡΡΡΠΏΠ΅Π½ Π·Π΄Π΅ΡΡ.
ΠΠ° Π‘Π£ΠΠ PostgreSQL Π² ΠΏΠΎΡΠ»Π΅Π΄Π½Π΅Π΅ Π²ΡΠ΅ΠΌΡ ΠΏΠ΅ΡΠ΅Ρ ΠΎΠ΄ΡΡ ΡΠ°Π·Π»ΠΈΡΠ½ΡΠ΅ ΡΠΎΡΡΠΈΠΉΡΠΊΠΈΠ΅ Π³ΠΎΡΠΎΡΠ³Π°Π½ΠΈΠ·Π°ΡΠΈΠΈ ΠΈ ΠΊΠΎΠΌΠΏΠ°Π½ΠΈΠΈ, ΡΡΠ΅Π΄ΠΈ ΠΊΠΎΡΠΎΡΡΡ ΠΏΡΠ°Π²ΠΈΡΠ΅Π»ΡΡΡΠ²ΠΎ ΠΠΎΡΠΊΠ²Ρ, Β«Π―Π½Π΄Π΅ΠΊΡ.ΠΠΎΡΡΠ°Β», Π³ΠΎΡΡΡΡΠ΅ΠΆΠ΄Π΅Π½ΠΈΡ ΠΠΎΡΠΊΠΎΠ²ΡΠΊΠΎΠΉ ΠΎΠ±Π»Π°ΡΡΠΈ, ΠΠΠ Β«Π ΠΎΡΡΠΈΡ ΡΠ΅Π³ΠΎΠ΄Π½ΡΒ» ΠΈ Π΄Ρ.
Π‘ΠΏΡΠ°Π²ΠΊΠ°
ΠΠΎΠΌΠΏΠ°Π½ΠΈΡ Postgres Professional ΡΠΎΠ·Π΄Π°Π½Π° Π² 2015 Π³ΠΎΠ΄Ρ ΡΠΎΡΡΠΈΠΉΡΠΊΠΈΠΌΠΈ ΡΠ°Π·ΡΠ°Π±ΠΎΡΡΠΈΠΊΠ°ΠΌΠΈ PostgreSQL Ρ ΡΠ΅Π»ΡΡ ΠΏΡΠΎΠ΄Π²ΠΈΠΆΠ΅Π½ΠΈΡ ΠΈ ΡΠ°ΡΡΠΈΡΠ΅Π½ΠΈΡ Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡΠ΅ΠΉ Π΄Π°Π½Π½ΠΎΠΉ Π‘Π£ΠΠ Ρ ΠΎΡΠΊΡΡΡΡΠΌ ΠΊΠΎΠ΄ΠΎΠΌ ΠΈ ΡΠ²ΠΎΠ±ΠΎΠ΄Π½ΠΎΠΉ Π»ΠΈΡΠ΅Π½Π·ΠΈΠ΅ΠΉ, ΡΠ°Π·Π²ΠΈΠ²Π°Π΅ΠΌΠΎΠΉ ΠΌΠ΅ΠΆΠ΄ΡΠ½Π°ΡΠΎΠ΄Π½ΡΠΌ ΡΠΎΠΎΠ±ΡΠ΅ΡΡΠ²ΠΎΠΌ Π±ΠΎΠ»Π΅Π΅ 20 Π»Π΅Ρ. Postgres Professional ΡΠ²Π»ΡΠ΅ΡΡΡ ΡΠΎΡΡΠΈΠΉΡΠΊΠΈΠΌ Π²Π΅Π½Π΄ΠΎΡΠΎΠΌ PostgreSQL ΠΈ ΠΎΡΡΡΠ΅ΡΡΠ²Π»ΡΠ΅Ρ ΠΏΠΎΠ΄Π΄Π΅ΡΠΆΠΊΡ ΠΏΠΎΠ»Π½ΠΎΠ³ΠΎ ΡΠΈΠΊΠ»Π°, Π²ΠΊΠ»ΡΡΠ°Ρ IT-Π°ΡΠ΄ΠΈΡ, ΠΊΠΎΠ½ΡΠ°Π»ΡΠΈΠ½Π³, ΡΠ°Π·ΡΠ°Π±ΠΎΡΠΊΡ, Π°Π΄ΠΌΠΈΠ½ΠΈΡΡΡΠΈΡΠΎΠ²Π°Π½ΠΈΠ΅, ΡΠ΅Ρ ΠΏΠΎΠ΄Π΄Π΅ΡΠΆΠΊΡ, ΠΎΠ±ΡΡΠ΅Π½ΠΈΠ΅. Π ΠΊΠΎΠΌΠΏΠ°Π½ΠΈΠΈ Π½Π° Π΄Π°Π½Π½ΡΠΉ ΠΌΠΎΠΌΠ΅Π½Ρ ΡΠ°Π±ΠΎΡΠ°Π΅Ρ Π±ΠΎΠ»Π΅Π΅ 50 ΡΠ΅Π»ΠΎΠ²Π΅ΠΊ.
Π 2016 Π³ΠΎΠ΄Ρ Postgres Professional Π²ΡΠΏΡΡΡΠΈΠ»Π° Π‘Π£ΠΠ Postgres Pro β ΡΠΎΠ±ΡΡΠ²Π΅Π½Π½ΡΡ Π²Π΅ΡΡΠΈΡ PostgreSQL. Π‘Π£ΠΠ Postgres Pro Π²ΠΊΠ»ΡΡΠ΅Π½Π° Π² ΡΠ΅Π΅ΡΡΡ ΠΎΡΠ΅ΡΠ΅ΡΡΠ²Π΅Π½Π½ΠΎΠ³ΠΎ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΠ½ΠΎΠ³ΠΎ ΠΎΠ±Π΅ΡΠΏΠ΅ΡΠ΅Π½ΠΈΡ, Π° Π²Π΅ΡΡΠΈΡ Π‘Π£ΠΠ Postgres Pro 9.5.2.1 ΡΠ΅ΡΡΠΈΡΠΈΡΠΈΡΠΎΠ²Π°Π½Π° Π€Π‘Π’ΠΠ (Π½ΠΎΠΌΠ΅Ρ 3637 Π² ΡΠ΅Π΅ΡΡΡΠ΅).
ΠΠΎΠ½ΡΠΎΡΡΠΈΡΠΌ Π²ΠΎ Π³Π»Π°Π²Π΅ Ρ Postgres Professional Π·Π°Π½ΡΠ» ΠΏΠ΅ΡΠ²ΠΎΠ΅ ΠΌΠ΅ΡΡΠΎ Π² ΠΊΠΎΠ½ΠΊΡΡΡΠ΅ IT-ΠΏΡΠΎΠ΅ΠΊΡΠΎΠ² ΠΠΈΠ½ΠΊΠΎΠΌΡΠ²ΡΠ·ΠΈ Π² Π½ΠΎΠΌΠΈΠ½Π°ΡΠΈΠΈ Β«Π‘ΠΈΡΡΠ΅ΠΌΡ ΡΠΏΡΠ°Π²Π»Π΅Π½ΠΈΡ Π±Π°Π·Π°ΠΌΠΈ Π΄Π°Π½Π½ΡΡ Β».
d-russia.ru
ΠΠ»Π»ΡΡΡΡΠΈΡΠΎΠ²Π°Π½Π½ΡΠΉ ΡΠ°ΠΌΠΎΡΡΠΈΡΠ΅Π»Ρ ΠΏΠΎ PostgreSQL βΊ ΠΠ²Π΅Π΄Π΅Π½ΠΈΠ΅ [ΡΡΡΠ°Π½ΠΈΡΠ° — 2] | Π‘Π°ΠΌΠΎΡΡΠΈΡΠ΅Π»ΠΈ ΠΏΠΎ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΠΈΡΠΎΠ²Π°Π½ΠΈΡ
ΠΠ²Π΅Π΄Π΅Π½ΠΈΠ΅
ΠΠ»Ρ ΠΊΠΎΠ³ΠΎ Π½Π°ΠΏΠΈΡΠ°Π½Π° ΡΡΠ° ΠΊΠ½ΠΈΠ³Π°?
PostgreSQL Π·Π°ΡΠ»ΡΠΆΠ΅Π½Π½ΠΎ ΡΡΠΈΡΠ°Π΅ΡΡΡ ΠΎΠ΄Π½ΠΎΠΉ ΠΈΠ· Π»ΡΡΡΠΈΡ Π‘Π£ΠΠ, ΡΠ°ΡΠΏΡΠΎΡΡΡΠ°Π½ΡΠ΅ΠΌΡΡ Ρ ΠΎΡΠΊΡΡΡΡΠΌΠΈ ΡΠ΅ΠΊΡΡΠ°ΠΌΠΈ, Π° ΠΏΠΎ ΡΠ²ΠΎΠΈΠΌ Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡΡΠΌ PostgreSQL ΡΡΠΏΠ΅ΡΠ½ΠΎ ΠΊΠΎΠ½ΠΊΡΡΠΈΡΡΠ΅Ρ ΡΠΎ ΠΌΠ½ΠΎΠ³ΠΈΠΌΠΈ ΠΊΠΎΠΌΠΌΠ΅ΡΡΠ΅ΡΠΊΠΈΠΌΠΈ ΠΏΠ°ΠΊΠ΅ΡΠ°ΠΌΠΈ.
ΠΠ°ΡΡΠΎΡΡΠ°Ρ ΠΊΠ½ΠΈΠ³Π° Π±ΡΠ»Π° Π·Π°Π΄ΡΠΌΠ°Π½Π° ΠΊΠ°ΠΊ ΠΏΡΠ°ΠΊΡΠΈΡΠ΅ΡΠΊΠΎΠ΅ ΡΡΠΊΠΎΠ²ΠΎΠ΄ΡΡΠ²ΠΎ ΠΏΠΎ PostgreSQL Π²Π΅ΡΡΠΈΠΈ 7.1.x, Ρ ΠΎΡΡ Π±ΠΎΠ»ΡΡΠ°Ρ ΡΠ°ΡΡΡ ΠΌΠ°ΡΠ΅ΡΠΈΠ°Π»Π° Π² ΡΠ°Π²Π½ΠΎΠΉ ΡΡΠ΅ΠΏΠ΅Π½ΠΈ ΠΎΡΠ½ΠΎΡΠΈΡΡΡ ΠΊΠ°ΠΊ ΠΊ ΠΏΡΠ΅Π΄ΡΠ΄ΡΡΠΈΠΌ, ΡΠ°ΠΊ ΠΈ ΠΊ Π±ΡΠ΄ΡΡΠΈΠΌ Π²Π΅ΡΡΠΈΡΠΌ PostgreSQL. ΠΡΠΈ ΠΏΠΎΠ΄Π±ΠΎΡΠ΅ ΠΌΠ°ΡΠ΅ΡΠΈΠ°Π»Π° Π°Π²ΡΠΎΡΡ ΡΡΡΠ΅ΠΌΠΈΠ»ΠΈΡΡ ΠΊ ΡΠΎΠΌΡ, ΡΡΠΎΠ±Ρ ΡΠΈΡΠ°ΡΠ΅Π»Ρ ΠΊΠ°ΠΊ ΠΌΠΎΠΆΠ½ΠΎ Π±ΡΡΡΡΠ΅Π΅ ΠΎΡΠ²ΠΎΠΈΠ» ΠΏΡΠ°ΠΊΡΠΈΡΠ΅ΡΠΊΠΈΠ΅ Π½Π°Π²ΡΠΊΠΈ ΡΠ°Π±ΠΎΡΡ Ρ PostgreSQL. Π₯ΠΎΡΡ Π² ΠΊΠ½ΠΈΠ³Π΅ Π·Π°ΡΡΠ°Π³ΠΈΠ²Π°ΡΡΡΡ Π½Π΅ΠΊΠΎΡΠΎΡΡΠ΅ ΡΠ΅ΠΎΡΠ΅ΡΠΈΡΠ΅ΡΠΊΠΈΠ΅ Π°ΡΠΏΠ΅ΠΊΡΡ ΡΡΠ½ΠΊΡΠΈΠΎΠ½ΠΈΡΠΎΠ²Π°Π½ΠΈΡ Π‘Π£ΠΠ, ΠΏΠΎΠ΄ΠΎΠ±Π½ΡΠ΅ ΡΠ΅ΠΎΡΠ΅ΡΠΈΡΠ΅ΡΠΊΠΈΠ΅ ΠΎΡΡΡΡΠΏΠ»Π΅Π½ΠΈΡ Π±ΡΠ΄ΡΡ ΠΎΡΠ½ΠΎΡΠΈΡΠ΅Π»ΡΠ½ΠΎ ΠΊΠΎΡΠΎΡΠΊΠΈΠΌΠΈ. ΠΡΠ΅ΠΆΠ΄Π΅ Π²ΡΠ΅Π³ΠΎ, ΠΌΡ ΡΡΡΠ΅ΠΌΠΈΠ»ΠΈΡΡ ΠΊ ΡΠΎΠΌΡ, ΡΡΠΎΠ±Ρ ΠΏΠΎΠ»ΡΡΠ΅Π½Π½ΡΠ΅ Π·Π½Π°Π½ΠΈΡ ΠΏΠΎΠ·Π²ΠΎΠ»ΠΈΠ»ΠΈ ΡΠΈΡΠ°ΡΠ΅Π»Ρ ΡΠ°ΠΌΠΎΡΡΠΎΡΡΠ΅Π»ΡΠ½ΠΎ ΡΠΎΠ·Π΄Π°ΡΡ ΡΠ°Π±ΠΎΡΠΎΡΠΏΠΎΡΠΎΠ±Π½ΡΡ Π±Π°Π·Ρ Π΄Π°Π½Π½ΡΡ PostgreSQL ΠΈ ΠΎΠ±Π΅ΡΠΏΠ΅ΡΠΈΡΡ Π΅Π΅ Π΄Π°Π»ΡΠ½Π΅ΠΉΡΠ΅Π΅ ΡΠΎΠΏΡΠΎΠ²ΠΎΠΆΠ΄Π΅Π½ΠΈΠ΅. ΠΠ°Π΄Π΅Π΅ΠΌΡΡ, ΠΊΠ½ΠΈΠ³Π° ΠΏΠΎΠΌΠΎΠΆΠ΅Ρ Π²ΡΠ΅ΠΌ, ΠΊΡΠΎ Ρ ΠΎΡΠ΅Ρ Π±Π»ΠΈΠΆΠ΅ ΠΏΠΎΠ·Π½Π°ΠΊΠΎΠΌΠΈΡΡΡΡ Ρ Π‘Π£ΠΠ PostgreSQL ΠΈ Π΅Π΅ Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡΡΠΌΠΈ.
ΠΠ½ΠΈΠ³Π° ΠΎΡΠΈΠ΅Π½ΡΠΈΡΠΎΠ²Π°Π½Π° Π½Π° ΡΠΈΡΠΎΠΊΠΈΠΉ ΠΊΡΡΠ³ ΡΠΈΡΠ°ΡΠ΅Π»Π΅ΠΉ, ΠΈΠ½ΡΠ΅ΡΠ΅ΡΡΡΡΠΈΡ ΡΡ ΠΎΠ±ΡΠ΅ΠΊΡΠ½ΠΎ-ΡΠ΅Π»ΡΡΠΈΠΎΠ½Π½ΠΎΠΉ ΡΠΈΡΡΠ΅ΠΌΠΎΠΉ ΡΠΏΡΠ°Π²Π»Π΅Π½ΠΈΡ Π±Π°Π·Π°ΠΌΠΈ Π΄Π°Π½Π½ΡΡ (ΠΠ Π‘Π£ΠΠ) PostgreSQL. ΠΡΠ΅Π΄ΠΏΠΎΠ»Π°Π³Π°Π΅ΡΡΡ, ΡΡΠΎ ΡΠΈΡΠ°ΡΠ΅Π»Ρ Π·Π½Π°ΠΊΠΎΠΌ Ρ ΡΠΈΡΡΠ΅ΠΌΠ°ΠΌΠΈ Linux ΠΈ Unix, Ρ ΠΎΡΡ ΠΈ Π½Π΅ ΡΠ²Π»ΡΠ΅ΡΡΡ ΡΠΊΡΠΏΠ΅ΡΡΠΎΠΌ Π² ΠΎΠ±Π»Π°ΡΡΠΈ Π±Π°Π· Π΄Π°Π½Π½ΡΡ . Π₯ΠΎΡΡ Π²ΡΠ΅ ΠΏΡΠΈΠΌΠ΅ΡΡ ΡΠ΅ΡΡΠΈΡΠΎΠ²Π°Π»ΠΈΡΡ Π² ΡΠΈΡΡΠ΅ΠΌΠ΅ Red Hat Linux, ΠΏΡΠ°ΠΊΡΠΈΡΠ΅ΡΠΊΠΈ Π²Π΅ΡΡ ΠΌΠ°ΡΠ΅ΡΠΈΠ°Π» ΠΎΡΠ½ΠΎΡΠΈΡΡΡ ΠΊ Π±ΠΎΠ»ΡΡΠΈΠ½ΡΡΠ²Ρ ΡΠΈΡΡΠ΅ΠΌ ΡΠ΅ΠΌΠ΅ΠΉΡΡΠ²Π° Unix.
Π‘ΡΡΡΠΊΡΡΡΠ° ΠΊΠ½ΠΈΠ³ΠΈ
ΠΠ½ΠΈΠ³Π° Π΄Π΅Π»ΠΈΡΡΡ Π½Π° ΡΠ΅ΡΡΡΠ΅ ΠΎΡΠ½ΠΎΠ²Π½ΡΠ΅ ΡΠ°ΡΡΠΈ, ΠΊΠ°ΠΆΠ΄Π°Ρ ΠΈΠ· ΠΊΠΎΡΠΎΡΡΡ ΠΏΠΎΡΠ²ΡΡΠ΅Π½Π° ΠΎΡΠ΄Π΅Π»ΡΠ½ΠΎΠΌΡ Π°ΡΠΏΠ΅ΠΊΡΡ Π‘Π£ΠΠ PostgreSQL. Π Π·Π°ΠΊΠ»ΡΡΠΈΡΠ΅Π»ΡΠ½ΡΡ, ΠΏΡΡΡΡ, ΡΠ°ΡΡΡ Π²ΠΎΡΠ»ΠΈ ΡΠΏΡΠ°Π²ΠΎΡΠ½ΡΠ΅ ΠΎΠΏΠΈΡΠ°Π½ΠΈΡ ΠΊΠΎΠΌΠ°Π½Π΄ ΠΈ Π½Π΅ΡΠΊΠΎΠ»ΡΠΊΠΎ ΡΠ΅Ρ Π½ΠΈΡΠ΅ΡΠΊΠΈΡ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠΉ.
Π§Π°ΡΡΡ I, «ΠΠ±ΡΠΈΠ΅ ΡΠ²Π΅Π΄Π΅Π½ΠΈΡ ΠΈ ΡΡΡΠ°Π½ΠΎΠ²ΠΊΠ°», Π·Π½Π°ΠΊΠΎΠΌΠΈΡ ΡΠΈΡΠ°ΡΠ΅Π»Ρ Ρ PostgreSQL. Π Π½Π΅ΠΉ ΡΠ°ΡΡΠΊΠ°Π·Π°Π½ΠΎ, ΡΡΠΎ ΡΠ°ΠΊΠΎΠ΅ PostgreSQL, Π³Π΄Π΅ Π½Π°ΠΉΡΠΈ ΡΡΠΎΡ ΠΏΠ°ΠΊΠ΅Ρ ΠΈ ΠΊΠ°ΠΊ ΡΡΡΠ°Π½ΠΎΠ²ΠΈΡΡ Π΅Π³ΠΎ Π² ΡΠΈΡΡΠ΅ΠΌΠ΅. Π Π½Π΅ΠΉ ΡΠ°ΠΊΠΆΠ΅ ΡΠ°ΡΡΠΌΠ°ΡΡΠΈΠ²Π°ΡΡΡΡ ΡΠ°Π·Π»ΠΈΡΠ½ΡΠ΅ ΠΊΠ»ΡΡΠΈ ΠΊΠΎΠΌΠΏΠΈΠ»ΡΡΠΈΠΈ, ΠΏΠΎΠ·Π²ΠΎΠ»ΡΡΡΠΈΠ΅ Π½Π°ΡΡΡΠΎΠΈΡΡ PostgreSQL Π΄Π»Ρ ΠΊΠΎΠ½ΠΊΡΠ΅ΡΠ½ΠΎΠΉ ΡΠΈΡΡΠ°ΡΠΈΠΈ.
Π ΡΠ°ΡΡΠΈ II
Π§Π°ΡΡΡ III, «ΠΠ΄ΠΌΠΈΠ½ΠΈΡΡΡΠΈΡΠΎΠ²Π°Π½ΠΈΠ΅ PostgreSQL», ΠΏΠΎΡΠ²ΡΡΠ΅Π½Π° Π²ΠΎΠΏΡΠΎΡΠ°ΠΌ, ΠΏΡΠ΅Π΄ΡΡΠ°Π²Π»ΡΡΡΠΈΠΌ ΠΈΠ½ΡΠ΅ΡΠ΅Ρ Π΄Π»Ρ ΠΊΠ°ΠΆΠ΄ΠΎΠ³ΠΎ Π°Π΄ΠΌΠΈΠ½ΠΈΡΡΡΠ°ΡΠΎΡΠ° Π±Π°Π· Π΄Π°Π½Π½ΡΡ (ΠΈΠ»ΠΈ Π΄Π»Ρ ΡΠΎΠ³ΠΎ, ΠΊΡΠΎ Ρ ΠΎΡΠ΅Ρ ΠΈΠΌ ΡΡΠ°ΡΡ). Π Π³Π»Π°Π²Π΅ 8, «ΠΡΡΠ΅Π½ΡΠΈΡΠΈΠΊΠ°ΡΠΈΡ ΠΈ ΡΠΈΡΡΠΎΠ²Π°Π½ΠΈΠ΅», ΠΏΡΠ΅Π΄ΡΡΠ°Π²Π»Π΅Π½Ρ ΡΡΠ΅Π΄ΡΡΠ²Π° Π°ΡΡΠ΅Π½ΡΠΈΡΠΈΠΊΠ°ΡΠΈΠΈ PostgreSQL ΠΈ ΠΏΠΎΠ΄Π΄Π΅ΡΠΆΠΈΠ²Π°Π΅ΠΌΡΠ΅ ΡΠΈΠΏΡ ΡΠΈΡΡΠΎΠ²Π°Π½ΠΈΡ Π΄Π°Π½Π½ΡΡ . ΠΠ»Π°Π²Π° 9, «Π£ΠΏΡΠ°Π²Π»Π΅Π½ΠΈΠ΅ Π±Π°Π·Π°ΠΌΠΈ Π΄Π°Π½Π½ΡΡ », ΠΎΠΏΠΈΡΡΠ²Π°Π΅Ρ ΡΡΠ½Π΄Π°ΠΌΠ΅Π½ΡΠ°Π»ΡΠ½ΡΠ΅ ΠΏΡΠΈΠ½ΡΠΈΠΏΡ ΡΠΏΡΠ°Π²Π»Π΅Π½ΠΈΡ Π±Π°Π·Π°ΠΌΠΈ Π΄Π°Π½Π½ΡΡ PostgreSQL, Π²ΠΊΠ»ΡΡΠ°Ρ ΠΈΠ½ΠΈΡΠΈΠ°Π»ΠΈΠ·Π°ΡΠΈΡ ΡΠ°ΠΉΠ»ΠΎΠ²ΠΎΠΉ ΡΠΈΡΡΠ΅ΠΌΡ ΠΈ Π·Π°ΠΏΡΡΠΊ/ΠΎΡΡΠ°Π½ΠΎΠ²ΠΊΡ ΡΠ΅ΡΠ²Π΅ΡΠ°. Π ΡΡΠΎΠΉ Π³Π»Π°Π²Π΅ ΡΠ°ΠΊΠΆΠ΅ ΠΏΡΠΈΠ²Π΅Π΄Π΅Π½Π° ΠΈΠ½ΡΠΎΡΠΌΠ°ΡΠΈΡ ΠΎ ΡΠΎΠ·Π΄Π°Π½ΠΈΠΈ ΠΈ ΡΠ΄Π°Π»Π΅Π½ΠΈΠΈ Π±Π°Π· Π΄Π°Π½Π½ΡΡ , Π°ΡΡ ΠΈΠ²Π°ΡΠΈΠΈ ΠΈ Π²ΠΎΡΡΡΠ°Π½ΠΎΠ²Π»Π΅Π½ΠΈΠΈ Π°ΡΡ ΠΈΠ²ΠΎΠ². Π Π³Π»Π°Π²Π΅ 10, «Π£ΠΏΡΠ°Π²Π»Π΅Π½ΠΈΠ΅ ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»ΡΠΌΠΈ ΠΈ Π³ΡΡΠΏΠΏΠ°ΠΌΠΈ», ΡΠ°ΡΡΠΊΠ°Π·Π°Π½ΠΎ ΠΎ ΡΠΎΠ·Π΄Π°Π½ΠΈΠΈ ΠΈ ΡΠ΄Π°Π»Π΅Π½ΠΈΠΈ ΡΡΠ΅ΡΠ½ΡΡ Π·Π°ΠΏΠΈΡΠ΅ΠΉ ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»Π΅ΠΉ ΠΈ Π³ΡΡΠΏΠΏ, Π° ΡΠ°ΠΊΠΆΠ΅ ΠΎΠ± ΡΠΏΡΠ°Π²Π»Π΅Π½ΠΈΠΈ ΠΏΡΠΈΠ²ΠΈΠ»Π΅Π³ΠΈΡΠΌΠΈ Π΄ΠΎΡΡΡΠΏΠ°.
Π§Π°ΡΡΡ IV, «ΠΡΠΎΠ³ΡΠ°ΠΌΠΌΠΈΡΠΎΠ²Π°Π½ΠΈΠ΅ Π² PostgreSQL», Π·Π½Π°ΠΊΠΎΠΌΠΈΡ ΡΠΈΡΠ°ΡΠ΅Π»Ρ Ρ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΠΈΡΠΎΠ²Π°Π½ΠΈΠ΅ΠΌ Π΄Π»Ρ PostgreSQL ΠΈ ΠΏΡΠΎΡΠ΅Π΄ΡΡΠ½ΡΠΌ ΡΠ·ΡΠΊΠΎΠΌ PL/pgSQL, JDBC (Java Database Connectivity) ΠΈ LXP. Π Π³Π»Π°Π²Π΅ 11, «PL/pgSQL», ΠΏΡΠΈΠ²ΠΎΠ΄ΠΈΡΡΡ ΠΈΠ½ΡΠΎΡΠΌΠ°ΡΠΈΡ ΠΎ ΡΠ·ΡΠΊΠ΅ PL/pgSQL, Π²ΠΊΠ»ΡΡΠ΅Π½ΠΈΠΈ Π΅Π³ΠΎ ΠΏΠΎΠ΄Π΄Π΅ΡΠΆΠΊΠΈ Π² Π±Π°Π·Π°Ρ Π΄Π°Π½Π½ΡΡ ΠΈ ΡΠ°Π·Π»ΠΈΡΠ½ΡΡ Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡΡΡ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΠΈΡΠΎΠ²Π°Π½ΠΈΡ. ΠΠ»Π°Π²Π° 12, «JDBC», ΠΏΠΎΡΠ²ΡΡΠ΅Π½Π° ΡΠΎΠ·Π΄Π°Π½ΠΈΡ JDBC-ΠΈΠ½ΡΠ΅ΡΡΠ΅ΠΉΡΠ° Ρ PostgreSQL ΠΈ ΠΎΡΠ½ΠΎΠ²Π°ΠΌ Π΅Π³ΠΎ ΠΏΡΠ°ΠΊΡΠΈΡΠ΅ΡΠΊΠΎΠ³ΠΎ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ΠΈΡ. ΠΡΠ° ΡΠ°ΡΡΡ ΠΊΠ½ΠΈΠ³ΠΈ Π·Π°Π²Π΅ΡΡΠ°Π΅ΡΡΡ Π³Π»Π°Π²ΠΎΠΉ 13, «LXP», Π² ΠΊΠΎΡΠΎΡΠΎΠΉ ΡΠ°ΡΡΠΌΠ°ΡΡΠΈΠ²Π°ΡΡΡΡ ΠΏΡΠΎΠ±Π»Π΅ΠΌΡ ΡΡΡΠ°Π½ΠΎΠ²ΠΊΠΈ, Π½Π°ΡΡΡΠΎΠΉΠΊΠΈ ΠΈ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ΠΈΡ ΡΠ΅ΡΠ²Π΅ΡΠ° ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠΉ LXP ΡΠΎΠ²ΠΌΠ΅ΡΡΠ½ΠΎ Ρ ΡΠ΅ΡΠ²Π΅ΡΠΎΠΌ HTTP Apache.
ΠΠ°Π²Π΅ΡΡΠ°Π΅Ρ ΠΊΠ½ΠΈΠ³Ρ ΡΠ°ΡΡΡ V, «ΠΠΎΠΌΠ°Π½Π΄Ρ», ΠΊΠΎΡΠΎΡΠ°Ρ ΡΠΎΠ΄Π΅ΡΠΆΠΈΡ ΠΏΠΎΠ΄ΡΠΎΠ±Π½ΡΠΉ ΡΠΏΡΠ°Π²ΠΎΡΠ½ΠΈΠΊ Ρ ΠΎΠΏΠΈΡΠ°Π½ΠΈΠ΅ΠΌ Π²ΡΠ΅Ρ ΡΡΠ°Π½Π΄Π°ΡΡΠ½ΡΡ ΠΈ ΡΠ°ΡΡΠΈΡΠ΅Π½Π½ΡΡ ΠΊΠΎΠΌΠ°Π½Π΄ SQL, ΠΏΠΎΠ΄Π΄Π΅ΡΠΆΠΈΠ²Π°Π΅ΠΌΡΡ Π² PostgreSQL. ΠΡΠΎΠΌΠ΅ ΡΠΎΠ³ΠΎ, Π² ΡΡΡ ΡΠ°ΡΡΡ Π²ΠΊΠ»ΡΡΠ΅Π½ΠΎ Π½Π΅ΡΠΊΠΎΠ»ΡΠΊΠΎ ΡΠ΅Ρ Π½ΠΈΡΠ΅ΡΠΊΠΈΡ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠΉ.
ΠΠ»Π°ΡΡΠΎΡΠΌΠ° ΠΈ Π²Π΅ΡΡΠΈΡ PostgreSQL
ΠΠ° ΠΌΠΎΠΌΠ΅Π½Ρ Π½Π°ΠΏΠΈΡΠ°Π½ΠΈΡ ΠΊΠ½ΠΈΠ³ΠΈ ΠΏΠΎΡΠ»Π΅Π΄Π½ΡΡ Π²Π΅ΡΡΠΈΡ PostgreSQL ΠΈΠΌΠ΅Π»Π° Π½ΠΎΠΌΠ΅Ρ 7.1.3. ΠΡΠ° Π²Π΅ΡΡΠΈΡ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π»Π°ΡΡ Π²ΠΎ Π²ΡΠ΅Ρ
ΠΏΡΠΈΠΌΠ΅ΡΠ°Ρ
ΠΈ Π΄Π»Ρ ΠΏΠΎΡΡΡΠΎΠ΅Π½ΠΈΡ ΠΎΠ±ΡΠ°Π·ΡΠ° Π±Π°Π·Ρ Π΄Π°Π½Π½ΡΡ
ΠΡΠΈΠ½ΡΡΡΠ΅ ΠΎΠ±ΠΎΠ·Π½Π°ΡΠ΅Π½ΠΈΡ
ΠΠ»Ρ ΡΠ΄ΠΎΠ±ΡΡΠ²Π° ΠΈΠ·Π»ΠΎΠΆΠ΅Π½ΠΈΡ ΠΈ Π²ΠΎΡΠΏΡΠΈΡΡΠΈΡ ΠΌΠ°ΡΠ΅ΡΠΈΠ°Π»Π° Π² ΡΡΠΎΠΉ ΠΊΠ½ΠΈΠ³Π΅ ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΡΡΡΡ Π½Π΅ΠΊΠΎΡΠΎΡΡΠ΅ ΡΠΏΠ΅ΡΠΈΠ°Π»ΡΠ½ΡΠ΅ ΠΎΠ±ΠΎΠ·Π½Π°ΡΠ΅Π½ΠΈΡ.
Π‘ΠΏΠ΅ΡΠΈΠ°Π»ΡΠ½ΡΠ΅ ΡΠ΅ΡΠΌΠΈΠ½Ρ, ΠΊΠΎΡΠΎΡΡΠ΅ Π²ΡΡΡΠ΅ΡΠ°ΡΡΡΡ Π² ΡΠ΅ΠΊΡΡΠ΅, Π²ΡΠ΄Π΅Π»Π΅Π½Ρ ΠΊΡΡΡΠΈΠ²ΠΎΠΌ. Π€ΡΠ°Π³ΠΌΠ΅Π½ΡΡ ΠΊΠΎΠ΄Π° ΠΎΠ±ΠΎΠ·Π½Π°ΡΠ°ΡΡΡΡ ΠΌΠΎΠ½ΠΎΡΠΈΡΠΈΠ½Π½ΡΠΌ ΡΡΠΈΡΡΠΎΠΌ, Π° Π΄Π»Ρ Π½Π°Π·Π²Π°Π½ΠΈΠΉ ΡΠ°ΠΉΠ»ΠΎΠ² ΠΈ ΡΠ»Π΅ΠΌΠ΅Π½ΡΠΎΠ² ΠΈΠ½ΡΠ΅ΡΡΠ΅ΠΉΡΠ° ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠ΅ΡΡΡ ΡΠΏΠ΅ΡΠΈΠ°Π»ΡΠ½ΡΠΉ ΡΡΠΈΡΡ.
ΠΠΎ ΠΌΠ½ΠΎΠ³ΠΈΡ ΡΠ°Π·Π΄Π΅Π»Π°Ρ ΠΈΠΌΠ΅ΡΡΡΡ ΡΡΠ±ΡΠΈΠΊΠΈ «ΠΠ½ΠΈΠΌΠ°Π½ΠΈΠ΅», «ΠΡΠΈΠΌΠ΅ΡΠ°Π½ΠΈΠ΅» ΠΈ «Π‘ΠΎΠ²Π΅Ρ», ΠΏΡΠΈΠ·Π²Π°Π½Π½ΡΠ΅ ΠΏΡΠΈΠ²Π»Π΅ΡΡ Π²Π½ΠΈΠΌΠ°Π½ΠΈΠ΅ ΡΠΈΡΠ°ΡΠ΅Π»Ρ. ΠΠ°ΠΆΠ΄Π°Ρ ΡΡΠ±ΡΠΈΠΊΠ° ΠΈΠΌΠ΅Π΅Ρ ΡΠ²ΠΎΡ ΡΠΏΠ΅ΡΠΈΡΠΈΠΊΡ.
ΠΠ½ΠΈΠΌΠ°Π½ΠΈΠ΅
ΠΡΠ΄ΡΡΠ΅ ΠΎΡΡΠΎΡΠΎΠΆΠ½Ρ, ΠΊΠΎΠ³Π΄Π° Π²ΡΡΡΠ΅ΡΠΈΡΠ΅ ΡΡΡ ΡΡΠ±ΡΠΈΠΊΡ. ΠΠΎΡΠ°Π·Π΄ΠΎ Π»ΡΡΡΠ΅ ΡΡΠΈΡΡΡΡ Π½Π° ΠΎΡΠΈΠ±ΠΊΠ°Ρ
Π΄ΡΡΠ³ΠΈΡ
, ΡΠ΅ΠΌ ΡΠΎΠ²Π΅ΡΡΠ°ΡΡ ΠΎΡΠΈΠ±ΠΊΠΈ ΡΠ°ΠΌΠΎΠΌΡ.
ΠΡΠΈΠΌΠ΅ΡΠ°Π½ΠΈΠ΅
Π ΡΡΡ ΡΡΠ±ΡΠΈΠΊΡ Π²ΠΎΡΠ»ΠΈ Π½Π΅ΠΊΠΎΡΠΎΡΡΠ΅ ΡΠ°ΡΡΡΠΆΠ΄Π΅Π½ΠΈΡ, ΡΠ²ΡΠ·Π°Π½Π½ΡΠ΅ Ρ ΡΠ°ΡΡΠΌΠ°ΡΡΠΈΠ²Π°Π΅ΠΌΠΎΠΉ ΡΠ΅ΠΌΠΎΠΉ, Π½ΠΎ Π»Π΅ΠΆΠ°ΡΠΈΠ΅ Π²Π½Π΅ ΠΊΠΎΠ½ΡΠ΅ΠΊΡΡΠ° ΡΠ΅ΠΊΡΡΠ΅Π³ΠΎ ΡΠ°Π·Π΄Π΅Π»Π°. ΠΠΎΠΌΠ½ΠΈΡΠ΅, Π² ΠΏΡΠΈΠΌΠ΅ΡΠ°Π½ΠΈΡΡ
ΡΠ°ΡΡΠΎ ΡΠΎΠ΄Π΅ΡΠΆΠ°ΡΡΡ ΠΊΡΡΠΏΠΈΡΡ ΠΌΡΠ΄ΡΠΎΡΡΠΈ.
Π‘ΠΎΠ²Π΅Ρ
ΠΠ΄Π΅ΡΡ ΡΠΎΠ΄Π΅ΡΠΆΠ°ΡΡΡ ΡΠΎΠ²Π΅ΡΡ ΡΠ΅Ρ
, ΠΊΡΠΎ Π΄Π΅ΠΉΡΡΠ²ΠΈΡΠ΅Π»ΡΠ½ΠΎ Π·Π½Π°Π΅Ρ, ΠΊΠ°ΠΊ ΡΠ°Π±ΠΎΡΠ°ΡΡ Ρ PostgreSQL Π Π½ΠΈΡ
Π²Ρ Π½Π°ΠΉΠ΄Π΅ΡΠ΅ ΠΈΠ½ΡΠΎΡΠΌΠ°ΡΠΈΡ ΠΎ ΡΠΎΠΌ, ΠΊΠ°ΠΊ ΡΡΠΊΠΎΠ½ΠΎΠΌΠΈΡΡ Π²ΡΠ΅ΠΌΡ ΠΏΡΠΈ Π²ΡΠΏΠΎΠ»Π½Π΅Π½ΠΈΠΈ ΠΎΠΏΡΠ΅Π΄Π΅Π»Π΅Π½Π½ΡΡ
Π·Π°Π΄Π°Ρ ΠΈΠ»ΠΈ Π²ΡΠ±ΡΠ°ΡΡ ΠΊΡΠ°ΡΡΠ°ΠΉΡΠΈΠΉ ΠΏΡΡΡ ΠΈΡ
ΡΠ΅ΡΠ΅Π½ΠΈΡ.
samoychiteli.ru
ΠΠ²Π΅Π΄Π΅Π½ΠΈΠ΅ | 2 |
Π§ΡΠΎ ΡΠ°ΠΊΠΎΠ΅ PostgreSQL? | 3 |
Π§ΡΠΎ ΡΠ°ΠΊΠΎΠ΅ PostgreSQL? | 4 |
ΠΠ΅ΡΠΏΠ»Π°ΡΠ½Π°Ρ Π²Π΅ΡΡΠΈΡ | 5 |
ΠΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡΠΈ PostgreSQL | 6 |
Π§ΡΠΎ Π΄Π°Π»ΡΡΠ΅? | 7 |
Π£ΡΡΠ°Π½ΠΎΠ²ΠΊΠ° PostgreSQL | 8 |
ΠΠΎΠ΄Π³ΠΎΡΠΎΠ²ΠΊΠ° ΠΊ ΡΡΡΠ°Π½ΠΎΠ²ΠΊΠ΅ | 9 |
10 ΡΡΠ°ΠΏΠΎΠ² ΡΡΡΠ°Π½ΠΎΠ²ΠΊΠΈ PostgreSQL. ΠΡΠ°ΠΏ 1. Π‘ΠΎΠ·Π΄Π°Π½ΠΈΠ΅ ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»Ρ postgres. | 11 |
ΠΡΠ°ΠΏ 2. Π£ΡΡΠ°Π½ΠΎΠ²ΠΊΠ° ΠΏΠ°ΠΊΠ΅ΡΠ° ΠΈΡΡ ΠΎΠ΄Π½ΡΡ ΡΠ΅ΠΊΡΡΠΎΠ² PostgreSQL. | 12 |
ΠΡΠ°ΠΏ 3. ΠΠ°ΡΡΡΠΎΠΉΠΊΠ° ΠΊΠΎΠ½ΡΠΈΠ³ΡΡΠ°ΡΠΈΠΈ. | 13 |
ΠΡΠ°ΠΏ 4. ΠΊΠΎΠΌΠΏΠΈΠ»ΡΡΠΈΡ ΠΈΡΡ ΠΎΠ΄Π½ΡΡ ΡΠ΅ΠΊΡΡΠΎΠ². | 14 |
ΠΡΠ°ΠΏ 5. Π Π΅Π³ΡΠ΅ΡΡΠΈΠΎΠ½Π½ΠΎΠ΅ ΡΠ΅ΡΡΠΈΡΠΎΠ²Π°Π½ΠΈΠ΅. | 15 |
ΠΡΠ°ΠΏ 6. Π£ΡΡΠ°Π½ΠΎΠ²ΠΊΠ° ΠΎΡΠΊΠΎΠΌΠΏΠΈΠ»ΠΈΡΠΎΠ²Π°Π½Π½ΡΡ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌ ΠΈ Π±ΠΈΠ±Π»ΠΈΠΎΡΠ΅ΠΊ. | 16 |
ΠΡΠ°ΠΏ 7. ΠΠ°ΡΡΡΠΎΠΉΠΊΠ° ΠΏΠ΅ΡΠ΅ΠΌΠ΅Π½Π½ΡΡ ΡΡΠ΅Π΄Ρ. | 17 |
ΠΡΠ°ΠΏ 8. ΠΠ½ΠΈΡΠΈΠ°Π»ΠΈΠ·Π°ΡΠΈΡ ΠΈ Π·Π°ΠΏΡΡΠΊ PostgreSQL. | 18 |
ΠΡΠ°ΠΏ 9. ΠΠ°ΡΡΡΠΎΠΉΠΊΠ° ΡΡΠ΅Π½Π°ΡΠΈΡ SysV Π΄Π»Ρ PostgreSQL. | 19 |
ΠΡΠ°ΠΏ 10. Π‘ΠΎΠ·Π΄Π°Π½ΠΈΠ΅ Π±Π°Π·Ρ Π΄Π°Π½Π½ΡΡ . | 20 |
ΠΡΠ°ΡΠΊΠΈΠΉ ΠΊΡΡΡ SQL | 21 |
ΠΠ½Π°ΠΊΠΎΠΌΡΡΠ²ΠΎ Ρ SQL | 22 |
ΠΠ½Π°ΠΊΠΎΠΌΡΡΠ²ΠΎ Ρ ΡΠ΅Π»ΡΡΠΈΠΎΠ½Π½ΡΠΌΠΈ Π±Π°Π·Π°ΠΌΠΈ Π΄Π°Π½Π½ΡΡ | 23 |
ΠΠΎΠΌΠ°Π½Π΄Ρ SQL | 25 |
ΠΠ»ΡΡΠ΅Π²ΡΠ΅ ΡΠ»ΠΎΠ²Π° ΠΈ ΠΈΠ΄Π΅Π½ΡΠΈΡΠΈΠΊΠ°ΡΠΎΡΡ | 27 |
ΠΠΎΠ½ΡΡΠ°Π½ΡΡ | 29 |
Π‘ΠΏΠ΅ΡΠΈΠ°Π»ΡΠ½ΡΠ΅ ΡΠΈΠΌΠ²ΠΎΠ»Ρ | 33 |
ΠΠΎΠΌΠΌΠ΅Π½ΡΠ°ΡΠΈΠΈ | 35 |
Π’ΠΈΠΏΡ Π΄Π°Π½Π½ΡΡ | 37 |
Π‘ΠΈΠΌΠ²ΠΎΠ»ΡΠ½ΡΠ΅ ΡΠΈΠΏΡ | 42 |
Π§ΠΈΡΠ»ΠΎΠ²ΡΠ΅ ΡΠΈΠΏΡ | 43 |
ΠΠ΅ΠΎΠΌΠ΅ΡΡΠΈΡΠ΅ΡΠΊΠΈΠ΅ ΡΠΈΠΏΡ | 52 |
ΠΠ°ΡΡΠΈΠ²Ρ | 53 |
ΠΡΠ΅ΠΎΠ±ΡΠ°Π·ΠΎΠ²Π°Π½ΠΈΠ΅ ΡΠΈΠΏΠΎΠ² | 54 |
Π’Π°Π±Π»ΠΈΡΡ Π² PostgreSQL | 55 |
SQL Π² PostgreSQL | 57 |
ΠΠ½Π°ΠΊΠΎΠΌΡΡΠ²ΠΎ Ρ psql | 58 |
ΠΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ΠΈΠ΅ ΡΠ°Π±Π»ΠΈΡ | 61 |
ΠΠΎΠ±Π°Π²Π»Π΅Π½ΠΈΠ΅ Π΄Π°Π½Π½ΡΡ ΠΊΠΎΠΌΠ°Π½Π΄Π°ΠΌΠΈ INSERT ΠΈ COPY | 69 |
ΠΡΠ±ΠΎΡΠΊΠ° Π΄Π°Π½Π½ΡΡ ΠΊΠΎΠΌΠ°Π½Π΄ΠΎΠΉ SELECT | 73 |
ΠΡΠ±ΠΎΡ ΠΈΡΡΠΎΡΠ½ΠΈΠΊΠΎΠ² Π² ΡΠ΅ΠΊΡΠΈΠΈ FROM | 76 |
Π£Π΄Π°Π»Π΅Π½ΠΈΠ΅ Π΄ΡΠ±Π»ΠΈΠΊΠ°ΡΠΎΠ² ΠΈ ΠΊΠ»ΡΡΠ΅Π²ΠΎΠ΅ ΡΠ»ΠΎΠ²ΠΎ DISTINCT | 78 |
ΠΠ±ΡΠ΅Π΄ΠΈΠ½Π΅Π½ΠΈΠ΅ Π½Π°Π±ΠΎΡΠΎΠ² Π΄Π°Π½Π½ΡΡ | 80 |
ΠΡΡΠΏΠΏΠΈΡΠΎΠ²ΠΊΠ° Π·Π°ΠΏΠΈΡΠ΅ΠΉ | 85 |
Π‘ΠΎΡΡΠΈΡΠΎΠ²ΠΊΠ° Π·Π°ΠΏΠΈΡΠ΅ΠΉ | 87 |
ΠΡΠ±ΠΎΡ ΠΈΠ½ΡΠ΅ΡΠ²Π°Π»ΠΎΠ² Π·Π°ΠΏΠΈΡΠ΅ΠΉ | 89 |
Π‘ΡΠ°Π²Π½Π΅Π½ΠΈΠ΅ Π½Π°Π±ΠΎΡΠΎΠ² Π·Π°ΠΏΠΈΡΠ΅ΠΉ | 90 |
ΠΠΎΠ½ΡΡΡΡΠΊΡΠΈΠΈ CASE | 92 |
Π‘ΠΎΠ·Π΄Π°Π½ΠΈΠ΅ ΡΠ°Π±Π»ΠΈΡ Π½Π° Π±Π°Π·Π΅ ΡΡΡΠ΅ΡΡΠ²ΡΡΡΠΈΡ ΡΠ°Π±Π»ΠΈΡ | 93 |
ΠΠΎΠ΄ΠΈΡΠΈΠΊΠ°ΡΠΈΡ Π·Π°ΠΏΠΈΡΠ΅ΠΉ ΠΊΠΎΠΌΠ°Π½Π΄ΠΎΠΉ UPDATE | 94 |
Π£Π΄Π°Π»Π΅Π½ΠΈΠ΅ Π·Π°ΠΏΠΈΡΠ΅ΠΉ ΠΊΠΎΠΌΠ°Π½Π΄ΠΎΠΉ DELETE | 96 |
ΠΠΎΠ΄Π·Π°ΠΏΡΠΎΡΡ | 97 |
ΠΡΠ΅Π΄ΡΡΠ°Π²Π»Π΅Π½ΠΈΡ. ΠΡΡΠ³ΠΈΠ΅ Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡΠΈ SQL. | 98 |
ΠΠΏΠ΅ΡΠ°ΡΠΎΡΡ ΠΈ ΡΡΠ½ΠΊΡΠΈΠΈ | 101 |
ΠΠΏΠ΅ΡΠ°ΡΠΎΡΡ | 102 |
ΠΡΠ°Π²ΠΈΠ»Π° ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ΠΈΡ ΠΎΠΏΠ΅ΡΠ°ΡΠΎΡΠΎΠ² | 103 |
Π‘ΡΡΠΎΠΊΠΎΠ²ΡΠ΅ ΠΎΠΏΠ΅ΡΠ°ΡΠΎΡΡ | 104 |
Π§ΠΈΡΠ»ΠΎΠ²ΡΠ΅ ΠΎΠΏΠ΅ΡΠ°ΡΠΎΡΡ | 108 |
ΠΠΎΠ³ΠΈΡΠ΅ΡΠΊΠΈΠ΅ ΠΎΠΏΠ΅ΡΠ°ΡΠΎΡΡ | 111 |
ΠΠΏΠ΅ΡΠ°ΡΠΎΡΡ ΠΈ NULL | 112 |
ΠΡΠΈΠΎΡΠΈΡΠ΅Ρ ΠΎΠΏΠ΅ΡΠ°ΡΠΎΡΠΎΠ² | 113 |
Π€ΡΠ½ΠΊΡΠΈΠΈ. ΠΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ΠΈΠ΅ ΡΡΠ½ΠΊΡΠΈΠΉ. | 114 |
ΠΠ°ΡΠ΅ΠΌΠ°ΡΠΈΡΠ΅ΡΠΊΠΈΠ΅ ΡΡΠ½ΠΊΡΠΈΠΈ | 115 |
Π‘ΡΡΠΎΠΊΠΎΠ²ΡΠ΅ ΡΡΠ½ΠΊΡΠΈΠΈ | 123 |
Π€ΡΠ½ΠΊΡΠΈΠΈ Π΄Π»Ρ ΡΠ°Π±ΠΎΡΡ Ρ Π΄Π°ΡΠΎΠΉ ΠΈ Π²ΡΠ΅ΠΌΠ΅Π½Π΅ΠΌ | 133 |
Π€ΡΠ½ΠΊΡΠΈΠΈ ΠΏΡΠ΅ΠΎΠ±ΡΠ°Π·ΠΎΠ²Π°Π½ΠΈΡ ΡΠΈΠΏΠ° | 138 |
ΠΠ³ΡΠ΅Π³Π°ΡΠ½ΡΠ΅ ΡΡΠ½ΠΊΡΠΈΠΈ | 144 |
ΠΠ»ΠΈΠ΅Π½ΡΡ PostgreSQL | 148 |
ΠΠΎΠΏΠΎΠ»Π½ΠΈΡΠ΅Π»ΡΠ½ΡΠ΅ Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡΠΈ ΠΊΠ»ΠΈΠ΅Π½ΡΠ° psql | 149 |
ΠΠ°Π³ΡΡΠ·ΠΊΠ° Π·Π°ΠΏΡΠΎΡΠΎΠ² ΠΈΠ· Π²Π½Π΅ΡΠ½ΠΈΡ ΡΠ°ΠΉΠ»ΠΎΠ² | 153 |
Π Π°Π±ΠΎΡΠ° Ρ ΠΏΠ΅ΡΠ΅ΠΌΠ΅Π½Π½ΡΠΌΠΈ | 154 |
ΠΡΠ°ΡΠΈΡΠ΅ΡΠΊΠΈΠΉ ΠΊΠ»ΠΈΠ΅Π½Ρ PgAccess | 157 |
Π‘ΠΎΠ·Π΄Π°Π½ΠΈΠ΅ Π±Π°Π· Π΄Π°Π½Π½ΡΡ | 158 |
ΠΠ΅ΡΡΠΈΠ²ΠΈΠ°Π»ΡΠ½ΡΠ΅ Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡΠΈ | 160 |
ΠΠ½Π΄Π΅ΠΊΡΡ | 161 |
ΠΠ΅ΡΡΠΈΠ²ΠΈΠ°Π»ΡΠ½ΠΎΠ΅ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ΠΈΠ΅ ΡΠ°Π±Π»ΠΈΡ | 165 |
ΠΠ°ΡΡΠΈΠ²Ρ | 172 |
ΠΠ²ΡΠΎΠΌΠ°ΡΠΈΠ·Π°ΡΠΈΡ ΡΡΠ°Π½Π΄Π°ΡΡΠ½ΡΡ ΠΏΡΠΎΡΠ΅Π΄ΡΡ | 176 |
Π’ΡΠ°Π½Π·Π°ΠΊΡΠΈΠΈ ΠΈ ΠΊΡΡΡΠΎΡΡ | 184 |
Π Π°ΡΡΠΈΡΠ΅Π½ΠΈΠ΅ PostgreSQL | 189 |
ΠΡΡΠ΅Π½ΡΠΈΡΠΈΠΊΠ°ΡΠΈΡ ΠΈ ΡΠΈΡΡΠΎΠ²Π°Π½ΠΈΠ΅ | 195 |
Π£ΠΏΡΠ°Π²Π»Π΅Π½ΠΈΠ΅ Π±Π°Π·Π°ΠΌΠΈ Π΄Π°Π½Π½ΡΡ | 207 |
ΠΠ°ΠΏΡΡΠΊ ΠΈ Π·Π°Π²Π΅ΡΡΠ΅Π½ΠΈΠ΅ PostgreSQL | 208 |
Π‘ΡΠ΅Π½Π°ΡΠΈΠΉ SysV | 211 |
ΠΠ½ΠΈΡΠΈΠ°Π»ΠΈΠ·Π°ΡΠΈΡ ΡΠ°ΠΉΠ»ΠΎΠ²ΠΎΠΉ ΡΠΈΡΡΠ΅ΠΌΡ | 213 |
Π‘ΠΎΠ·Π΄Π°Π½ΠΈΠ΅ ΠΈ ΡΠ΄Π°Π»Π΅Π½ΠΈΠ΅ Π±Π°Π· Π΄Π°Π½Π½ΡΡ | 215 |
Π‘ΠΎΠΏΡΠΎΠ²ΠΎΠΆΠ΄Π΅Π½ΠΈΠ΅ Π±Π°Π·Ρ Π΄Π°Π½Π½ΡΡ | 219 |
ΠΡΡ ΠΈΠ²Π°ΡΠΈΡ ΠΈ Π²ΠΎΡΡΡΠ°Π½ΠΎΠ²Π»Π΅Π½ΠΈΠ΅ Π΄Π°Π½Π½ΡΡ | 222 |
ΠΠΎΡΡΡΠ°Π½ΠΎΠ²Π»Π΅Π½ΠΈΠ΅ Π±Π°Π·Ρ Π΄Π°Π½Π½ΡΡ | 225 |
Π£ΠΏΡΠ°Π²Π»Π΅Π½ΠΈΠ΅ ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»ΡΠΌΠΈ ΠΈ Π³ΡΡΠΏΠΏΠ°ΠΌΠΈ | 229 |
Π£ΠΏΡΠ°Π²Π»Π΅Π½ΠΈΠ΅ ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»ΡΠΌΠΈ ΠΈ Π³ΡΡΠΏΠΏΠ°ΠΌΠΈ | 230 |
Π£ΠΏΡΠ°Π²Π»Π΅Π½ΠΈΠ΅ ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»ΡΠΌΠΈ | 231 |
Π£ΠΏΡΠ°Π²Π»Π΅Π½ΠΈΠ΅ Π³ΡΡΠΏΠΏΠ°ΠΌΠΈ | 237 |
ΠΡΠ΅Π΄ΠΎΡΡΠ°Π²Π»Π΅Π½ΠΈΠ΅ ΠΏΡΠΈΠ²ΠΈΠ»Π΅Π³ΠΈΠΉ | 240 |
PL/pgSQL | 244 |
ΠΠΎΠ΄Π΄Π΅ΡΠΆΠΊΠ° PL/pgSQL | 245 |
Π‘ΡΡΡΠΊΡΡΡΠ° ΡΠ·ΡΠΊΠ° | 247 |
ΠΠ΅ΡΠ΅ΠΌΠ΅Π½Π½ΡΠ΅ | 250 |
ΠΠΎΠ·Π²ΡΠ°ΡΠ΅Π½ΠΈΠ΅ ΠΏΠ΅ΡΠ΅ΠΌΠ΅Π½Π½ΡΡ | 255 |
ΠΠ΅ΡΠ΅Π΄Π°ΡΠ° ΡΠΏΡΠ°Π²Π»Π΅Π½ΠΈΡ | 258 |
Π¦ΠΈΠΊΠ»Ρ | 262 |
ΠΠ±ΡΠ°Π±ΠΎΡΠΊΠ° ΠΎΡΠΈΠ±ΠΎΠΊ ΠΈ ΠΈΡΠΊΠ»ΡΡΠ΅Π½ΠΈΠΉ | 266 |
PL/pgSQL ΠΈ ΡΡΠΈΠ³Π³Π΅ΡΡ | 268 |
JDBC | 270 |
JDBC | 271 |
ΠΠΎΡΡΡΠΎΠ΅Π½ΠΈΠ΅ Π΄ΡΠ°ΠΉΠ²Π΅ΡΠ° JDBC Π΄Π»Ρ PostgreSQL | 272 |
ΠΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ΠΈΠ΅ Π΄ΡΠ°ΠΉΠ²Π΅ΡΠ° PostgreSQL | 273 |
ΠΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ΠΈΠ΅ JDBC | 275 |
Π‘ΠΏΠ΅ΡΠΈΡΠΈΠΊΠ° ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ΠΈΡ JDBC Ρ PostgreSQL | 279 |
LXP | 280 |
ΠΡΠ΅ΠΈΠΌΡΡΠ΅ΡΡΠ²Π° LXP | 281 |
ΠΠ°Π·ΠΎΠ²ΡΠ΅ Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡΠΈ | 282 |
Π£ΡΡΠ°Π½ΠΎΠ²ΠΊΠ° ΠΈ Π½Π°ΡΡΡΠΎΠΉΠΊΠ° LXP | 283 |
ΠΠ½Π°ΠΊΠΎΠΌΡΡΠ²ΠΎ Ρ ΡΠ°Π·ΠΌΠ΅ΡΠΊΠΎΠΉ LXP | 287 |
ΠΠ΅ΡΠ΅ΠΌΠ΅Π½Π½ΡΠ΅ ΠΈ ΠΎΠ±ΡΠ΅ΠΊΡΡ LXP | 288 |
ΠΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ΠΈΠ΅ cookie Π² LXP | 290 |
ΠΠ΅ΠΊΡΠΈΡΠ΅ΡΠΊΠΈΠΉ ΡΠ°Π·Π±ΠΎΡ ΡΠ΅Π³ΠΎΠ² | 291 |
Π£ΡΠ»ΠΎΠ²Π½Π°Ρ Π»ΠΎΠ³ΠΈΠΊΠ° | 293 |
Π¦ΠΈΠΊΠ»Ρ | 296 |
ΠΠΊΠ»ΡΡΠ΅Π½ΠΈΠ΅ Π΄Π°Π½Π½ΡΡ | 297 |
ΠΠΊΠ»ΡΡΠ΅Π½ΠΈΠ΅ ΡΠ°ΠΉΠ»ΠΎΠ² LXP | 298 |
ΠΠΊΠ»ΡΡΠ΅Π½ΠΈΠ΅ ΡΠ°ΠΉΠ»ΠΎΠ² Ρ ΡΠ°Π·Π΄Π΅Π»ΠΈΡΠ΅Π»ΡΠΌΠΈ | 299 |
ΠΠΊΠ»ΡΡΠ΅Π½ΠΈΠ΅ ΡΠ°ΠΉΠ»ΠΎΠ² XML, RSS ΠΈ RDF | 301 |
ΠΠΊΠ»ΡΡΠ΅Π½ΠΈΠ΅ Π²Π½Π΅ΡΠ½ΠΈΡ ΠΈΡΡΠΎΡΠ½ΠΈΠΊΠΎΠ² Π΄Π°Π½Π½ΡΡ | 302 |
ΠΠ½Π΅ΡΠ½ΠΈΠ΅ ΡΠ΅Π³ΠΈ | 306 |
ΠΠΎΠΌΠ°Π½Π΄Ρ PostgreSQL | 308 |
ABORT | 309 |
ALTER GROUP | 310 |
ALTER TABLE | 311 |
ALTER USER | 313 |
BEGIN | 314 |
CLOSE | 315 |
CLUSTER | 316 |
COMMENT | 317 |
COMMIT | 318 |
COPY | 319 |
CREATE AGGREGATE | 321 |
CREATE DATABASE | 323 |
CREATE FUNCTION | 325 |
CREATE GROUP | 326 |
CREATE INDEX | 327 |
CREATE LANGUAGE | 329 |
CREATE OPERATOR | 330 |
Π‘REATE RULE | 332 |
CREATE SEQUENCE | 333 |
CREATE TABLE | 334 |
CREATE TABLE AS | 337 |
CRΠΠΠ’Π TRIGGER | 338 |
CREATE TYPE | 339 |
CREATE USER | 341 |
CREATE VIEW | 342 |
CURRENT DATE. CURRENT_TIME. | 343 |
CURRENT_TIMESTAMP. CURRENT_USER. | 344 |
DECLARE | 345 |
DELETE | 346 |
DROP AGGREGATE | 347 |
DROP DATABASE | 348 |
DROP FUNCTION | 349 |
DROP GROUP. DROP INDEX. | 350 |
DROP LANGUAGE | 351 |
DROP OPERATOR | 352 |
DROP RULE. DROP SEQUENCE. | 353 |
DROP TABLE | 354 |
DROP TRIGGER | 355 |
DROP TYPE | 356 |
DROP USER | 357 |
DROP VIEW. END. | 358 |
EXPLAIN | 359 |
FETCH | 360 |
GRANT | 362 |
INSERT | 363 |
LISTEN | 364 |
LOAD | 365 |
LΠΠ‘Π | 366 |
MOVE | 367 |
NOTIFY | 368 |
REINDEX | 369 |
RESET | 370 |
REVOKE | 371 |
ROLLBACK | 372 |
SELECT | 373 |
SELECT INTO | 375 |
SET | 376 |
SET CONSTRAINTS | 377 |
SET TRANSACTION | 378 |
SHOW | 379 |
TRUNCATE | 380 |
UNLISTEN | 381 |
UPDATE | 382 |
VACUUM | 383 |
ΠΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΡ | 384 |
ΠΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ Π. Π’ΠΈΠΏΡ ΡΠ°ΡΡΠΈΡΠ΅Π½Π½ΡΡ ΠΊΠΎΠ΄ΠΈΡΠΎΠ²ΠΎΠΊ. | 385 |
ΠΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ Π. ΠΠ»ΡΡΠΈ ΠΊΠΎΠΌΠ°Π½Π΄Π½ΠΎΠΉ ΡΡΡΠΎΠΊΠΈ postgres. | 386 |
ΠΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ Π. ΠΠ²ΠΎΠΈΡΠ½ΡΠΉ ΡΠΎΡΠΌΠ°Ρ ΠΊΠΎΠΌΠ°Π½Π΄Ρ COPY. | 387 |
ΠΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ Π. ΠΠ½ΡΡΡΠ΅Π½Π½ΠΈΠ΅ ΠΏΠ΅ΡΠ΅ΠΌΠ΅Π½Π½ΡΠ΅ psql. | 388 |
samoychiteli.ru
ΠΠ»Π»ΡΡΡΡΠΈΡΠΎΠ²Π°Π½Π½ΡΠΉ ΡΠ°ΠΌΠΎΡΡΠΈΡΠ΅Π»Ρ ΠΏΠΎ PostgreSQL βΊ ΠΡΠ°ΡΠΊΠΈΠΉ ΠΊΡΡΡ SQL βΊ Π’Π°Π±Π»ΠΈΡΡ Π² PostgreSQL [ΡΡΡΠ°Π½ΠΈΡΠ° — 55] | Π‘Π°ΠΌΠΎΡΡΠΈΡΠ΅Π»ΠΈ ΠΏΠΎ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΠΈΡΠΎΠ²Π°Π½ΠΈΡ
Π’Π°Π±Π»ΠΈΡΡ Π² PostgreSQL
ΠΠ½ΠΎΠ³ΠΈΠ΅ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΠΈΡΡΡ (ΠΎΡΠΎΠ±Π΅Π½Π½ΠΎ ΠΎΠ±Π»Π°Π΄Π°ΡΡΠΈΠ΅ ΠΎΠΏΡΡΠΎΠΌ ΡΠ°Π±ΠΎΡΡ Ρ Π΄ΡΡΠ³ΠΈΠΌΠΈ ΡΠ΅Π»ΡΡΠΈΠΎΠ½Π½ΡΠΌΠΈ Π‘Π£ΠΠ Π½Π° Π±Π°Π·Π΅ SQL) Ρ ΠΎΡΠΎΡΠΎ Π·Π½Π°ΠΊΠΎΠΌΡ Ρ ΠΎΠ±ΡΠΈΠΌΠΈ ΠΊΠΎΠ½ΡΠ΅ΠΏΡΠΈΡΠΌΠΈ ΡΠ΅Π»ΡΡΠΈΠΎΠ½Π½ΡΡ Π±Π°Π· Π΄Π°Π½Π½ΡΡ , ΡΠ°ΡΡΠΌΠΎΡΡΠ΅Π½Π½ΡΠΌΠΈ Π² ΡΡΠΎΠΉ Π³Π»Π°Π²Π΅. Π’Π΅ΠΌ Π½Π΅ ΠΌΠ΅Π½Π΅Π΅ Π² ΡΠ°Π·Π½ΡΡ Π Π‘Π£ ΠΠ ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΡΡΡΡ ΡΠ°Π·Π½ΡΠ΅ ΠΌΠ΅Ρ Π°Π½ΠΈΠ·ΠΌΡ ΡΠ°Π±ΠΎΡΡ Ρ ΡΠ°Π±Π»ΠΈΡΠ°ΠΌΠΈ Π½Π° ΡΠΈΡΡΠ΅ΠΌΠ½ΠΎΠΌ ΡΡΠΎΠ²Π½Π΅. Π ΡΡΠΎΠΌ ΡΠ°Π·Π΄Π΅Π»Π΅ Π±ΠΎΠ»Π΅Π΅ ΠΏΠΎΠ΄ΡΠΎΠ±Π½ΠΎ ΠΎΠΏΠΈΡΠ°Π½Π° ΡΠ΅Π°Π»ΠΈΠ·Π°ΡΠΈΡ ΡΠ°Π±Π»ΠΈΡ Π² PostgreSQL.
Π‘ΠΈΡΡΠ΅ΠΌΠ½ΡΠ΅ ΠΏΠΎΠ»Ρ
Π PostgreSQL Π²ΡΠ΅ ΡΠ°Π±Π»ΠΈΡΡ ΡΠΎΠ΄Π΅ΡΠΆΠ°Ρ ΡΠΈΡΡΠ΅ΠΌΠ½ΡΠ΅ ΠΏΠΎΠ»Ρ, ΠΊΠΎΡΠΎΡΡΠ΅ ΠΎΡΡΠ°ΡΡΡΡ Π½Π΅Π²ΠΈΠ΄ΠΈΠΌΡΠΌΠΈ Π΄Π»Ρ ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»Ρ ΠΈ Π½Π΅ Π²ΡΠ²ΠΎΠ΄ΡΡΡΡ ΠΏΡΠΈ Π²ΡΠ±ΠΎΡΠΊΠ΅ (Π΅ΡΠ»ΠΈ ΡΠ»ΡΠΆΠ΅Π±Π½Π°Ρ ΠΈΠ½ΡΠΎΡΠΌΠ°ΡΠΈΡ Π½Π΅ Π·Π°ΠΏΡΠ°ΡΠΈΠ²Π°Π΅ΡΡΡ ΡΠΏΠ΅ΡΠΈΠ°Π»ΡΠ½ΠΎ). Π ΡΠΈΡΡΠ΅ΠΌΠ½ΡΡ ΠΏΠΎΠ»ΡΡ Ρ ΡΠ°Π½ΡΡΡΡ ΠΌΠ΅ΡΠ°Π΄Π°Π½Π½ΡΠ΅, ΠΎΠΏΠΈΡΡΠ²Π°ΡΡΠΈΠ΅ ΡΠΎΠ΄Π΅ΡΠΆΠΈΠΌΠΎΠ΅ Π·Π°ΠΏΠΈΡΠ΅ΠΉ. ΠΠ΅ΠΊΠΎΡΠΎΡΡΠ΅ ΠΈΠ· Π½ΠΈΡ ΠΏΠΎΠ·Π²ΠΎΠ»ΡΡΡ ΡΠ°Π·Π»ΠΈΡΠ°ΡΡ ΠΊΠΎΡΡΠ΅ΠΆΠΈ (ΡΠΈΠΊΡΠΈΡΠΎΠ²Π°Π½Π½ΡΠ΅ ΡΠΎΡΡΠΎΡΠ½ΠΈΡ Π·Π°ΠΏΠΈΡΠ΅ΠΉ) ΠΏΡΠΈ ΡΠ°Π±ΠΎΡΠ΅ Ρ Π±Π»ΠΎΠΊΠ°ΠΌΠΈ ΡΡΠ°Π½Π·Π°ΠΊΡΠΈΠΉ (Π·Π° Π΄ΠΎΠΏΠΎΠ»Π½ΠΈΡΠ΅Π»ΡΠ½ΠΎΠΉ ΠΈΠ½ΡΠΎΡΠΌΠ°ΡΠΈΠ΅ΠΉ ΠΎ ΡΡΠ°Π½Π·Π°ΠΊΡΠΈΡΡ ΠΎΠ±ΡΠ°ΡΠ°ΠΉΡΠ΅ΡΡ ΠΊ Π³Π»Π°Π²Π΅ 7).
Π ΡΠ°Π±Π». 3.25 ΠΏΠ΅ΡΠ΅ΡΠΈΡΠ»Π΅Π½Ρ ΡΠΈΡΡΠ΅ΠΌΠ½ΡΠ΅ ΠΏΠΎΠ»Ρ, ΠΏΡΠΈΡΡΡΡΡΠ²ΡΡΡΠΈΠ΅ Π² ΠΊΠ°ΠΆΠ΄ΠΎΠΉ Π·Π°ΠΏΠΈΡΠΈ Π² Π΄ΠΎΠΏΠΎΠ»Π½Π΅Π½ΠΈΠ΅ ΠΊ ΠΏΠΎΠ»ΡΠΌ, ΠΎΠΏΡΠ΅Π΄Π΅Π»Π΅Π½Π½ΡΠΌ ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»Π΅ΠΌ Π² ΡΡΡΡΠΊΡΡΡΠ΅ ΡΠ°Π±Π»ΠΈΡΡ.
Π’Π°Π±Π»ΠΈΡΠ° 3.25. Π‘ΠΈΡΡΠ΅ΠΌΠ½ΡΠ΅ ΠΏΠΎΠ»Ρ.
ΠΠΎΠ»Π΅ | ΠΠΏΠΈΡΠ°Π½ΠΈΠ΅ |
---|---|
old | 4-Π±Π°ΠΉΡΠΎΠ²ΡΠΉ ΡΠ½ΠΈΠΊΠ°Π»ΡΠ½ΡΠΉ ΠΈΠ΄Π΅Π½ΡΠΈΡΠΈΠΊΠ°ΡΠΎΡ ΠΎΠ±ΡΠ΅ΠΊΡΠ° Π·Π°ΠΏΠΈΡΠΈ. Π ΠΏΡΠ΅Π΄Π΅Π»Π°Ρ ΠΎΠ΄Π½ΠΎΠΉ ΡΠ°Π±Π»ΠΈΡΡ Π·Π½Π°ΡΠ΅Π½ΠΈΡ end Π½ΠΈΠΊΠΎΠ³Π΄Π° Π½Π΅ ΠΏΠΎΠ²ΡΠΎΡΡΡΡΡΡ |
tableoid | ΠΠ΄Π΅Π½ΡΠΈΡΠΈΠΊΠ°ΡΠΎΡ ΠΎΠ±ΡΠ΅ΠΊΡΠ° ΡΠ°Π±Π»ΠΈΡΡ, ΡΠΎΠ΄Π΅ΡΠΆΠ°ΡΠ΅ΠΉ Π·Π°ΠΏΠΈΡΡ. ΠΠΌΡ ΡΠ°Π±Π»ΠΈΡΡ ΡΠ²ΡΠ·ΡΠ²Π°Π΅ΡΡΡ Ρ ΠΈΠ΄Π΅Π½ΡΠΈΡΠΈΠΊΠ°ΡΠΎΡΠΎΠΌ Π² ΡΠΈΡΡΠ΅ΠΌΠ½ΠΎΠΉ ΡΠ°Π±Π»ΠΈΡΠ΅ Ρg class |
xmin | ΠΠ΄Π΅Π½ΡΠΈΡΠΈΠΊΠ°ΡΠΎΡ ΡΡΠ°Π½Π·Π°ΠΊΡΠΈΠΈ Π²ΡΡΠ°Π²ΠΊΠΈ Π΄Π»Ρ ΠΊΠΎΡΡΠ΅ΠΆΠ° |
cmin | ΠΠ΄Π΅Π½ΡΠΈΡΠΈΠΊΠ°ΡΠΎΡ ΠΊΠΎΠΌΠ°Π½Π΄Ρ, Π°ΡΡΠΎΡΠΈΠΈΡΠΎΠ²Π°Π½Π½ΠΎΠΉ Ρ ΡΡΠ°Π½Π·Π°ΠΊΡΠΈΠ΅ΠΉ Π²ΡΡΠ°Π²ΠΊΠΈ Π΄Π»Ρ ΠΊΠΎΡΡΠ΅ΠΆΠ° |
xmax | ΠΠ΄Π΅Π½ΡΠΈΡΠΈΠΊΠ°ΡΠΎΡ ΡΡΠ°Π½Π·Π°ΠΊΡΠΈΠΈ ΡΠ΄Π°Π»Π΅Π½ΠΈΡ Π΄Π»Ρ ΠΊΠΎΡΡΠ΅ΠΆΠ°. ΠΠ»Ρ Π²ΠΈΠ΄ΠΈΠΌΡΡ (Π½Π΅ ΡΠ΄Π°Π»Π΅Π½Π½ΡΡ ) ΠΊΠΎΡΡΠ΅ΠΆΠ΅ΠΉ ΡΠ°Π²Π΅Π½ Π½ΡΠ»Ρ |
cmax | ΠΠ΄Π΅Π½ΡΠΈΡΠΈΠΊΠ°ΡΠΎΡ ΠΊΠΎΠΌΠ°Π½Π΄Ρ, Π°ΡΡΠΎΡΠΈΠΈΡΠΎΠ²Π°Π½Π½ΠΎΠΉ Ρ ΡΡΠ°Π½Π·Π°ΠΊΡΠΈΠ΅ΠΉ ΡΠ΄Π°Π»Π΅Π½ΠΈΡ Π΄Π»Ρ ΠΊΠΎΡΡΠ΅ΠΆΠ°. ΠΠΎ Π°Π½Π°Π»ΠΎΠ³ΠΈΠΈ Ρ xmax ΡΠ°Π²Π΅Π½ Π½ΡΠ»Ρ Π΄Π»Ρ Π²ΠΈΠ΄ΠΈΠΌΡΡ ΠΊΠΎΡΡΠ΅ΠΆΠ΅ΠΉ |
ctid | ΠΠ΄Π΅Π½ΡΠΈΡΠΈΠΊΠ°ΡΠΎΡ, ΠΎΠΏΠΈΡΡΠ²Π°ΡΡΠΈΠΉ ΡΠΈΠ·ΠΈΡΠ΅ΡΠΊΠΎΠ΅ ΠΌΠ΅ΡΡΠΎΠ½Π°Ρ ΠΎΠΆΠ΄Π΅Π½ΠΈΠ΅ ΠΊΠΎΡΡΠ΅ΠΆΠ° Π² Π±Π°Π·Π΅ Π΄Π°Π½Π½ΡΡ . ΠΠΎΠ»Π΅ ctid ΡΠΎΠ΄Π΅ΡΠΆΠΈΡ ΠΏΠ°ΡΡ ΡΠΈΡΠ΅Π»: Π½ΠΎΠΌΠ΅Ρ Π±Π»ΠΎΠΊΠ° ΠΈ ΠΈΠ½Π΄Π΅ΠΊΡ ΠΊΠΎΡΡΠ΅ΠΆΠ° Π² Π±Π»ΠΎΠΊΠ΅ |
ΠΠ΄Π΅Π½ΡΠΈΡΠΈΠΊΠ°ΡΠΎΡΡ ΠΎΠ±ΡΠ΅ΠΊΡΠΎΠ²
ΠΠ°ΠΊ Π±ΡΠ»ΠΎ ΡΠΊΠ°Π·Π°Π½ΠΎ Π² ΠΏΠΎΠ΄ΡΠ°Π·Π΄Π΅Π»Π΅ «Π’Π°Π±Π»ΠΈΡΡ» ΡΠ°Π·Π΄Π΅Π»Π° «ΠΠ½Π°ΠΊΠΎΠΌΡΡΠ²ΠΎ Ρ ΡΠ΅Π»ΡΡΠΈΠΎΠ½Π½ΡΠΌΠΈ Π±Π°Π·Π°ΠΌΠΈ Π΄Π°Π½Π½ΡΡ », Π±Π°Π·Π° Π΄Π°Π½Π½ΡΡ ΡΠΎΠ΄Π΅ΡΠΆΠΈΡ ΡΠ°Π±Π»ΠΈΡΡ, Π° ΠΊΠ°ΠΆΠ΄Π°Ρ ΡΠ°Π±Π»ΠΈΡΠ° ΡΠΎΠ΄Π΅ΡΠΆΠΈΡ Ρ ΠΎΡΡ Π±Ρ ΠΎΠ΄Π½ΠΎ ΠΈΠΌΠ΅Π½ΠΎΠ²Π°Π½Π½ΠΎΠ΅ ΠΏΠΎΠ»Π΅. Π’Π°Π±Π»ΠΈΡΠ° ΠΌΠΎΠΆΠ΅Ρ ΡΠΎΠ΄Π΅ΡΠΆΠ°ΡΡ Π·Π°ΠΏΠΈΡΠΈ Π΄Π°Π½Π½ΡΡ , Π½ΠΎ ΠΈΡ Π½Π°Π»ΠΈΡΠΈΠ΅ Π½Π΅ ΡΠ²Π»ΡΠ΅ΡΡΡ ΠΎΠ±ΡΠ·Π°ΡΠ΅Π»ΡΠ½ΡΠΌ. ΠΠ°ΠΆΠ΄ΠΎΠ΅ ΠΏΠΎΠ»Π΅ Π·Π°ΠΏΠΈΡΠΈ, Ρ ΡΠ°Π½ΡΡΠ΅ΠΉΡΡ Π² ΡΠ°Π±Π»ΠΈΡΠ΅, ΡΠΎΠ΄Π΅ΡΠΆΠΈΡ Π½Π΅ΠΊΠΎΡΠΎΡΡΠ΅ Π΄Π°Π½Π½ΡΠ΅ ΠΈΠ»ΠΈ NULL.
ΠΠ΄ΠΈΠ½ ΠΈΠ· Π²ΠΎΠΏΡΠΎΡΠΎΠ², ΠΊΠΎΡΠΎΡΡΠ΅ ΠΏΡΠΈΡ ΠΎΠ΄ΠΈΡΡΡ ΡΠ΅ΡΠ°ΡΡ ΠΏΡΠΈ ΠΎΠΏΠ΅ΡΠ°ΡΠΈΡΡ Ρ Π±Π°Π·Π°ΠΌΠΈ Π΄Π°Π½Π½ΡΡ , β ΠΊΠ°ΠΊ ΡΠ°Π·Π»ΠΈΡΠΈΡΡ Π΄Π²Π΅ Π·Π°ΠΏΠΈΡΠΈ Ρ ΠΎΠ΄ΠΈΠ½Π°ΠΊΠΎΠ²ΡΠΌΠΈ Π·Π½Π°ΡΠ΅Π½ΠΈΡΠΌΠΈ ΠΏΠΎΠ»Π΅ΠΉ? ΠΠ»Ρ ΡΡΠΎΠ³ΠΎ Π² PostgreSQL ΠΏΡΠ΅Π΄ΡΡΠΌΠΎΡΡΠ΅Π½Ρ ΠΈΠ΄Π΅Π½ΡΠΈΡΠΈΠΊΠ°ΡΠΎΡΡ ΠΎΠ±ΡΠ΅ΠΊΡΠΎΠ² (object identifiers, OID), ΡΠ½ΠΈΠΊΠ°Π»ΡΠ½ΡΠ΅ Π² ΠΏΡΠ΅Π΄Π΅Π»Π°Ρ ΡΠ°Π±Π»ΠΈΡΡ. ΠΠ½Π°ΡΠ΅ Π³ΠΎΠ²ΠΎΡΡ, ΡΠ°Π±Π»ΠΈΡΠ° Π½ΠΈΠΊΠΎΠ³Π΄Π° Π½Π΅ ΡΠΎΠ΄Π΅ΡΠΆΠΈΡ Π·Π°ΠΏΠΈΡΠΈ ΠΎΠ΄ΠΈΠ½Π°ΠΊΠΎΠ²ΡΠΌΠΈ ΠΈΠ΄Π΅Π½ΡΠΈΡΠΈΠΊΠ°ΡΠΎΡΠ°ΠΌΠΈ OID. Π’Π°ΠΊΠΈΠΌ ΠΎΠ±ΡΠ°Π·ΠΎΠΌ, Π΄Π°ΠΆΠ΅ Π΅ΡΠ»ΠΈ ΡΠΎΠ΄Π΅ΡΠΆΠΈΠΌΠΎΠ΅ ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»ΡΡΠΊΠΈΡ ΠΏΠΎΠ»Π΅ΠΉ Π΄Π²ΡΡ Π·Π°ΠΏΠΈΡΠ΅ΠΉ ΠΏΠΎΠ»Π½ΠΎΡΡΡΡ ΡΠΎΠ²ΠΏΠ°Π΄Π°Π΅Ρ, Π½Π° ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΠ½ΠΎΠΌ ΡΡΠΎΠ²Π½Π΅ Π·Π°ΠΏΠΈΡΠΈ ΠΌΠΎΠΆΠ½ΠΎ ΡΠ°Π·Π»ΠΈΡΠΈΡΡ ΠΏΠΎ Π·Π½Π°ΡΠ΅Π½ΠΈΡ OID. ΠΡΠΈΠΌΠ΅Ρ ΠΏΡΠΈΠ²Π΅Π΄Π΅Π½ Π² Π»ΠΈΡΡΠΈΠ½Π³Π΅ 3.31.
ΠΠΈΡΡΠΈΠ½Π³ 3.31. ΠΠ΄Π΅Π½ΡΠΈΡΠΈΠΊΠ°ΡΠΈΡ Π·Π°ΠΏΠΈΡΠ΅ΠΉ ΠΏΠΎ OID.
3Stdb=# SELECT * FROM my_list; todos ---------------------------------- Correct redundancies In my_list. Correct redundancies in my_list. (1 rows) testdb=# SELECT * .old FROM my_list: todos | old ---------------------------------------- Correct redundancies in my list. | 3391263 Correct redundancies In my list. | 3391264 (2 rows) testdb=# DELETE FROM my_list testdb-# WHERE old = 3391264; DELETE 1 testdb=# SELECT *.oid FROM my_list; todos old ---------------------------------------------- Correct redundancies in my list. | 3391263 (1 row)
samoychiteli.ru
ΠΠ»Π»ΡΡΡΡΠΈΡΠΎΠ²Π°Π½Π½ΡΠΉ ΡΠ°ΠΌΠΎΡΡΠΈΡΠ΅Π»Ρ ΠΏΠΎ PostgreSQL βΊ SQL Π² PostgreSQL [ΡΡΡΠ°Π½ΠΈΡΠ° — 57] | Π‘Π°ΠΌΠΎΡΡΠΈΡΠ΅Π»ΠΈ ΠΏΠΎ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΠΈΡΠΎΠ²Π°Π½ΠΈΡ
ΠΠ°ΡΠ΅ Π·Π½Π°ΠΊΠΎΠΌΡΡΠ²ΠΎ Ρ ΡΠ·ΡΠΊΠΎΠΌ SQL ΠΏΡΠΎΠ΄ΠΎΠ»ΠΆΠ°Π΅ΡΡΡ. ΠΠ° ΡΡΠΎΡ ΡΠ°Π· ΠΎΡΠ½ΠΎΠ²Π½ΠΎΠ΅ Π²Π½ΠΈΠΌΠ°Π½ΠΈΠ΅ ΠΌΡ ΡΠ΄Π΅Π»ΠΈΠΌ ΠΏΡΠ°ΠΊΡΠΈΡΠ΅ΡΠΊΠΈΠΌ Π°ΡΠΏΠ΅ΠΊΡΠ°ΠΌ Π΅Π³ΠΎ ΠΏΡΠΈΠΌΠ΅Π½Π΅Π½ΠΈΡ. Π ΡΡΠΎΠΉ Π³Π»Π°Π²Π΅ Π±ΡΠ΄Π΅Ρ ΠΏΠΎΠΊΠ°Π·Π°Π½ΠΎ, ΠΊΠ°ΠΊ ΠΏΡΠΈ ΠΏΠΎΠΌΠΎΡΠΈ ΠΊΠΎΠΌΠ°Π½Π΄ SQL ΡΠΎΠ·Π΄Π°Π²Π°ΡΡ ΡΠ°Π±Π»ΠΈΡΡ, Π·Π°ΠΏΠΎΠ»Π½ΡΡΡ ΠΈΡ Π΄Π°Π½Π½ΡΠΌΠΈ ΠΈ ΠΌΠΎΠ΄ΠΈΡΠΈΡΠΈΡΠΎΠ²Π°ΡΡ ΡΡΠΈ Π΄Π°Π½Π½ΡΠ΅.
Π’Π°Π±Π»ΠΈΡΡ ΡΠ²Π»ΡΡΡΡΡ ΠΎΡΠ½ΠΎΠ²Π½ΡΠΌΠΈ Π±Π»ΠΎΠΊΠ°ΠΌΠΈ Ρ ΡΠ°Π½Π΅Π½ΠΈΡ Π΄Π°Π½Π½ΡΡ Π² Π±Π°Π·Π΅. ΠΠ΅ΡΠ΅Π΄ Π»ΡΠ±ΡΠΌΠΈ ΠΎΠΏΠ΅ΡΠ°ΡΠΈΡΠΌΠΈ ΡΠΎΠ·Π΄Π°Π½ΠΈΡ, Π²ΡΠ±ΠΎΡΠΊΠΈ ΠΈΠ»ΠΈ ΠΌΠΎΠ΄ΠΈΡΠΈΠΊΠ°ΡΠΈΠΈ Π·Π°ΠΏΠΈΡΠ΅ΠΉ Π½Π΅ΠΎΠ±Ρ ΠΎΠ΄ΠΈΠΌΠΎ ΡΠ½Π°ΡΠ°Π»Π° ΡΠΎΠ·Π΄Π°ΡΡ ΡΠ°Π±Π»ΠΈΡΡ, Π² ΠΊΠΎΡΠΎΡΠΎΠΉ ΡΡΠΈ Π·Π°ΠΏΠΈΡΠΈ Π±ΡΠ΄ΡΡ Ρ ΡΠ°Π½ΠΈΡΡΡΡ. | Π ΡΡΠΎΠΌ ΡΠ°Π·Π΄Π΅Π»Π΅ ΡΠ°ΡΡΠΌΠ°ΡΡΠΈΠ²Π°ΡΡΡΡ ΠΏΡΠΎΡΠ΅Π΄ΡΡΡ ΡΠΎΠ·Π΄Π°Π½ΠΈΡ, ΠΌΠΎΠ΄ΠΈΡΠΈΠΊΠ°ΡΠΈΠΈ ΠΈ ΡΠ΄Π°Π»Π΅Π½ΠΈΡ ΡΠ°Π±Π»ΠΈΡ ΠΊΠΎΠΌΠ°Π½Π΄Π°ΠΌΠΈ CREATE TABLE, ALTER TABLE ΠΈ DROP TABLE SQL (Π²ΠΎΠΏΡΠΎΡΠ°ΠΌ ΡΠΎΠ·Π΄Π°Π½ΠΈΡ Π±Π°Π· Π΄Π°Π½Π½ΡΡ ΠΏΠΎΡΠ²ΡΡΠ΅Π½Π° Π³Π»Π°Π²Π° 9).
ΠΠΎΡΠ»Π΅ ΡΠΎΠ·Π΄Π°Π½ΠΈΡ ΡΠ°Π±Π»ΠΈΡΡ Ρ Π·Π°Π΄Π°Π½Π½ΠΎΠΉ ΡΡΡΡΠΊΡΡΡΠΎΠΉ Π½Π°ΡΡΡΠΏΠ°Π΅Ρ ΡΠ»Π΅Π΄ΡΡΡΠΈΠΉ ΡΡΠ°ΠΏ β Π·Π°ΠΏΠΎΠ»Π½Π΅Π½ΠΈΠ΅ ΡΠ°Π±Π»ΠΈΡΡ Π΄Π°Π½Π½ΡΠΌΠΈ. Π PostgreSQL ΠΈΠΌΠ΅ΡΡΡΡ ΡΡΠΈ ΠΎΠ±ΡΠΈΡ ΡΠΏΠΎΡΠΎΠ±Π° Π·Π°ΠΏΠΎΠ»Π½Π΅Π½ΠΈΡ ΡΠ°Π±Π»ΠΈΡ Π΄Π°Π½Π½ΡΠΌΠΈ: | Π²ΡΡΠ°Π²ΠΊΠ° Π½ΠΎΠ²ΡΡ Π³ΡΡΠΏΠΏΠΈΡΠΎΠ²Π°Π½Π½ΡΡ Π΄Π°Π½Π½ΡΡ ΠΊΠΎΠΌΠ°Π½Π΄ΠΎΠΉ INSERT INTO;
Π¦Π΅Π½ΡΡΠ°Π»ΡΠ½ΠΎΠ΅ ΠΌΠ΅ΡΡΠΎ Π² SQL Π·Π°Π½ΠΈΠΌΠ°Π΅Ρ ΠΊΠΎΠΌΠ°Π½Π΄Π° SELECT, ΠΏΡΠ΅Π΄Π½Π°Π·Π½Π°ΡΠ΅Π½Π½Π°Ρ Π΄Π»Ρ ΠΏΠΎΡΡΡΠΎΠ΅Π½ΠΈΡ Π·Π°ΠΏΡΠΎΡΠΎΠ² ΠΈ Π²ΡΠ±ΠΎΡΠΊΠΈ Π΄Π°Π½Π½ΡΡ ΠΈΠ· ΡΠ°Π±Π»ΠΈΡ ΠΈ ΠΏΡΠ΅Π΄ΡΡΠ°Π²Π»Π΅Π½ΠΈΠΉ. ΠΠ°Π½Π½ΡΠ΅, Π²ΠΎΠ·Π²ΡΠ°ΡΠ°Π΅ΠΌΡΠ΅ Π² ΡΠ΅Π·ΡΠ»ΡΡΠ°ΡΠ΅ Π·Π°ΠΏΡΠΎΡΠ°, Π½Π°Π·ΡΠ²Π°ΡΡΡΡ ΠΈΡΠΎΠ³ΠΎΠ²ΡΠΌ Π½Π°Π±ΠΎΡΠΎΠΌ; ΠΊΠ°ΠΊ ΠΈ ΡΠ°Π±Π»ΠΈΡΡ, ΠΎΠ½ΠΈ ΡΠΎΡΡΠΎΡΡ ΠΈΠ· Π·Π°ΠΏΠΈΡΠ΅ΠΉ ΠΈ ΠΏΠΎΠ»Π΅ΠΉ.
Π ΡΠ΅ΠΊΡΠΈΠΈ FROM ΡΠΊΠ°Π·ΡΠ²Π°Π΅ΡΡΡ ΠΈΡΡΠΎΡΠ½ΠΈΠΊ Π΄Π°Π½Π½ΡΡ β ΡΠ°Π±Π»ΠΈΡΠ° ΠΈΠ»ΠΈ ΠΈΡΠΎΠ³ΠΎΠ²ΡΠΉ Π½Π°Π±ΠΎΡ. Π‘Π΅ΠΊΡΠΈΡ ΠΌΠΎΠΆΠ΅Ρ ΡΠΎΠ΄Π΅ΡΠΆΠ°ΡΡ Π½Π΅ΡΠΊΠΎΠ»ΡΠΊΠΎ ΠΈΡΡΠΎΡΠ½ΠΈΠΊΠΎΠ², ΡΠ°Π·Π΄Π΅Π»Π΅Π½Π½ΡΡ Π·Π°ΠΏΡΡΡΠΌΠΈ. Π Π΅Π·ΡΠ»ΡΡΠ°Ρ ΠΏΠΎΠ΄ΠΎΠ±Π½ΠΎΠ³ΠΎ ΠΏΠ΅ΡΠ΅ΡΠΈΡΠ»Π΅Π½ΠΈΡ ΡΡΠ½ΠΊΡΠΈΠΎΠ½Π°Π»ΡΠ½ΠΎ ΡΠΊΠ²ΠΈΠ²Π°Π»Π΅Π½ΡΠ΅Π½ ΠΏΠ΅ΡΠ΅ΠΊΡΠ΅ΡΡΠ½ΠΎΠΌΡ ΠΎΠ±ΡΠ΅Π΄ΠΈΠ½Π΅Π½ΠΈΡ, ΠΎ ΠΊΠΎΡΠΎΡΠΎΠΌ ΡΠ°ΡΡΠΊΠ°Π·Π°Π½ΠΎ Π² ΠΏΠΎΠ΄ΡΠ°Π·Π΄Π΅Π»Π΅ «ΠΠ±ΡΠ΅Π΄ΠΈΠ½Π΅Π½ΠΈΠ΅ Π½Π°Π±ΠΎΡΠΎΠ² Π΄Π°Π½Π½ΡΡ ».
ΠΠ΅ΠΎΠ±ΡΠ·Π°ΡΠ΅Π»ΡΠ½ΠΎΠ΅ ΠΊΠ»ΡΡΠ΅Π²ΠΎΠ΅ ΡΠ»ΠΎΠ²ΠΎ DISTINCT ΠΈΡΠΊΠ»ΡΡΠ°Π΅Ρ Π΄ΡΠ±Π»ΠΈΠΊΠ°ΡΡ ΠΈΠ· ΠΈΡΠΎΠ³ΠΎΠ²ΠΎΠ³ΠΎ Π½Π°Π±ΠΎΡΠ°. ΠΡΠ»ΠΈ ΠΊΠ»ΡΡΠ΅Π²ΠΎΠ΅ ΡΠ»ΠΎΠ²ΠΎ ON ΠΎΡΡΡΡΡΡΠ²ΡΠ΅Ρ, ΠΈΠ· ΡΠ΅Π·ΡΠ»ΡΡΠ°ΡΠΎΠ² Π·Π°ΠΏΡΠΎΡΠ° Ρ ΠΊΠ»ΡΡΠ΅Π²ΡΠΌ ΡΠ»ΠΎΠ²ΠΎΠΌ DISTINCT ΠΈΡΠΊΠ»ΡΡΠ°ΡΡΡΡ Π·Π°ΠΏΠΈΡΠΈ Ρ ΠΏΠΎΠ²ΡΠΎΡΡΡΡΠΈΠΌΠΈΡΡ Π·Π½Π°ΡΠ΅Π½ΠΈΡΠΌΠΈ ΡΠ΅Π»Π΅Π²ΡΡ ΠΏΠΎΠ»Π΅ΠΉ. ΠΡΠΎΠ²Π΅ΡΡΡΡΡΡ ΡΠΎΠ»ΡΠΊΠΎ ΠΏΠΎΠ»Ρ, Π²Ρ ΠΎΠ΄ΡΡΠΈΠ΅ Π² ΡΠ΅Π»Π΅Π²ΠΎΠΉ ΡΠΏΠΈΡΠΎΠΊ SELECT.
ΠΠ°ΠΊ Π±ΡΠ»ΠΎ ΠΏΠΎΠΊΠ°Π·Π°Π½ΠΎ Π² ΠΏΡΠΈΠΌΠ΅ΡΠ΅ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ΠΈΡ ΡΠ΅ΠΊΡΠΈΠΈ WHERE Π΄Π»Ρ Π²ΡΠ±ΠΎΡΠΊΠΈ ΠΈΠ· Π΄Π²ΡΡ ΡΠ°Π±Π»ΠΈΡ (ΡΠΌ. ΠΏΠΎΠ΄ΡΠ°Π·Π΄Π΅Π» «ΠΡΠ±ΠΎΡ ΠΈΡΡΠΎΡΠ½ΠΈΠΊΠΎΠ² Π² ΡΠ΅ΠΊΡΠΈΠΈ FROM»), ΡΡΡΠ΅ΡΡΠ²ΡΠ΅Ρ Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡΡ Π²ΡΠ±ΠΎΡΠΊΠΈ Π΄Π°Π½Π½ΡΡ ΠΈΠ· ΡΠ°Π·Π½ΡΡ ΠΈΡΡΠΎΡΠ½ΠΈΠΊΠΎΠ² Ρ ΠΎΠ±ΡΠ΅Π΄ΠΈΠ½Π΅Π½ΠΈΠ΅ΠΌ ΠΈΡ ΠΏΠΎΠ»Π΅ΠΉ. Π SQL ΡΡΠΎΡ ΠΏΡΠΎΡΠ΅ΡΡ ΡΠΎΡΠΌΠ°Π»ΡΠ½ΠΎ Π½Π°Π·ΡΠ²Π°Π΅ΡΡΡ ΠΎΠ±ΡΠ΅Π΄ΠΈΠ½Π΅Π½ΠΈΠ΅ΠΌ (join).
Π‘Π΅ΠΊΡΠΈΡ GROUP BY ΠΏΡΠ΅Π΄ΡΡΠ°Π²Π»ΡΠ΅Ρ ΡΡΠ΅Π·Π²ΡΡΠ°ΠΉΠ½ΠΎ ΠΌΠΎΡΠ½ΡΡ ΠΊΠΎΠ½ΡΠ΅ΠΏΡΠΈΡ SQL β Π°Π³ΡΠ΅Π³ΠΈΡΠΎΠ²Π°Π½ΠΈΠ΅. ΠΠ° ΠΏΡΠ°ΠΊΡΠΈΠΊΠ΅ Π°Π³ΡΠ΅Π³ΠΈΡΠΎΠ²Π°Π½ΠΈΠ΅ Π·Π°ΠΏΡΠΎΡΠΎΠ² SQL ΠΏΡΠΈΠ²ΠΎΠ΄ΠΈΡ ΠΊ ΡΠΎΠΌΡ, ΡΡΠΎ Π²ΡΠ΅ Π·Π°ΠΏΠΈΡΠΈ Ρ ΠΎΠ΄ΠΈΠ½Π°ΠΊΠΎΠ²ΡΠΌΠΈ Π·Π½Π°ΡΠ΅Π½ΠΈΡΠΌΠΈ Π²ΡΡΠ°ΠΆΠ΅Π½ΠΈΡ, Π·Π°Π΄Π°Π½Π½ΠΎΠ³ΠΎ Π² ΡΠ΅ΠΊΡΠΈΠΈ GROUP BY, Π³ΡΡΠΏΠΏΠΈΡΡΡΡΡΡ Π² ΠΎΠ΄Π½Ρ Π°Π³ΡΠ΅Π³Π°ΡΠ½ΡΡ Π·Π°ΠΏΠΈΡΡ.
ΠΠ°ΠΊ ΡΠΏΠΎΠΌΠΈΠ½Π°Π»ΠΎΡΡ Π² Π³Π»Π°Π²Π΅ 3, Π·Π°ΠΏΠΈΡΠΈ Ρ ΡΠ°Π½ΡΡΡΡ Π² ΡΠ°Π±Π»ΠΈΡΠ°Ρ Π² ΠΏΡΠΎΠΈΠ·Π²ΠΎΠ»ΡΠ½ΠΎΠΌ ΠΏΠΎΡΡΠ΄ΠΊΠ΅. ΠΠΎΠ»Π΅Π΅ ΡΠΎΠ³ΠΎ, Π΄Π°ΠΆΠ΅ ΠΏΠΎΠ²ΡΠΎΡΠ½ΠΎΠ΅ Π²ΡΠΏΠΎΠ»Π½Π΅Π½ΠΈΠ΅ Π·Π°ΠΏΡΠΎΡΠ° Π½ΠΈΠΊΠΎΠΈΠΌ ΠΎΠ±ΡΠ°Π·ΠΎΠΌ Π½Π΅ Π³Π°ΡΠ°Π½ΡΠΈΡΡΠ΅Ρ ΠΎΠ΄ΠΈΠ½Π°ΠΊΠΎΠ²ΠΎΠ³ΠΎ ΠΏΠΎΡΡΠ΄ΠΊΠ° ΡΠ»Π΅Π΄ΠΎΠ²Π°Π½ΠΈΡ Π²ΠΎΠ·Π²ΡΠ°ΡΠ°Π΅ΠΌΡΡ Π·Π°ΠΏΠΈΡΠ΅ΠΉ.
Π PostgreSQL ΠΊΠΎΠ»ΠΈΡΠ΅ΡΡΠ²ΠΎ Π·Π°ΠΏΠΈΡΠ΅ΠΉ, Π²ΡΠ±ΠΈΡΠ°Π΅ΠΌΡΡ Π·Π°ΠΏΡΠΎΡΠΎΠΌ SQL, Π½Π΅ ΠΎΠ³ΡΠ°Π½ΠΈΡΠΈΠ²Π°Π΅ΡΡΡ. ΠΠ±ΡΠ°Π±ΠΎΡΠΊΠ° Π·Π°ΠΏΡΠΎΡΠ°, Π²ΠΎΠ·Π²ΡΠ°ΡΠ°ΡΡΠ΅Π³ΠΎ Π½Π΅ΡΠΊΠΎΠ»ΡΠΊΠΎ ΠΌΠΈΠ»Π»ΠΈΠΎΠ½ΠΎΠ² Π·Π°ΠΏΠΈΡΠ΅ΠΉ, Π·Π°ΠΉΠΌΠ΅Ρ ΠΌΠ½ΠΎΠ³ΠΎ Π²ΡΠ΅ΠΌΠ΅Π½ΠΈ, Π½ΠΎ ΡΠ΅ΡΠ²Π΅Ρ Π½Π΅ ΠΎΡΡΠ°Π½ΠΎΠ²ΠΈΡΡΡ, ΠΏΠΎΠΊΠ° Π½Π΅ Π²Π΅ΡΠ½Π΅Ρ Π²Π΅ΡΡ ΠΈΡΠΎΠ³ΠΎΠ²ΡΠΉ Π½Π°Π±ΠΎΡ (ΠΈΠ»ΠΈ ΠΏΡΠΎΡΠ΅ΡΡ Π½Π΅ Π±ΡΠ΄Π΅Ρ ΠΏΡΠ΅ΡΠ²Π°Π½ ΠΈΠ·Π²Π½Π΅).
ΠΡΠ»ΠΈ ΠΎΠ±ΡΠ΅Π΄ΠΈΠ½Π΅Π½ΠΈΡ ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΡΡΡΡ Π² SQL Π΄Π»Ρ ΡΠ»ΠΈΡΠ½ΠΈΡ ΠΏΠΎΠ»Π΅ΠΉ Π΄Π²ΡΡ ΠΈΡΡΠΎΡΠ½ΠΈΠΊΠΎΠ², ΡΠΎ ΠΊΠ»ΡΡΠ΅Π²ΡΠ΅ ΡΠ»ΠΎΠ²Π° UNION, INTERSECT ΠΈ EXCEPT ΡΡΠ°Π²Π½ΠΈΠ²Π°ΡΡ Π·Π½Π°ΡΠ΅Π½ΠΈΡ ΠΏΠΎΠ»Π΅ΠΉ Π² Π΄Π²ΡΡ Π½Π°Π±ΠΎΡΠ°Ρ ΠΈ ΡΡΡΠΎΡΡ Π½ΠΎΠ²ΡΠΉ ΠΈΡΠΎΠ³ΠΎΠ²ΡΠΉ Π½Π°Π±ΠΎΡ Π½Π° ΠΎΡΠ½ΠΎΠ²Π°Π½ΠΈΠΈ ΡΠ΅Π·ΡΠ»ΡΡΠ°ΡΠΎΠ² ΡΡΠ°Π²Π½Π΅Π½ΠΈΡ.
Π§ΡΠΎΠ±Ρ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΠ° SQL ΠΌΠΎΠ³Π»Π° ΠΏΡΠΈΠ½ΠΈΠΌΠ°ΡΡ ΠΏΡΠΎΡΡΠ΅ΠΉΡΠΈΠ΅ ΡΠ΅ΡΠ΅Π½ΠΈΡ, Π½Π΅ ΠΏΡΠΈΠ±Π΅Π³Π°Ρ ΠΊ ΠΏΡΠΎΡΠ΅Π΄ΡΡΠ½ΡΠΌ ΡΠ·ΡΠΊΠ°ΠΌ, Π² PostgreSQL ΠΏΠΎΠ΄Π΄Π΅ΡΠΆΠΈΠ²Π°ΡΡΡΡ ΠΊΠΎΠ½ΡΡΡΡΠΊΡΠΈΠΈ CASE, ΠΏΡΠ΅Π΄ΡΡΠΌΠΎΡΡΠ΅Π½Π½ΡΠ΅ ΡΡΠ°Π½Π΄Π°ΡΡΠΎΠΌ SQL ΠΠ»ΡΡΠ΅Π²ΡΠ΅ ΡΠ»ΠΎΠ²Π° SQL CASE, WHEN, THEN ΠΈ END ΠΏΠΎΠ·Π²ΠΎΠ»ΡΡΡ Π²ΡΠΏΠΎΠ»Π½ΡΡΡ ΠΏΡΠΎΡΡΡΠ΅ ΡΡΠ»ΠΎΠ²Π½ΡΠ΅ ΠΏΡΠ΅ΠΎΠ±ΡΠ°Π·ΠΎΠ²Π°Π½ΠΈΡ Π·Π°ΠΏΠΈΡΠ΅ΠΉ.
ΠΠΎΠΌΠ°Π½Π΄Π° SELECT Ρ ΡΠ΅ΠΊΡΠΈΠ΅ΠΉ INTO TABLE ΡΠΎΠ·Π΄Π°Π΅Ρ Π½ΠΎΠ²ΡΡ ΡΠ°Π±Π»ΠΈΡΡ, ΡΡΡΡΠΊΡΡΡΠ° ΠΈ ΡΠΎΠ΄Π΅ΡΠΆΠΈΠΌΠΎΠ΅ ΠΊΠΎΡΠΎΡΠΎΠΉ ΠΎΠΏΡΠ΅Π΄Π΅Π»ΡΡΡΡΡ ΠΈΡΠΎΠ³ΠΎΠ²ΡΠΌ Π½Π°Π±ΠΎΡΠΎΠΌ Π·Π°ΠΏΡΠΎΡΠ°. Π‘ΠΈΠ½ΡΠ°ΠΊΡΠΈΡ: | SELECT ΡΠ΅Π»ΠΈ_Π²ΡΠ±ΠΎΡΠΊΠΈ | INTO [ TABLE ] Π½ΠΎΠ²Π°Ρ_ΡΠ°Π±Π»ΠΈΡΠ° FROM ΡΡΠ°ΡΠ°Ρ_ΡΠ°Π±Π»ΠΈΡΠ° | Π ΡΡΠΎΠΌ Π²Π°ΡΠΈΠ°Π½ΡΠ΅ ΠΊΠΎΠΌΠ°Π½Π΄Π° SELECT ΠΊΠΎΡΠ²Π΅Π½Π½ΠΎ Π²ΡΠΏΠΎΠ»Π½ΡΠ΅Ρ ΠΊΠΎΠΌΠ°Π½Π΄Ρ CREATE TABLE.
ΠΠΎΡΠ»Π΅ ΡΠΎΠ³ΠΎ ΠΊΠ°ΠΊ Π·Π°ΠΏΠΈΡΠΈ ΡΠΎΡ ΡΠ°Π½Π΅Π½Ρ Π² Π±Π°Π·Π΅ Π΄Π°Π½Π½ΡΡ , Π²Ρ ΠΌΠΎΠΆΠ΅ΡΠ΅ ΠΎΠ±Π½ΠΎΠ²ΠΈΡΡ ΠΈΡ ΠΏΠΎΠ»Ρ ΠΊΠΎΠΌΠ°Π½Π΄ΠΎΠΉ SQL UPDATE. ΠΠΎΠ²ΡΠ΅ Π·Π½Π°ΡΠ΅Π½ΠΈΡ ΠΏΠΎΠ»Π΅ΠΉ Π·Π°Π΄Π°ΡΡΡΡ Π² Π²ΠΈΠ΄Π΅ ΠΊΠΎΠ½ΡΡΠ°Π½Ρ, ΠΈΠ΄Π΅Π½ΡΠΈΡΠΈΠΊΠ°ΡΠΎΡΠΎΠ² Π΄ΡΡΠ³ΠΈΡ Π±Π°Π· Π΄Π°Π½Π½ΡΡ ΠΈΠ»ΠΈ Π²ΡΡΠ°ΠΆΠ΅Π½ΠΈΠΉ. ΠΠΎΠΏΡΡΠΊΠ°Π΅ΡΡΡ ΠΎΠ±Π½ΠΎΠ²Π»Π΅Π½ΠΈΠ΅ ΠΊΠ°ΠΊ ΠΏΠΎΠ»Ρ Π² ΡΠ΅Π»ΠΎΠΌ, ΡΠ°ΠΊ ΠΈ ΠΏΠΎΠ΄ΠΌΠ½ΠΎΠΆΠ΅ΡΡΠ²Π° Π΅Π³ΠΎ Π·Π½Π°ΡΠ΅Π½ΠΈΠΉ Π² ΡΠΎΠΎΡΠ²Π΅ΡΡΡΠ²ΠΈΠΈ Ρ Π·Π°Π΄Π°Π½Π½ΡΠΌΠΈ ΡΡΠ»ΠΎΠ²ΠΈΡΠΌΠΈ.
Π£Π΄Π°Π»Π΅Π½ΠΈΠ΅ Π·Π°ΠΏΠΈΡΠ΅ΠΉ ΠΈΠ· ΡΠ°Π±Π»ΠΈΡ ΠΏΡΠΎΠΈΠ·Π²ΠΎΠ΄ΠΈΡΡΡ ΡΡΠ°Π½Π΄Π°ΡΡΠ½ΠΎΠΉ ΠΊΠΎΠΌΠ°Π½Π΄ΠΎΠΉ SQL DELETE. ΠΡΠ·ΠΎΠ² DELETE ΠΏΡΠΈΠ²ΠΎΠ΄ΠΈΡ ΠΊ Π½Π΅ΠΎΠ±ΡΠ°ΡΠΈΠΌΡΠΌ ΠΏΠΎΡΠ»Π΅Π΄ΡΡΠ²ΠΈΡΠΌ (ΠΈΡΠΊΠ»ΡΡΠ΅Π½ΠΈΠ΅ ΡΠΎΡΡΠ°Π²Π»ΡΡΡ ΡΡΠ°ΡΠ΅Π»ΡΠ½ΠΎ ΡΠΏΠ»Π°Π½ΠΈΡΠΎΠ²Π°Π½Π½ΡΠ΅ ΡΡΠ°Π½Π·Π°ΠΊΡΠΈΠΎΠ½Π½ΡΠ΅ Π±Π»ΠΎΠΊΠΈ), ΠΏΠΎΡΡΠΎΠΌΡ ΡΠ΄Π°Π»Π΅Π½ΠΈΠ΅ Π΄Π°Π½Π½ΡΡ ΠΈΠ· Π±Π°Π·Ρ ΡΡΠ΅Π±ΡΠ΅Ρ ΠΊΡΠ°ΠΉΠ½Π΅ΠΉ ΠΎΡΡΠΎΡΠΎΠΆΠ½ΠΎΡΡΠΈ.
ΠΠΎΠ΄Π΄Π΅ΡΠΆΠΊΠ° ΠΏΠΎΠ΄Π·Π°ΠΏΡΠΎΡΠΎΠ², Π²ΠΏΠ΅ΡΠ²ΡΠ΅ ΡΠ΅Π°Π»ΠΈΠ·ΠΎΠ²Π°Π½Π½Π°Ρ Π² PostgreSQL Π²Π΅ΡΡΠΈΠΈ 6.3, ΡΡΡΠ΅ΡΡΠ²Π΅Π½Π½ΠΎ ΠΏΠΎΠ²ΡΡΠΈΠ»Π° Π³ΠΈΠ±ΠΊΠΎΡΡΡ ΠΊΠΎΠΌΠ°Π½Π΄ SQL. ΠΠΎΠ΄Π·Π°ΠΏΡΠΎΡΠΎΠΌ Π½Π°Π·ΡΠ²Π°Π΅ΡΡΡ ΠΊΠΎΠΌΠ°Π½Π΄Π° SELECT, Π·Π°ΠΊΠ»ΡΡΠ΅Π½Π½Π°Ρ Π² ΠΊΡΡΠ³Π»ΡΠ΅ ΡΠΊΠΎΠ±ΠΊΠΈ, ΠΊΠΎΡΠΎΡΠ°Ρ Π²ΡΠΏΠΎΠ»Π½ΡΠ΅ΡΡΡ Π² ΠΊΠΎΠ½ΡΠ΅ΠΊΡΡΠ΅ Π΄ΡΡΠ³ΠΎΠΉ ΠΊΠΎΠΌΠ°Π½Π΄Ρ SQL.
ΠΡΠΈ ΡΠ°Π±ΠΎΡΠ΅ Ρ SQL Π½Π΅ΡΠ΅Π΄ΠΊΠΎ Π²ΠΎΠ·Π½ΠΈΠΊΠ°ΡΡ ΡΠΈΡΡΠ°ΡΠΈΠΈ, ΠΊΠΎΠ³Π΄Π° ΠΎΠ΄ΠΈΠ½ ΠΈ ΡΠΎΡ ΠΆΠ΅ Π·Π°ΠΏΡΠΎΡ ΠΏΡΠΈΡ ΠΎΠ΄ΠΈΡΡΡ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡ ΠΏΠΎΠ²ΡΠΎΡΠ½ΠΎ. ΠΠΈΡΡΠΎ Π½Π΅ ΡΠ°Π·Π΄ΡΠ°ΠΆΠ°Π΅Ρ ΡΠ°ΠΊ, ΠΊΠ°ΠΊ Π½Π΅ΠΎΠ±Ρ ΠΎΠ΄ΠΈΠΌΠΎΡΡΡ ΠΌΠ½ΠΎΠ³ΠΎΠΊΡΠ°ΡΠ½ΠΎΠ³ΠΎ Π²Π²ΠΎΠ΄Π° Π±ΠΎΠ»ΡΡΠΈΡ ΠΈ ΡΠ»ΠΎΠΆΠ½ΡΡ Π·Π°ΠΏΡΠΎΡΠΎΠ² Π² psql.
samoychiteli.ru
ΠΠ»Π»ΡΡΡΡΠΈΡΠΎΠ²Π°Π½Π½ΡΠΉ ΡΠ°ΠΌΠΎΡΡΠΈΡΠ΅Π»Ρ ΠΏΠΎ PostgreSQL βΊ Π£ΠΏΡΠ°Π²Π»Π΅Π½ΠΈΠ΅ Π±Π°Π·Π°ΠΌΠΈ Π΄Π°Π½Π½ΡΡ βΊ ΠΠ°ΠΏΡΡΠΊ ΠΈ Π·Π°Π²Π΅ΡΡΠ΅Π½ΠΈΠ΅ PostgreSQL [ΡΡΡΠ°Π½ΠΈΡΠ° — 209] | Π‘Π°ΠΌΠΎΡΡΠΈΡΠ΅Π»ΠΈ ΠΏΠΎ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΠΈΡΠΎΠ²Π°Π½ΠΈΡ
ΠΠ°ΠΏΡΡΠΊ ΠΈ Π·Π°Π²Π΅ΡΡΠ΅Π½ΠΈΠ΅ PostgreSQL
ΠΠ°ΠΏΡΡΠΊ PostgreSQL Π² ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠΈ pg_ctl
Π§ΡΠΎΠ±Ρ Π·Π°ΠΏΡΡΡΠΈΡΡ ΡΠ΅ΡΠ²Π΅ΡΠ½ΡΠΉ ΠΏΡΠΎΡΠ΅ΡΡ PostgreSQL postmaster, ΠΏΠ΅ΡΠ΅Π΄Π°ΠΉΡΠ΅ pg_ctl ΠΊΠ»ΡΡ start. ΠΠΎΠΌΠ½ΠΈΡΠ΅, ΡΡΠΎ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ pg_ctl Π΄ΠΎΠ»ΠΆΠ½ΠΎ Π·Π°ΠΏΡΡΠΊΠ°ΡΡΡΡ ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»Π΅ΠΌ postgres (ΠΈΠ»ΠΈ Π΄ΡΡΠ³ΠΈΠΌ ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»Π΅ΠΌ, ΠΊΠΎΡΠΎΡΠΎΠΌΡ ΠΏΡΠΈΠ½Π°Π΄Π»Π΅ΠΆΠΈΡ ΠΊΠ°ΡΠ°Π»ΠΎΠ³ Π΄Π°Π½Π½ΡΡ PostgreSQL).
Π Π»ΠΈΡΡΠΈΠ½Π³Π΅ 9.1 ΠΏΡΠΈΠ²Π΅Π΄Π΅Π½ ΠΏΡΠΈΠΌΠ΅Ρ Π·Π°ΠΏΡΡΠΊΠ° postmaster Ρ ΠΊΠ°ΡΠ°Π»ΠΎΠ³ΠΎΠΌ Π΄Π°Π½Π½ΡΡ /usr/ local/pgsql/data. Π‘Π£ΠΠ ΡΡΠΏΠ΅ΡΠ½ΠΎ Π·Π°ΠΏΡΡΠΊΠ°Π΅ΡΡΡ, Π²ΡΠ΄Π°Π΅Ρ Π²ΡΠ΅ΠΌΡ ΠΏΠΎΡΠ»Π΅Π΄Π½Π΅Π³ΠΎ Π·Π°Π²Π΅ΡΡΠ΅Π½ΠΈΡ ΡΠ°Π±ΠΎΡΡ Π±Π°Π·Ρ Π΄Π°Π½Π½ΡΡ ΠΈ ΠΎΡΠ»Π°Π΄ΠΎΡΠ½ΡΡ ΠΈΠ½ΡΠΎΡΠΌΠ°ΡΠΈΡ, ΠΏΠΎΡΠ»Π΅ ΡΠ΅Π³ΠΎ ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»Ρ postgres Π²ΠΎΠ·Π²ΡΠ°ΡΠ°Π΅ΡΡΡ ΠΊ ΠΏΡΠΈΠ³Π»Π°ΡΠ΅Π½ΠΈΡ ΠΊΠΎΠΌΠ°Π½Π΄Π½ΠΎΠ³ΠΎ ΠΈΠ½ΡΠ΅ΡΠΏΡΠ΅ΡΠ°ΡΠΎΡΠ°.
ΠΠΈΡΡΠΈΠ½Π³ 9.1. ΠΠ°ΠΏΡΡΠΊ PostgreSQL Π² ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠΈ pg_ctl.
[postgres@booktown β ]$ pg_ctl β D /usr/1oca!/pgsql/data start postmaster successfully started DEBUG: database system was shut down at 2001-09-17 08:06:34 POT DEBUG: Checkpoint record at (0. 1000524052) DEBUG: Redo record at (0. 1000524052): Undo record at (0. 0): Shutdown TRUE DEBUG: NextTransactionld: 815832: NextOid: 3628113 DEBUG: database system is in production state [postgres@booktown β ]$
ΠΠ°Π²Π΅ΡΡΠ΅Π½ΠΈΠ΅ PostgreSQL Π² ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠΈ pg_ctl
Π‘Π΅ΡΠ²Π΅ΡΠ½ΡΠΉ ΠΏΡΠΎΡΠ΅ΡΡ PostgreSQL postmaster ΠΌΠΎΠΆΠ½ΠΎ ΠΎΡΡΠ°Π½ΠΎΠ²ΠΈΡΡ ΡΠΎΠΉ ΠΆΠ΅ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΠΎΠΉ pg_ctl, ΠΊΠΎΡΠΎΡΠΎΠΉ ΠΎΠ½ Π±ΡΠ» Π·Π°ΠΏΡΡΠ΅Π½. ΠΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ pg_ctl ΠΏΡΠΎΠ²Π΅ΡΡΠ΅Ρ ΠΠ°Π»ΠΈΡΠΈΠ΅ ΡΠ°Π±ΠΎΡΠ°ΡΡΠ΅Π³ΠΎ ΠΏΡΠΎΡΠ΅ΡΡΠ° postmaster, ΠΈ Π΅ΡΠ»ΠΈ ΠΊΠΎΠΌΠ°Π½Π΄Π° stop Π±ΡΠ»Π° Π²ΡΠ΄Π°Π½Π° Π²Π»Π°Π΄Π΅Π»ΡΡΠ΅ΠΌ ΡΠ°Π±ΠΎΡΠ°ΡΡΠ΅Π³ΠΎ ΠΏΡΠΎΡΠ΅ΡΡΠ° (Π½Π°ΠΏΡΠΈΠΌΠ΅Ρ, ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»Π΅ΠΌ postgres), ΡΠ΅ΡΠ²Π΅Ρ PostgreSQL ΠΏΡΠ΅ΠΊΡΠ°ΡΠ°Π΅Ρ ΡΠ°Π±ΠΎΡΡ.
Π‘ΡΡΠ΅ΡΡΠ²ΡΡΡ ΡΡΠΈ ΡΠ΅ΠΆΠΈΠΌΠ° Π·Π°Π²Π΅ΡΡΠ΅Π½ΠΈΡ ΡΠ΅ΡΠ²Π΅ΡΠ½ΠΎΠ³ΠΎ ΠΏΡΠΎΡΠ΅ΡΡΠ° PostgreSQL: ΠΈΠ½ΡΠ΅Π»Π»Π΅ΠΊΡΡΠ°Π»ΡΠ½ΡΠΉ (smart), ΡΡΠΊΠΎΡΠ΅Π½Π½ΡΠΉ (fast) ΠΈ Π½Π΅ΠΌΠ΅Π΄Π»Π΅Π½Π½ΡΠΉ (immediate). Π Π΅ΠΆΠΈΠΌ Π·Π°Π²Π΅ΡΡΠ΅Π½ΠΈΡ Π·Π°Π΄Π°Π΅ΡΡΡ ΠΊΠ»ΡΡΠΎΠΌ β Ρ ΠΏΡΠΈ Π²ΡΠ·ΠΎΠ²Π΅ pg_ctl.
Π ΠΈΠ½ΡΠ΅Π»Π»Π΅ΠΊΡΡΠ°Π»ΡΠ½ΠΎΠΌ ΡΠ΅ΠΆΠΈΠΌΠ΅ (ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠ΅ΠΌΠΎΠΌ ΠΏΠΎ ΡΠΌΠΎΠ»ΡΠ°Π½ΠΈΡ) PostgreSQL ΠΏΠ΅ΡΠ΅Π΄ Π·Π°Π²Π΅ΡΡΠ΅Π½ΠΈΠ΅ΠΌ ΠΆΠ΄Π΅Ρ, ΠΏΠΎΠΊΠ° Π²ΡΠ΅ ΠΊΠ»ΠΈΠ΅Π½ΡΡ ΠΎΡΠΊΠ»ΡΡΠ°ΡΡΡ ΠΎΡ ΡΠ΅ΡΠ²Π΅ΡΠ°. Π ΡΡΠΊΠΎΡΠ΅Π½Π½ΠΎΠΌ ΡΠ΅ΠΆΠΈΠΌΠ΅ PostgreSQL ΠΏΡΠΎΡΡΠΎ Π½Π°ΡΠΈΠ½Π°Π΅Ρ ΡΡΠ°Π½Π΄Π°ΡΡΠ½ΡΡ ΠΏΡΠΎΡΠ΅Π΄ΡΡΡ Π·Π°Π²Π΅ΡΡΠ΅Π½ΠΈΡ, Π½Π΅ ΠΏΡΠΎΠ²Π΅ΡΡΡ ΡΠΎΡΡΠΎΡΠ½ΠΈΠ΅ ΠΊΠ»ΠΈΠ΅Π½ΡΡΠΊΠΈΡ ΠΏΠΎΠ΄ΠΊΠ»ΡΡΠ΅Π½ΠΈΠΉ. Π Π½Π΅ΠΌΠ΅Π΄Π»Π΅Π½Π½ΠΎΠΌ ΡΠ΅ΠΆΠΈΠΌΠ΅ ΡΡΠ°Π½Π΄Π°ΡΡΠ½Π°Ρ ΠΏΡΠΎΡΠ΅Π΄ΡΡΠ° Π·Π°Π²Π΅ΡΡΠ΅Π½ΠΈΡ ΠΏΡΠΎΠΏΡΡΠΊΠ°Π΅ΡΡΡ, ΠΈ ΠΏΡΠΈ ΠΏΠΎΡΠ»Π΅Π΄ΡΡΡΠ΅ΠΌ ΠΏΠ΅ΡΠ΅Π·Π°ΠΏΡΡΠΊΠ΅ ΡΠΈΡΡΠ΅ΠΌΠ° Π΄ΠΎΠ»ΠΆΠ½Π° ΠΏΡΠΎΠΉΡΠΈ ΡΠ΅ΡΠ΅Π· ΡΠ΅ΠΆΠΈΠΌ Π²ΠΎΡΡΡΠ°Π½ΠΎΠ²Π»Π΅Π½ΠΈΡ.
ΠΠ½ΠΈΠΌΠ°Π½ΠΈΠ΅
ΠΠΈΠΊΠΎΠ³Π΄Π° Π½Π΅ Π·Π°Π²Π΅ΡΡΠ°ΠΉΡΠ΅ ΠΏΡΠΎΡΠ΅ΡΡ postmaster ΠΊΠΎΠΌΠ°Π½Π΄ΠΎΠΉ kill β 9 (kill β KILL), ΡΡΠΎ ΠΏΡΠΈΠ²ΠΎΠ΄ΠΈΡ ΠΊ ΠΏΠΎΡΠ΅ΡΠ΅ ΠΈΠ»ΠΈ ΠΏΠΎΡΡΠ΅ Π΄Π°Π½Π½ΡΡ
.
Π Π»ΠΈΡΡΠΈΠ½Π³Π΅ 9.2 ΡΡΠ΅Π½Π°ΡΠΈΠΉ pg_ctl Π·Π°Π²Π΅ΡΡΠ°Π΅Ρ ΠΏΡΠΎΡΠ΅ΡΡ postmaster Π² ΡΡΠΊΠΎΡΠ΅Π½Π½ΠΎΠΌ ΡΠ΅ΠΆΠΈΠΌΠ΅. ΠΡΠΎΡΠ΅ΡΡ postmaster ΠΏΡΠ΅ΠΊΡΠ°ΡΠ°Π΅Ρ ΡΠ°Π±ΠΎΡΡ, Π½Π΅ Π΄ΠΎΠΆΠΈΠ΄Π°ΡΡΡ ΠΎΡΠΊΠ»ΡΡΠ΅Π½ΠΈΡ ΠΊΠ»ΠΈΠ΅Π½ΡΠΎΠ².
ΠΠΈΡΡΠΈΠ½Π³ 9.2. ΠΠ°Π²Π΅ΡΡΠ΅Π½ΠΈΠ΅ PostgreSQL Π² ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠΈ pg_ctl.
[postgres@booktown β ]$ pg_ctl β D /usr/local/pgsql/data stop β m fast Fast Shutdown request at Mon Sep 17 09:23:39 2001 DEBUG: shutting down waiting for postmaster to shut downβ¦.. DEBUG: database system is shut down done postmaster successfully shut down [postgres@booktown β ]$
ΠΡΠΈΠΌΠ΅ΡΠ°Π½ΠΈΠ΅
ΠΠ°Π²Π΅ΡΡΠ΅Π½ΠΈΠ΅ Π² ΡΠ΅ΠΆΠΈΠΌΠ΅ smart ΡΠΊΠ²ΠΈΠ²Π°Π»Π΅Π½ΡΠ½ΠΎ ΠΊΠΎΠΌΠ°Π½Π΄Π΅ kil I β TERM Π΄Π»Ρ ΠΏΡΠΎΡΠ΅ΡΡΠ° postmaster. Π Π΅ΠΆΠΈΠΌ fast ΡΠΊΠ²ΠΈΠ²Π°Π»Π΅Π½ΡΠ΅Π½ ΠΊΠΎΠΌΠ°Π½Π΄Π΅ kill β INT, Π° Π°Π½Π°Π»ΠΎΠ³ΠΎΠΌ ΡΠ΅ΠΆΠΈΠΌΠ° immediate ΡΠ²Π»ΡΠ΅ΡΡΡ ΠΊΠΎΠΌΠ°Π½Π΄Π° kill β QUIT.
samoychiteli.ru
ΠΠ»Π»ΡΡΡΡΠΈΡΠΎΠ²Π°Π½Π½ΡΠΉ ΡΠ°ΠΌΠΎΡΡΠΈΡΠ΅Π»Ρ ΠΏΠΎ PostgreSQL βΊ SQL Π² PostgreSQL βΊ ΠΠ½Π°ΠΊΠΎΠΌΡΡΠ²ΠΎ Ρ psql [ΡΡΡΠ°Π½ΠΈΡΠ° — 58] | Π‘Π°ΠΌΠΎΡΡΠΈΡΠ΅Π»ΠΈ ΠΏΠΎ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΠΈΡΠΎΠ²Π°Π½ΠΈΡ
ΠΠ½Π°ΠΊΠΎΠΌΡΡΠ²ΠΎ Ρ psql
ΠΠ°ΡΠ΅ Π·Π½Π°ΠΊΠΎΠΌΡΡΠ²ΠΎ Ρ ΡΠ·ΡΠΊΠΎΠΌ SQL ΠΏΡΠΎΠ΄ΠΎΠ»ΠΆΠ°Π΅ΡΡΡ. ΠΠ° ΡΡΠΎΡ ΡΠ°Π· ΠΎΡΠ½ΠΎΠ²Π½ΠΎΠ΅ Π²Π½ΠΈΠΌΠ°Π½ΠΈΠ΅ ΠΌΡ ΡΠ΄Π΅Π»ΠΈΠΌ ΠΏΡΠ°ΠΊΡΠΈΡΠ΅ΡΠΊΠΈΠΌ Π°ΡΠΏΠ΅ΠΊΡΠ°ΠΌ Π΅Π³ΠΎ ΠΏΡΠΈΠΌΠ΅Π½Π΅Π½ΠΈΡ. Π ΡΡΠΎΠΉ Π³Π»Π°Π²Π΅ Π±ΡΠ΄Π΅Ρ ΠΏΠΎΠΊΠ°Π·Π°Π½ΠΎ, ΠΊΠ°ΠΊ ΠΏΡΠΈ ΠΏΠΎΠΌΠΎΡΠΈ ΠΊΠΎΠΌΠ°Π½Π΄ SQL ΡΠΎΠ·Π΄Π°Π²Π°ΡΡ ΡΠ°Π±Π»ΠΈΡΡ, Π·Π°ΠΏΠΎΠ»Π½ΡΡΡ ΠΈΡ Π΄Π°Π½Π½ΡΠΌΠΈ ΠΈ ΠΌΠΎΠ΄ΠΈΡΠΈΡΠΈΡΠΎΠ²Π°ΡΡ ΡΡΠΈ Π΄Π°Π½Π½ΡΠ΅.
Π‘ΠΈΡΡΠ΅ΠΌΠ° PostgreSQL, ΠΊΠ°ΠΊ ΠΈ Π±ΠΎΠ»ΡΡΠΈΠ½ΡΡΠ²ΠΎ ΡΠ΅ΡΠ΅Π²ΡΡ Π‘Π£ΠΠ, ΠΎΡΠ½ΠΎΠ²Π°Π½Π° ΠΏΠ° ΠΏΠ°ΡΠ°Π΄ΠΈΠ³ΠΌΠ΅ «ΠΊΠ»ΠΈΠ΅Π½Ρ-ΡΠ΅ΡΠ²Π΅Ρ». Π¦Π΅Π½ΡΡΠ°Π»ΡΠ½ΠΎΠ΅ ΠΌΠ΅ΡΡΠΎ Π² PostgreSQL Π·Π°Π½ΠΈΠΌΠ°Π΅Ρ ΠΏΡΠΎΡΠ΅ΡΡ postmaster, ΠΏΡΠ΅Π΄Π½Π°Π·Π½Π°ΡΠ΅Π½Π½ΡΠΉ Π½Π΅ Π΄Π»Ρ ΠΏΡΡΠΌΠΎΠ³ΠΎ Π²Π·Π°ΠΈΠΌΠΎΠ΄Π΅ΠΉΡΡΠ²ΠΈΡ Ρ ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»Π΅ΠΌ, Π° Π΄Π»Ρ ΠΎΠ±ΡΠ»ΡΠΆΠΈΠ²Π°Π½ΠΈΡ ΠΏΠΎΠ΄ΠΊΠ»ΡΡΠ΅Π½ΠΈΠΉ ΡΠΎ ΡΡΠΎΡΠΎΠ½Ρ ΡΠ°Π·Π»ΠΈΡΠ½ΡΡ ΠΊΠ»ΠΈΠ΅Π½ΡΠΎΠ².
ΠΡΠΈ Π·Π°ΠΏΡΡΠΊΠ΅ ΡΠ»ΡΠΆΠ±Ρ (service) PostgreSQL ΠΏΡΠΎΡΠ΅ΡΡ postmaster Π½Π°ΡΠΈΠ½Π°Π΅Ρ ΡΠ°Π±ΠΎΡΠ°ΡΡ Π² ΡΠΎΠ½ΠΎΠ²ΠΎΠΌ ΡΠ΅ΠΆΠΈΠΌΠ΅, ΠΏΡΠΎΡΠ»ΡΡΠΈΠ²Π°Ρ Π·Π°Π΄Π°Π½Π½ΡΠΉ ΠΏΠΎΡΡ TCP/IP Π² ΠΎΠΆΠΈΠ΄Π°Π½ΠΈΠΈ ΠΏΠΎΠ΄ΠΊΠ»ΡΡΠ΅Π½ΠΈΠΉ ΡΠΎ ΡΡΠΎΡΠΎΠ½Ρ ΠΊΠ»ΠΈΠ΅Π½ΡΠΎΠ². ΠΠΎ ΡΠΌΠΎΠ»ΡΠ°Π½ΠΈΡ postmaster Π²Π΅Π΄Π΅Ρ ΠΏΡΠΎΡΠ»ΡΡΠΈΠ²Π°Π½ΠΈΠ΅ ΠΏΠΎΡΡΠ° 5432.
Π‘ΡΡΠ΅ΡΡΠ²ΡΠ΅Ρ Π½Π΅ΡΠΊΠΎΠ»ΡΠΊΠΎ ΠΈΠ½ΡΠ΅ΡΡΠ΅ΠΉΡΠΎΠ², ΡΠ΅ΡΠ΅Π· ΠΊΠΎΡΠΎΡΡΠ΅ ΠΊΠ»ΠΈΠ΅Π½Ρ ΠΏΠΎΠ΄ΠΊΠ»ΡΡΠ°Π΅ΡΡΡ ΠΊ ΠΏΡΠΎΡΠ΅ΡΡΡ postmaster. Π ΠΏΡΠΈΠΌΠ΅ΡΠ°Ρ ΡΡΠΎΠΉ ΠΊΠ½ΠΈΠ³ΠΈ ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠ΅ΡΡΡ psql β ΡΠ°ΠΌΡΠΉ ΡΠ½ΠΈΠ²Π΅ΡΡΠ°Π»ΡΠ½ΡΠΉ ΠΈ Π΄ΠΎΡΡΡΠΏΠ½ΡΠΉ ΠΊΠ»ΠΈΠ΅Π½Ρ, Π²Ρ ΠΎΠ΄ΡΡΠΈΠΉ Π² ΠΊΠΎΠΌΠΏΠ»Π΅ΠΊΡ ΠΏΠΎΡΡΠ°Π²ΠΊΠΈ PostgreSQL.
Π ΡΡΠΎΠΉ Π³Π»Π°Π²Π΅ ΠΎΠΏΠΈΡΠ°Π½Ρ ΠΎΡΠ½ΠΎΠ²Π½ΡΠ΅ ΠΏΡΠΈΠ½ΡΠΈΠΏΡ ΡΠ°Π±ΠΎΡΡ Ρ psql, ΠΏΡΠΎΡΠ΅Π΄ΡΡΡ ΡΠΎΠ·Π΄Π°Π½ΠΈΡ ΠΈ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ΠΈΡ ΡΠ°Π±Π»ΠΈΡ, Π° ΡΠ°ΠΊΠΆΠ΅ Π½Π΅ΠΊΠΎΡΠΎΡΡΠ΅ ΠΎΠΏΠ΅ΡΠ°ΡΠΈΠΈ Ρ Π΄Π°Π½Π½ΡΠΌΠΈ Π² ΡΠ°Π±Π»ΠΈΡΠ°Ρ . ΠΡΠΎΠΌΠ΅ ΡΠΎΠ³ΠΎ, Π² Π½Π΅ΠΉ ΡΠ°ΡΡΠΌΠ°ΡΡΠΈΠ²Π°ΡΡΡΡ ΠΏΠΎΠ΄Π·Π°ΠΏΡΠΎΡΡ ΠΈ ΠΏΡΠ΅Π΄ΡΡΠ°Π²Π»Π΅Π½ΠΈΡ SQL.
ΠΠ»ΠΈΠ΅Π½Ρ psql ΡΠ°Π±ΠΎΡΠ°Π΅Ρ Π² ΡΠ΅ΠΆΠΈΠΌΠ΅ ΠΊΠΎΠΌΠ°Π½Π΄Π½ΠΎΠΉ ΡΡΡΠΎΠΊΠΈ ΠΈ Π²Ρ ΠΎΠ΄ΠΈΡ Π² ΠΊΠΎΠΌΠΏΠ»Π΅ΠΊΡ ΠΏΠΎΡΡΠ°Π²ΠΊΠΈ PostgreSQL. ΠΠ³ΠΎ ΡΠ°ΡΡΠΎ Π½Π°Π·ΡΠ²Π°ΡΡ ΠΈΠ½ΡΠ΅ΡΠ°ΠΊΡΠΈΠ²Π½ΡΠΌ ΠΌΠΎΠ½ΠΈΡΠΎΡΠΎΠΌ ΠΈΠ»ΠΈ ΠΈΠ½ΡΠ΅ΡΠ°ΠΊΡΠΈΠ²Π½ΡΠΌ ΡΠ΅ΡΠΌΠΈΠ½Π°Π»ΠΎΠΌ. ΠΡΠΎΡ ΠΏΡΠΎΡΡΠΎΠΉ, Π½ΠΎ ΠΌΠΎΡΠ½ΡΠΉ ΠΈΠ½ΡΡΡΡΠΌΠ΅Π½Ρ ΠΏΠΎΠ·Π²ΠΎΠ»ΡΠ΅Ρ Π½Π°ΠΏΡΡΠΌΡΡ ΡΠ°Π±ΠΎΡΠ°ΡΡ Ρ ΡΠ΅ΡΠ²Π΅ΡΠΎΠΌ PostgreSQL ΠΈ ΠΏΠΎΡΠΎΠΌΡ ΠΎΡΠΎΠ±Π΅Π½Π½ΠΎ Ρ ΠΎΡΠΎΡΠΎ ΠΏΠΎΠ΄Ρ ΠΎΠ΄ΠΈΡ Π΄Π»Ρ ΡΠΊΡΠΏΠ΅ΡΠΈΠΌΠ΅Π½ΡΠΎΠ².
ΠΠ°ΠΏΡΡΠΊ psql
ΠΠ΅ΡΠ΅Π΄ Π·Π°ΠΏΡΡΠΊΠΎΠΌ psql ΡΠ±Π΅Π΄ΠΈΡΠ΅ΡΡ Π² ΡΠΎΠΌ, ΡΡΠΎ Π΄Π²ΠΎΠΈΡΠ½ΡΠΉ ΡΠ°ΠΉΠ» psql Π½Π°Ρ ΠΎΠ΄ΠΈΡΡΡ Π² ΡΡΠ°Π½Π΄Π°ΡΡΠ½ΠΎΠΌ ΠΊΠ°ΡΠ°Π»ΠΎΠ³Π΅ ΠΈΡΠΏΠΎΠ»Π½ΡΠ΅ΠΌΡΡ ΡΠ°ΠΉΠ»ΠΎΠ² (Π½Π°ΠΏΡΠΈΠΌΠ΅Ρ, /usr/bin), Π»ΠΈΠ±ΠΎ ΠΏΡΡΡ ΠΊ ΠΊΠ°ΡΠ°Π»ΠΎΠ³Ρ Π΄Π²ΠΎΠΈΡΠ½ΡΡ ΡΠ°ΠΉΠ»ΠΎΠ² PostgreSQL (Π½Π°ΠΏΡΠΈΠΌΠ΅Ρ, /usr/local/pgsql/bin) Π²ΠΊΠ»ΡΡΠ΅Π½ Π² ΡΠΏΠΈΡΠΎΠΊ ΠΊΠ°ΡΠ°Π»ΠΎΠ³ΠΎΠ² ΠΏΠ΅ΡΠ΅ΠΌΠ΅Π½Π½ΠΎΠΉ ΡΡΠ΅Π΄Ρ PATH. ΠΠ° Π΄ΠΎΠΏΠΎΠ»Π½ΠΈΡΠ΅Π»ΡΠ½ΠΎΠΉ ΠΈΠ½ΡΠΎΡΠΌΠ°ΡΠΈΠ΅ΠΉ ΠΎΠ±ΡΠ°ΡΠ°ΠΉΡΠ΅ΡΡ ΠΊ Π³Π»Π°Π²Π΅ 2.
Π‘ΠΏΠΎΡΠΎΠ± ΠΏΡΠΈΡΠ²Π°ΠΈΠ²Π°Π½ΠΈΡ Π·Π½Π°ΡΠ΅Π½ΠΈΡ ΠΏΠ΅ΡΠ΅ΠΌΠ΅Π½Π½ΠΎΠΉ PATH Π·Π°Π²ΠΈΡΠΈΡ ΠΎΡ ΠΊΠΎΠΌΠ°Π½Π΄Π½ΠΎΠ³ΠΎ ΠΈΠ½ΡΠ΅ΡΠΏΡΠ΅ΡΠ°ΡΠΎΡΠ°. Π bash ΠΈΠ»ΠΈ ksh ΡΠΎΠΎΡΠ²Π΅ΡΡΡΠ²ΡΡΡΠ°Ρ ΠΊΠΎΠΌΠ°Π½Π΄Π° ΠΌΠΎΠΆΠ΅Ρ Π²ΡΠ³Π»ΡΠ΄Π΅ΡΡ ΡΠ°ΠΊ:
$ export PATH=$PATH:/usr/local/pgsql/bin
Π ΠΈΠ½ΡΠ΅ΡΠΏΡΠ΅ΡΠ°ΡΠΎΡΠ°Ρ csh ΠΈΠ»ΠΈ tcsh ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠ΅ΡΡΡ Π½Π΅ΡΠΊΠΎΠ»ΡΠΊΠΎ ΠΈΠ½ΠΎΠΉ ΡΠΈΠ½ΡΠ°ΠΊΡΠΈΡ:
$ set path=(Spath /usr/local/pgsql/bin)
ΠΠΈΡΡΠΈΠ½Π³ 4.1, ΠΎΡΠ½ΠΎΡΡΡΠΈΠΉΡΡ ΠΊ ΠΈΠ½ΡΠ΅ΡΠΏΡΠ΅ΡΠ°ΡΠΎΡΡ bash, ΠΈΠ»Π»ΡΡΡΡΠΈΡΡΠ΅Ρ ΠΏΡΠΎΡΠ΅Π΄ΡΡΡ Π½Π°Π·Π½Π°ΡΠ΅Π½ΠΈΡ ΡΠΈΡΡΠ΅ΠΌΠ½ΠΎΠ³ΠΎ ΠΏΡΡΠΈ Π΄Π»Ρ ΠΊΠ»ΠΈΠ΅Π½ΡΠ° psql.
ΠΠΈΡΡΠΈΠ½Π³ 4.1. ΠΠ°Π·Π½Π°ΡΠ΅Π½ΠΈΠ΅ ΡΠΈΡΡΠ΅ΠΌΠ½ΠΎΠ³ΠΎ ΠΏΡΡΠΈ Π΄Π»Ρ psql.
[user@host user]$ psql bash: psql: command not found [user@host user]$ echo $PATH /b1n:/usr/bin:/usr/local/bin:/usr/bin/Xll:/usr/XHR6/tnn [user@host user]$ export PATH=$PATH:/usr/local/pgsql/bin [user@host user]$ psql testdb Welcome to psql .the PostgreSQL interactive terminal. Type: \copyright for distribution terms \h for help with SQL commands \? for help on internal slash commands \g or terminate with semicolon to execute query \q to quit testdb= <strong>#</strong>
ΠΠΎΡΠ»Π΅ Π½Π°ΡΡΡΠΎΠΉΠΊΠΈ ΠΏΠ΅ΡΠ΅ΠΌΠ΅Π½Π½ΠΎΠΉ PATH ΠΈΠ½ΡΠ΅ΡΠ°ΠΊΡΠΈΠ²Π½ΡΠΉ ΡΠ΅ΡΠΌΠΈΠ½Π°Π» PostgreSQL Π·Π°ΠΏΡΡΠΊΠ°Π΅ΡΡΡ ΠΊΠΎΠΌΠ°Π½Π΄ΠΎΠΉ psql, Π·Π° ΠΊΠΎΡΠΎΡΠΎΠΉ ΡΠ»Π΅Π΄ΡΠ΅Ρ ΠΈΠΌΡ Π±Π°Π·Ρ Π΄Π°Π½Π½ΡΡ .
ΠΠ½ΠΈΠΌΠ°Π½ΠΈΠ΅
ΠΠΎΡΠ»Π΅ Π²ΡΡ
ΠΎΠ΄Π° ΠΈΠ· psql ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΡ ΠΏΠ΅ΡΠ΅ΠΌΠ΅Π½Π½ΠΎΠΉ ΡΡΠ΅Π΄Ρ Π±ΡΠ΄ΡΡ ΠΏΠΎΡΠ΅ΡΡΠ½Ρ. Π§ΡΠΎΠ±Ρ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΡ ΠΏΠ΅ΡΠ΅ΠΌΠ΅Π½Π½ΠΎΠΉ PATH ΡΠΎΡ
ΡΠ°Π½ΡΠ»ΠΈΡΡ ΠΏΠΎΡΠ»Π΅ Π²ΡΡ
ΠΎΠ΄Π° ΠΈΠ· ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΡ, ΠΊΠΎΠΌΠ°Π½Π΄Π° Π½Π°ΡΡΡΠΎΠΉΠΊΠΈ PATH Π²ΠΊΠ»ΡΡΠ°Π΅ΡΡΡ Π² ΡΡΠ°ΡΡΠΎΠ²ΡΠΉ ΡΡΠ΅Π½Π°ΡΠΈΠΉ ΠΊΠΎΠΌΠ°Π½Π΄Π½ΠΎΠ³ΠΎ ΠΈΠ½ΡΠ΅ΡΠΏΡΠ΅ΡΠ°ΡΠΎΡΠ° (Π½Π°ΠΏΡΠΈΠΌΠ΅Ρ, ~/.bash_profile).
samoychiteli.ru