Provided by: manpages-zh_1.6.3.2-1_all bug

NAME

       ALTER DOMAIN - 改變一個域的定義

SYNOPSIS

       ALTER DOMAIN name
           { SET DEFAULT expression | DROP DEFAULT }
       ALTER DOMAIN name
           { SET | DROP } NOT NULL
       ALTER DOMAIN name
           ADD domain_constraint
       ALTER DOMAIN name
           DROP CONSTRAINT constraint_name [ RESTRICT | CASCADE ]
       ALTER DOMAIN name
           OWNER TO new_owner

DESCRIPTION 描述

       ALTER DOMAIN 修改一個現有域的定義。 它有幾種子形式:

       SET/DROP DEFAULT
               這些形式設置或者刪除一個域的缺省值。請注意缺省只適用於隨後的                INSERT
              命令;他們並不影響使用該域已經在表中的行。

       SET/DROP NOT NULL
               這些形式改變一個域是否標記爲允許      NULL      值或者是拒絕       NULL       值。
              在使用域的字段包含非空的值的時候,你只可以 SET NOT NULL。

       ADD domain_constraint
               這種形式向域中增加一種新的約束,使用的語法和   CREATE   DOMAIN  [create_domain(7)]
              一樣。這樣做只有在所有使用域的字段滿足新的約束的條件下才能成功。

       DROP CONSTRAINT
               這種形式刪除一個域上的約束。

       OWNER
               這種形式把域的所有者改變爲另外一個用戶。

        要使用      ALTER      DOMAIN,你必須擁有該域;但是使用      ALTER      DOMAIN      OWNER
       的時候你必須是數據庫超級用戶。

PARAMETERS 參數

       name
               一個要修改的現有域的名字(可以有模式修飾)。

       domain_constraint
               域的新的域約束。

       constraint_name
               要刪除的現有約束。

       CASCADE
               自動刪除依賴這個對象的約束。

       RESTRICT
               如果有任何依賴對象,則拒絕刪除約束。這是缺省行爲。

       new_owner
               域的新所有者的用戶名。

EXAMPLES 例子

        給一個域增加一個 NOT NULL 約束:

       ALTER DOMAIN zipcode SET NOT NULL;

        從一個域裏刪除一個 NOT NULL 約束:

       ALTER DOMAIN zipcode DROP NOT NULL;

        給一個域裏增加一個檢查約束:

       ALTER DOMAIN zipcode ADD CONSTRAINT zipchk CHECK (char_length(VALUE) = 5);

        從一個域裏刪除一個檢查約束:

       ALTER DOMAIN zipcode DROP CONSTRAINT zipchk;

COMPATIBILITY 兼容性

       ALTER DOMAIN 語句與 SQL99 兼容,除 OWNER 變種之外,這個變種是 PostgreSQL 的擴展。

譯者

       Postgresql 中文網站 何偉平 <laser@pgsqldb.org>

       本頁面中文版由中文 man 手冊頁計劃提供。
       中文 man 手冊頁計劃:https://github.com/man-pages-zh/manpages-zh