注册 登录

清河洛

SQL中的约束语句

qingheluo2017-04-18清河洛240
SQL 约束语句用于规定表中的数据规则。如果存在违反约束的数据行为,行为会被约束终止。约束可以在创建表时规定(通过 CREATE TABLE 语句),或者在表创建之后规定(通过 ALTER TABLE 语句)。在 SQL 中,有如下约束: NOT NULL 约束强制列不接受 NULL 值。如果不向该字段添加值,就无法插入新记录或者更新记录。 UNIQUE 保证某列的每行必须有唯一的值。 创建时: CREATE TABLE table_name(column_name int NOT NULL UNIQUE,...); CREATE TABLE table_name(colu...

SQL 约束语句用于规定表中的数据规则。如果存在违反约束的数据行为,行为会被约束终止。约束可以在创建表时规定(通过 CREATE TABLE 语句),或者在表创建之后规定(通过 ALTER TABLE 语句)。

在 SQL 中,有如下约束:

NOT NULL 约束强制列不接受 NULL 值。如果不向该字段添加值,就无法插入新记录或者更新记录。
UNIQUE 保证某列的每行必须有唯一的值。 创建时: CREATE TABLE table_name(column_name int NOT NULL UNIQUE,...); CREATE TABLE table_name(column_name int NOT NULL,...,UNIQUE(column_name)); 修改时:ALTER TABLE Persons ADD UNIQUE (column_name);
PRIMARY KEY 约束唯一标识数据库表中的每条记录。主键必须包含唯一的值(UNIQUE)。主键列不能包含 NULL 值(NOT NULL)。每个表都应该有一个主键,并且每个表只能有一个主键。有助于更容易更快速地找到表中的一个特定的记录。 创建时: create table table_name(column_name primary key ,...); create table table_name(column_name ,... ,primary key(column_name)); 修改时:alter table table_name add primary key(column_name); 删除:alter table table_name drop primary key; 注意如果字段具有auto_increment属性必须先删除auto_increment属性。
FOREIGN KEY 一个表中的 FOREIGN KEY 指向另一个表中的 PRIMARY KEY。用于预防破坏表之间连接的行为,也能防止非法数据插入外键列,因为它必须是它指向的那个表中的值之一。 创建时(table02_column_name为table_02表中的主键PRIMARY KEY): CREATE TABLE table_name(column_name,...,FOREIGN KEY (column_name) REFERENCES table_02(table02_column_name)); CREATE TABLE table_name(column_name FOREIGN KEY REFERENCES table_02(table02_column_name),...); 修改时:ALTER TABLE table_name ADD FOREIGN KEY (column_name) REFERENCES table_02(table02_column_name); sqlite中直接写REFERENCES table(column_name)即可,省略FOREIGN KEY关键字
CHECK 约束用于限制列中的值的范围。如果对一个表定义 CHECK 约束,那么此约束会基于行中其他列的值在特定的列中对值进行限制。 创建时: create table table_name(column_name check(column_name>0) ,...); create table table_name(column_name ,... ,check(column_name>0)); 修改时:alter table table_name add check(column_name>0);
DEFAULT 规定没有给列赋值时的默认值。 创建时:create table table_name(column_name default GETDATE() ,...); 修改时:alter table table_name set default GETDATE();
UNSIGNED 整数类型限制为无符号
AUTO_INCREMENT 整数类型限制为自增
COMMENT 备注、注释


网址导航