在创建表时,如何添加约束?
1、使用CREATE TABLE语句直接在列定义后添加约束。可以在列定义之后使用"CONSTRAINT"关键字来添加约束条件。例如,可以定义列作为主键、确保列中的所有值都是唯一的、确保列中的值不为空、或者定义一个条件来确保列中的值满足特定的条件。
2、使用ALTER TABLE语句添加约束条件。在表已经创建之后,可以使用ALTER TABLE语句来添加约束条件。例如,可以向现有表中添加主键约束,或者添加其他类型的约束如外键约束。
3、在创建表时使用约束条件的简写语法。某些数据库管理系统支持在列定义中直接使用约束条件的简写语法,如"PRIMARY KEY"、"UNIQUE"、"NOT NULL"等关键字来定义相应的约束条件。这种方法适用于在创建表时直接在列定义中指定约束。
评论
有用 1
在 Oracle 中创建表时,可以使用多种方式添加约束,具体如下:
一、在列定义中添加约束
非空约束:
在列定义后直接使用 NOT NULL 关键字。例如:
CREATE TABLE student (
id NUMBER,
name VARCHAR2(50) NOT NULL, -- 添加非空约束
age NUMBER
);
默认值约束:
在列定义后使用 DEFAULT 关键字并指定默认值。例如:
CREATE TABLE employee (
emp_id NUMBER,
emp_name VARCHAR2(50),
department VARCHAR2(50) DEFAULT 'Unknown' -- 添加默认值约束
);
二、在表定义中单独添加约束
主键约束:
使用 CONSTRAINT 关键字并指定约束名称和 PRIMARY KEY 关键字,后面跟列名或列名列表。例如:
CREATE TABLE customer (
cust_id NUMBER,
cust_name VARCHAR2(50),
CONSTRAINT pk_customer PRIMARY KEY (cust_id) -- 添加主键约束
);
唯一约束:
类似主键约束的方式,使用 CONSTRAINT 和 UNIQUE 关键字。例如:
CREATE TABLE product (
product_id NUMBER,
product_name VARCHAR2(50),
CONSTRAINT uk_product_name UNIQUE (product_name) -- 添加唯一约束
);
外键约束:
使用 CONSTRAINT 和 FOREIGN KEY 关键字,指定外键列名列表,并使用 REFERENCES 关键字指定引用的表和列。例如:
CREATE TABLE order_details (
order_id NUMBER,
product_id NUMBER,
quantity NUMBER,
CONSTRAINT fk_product_id FOREIGN KEY (product_id) REFERENCES product(product_id) -- 添加外键约束
);
评论
有用 0
墨值悬赏

