Normálně se nastavuje výchozí schéma(a) pro databázi nebo roli, jak je vysvětleno zde:
Pouze v případě, že to chcete udělat bez zachování změny, možná budete chtít nastavit schéma(a) dynamicky, pouze pro aktuální proces.
Knihovna podporuje volbu schema
v rámci Možnosti inicializace
:
const initOptions = {
schema: 'my_schema' /* can also be an array of strings or a callback */
};
const pgp = require('pg-promise')(initOptions);
usnadňuje nastavení dynamických schémat.
Příklady
-
Zviditelnění vašeho vlastního schématu spolu s výchozím
public
schéma:const initOptions = { schema: ['public', 'my_schema'] /* make both schemas visible */ }; const pgp = require('pg-promise')(initOptions);
-
Použití zpětného volání k nastavení schématu na základě kontextu databáze (viz Databáze konstruktor):
const initOptions = { schema(dc) { if(dc === /* whatever Database Context was used */) { return 'my_schema'; /* or an array of strings */ } /* other provisions, if multiple databases are used. */ /* can return null/undefined, if no schema change is needed. */ } }; const pgp = require('pg-promise')(initOptions);