Click here to view and discuss this page in DocCommentXchange. In the future, you will be sent there automatically.

SQL Anywhere 11.0.1 (中文) » SQL Anywhere 服务器 - SQL 的用法 » 创建数据库 » 确保数据完整性 » 使用域

 

创建域 (SQL)

可以使用 CREATE DOMAIN 语句创建和定义域。请参见CREATE DOMAIN 语句

SQL Anywhere 附带了一些预定义的域。例如,货币域 MONEY。

♦  创建新域 (SQL)
  1. 连接到数据库。

  2. 执行 CREATE DOMAIN 语句。

示例 1:简单的域

数据库中的一些列用于存储雇员姓名,其它列用于存储地址。那么,您可以定义以下域。

CREATE DOMAIN persons_name CHAR(30)
CREATE DOMAIN street_address CHAR(35);

定义了这些域后,则可以按照类似使用内置数据类型的方式使用它们。例如,可以用这些定义来定义表,如下所示。

CREATE TABLE Customers (
   ID INT  DEFAULT AUTOINCREMENT  PRIMARY KEY,
   Name persons_name,
   Street street_address);
示例 2:缺省值、检查约束和标识符

在上例中,表的主键指定为整数类型。实际上,许多表都需要相似的标识符。创建一个标识符域供这些应用程序使用,要比将主键指定为整数更为方便。

创建域时,可以指定一个缺省值,并提供检查约束,以确保不能将不适当的值键入任何属于这种类型的列。

通常使用整数值作为表标识符。正整数非常适合于用作唯一标识符。由于可能在许多表中使用这样的标识符,因此可以定义以下域。

CREATE DOMAIN identifier UNSIGNED INT
DEFAULT AUTOINCREMENT;

可以使用此定义重写 Customers 表的定义,如上所示。

CREATE TABLE Customers2 (
   ID identifier PRIMARY KEY,
   Name persons_name,
   Street street_address
);