使用SQL语句创建和删除约束

use

master

go

--Create Database

if exists(select * from sysdatabases where name ='TestMachine')

drop database TestMachine

go

create database TestMachine

on (  name = 'TestMachines_data.mdf',  filename = 'C:\Program Files\Microsoft SQL Server\MSSQL10.MSSQLSERVER\MSSQL\DATA\TestMachine_data.mdf' )

log on( name = 'TestMachines_log.ldf',  filename = 'C:\Program Files\Microsoft SQL Server\MSSQL10.MSSQLSERVER\MSSQL\DATA\TestMachine_log.ldf'   )

go

use TestMachine go

--Create Table TestItem

if exists (select * from sysobjects where name='TestItem')

drop table TestItem

go

create table TestItem

(  ID  int not null  identity(1,1) primary key,

 TestGroupName nvarchar(50) not null,

 TestItems nvarchar(50) not null  )

go

使用SQL语句创建和删除约束

 约束的目的是确保表中数据的完整性,常用的约束类型如下:

》主键约束(Primary Key Constraint):要求主键列数据唯一,并且不允许为空

》唯一约束(Unique Constraint):要求该列唯一,允许为空,但只能出现一个空值

》检查约束(Check Constraint):某列取值范围限制、格式限制等,如有关年龄的约束

》默认约束(Default Constraint):某列的默认值,比如学员信息表,男生多的话就可将默认设为“男”

》外键约束(Foreign Key Constraint):用于在两表之间建立关系,需要指定引用主键的那一列

添加约束

           ALTER TABLE 表名

           ADD CONSTRAINT 约束名 约束类型 具体的约束说明

示例:

           ——添加主键约束(将stuNo作为主键)

           ALTER TABLE STUINFO

           ADD CONSTRAINT PK_STUNO PRIMARY KEY (stuNo)

           ——添加唯一约束(身份证号唯一)

           ALTER TABLE STUINFO

           ADD CONSTRAINT UQ_STUID UNIQUE (stuId)

           ——添加默认约束(如果地址不填,默认为“地址不详”)

           ALTER TABLE STUINFO

           ADD CONSTRAINT DF_STUADDRESS DEFAULT ('地址不详') FOR STUADDRESS

           ——添加检查约束,要求年龄只能在15~40岁之间

           ALTER TABLE STUINFO

           ADD CONSTRAINT CK_STUAGE CHECK (STUAGE BETWEEN 15 AND 40)

           ——添加外键约束(主表STUINFO和从表STUMARKS建立关系,关联字段为stuNo)

           ALTER TABLE STUINFO

           ADD CONSTRAINT FK_STUNO FOREIGN KEY (stuNo) REFERENCES STUINFO (stuNo)

          

删除约束

           ALTER TABLE 表名

           DROP CONSTRAINT 约束名

人生,因静而从容,因从容而优雅
原文地址:https://www.cnblogs.com/WangYunyun/p/3213748.html