En idealisk lösning för dig skulle vara att dela upp dina moduler i scheman. Detta ger dig en effektiv enhet av isolering per modul och är också en naturlig passform för modulära applikationer (moduler helt isolerade och självhanterande), snarare än att dumpa allt i ett enda schema (särskilt offentligt). t.ex.
Application_Database ├── Offentlig ├── Module_1 │ ├── Schema_version │ ├── M1_T1 │ └── M1_T2 ├── MODULE_2 │ ├── SCHEMA_VERSION │ ├─ Mc2_T1 │ └ ── M2_t2. ..
Ditt andra alternativ är att fortsätta använda det offentliga schemat för att vara värd för alla tabeller, men använda ett individuellt schema för varje schema_version
. Detta är mindre omstruktureringsansträngning men definitivt en mindre elegant design än den som nämns ovan. t.ex.