1
1
2
2
Otvety na chasto zadavaemye voprosy po PostgreSQL
3
3
4
- Data poslednego obnovleniya: Voskresen'e 5 Oktyabrya 10:25:21 EDT 2003
4
+ Data poslednego obnovleniya: Sreda 19 noyabrya 11:50:04 EDT 2003
5
5
6
6
Anglijskij variant soprovozhdaet: Bryus Mom'yan (Bruce Momjian)
7
7
(pgman@candle.pha.pa.us)
8
8
9
- Perevel na russkij: Viktor Vislobokov (victor_v@permonline .ru)
9
+ Perevel na russkij: Viktor Vislobokov (corochoone@perm .ru)
10
10
11
11
Samuyu svezhuyu anglijskuyu versiyu dokumenta mozhno najti na
12
12
http://www.PostgreSQL.org/docs/faqs/FAQ.html.
273
273
274
274
http://www.PostgreSQL.org
275
275
276
- Esche suschestvuet IRC kanal na EFNet i OpenProjects , s nazvaniem
276
+ Esche suschestvuet IRC kanal na EFNet i Freenode , s nazvaniem
277
277
#PostgreSQL. YA ispol'zuyu dlya podklyucheniya k `etomu kanalu komandu
278
- Unix irc -c '#PostgreSQL' "$USER" irc.phoenix.net.
278
+ Unix irc -c '#PostgreSQL' "$USER" irc.phoenix.net. ili irc -c
279
+ '#PostgreSQL' "$USER" irc.freenode.net.
279
280
280
281
Spisok kommercheskoj podderzhki kompanij dostupen na
281
282
http://techdocs.postgresql.org/companies.php.
282
283
283
284
1.7) Kakaya poslednyaya versiya?
284
285
285
- Poslednij vypusk PostgreSQL - `eto versiya 7.3. 4.
286
+ Poslednij vypusk PostgreSQL - `eto versiya 7.4.
286
287
287
288
My planiruem vypuskat' novye versii kazhdye 6-8 mesyacev.
288
289
485
486
2.3) Est' li u PostgreSQL graficheskij interfejs pol'zovatelya?
486
487
487
488
Da, suschestvuet neskol'ko graficheskih interfejsov dlya PostgreSQL.
488
- `Eto PgAccess (http://www.pgaccess.org, PgAdmin II
489
+ `Eto PgAccess (http://www.pgaccess.org, PgAdmin III
489
490
(http://www.pgadmin.org, Win32-only), RHDB Admin (
490
491
http://sources.redhat.com/rhdb/) i Rekall (
491
492
http://www.thekompany.com/products/rekall/, kommercheskij). Takzhe
@@ -770,7 +771,7 @@ dalit'
770
771
771
772
Suschestvuyut sleduyuschie ogranicheniya:
772
773
Maksimal'nyj razmer bazy? neogranichen (suschestvuyut bazy na
773
- 4 TB)
774
+ 32 TB)
774
775
Maksimal'nyj razmer tablicy? 32 TB
775
776
Maksimal'nyj razmer zapisi? 1.6 TB
776
777
Maksimal'nyj razmer polya? 1 GB
@@ -990,7 +991,7 @@ t' null-bajt bez opaski)
990
991
4.15.1) Kak mne sozdat' pole serial/s-avto-uvelicheniem?
991
992
992
993
PostgreSQL podderzhivaet tip dannyh SERIAL. On avtomaticheski sozdaet
993
- posledovatel'nost' i indeks dlya kolonki . Naprimer:
994
+ posledovatel'nost'. Naprimer:
994
995
CREATE TABLE person (
995
996
id SERIAL,
996
997
name TEXT
@@ -1002,7 +1003,6 @@ t' null-bajt bez opaski)
1002
1003
id INT4 NOT NULL DEFAULT nextval('person_id_seq'),
1003
1004
name TEXT
1004
1005
);
1005
- CREATE UNIQUE INDEX person_id_key ON person ( id );
1006
1006
1007
1007
Smotrite podrobnosti o posledovatel'nostyah na stranice rukovodstva
1008
1008
posvyaschennoj create_sequence. Vy takzhe mozhete ispol'zovat' kazhdoe
@@ -1160,12 +1160,12 @@ CREATE TABLE test (x int, modtime timestamp DEFAULT CURRENT_TIMESTAMP );
1160
1160
1161
1161
4.22) Pochemu moi podzaprosy, ispol'zuyuschie IN tak medlenno rabotaeyut?
1162
1162
1163
- V nastoyaschij moment, my svyazyvaem pozaprosy dlya vneshnih zaprosov
1164
- cherez posledovatel'nyj perebor rezul'tata podzaprosa dlya kazhdoj
1165
- zapisi vneshnego zaprosa. Esli podzapros vozvraschaet tol'ko neskol 'ko
1166
- zapisej i vneshnij zapros vozvraschaet mnogo zapisej, IN rabotaet
1167
- naibolee bystro. CHtoby uvelichit' skorost' v drugih zaprosah,
1168
- zamenite IN na EXISTS:
1163
+ V versiyah do 7.4, podzaprosy svyazyvalis' s roditel'skimi zaprosami
1164
+ cherez posledovatel'nyj perebor rezul'tatov pozaprosa dlya kazhdoj
1165
+ zapisi roditel'skogo zaprosa. Esli podzapros vozvraschaet tol'ko
1166
+ neskol'ko zapisej, a roditel'skij zapros vozvraschaet mnogo zapisej,
1167
+ IN rabotaet naibolee bystro. CHtoby uvelichit' skorost' v drugih
1168
+ zaprosah, zamenite IN na EXISTS:
1169
1169
SELECT *
1170
1170
FROM tab
1171
1171
WHERE col IN (SELECT subcol FROM subtab);
@@ -1176,8 +1176,12 @@ CREATE TABLE test (x int, modtime timestamp DEFAULT CURRENT_TIMESTAMP );
1176
1176
WHERE EXISTS (SELECT subcol FROM subtab WHERE subcol = col);
1177
1177
1178
1178
CHtoby takaya konstrukciya rabotala bystro, kolonka subcol dolzhna
1179
- byt' proindeksirovana. `Eta problema proizvoditel'nosti budet
1180
- ustranena v versii 7.4.
1179
+ byt' proindeksirovana.
1180
+
1181
+ V versii 7.4 i vyshe, IN fakticheski ispol'zuet takoj zhe mehanizm
1182
+ svyazyvaniya kak i obychnye zaprosy, po`etomu predpochtitel'nym
1183
+ yavlyaetsya ispol'zovanie EXISTS
1184
+ .
1181
1185
1182
1186
4.23) Kak mne vypolnit' vneshnee svyazyvanie?
1183
1187
0 commit comments