Jak můžeme deklarovat více diskových oddílů v jednom výkazu v Postgres

0

Otázka

Můžeme vytvořit více oddílů v jedné prohlášení v Oracle, ale jak můžeme implementovat stejné v PostgreSQL.

oracle partitioning postgresql sql
2021-11-24 04:44:10
2

Nejlepší odpověď

1

Jednoduché: spustit několik CREATE TABLE prohlášení v jednom DO prohlášení:

DO
'BEGIN
   CREATE TABLE IF NOT EXISTS part1 PARTITION OF tab FOR VALUES IN (1);
   CREATE TABLE IF NOT EXISTS part2 PARTITION OF tab FOR VALUES IN (2);
   CREATE TABLE IF NOT EXISTS part3 PARTITION OF tab FOR VALUES IN (3);
END';

Ale nevidím důvod, proč je tak důležité pro vás udělat, udělat to pomocí jediného SQL příkazu.

2021-11-24 06:46:07
0

Ekvivalent neexistuje v PostgreSQL. Vzhledem k tomu, jak to provádí jeho rozdělení systému, bude to vyžadovat, abyste vytvořit více tabulek najednou. Budete muset vytvořit tabulce oddílů a místo určení jeho oblasti a kroky přímo tam a pak, budete muset vytvořit každý oddíl jako samostatnou tabulku s uvedením oddíl hranice pro každého.

Jako vždy, tam je mnohem více na to, ale níže je určen pro zjednodušené trvat na téma: v Oracle tabulku oddílů jsou způsob, jak rozdělit původní, první-třídy stolu "pod kapotou" a v rámci jeho vnitřní struktury, zatímco v PostgreSQL je to naopak - je to oddílů, které jsou samostatné, první-třídy, stoly a tabulce oddílů pouze odkazy na ně společně. Z tohoto důvodu, oddíl nemůže existovat na jeho vlastní v Oracle a být samostatná budova, individuálně odkazuje, nebo spojené s, a obvykle je třeba projít tabulce oddílů komunikovat se svými oddíly. V PostgreSQL, pro nejvíce se rozdělit můžete pracovat s oddíly jako pravidelné tabulky, a v tabulce oddílů není opravdu pracovat bez nich, působí jako prázdný pohled.

2021-11-24 07:24:59

V jiných jazycích

Tato stránka je v jiných jazycích

Русский
..................................................................................................................
Italiano
..................................................................................................................
Polski
..................................................................................................................
Română
..................................................................................................................
한국어
..................................................................................................................
हिन्दी
..................................................................................................................
Français
..................................................................................................................
Türk
..................................................................................................................
Português
..................................................................................................................
ไทย
..................................................................................................................
中文
..................................................................................................................
Español
..................................................................................................................
Slovenský
..................................................................................................................