为了保证数据的完整性,我们对列还有一些约束。约束分为行约束、列约束和引用约束。行约束和列约束是针对单表的,引用约束是针对两个表的。
行约束:索引、唯一约束、主键(不为空;记录不能重复)、自动增长(针对int类型)
列约束:check约束、NOT NULL约束、Default约束
引用约束:外键约束
##创建数据库testdb
CREATE DATABASE testdb
##使用数据库testdb
USE testdb
##创建一个表
CREATE TABLE test01(
ID int,
Sname nvarchar(100),
grade varchar(50)
)
#空约束,NOT NULL不可以为空
CREATE TABLE Student(
ID int NOT NULL,
Sname nvarchar(50),
score real
)
#主键约束,PRIMARY KEY约束唯一标识数据库表中的每条记录
#主键必须包含唯一的值
#主键列不能包含NULL值
#每个表应该都有一个主键,并且每个表只能有一个主键
CREATE TABLE Student01(
ID int PRIMARY KEY,
Sname nvarchar(50),
score real
)
#唯一约束,一个表中只能有一个主键约束,但是可以有多个约束
#PRIMARY KEY自动拥有唯一约束
CREATE TABLE Student02(
ID int PRIMARY KEY NOT NULL,
Sname nvarchar(50) UNIQUE,
score real
)
#默认约束
CREATE TABLE Student03(
ID int PRIMARY KEY NOT NULL,
Sname nvarchar(50) UNIQUE,
score real,
address nvarchar(200) DEFAULT '测试脚本'
)
#自动增长约束
CREATE TABLE Student04(
ID int PRIMARY KEY NOT NULL IDENTITY(1001,1),
Sname nvarchar(50) UNIQUE,
score real
)