?
本文檔使用
php中文網(wǎng)手冊(cè) 發(fā)布
ALTER DATABASE name [ [ WITH ] option [ ... ] ]
這里的option可以是:
CONNECTION LIMIT connlimit
ALTER DATABASE name RENAME TO new_name
ALTER DATABASE name OWNER TO new_owner
ALTER DATABASE name SET TABLESPACE new_tablespace
ALTER DATABASE name SET configuration_parameter { TO | = } { value | DEFAULT }
ALTER DATABASE name SET configuration_parameter FROM CURRENT
ALTER DATABASE name RESET configuration_parameter
ALTER DATABASE name RESET ALL
ALTER DATABASE改變一個(gè)數(shù)據(jù)庫(kù)的屬性。
第一種形式改變某個(gè)針對(duì)每個(gè)數(shù)據(jù)庫(kù)的設(shè)置(詳細(xì)情況見(jiàn)下文)。只有數(shù)據(jù)庫(kù)所有 者或者超級(jí)用戶可以改變這些設(shè)置。
第二種形式修改數(shù)據(jù)庫(kù)的名稱。只有數(shù)據(jù)庫(kù)所有者或者超級(jí)用戶可以重命名一個(gè)數(shù)據(jù)庫(kù); 非超級(jí)用戶必須也有CREATEDB權(quán)限。當(dāng)前數(shù)據(jù)庫(kù)不能被重命名。 (如果你需要這么做,那么請(qǐng)連接另外一個(gè)數(shù)據(jù)庫(kù)。)
第三種形式修改數(shù)據(jù)庫(kù)的所有者。要改變所有者,你必須擁有該數(shù)據(jù)庫(kù)并且還是新的 所屬角色的直接或者間接成員,并且你必須有CREATEDB權(quán)限。 (請(qǐng)注意超級(jí)用戶自動(dòng)擁有所有這些權(quán)限。)
第四種形式修改數(shù)據(jù)庫(kù)的缺省表空間。只有數(shù)據(jù)庫(kù)所有者或者超級(jí)用戶可以做這些; 你必須也有對(duì)新表空間的創(chuàng)建權(quán)限。這個(gè)命令可在物理上將數(shù)據(jù)庫(kù)的舊缺省空間中的 任何表或者索引移動(dòng)到新的表空間中。請(qǐng)注意在非缺省表空間中的表和索引是不受影響的。
保留的形式為PostgreSQL數(shù)據(jù)庫(kù)修改缺省的會(huì)話運(yùn) 行時(shí)配置變量。隨后在該數(shù)據(jù)庫(kù)上啟動(dòng)新會(huì)話的時(shí)候?qū)⑹褂么巳笔≈怠?shù)據(jù)庫(kù)相 關(guān)的缺省值將覆蓋任何在postgresql.conf里出現(xiàn)或者從 postgres命令行接收到的設(shè)置。只有數(shù)據(jù)庫(kù)所有者或者超級(jí) 用戶可以為數(shù)據(jù)庫(kù)修改會(huì)話缺省值。有些變量不能用這種方法設(shè)置,或者是只能由 超級(jí)用戶設(shè)置。
需要修改屬性的數(shù)據(jù)庫(kù)的名字。
對(duì)這個(gè)數(shù)據(jù)庫(kù)可以做多少個(gè)并發(fā)連接。-1表示沒(méi)有限制。
數(shù)據(jù)庫(kù)的新名稱。
數(shù)據(jù)庫(kù)的新所有者。
數(shù)據(jù)庫(kù)的新缺省表空間。
把指定的數(shù)據(jù)庫(kù)配置變量的會(huì)話缺省值設(shè)置為給出的數(shù)值。如果 value是DEFAULT或等效的 RESET,那么與數(shù)據(jù)庫(kù)相關(guān)的變量設(shè)置將被刪除,因此在 新的會(huì)話中將繼承系統(tǒng)范圍的缺省設(shè)置。用RESET ALL清 除所有設(shè)置。SET FROM CURRENT將會(huì)話參數(shù)的當(dāng)前值保存為相關(guān) 的數(shù)據(jù)庫(kù)值。
參見(jiàn)SET和章17SET獲取有關(guān)允 許的變量名稱和數(shù)值的更多信息。
也可以把一個(gè)會(huì)話缺省綁定到一個(gè)特定用戶,而不是某個(gè)數(shù)據(jù)庫(kù)上;參閱 ALTER ROLE。如果存在沖突,那么用戶聲明的設(shè)置覆蓋數(shù) 據(jù)庫(kù)相關(guān)的設(shè)置。
要關(guān)閉在數(shù)據(jù)庫(kù)test上缺省的索引掃描: test:
ALTER DATABASE test SET enable_indexscan TO off;
ALTER DATABASE語(yǔ)句是一個(gè) PostgreSQL擴(kuò)展.