sql >> Databáze >  >> RDS >> PostgreSQL

Jak změnit kódování kolekce šablon databáze

Z dokumentace PostgreSQL:

Dalším běžným důvodem pro kopírování šablony0 namísto šablony1 je to, že při kopírování šablony0 lze zadat nové nastavení kódování a národního prostředí, zatímco kopie šablony1 musí používat stejná nastavení. Je to proto, že šablona1 může obsahovat data specifická pro kódování nebo místní prostředí, zatímco šablona0 je známá, že nikoli.

Můžete použít pouze template0 pro vytvoření nové databáze s jiným kódováním a národním prostředím:

CREATE DATABASE newdb
WITH OWNER = postgres
   ENCODING = 'UTF8'
   TABLESPACE = pg_default
   LC_COLLATE = 'zh_CN.UTF-8'
   CONNECTION LIMIT = -1
   TEMPLATE template0;

To bude fungovat, ale znamená to, že všechny změny, které jste provedli v template1 nebude použito na nově vytvořenou databázi.

Chcete-li změnit kódování a řazení template1 musíte nejprve smazat template1 a poté vytvořte novou šablonu template1 z template0 . Jak zrušit databázi šablon je popsáno zde. Poté můžete vytvořit novou databázi template1 se zvoleným kódováním/kolováním a označte jej jako šablonu nastavením datistemplate=true (příklad):

update pg_database set datistemplate=true  where datname='template1';


  1. Použití Oracle JDeveloper 12c s Oracle Database 12c na platformě Oracle Cloud, část 1

  2. Jak monitorovat více instancí MySQL běžících na stejném počítači – tipy a triky ClusterControl

  3. Co je SQL? Co je databáze? Systémy správy relačních databází (RDBMS) Vysvětleno v jednoduché angličtině.

  4. Odstraňte problém při pokusu o vytvoření velkého modelu IMDB