web-dev-qa-db-fra.com

UTF8 Postgresql Créer une base de données comme MySQL (y compris le jeu de caractères, l'encodage et lc_ctype)

Pour l'instruction de création de base de données MySQL suivante, quel serait l'équivalent dans postgresql?:

CREATE DATABASE IF NOT EXISTS `scratch` 
  DEFAULT CHARACTER SET = utf8
  DEFAULT COLLATE = utf8_unicode_ci;

J'ai actuellement:

CREATE DATABASE "scratch"
  WITH OWNER "postgres"
  ENCODING 'UTF8'
  TABLESPACE "pg_default";

Est-ce suffisant ou devrais-je être plus précis, y compris LOCALE également?

25
Wil Moore III

Oui, vous pouvez être plus précis.

Par exemple:

CREATE DATABASE "scratch"
  WITH OWNER "postgres"
  ENCODING 'UTF8'
  LC_COLLATE = 'en_US.UTF-8'
  LC_CTYPE = 'en_US.UTF-8';

Je recommande également de lire les pages suivantes sur les paramètres régionaux et les classements dans PostgreSQL:

42