历史版本。 PostgreSQL 6.4 已结束支持。 请参阅 当前版本手册.
CREATE DATABASE
CREATE DATABASE — 创建一个新数据库
大纲
CREATE DATABASEname[ WITH LOCATION = 'dbpath' ]
输入
-
name 要创建的数据库的名称。
-
dbpath 备选位置可以指定为一个后端服务器已知的环境变量(例如 '
PGDATA2'),或者一个绝对路径名(例如 '/usr/local/pgsql/data')。无论哪种情况,该位置都必须由initlocation预先配置。
输出
- →
CREATEDB 命令成功完成时返回的消息。
- →
WARN: createdb: database "name" already exists. 如果所指定的
database已经存在,就会出现这个错误。- →
ERROR: Unable to create database directorydirectory 创建所需的目录时出了问题;这个操作将需要
postgres用户在指定位置上的权限。
描述
CREATE DATABASE 创建一个新的 Postgres 数据库。创建者成为新数据库的管理员。
注意
CREATE DATABASE 是一种 Postgres
语言扩展。
使用 DROP DATABASE 删除一个数据库。
用法
创建一个新的数据库:
olly=>create database lusiadas;
要在备选区域 ~/private_db 中创建一个新数据库:
$mkdir private_db$initlocation ~/private_dbCreating Postgres database system directory /home/olly/private_db/base$psql ollyWelcome to the POSTGRESQL interactive sql monitor: Please read the file COPYRIGHT for copyright terms of POSTGRESQL type \? for help on slash commands type \q to quit type \g or terminate with semicolon to execute query You are currently connected to the database: template1olly=>create database elsewhere with location = '/home/olly/private_db';CREATEDB
缺陷
使用以绝对路径名指定的备选数据库位置会涉及安全和数据完整性问题,默认情况下,只有后端已知的环境变量才能被指定为备选位置。更多信息见《管理员指南》。
兼容性
SQL92
SQL92 中没有 CREATE DATABASE 语句。
标准 SQL 中等价的命令是 CREATE SCHEMA。