[ 永遠的UNIX::UNIX技術資料的寶庫 ]   GB | BIG5

首頁 > 數據庫 > 其它 > 正文
PostgreSQL7.0手冊-用戶手冊-19. SQL命令-CREATE DATABASE
編譯:何偉平 laser@zhengmai.com.cn (2001-04-21 21:46:41)

CREATE DATABASE
名稱
CREATE DATABASE  創建新數據庫 

語法
CREATE DATABASE name [ WITH LOCATION = 'dbpath' ]
輸入
name 
要創建的數據庫名. 
dbpath 
在文件系統裡存儲新數據庫的可選位置。參閱下面的注意事項。 

輸出
CREATE DATABASE 
命令成功執行的返回信息. 
ERROR: user 'username' is not allowed to create/drop databases 
你必須有特殊的 CREATEDB 權限來創建數據庫。參閱 CREATE USER。 
ERROR: createdb: database "name" already exists 
如果聲明的數據庫 database 已經存在返回的信息. 
ERROR: Single quotes are not allowed in database names., ERROR: Single quotes are not allowed in database paths. 
數據庫 name 和 dbpath 不能包含單引號。這樣要求是為了創建數據庫目錄的 shell 命令能夠正確執行。 
ERROR: The path 'xxx' is invalid. 
對聲明的 dbpath 擴展(參閱下面為什)失敗。檢查你輸入的路徑或者確信你引用的環境變量的確存在。 
ERROR: createdb: May not be called in a transaction block. 
如果你有一個顯式的事務塊正在處理,你不能調用 CREATE DATABASE。你必須先結束事務。 
ERROR: Unable to create database directory 'path'., ERROR: Could not initialize database directory. 
這種情況最有可能是對數據目錄權限不夠,磁盤已滿或其他文件系統問題。數據庫服務器運行的機器上的用戶必須能反問該路徑。 
描述
CREATE DATABASE 創建一個新的 Postgres 數據庫.創建者成為新數據庫的管理員. 
A 
可以聲明一個可選的數據庫位置,例如,為了在另一塊硬盤上存放數據庫。該路徑必須是事先用 initlocation 準備好了的. 

如果路徑包含斜槓,那(斜槓)前面的部分被解釋成一個環境變量,該變量必須為服務進程所知。這樣數據庫管理員可以對能夠在那裡創建數據庫進行控制。(例如,一個用戶化的選擇是 'PGDATA2'。)如果服務器被編譯成帶有 ALLOW_ABSOLUTE_DBPATHS (缺省時沒有)選項,以斜槓開頭為標識的絕對路徑(例如, '/usr/local/pgsql/data')同樣也允許。 

注意
CREATE DATABASE 是 Postgres 語言的擴展. 
使用 drop_database 刪除一個數據庫. 

程序 createdb 是這個命令的 shell 腳本的封裝,提供來方便使用。 

在用絕對路徑指定的可選數據庫位置時,有一些安全和數據完整性的問題,而且缺省時只有端識別的環境變量可以聲明為可選的路徑.參考管理員手冊獲取更多的信息.

用法
創建一個新的數據庫: 
olly=> create database lusiadas;
在另一個地方創建新數據庫. ~/private_db: 
$ mkdir private_db
$ initlocation ~/private_db
Creating Postgres database system directory /home/olly/private_db/base
   
$ psql olly
Welcome to psql, the PostgreSQL interactive terminal.
 
Type:  \copyright for distribution terms
       \h for help with SQL commands
       \? for help on internal slash commands
       \g or terminate with semicolon to execute query
       \q to quit

olly=> CREATE DATABASE elsewhere WITH LOCATION = '/home/olly/private_db';
CREATE DATABASE
兼容性
SQL92
在 SQL92 裡沒有 CREATE DATABASE 語句.數據庫等同目錄,其創建是由實現決定的.

(http://www.fanqiang.com)
    進入【UNIX論壇

相關文章
PostgreSQL7.0手冊-用戶手冊-19. SQL命令-VACUUM (2001-04-21 22:16:33)
PostgreSQL7.0手冊-用戶手冊-19. SQL命令-UPDATE (2001-04-21 22:16:12)
PostgreSQL7.0手冊-用戶手冊-19. SQL命令-UNLISTEN (2001-04-21 22:15:44)
PostgreSQL7.0手冊-用戶手冊-19. SQL命令-TRUNCATE (2001-04-21 22:15:24)
PostgreSQL7.0手冊-用戶手冊-19. SQL命令-SHOW (2001-04-21 22:15:01)
PostgreSQL7.0手冊-用戶手冊-19. SQL命令-SET (2001-04-21 22:14:42)
PostgreSQL7.0手冊-用戶手冊-19. SQL命令-SELECT INTO (2001-04-21 22:14:19)
PostgreSQL7.0手冊-用戶手冊-19. SQL命令-SELECT (2001-04-21 22:14:01)
PostgreSQL7.0手冊-用戶手冊-19. SQL命令-ROLLBACK (2001-04-21 22:13:41)
PostgreSQL7.0手冊-用戶手冊-19. SQL命令-REVOKE (2001-04-21 22:13:18)

===更多相關===
 

★  樊強制作 歡迎分享  ★