Man page - create_domain(7)

Manual

CREATE DOMAIN

NAME
SYNOPSIS
DESCRIPTION 描 述
PARAMETERS 引 數
EXAMPLES 例 子
COMPATIBILITY 相 容 性
SEE ALSO 參 見
譯 者


NAME

CREATE DOMAIN - 定 義 一 個 新 域

SYNOPSIS

CREATE DOMAIN name [AS] data_type
[ DEFAULT expression ]
[ constraint [ ... ] ]

where constraint is:

[ CONSTRAINT constraint_name ]
{ NOT NULL | NULL | CHECK ( expression ) }

DESCRIPTION 描 述

CREATE DOMAIN 建 立 一 個 新 的 資 料 域 。 定 義 域 的 使 用 者 成 為 其 所 有 者 。

如 果 給 出 一 個 模 式 名 稱 ( 比 如 , CREATE DOMAIN myschema.mydomain ...) , 那 麼 該 域 是 在 指 定 的 模 式 中 建 立 的 。 否 則 它 會 在 當 前 模 式 中 建 立 。 域 名 字 必 需 在 其 所 在 模 式 中 的 現 有 型 別 和 域 中 唯 一 。

域 可 以 便 於 我 們 把 不 同 表 之 間 的 公 共 域 抽 取 到 一 個 位 置 進 行 維 護 。 比 如 , 一 個 電 子 郵 件 地 址 欄 位 可 能 在 多 個 表 中 使 用 , 所 有 的 都 是 同 樣 的 屬 性 。 我 們 可 以 定 義 並 使 用 一 個 域 , 而 不 是 分 別 設 定 每 個 表 的 約 束 。

PARAMETERS 引 數

name

要 建 立 的 域 名 字 ( 可 以 有 模 式 修 飾 ) 。

data_type

域 的 下 層 資 料 型 別 。 它 可 以 包 含 陣 列 宣 告 字 。

DEFAULT expression

DEFAULT 子 句 為 域 資 料 型 別 的 欄 位 宣 告 一 個 預 設 值 。 該 值 是 任 何 不 含 變 數 的 表 示 式 ( 但 不 允 許 子 查 詢 ) 。 預 設 表 示 式 的 資 料 型 別 必 需 匹 配 域 的 資 料 型 別 。 如 果 沒 有 宣 告 預 設 值 , 那 麼 預 設 值 就 是 空 值 。

預 設 表 示 式 將 用 在 任 何 不 為 該 欄 位 宣 告 數 值 的 插 入 操 作 。 如 果 為 特 定 的 欄 位 聲 明 瞭 預 設 值 , 那 麼 它 覆 蓋 任 何 和 該 域 相 關 聯 的 預 設 值 。 然 後 , 域 的 預 設 覆 蓋 任 何 與 下 層 資 料 型 別 相 關 的 預 設 。

CONSTRAINT constraint_name

一 個 約 束 的 可 選 名 稱 。 如 果 沒 有 宣 告 , 系 統 生 成 一 個 名 字 。

NOT NULL

這 個 域 的 數 值 不 允 許 為 NULL。

NULL

這 個 域 的 數 值 允 許 為 空 。 它 是 預 設 。

這 個 子 句 只 是 用 於 和 非 標 準 的 SQL 資 料 庫 相 容 用 。 我 們 不 建 議 在 新 的 應 用 中 使 用 它 。

CHECK ( expression )

CHECK 子 句 宣 告 完 整 性 約 束 或 者 是 測 試 , 域 地 數 值 必 須 滿 足 這 些 要 求 。 每 個 約 束 必 須 是 一 個 生 成 一 個 布 林 結 果 的 表 示 式 。 它 應 該 使 用 名 字 VALUE 來 引 用 被 測 試 的 數 值 。

目 前 , CHECK 表 示 式 不 能 包 含 子 查 詢 , 也 不 能 引 用 除 VALUE 之 外 的 變 數 。

EXAMPLES 例 子

這 個 例 子 建 立 了 country_code 資 料 型 別 並 且 在 一 個 表 定 義 中 使 用 了 該 型 別 :

CREATE DOMAIN country_code char(2) NOT NULL;
CREATE TABLE countrylist (id integer, country country_code);

COMPATIBILITY 相 容 性

CREATE DOMAIN 命 令 符 合 SQL 標 準 。

SEE ALSO 參 見

DROP DOMAIN [ drop_domain (7)]

譯 者

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

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