web-dev-qa-db-ja.com

MySQLのようなUTF8 Postgresql Create Database(文字セット、エンコーディング、lc_typeを含む)

次のMySQLデータベース作成ステートメントの場合、postgresqlで同等のものは何ですか?

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

私は現在持っています:

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

それで十分ですか、それともLOCALEも含めてより具体的にする必要がありますか?

25
Wil Moore III

はい、もっと具体的にすることができます。

例えば:

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

また、PostgreSQLのロケールと照合については、以下のページを読むことをお勧めします。

42