SQL Server 2012 检查约束(定义检查约束、删除检查约束)

文章目录

        • 准备知识
        • 定义检查约束
          • 使用SSMS工具定义检查约束
          • 使用SQL方式定义检查约束
            • 方式一:在创建数据表的时候定义检查约束
            • 方式二:修改数据表定义检查约束
        • 删除检查约束
          • 使用SSMS工具删除检查约束
            • 方式一:在对象资源管理器中删除检查约束
            • 方式二:在表设计器中删除检查约束
          • 使用SQL方式删除检查约束




准备知识

    检查约束在表中定义一个对输入的数据按照设置的逻辑进行检查的标识符.
    一旦表中某列设置了检查约束,则在向表中添加数据时,会使用这个约束对输入的数据按照设置的逻辑进行检查。

定义检查约束

使用SSMS工具定义检查约束
  1. 展开“数据库”,然后展开相应的数据库,再展开数据库中的“表”,右击需要定义检查约束的数据表,选择“设计”。
    在这里插入图片描述
  2. 进入表设计器界面,点击需要定义检查约束的列,选择“Check约束”。
    SQL Server 2012 检查约束(定义检查约束、删除检查约束)_第1张图片
  3. 进入“Check约束”对话框,点击“添加”,在“表达式”中输入相关表达式(如果是选值,则是“ 列名=‘值’ Or 列名=‘值’ ”,如果是范围,则是“ 列名 between 值 And 值 ”)。
    SQL Server 2012 检查约束(定义检查约束、删除检查约束)_第2张图片
  4. 在“(名称)”中输入检查约束的名称,点击“关闭”。
    SQL Server 2012 检查约束(定义检查约束、删除检查约束)_第3张图片
  5. 点击保存键,或者按Ctrl+F5键进行保存。展开数据表,展开“约束”,可以看到定义的检查约束。
    SQL Server 2012 检查约束(定义检查约束、删除检查约束)_第4张图片

使用SQL方式定义检查约束
方式一:在创建数据表的时候定义检查约束
  1. 在SSMS工具栏中单击“新建查询”,打开“SQL编辑器”窗口
    在这里插入图片描述
  2. 输入创建SQL代码
USE schoolDB                                                 --打开数据库schoolDB
GO
IF EXISTS(SELECT * FROM sysobjects WHERE name='student') 
DROP TABLE student                --检查student是否已经存在,如果存在,则删除
GO
CREATE TABLE student                                           --表名为student
(
	  StuID int NOT NULL,                                           --学生学号
	  StuName varchar(15) NOT NULL,                                 --学生姓名
	  Sex char(2) CHECK(Sex='男' Or Sex='女') NULL,                                             --性别
	  Major varchar(20) NULL,                                      --所选专业
)


  1. 点击“分析”按钮,或按住Ctrl+F5,对SQL代码进行语法分析,确保SQL语句语法正确。
    SQL Server 2012 检查约束(定义检查约束、删除检查约束)_第5张图片
  2. 点击“执行”按钮,或按住F5,执行SQL代码。
    SQL Server 2012 检查约束(定义检查约束、删除检查约束)_第6张图片
  3. 查看数据表中的约束。
    SQL Server 2012 检查约束(定义检查约束、删除检查约束)_第7张图片

方式二:修改数据表定义检查约束
  1. 在SSMS工具栏中单击“新建查询”,打开“SQL编辑器”窗口
    在这里插入图片描述
  2. 输入创建SQL代码
USE schoolDB                                                 --打开数据库schoolDB
GO
ALTER TABLE student
ADD CONSTRAINT CK_student_Sex CHECK(Sex='男' Or Sex='女') --对Sex列定义检查约束

  1. 点击“分析”按钮,或按住Ctrl+F5,对SQL代码进行语法分析,确保SQL语句语法正确。
    SQL Server 2012 检查约束(定义检查约束、删除检查约束)_第8张图片
  2. 点击“执行”按钮,或按住F5,执行SQL代码。
    SQL Server 2012 检查约束(定义检查约束、删除检查约束)_第9张图片
  3. 查看数据表中的约束。
    SQL Server 2012 检查约束(定义检查约束、删除检查约束)_第10张图片


删除检查约束

使用SSMS工具删除检查约束
方式一:在对象资源管理器中删除检查约束
  1. 展开需要删除检查约束的数据表,然后再展开“约束”。
    SQL Server 2012 检查约束(定义检查约束、删除检查约束)_第11张图片
  2. 右击需要删除的检查约束,选择“删除”。
    SQL Server 2012 检查约束(定义检查约束、删除检查约束)_第12张图片
  3. 在删除对象界面,点击“确定”,即可完成检查约束删除。
    SQL Server 2012 检查约束(定义检查约束、删除检查约束)_第13张图片

方式二:在表设计器中删除检查约束
  1. 右击需要删除检查约束的数据表,选择“设计”。
    SQL Server 2012 检查约束(定义检查约束、删除检查约束)_第14张图片

  2. 进入表设计器界面,点击鼠标,选择“Check约束”。
    SQL Server 2012 检查约束(定义检查约束、删除检查约束)_第15张图片

  3. 在“Check约束”对话框中选择需要删除的检查约束,点击“删除”,完成检查约束的删除。
    SQL Server 2012 检查约束(定义检查约束、删除检查约束)_第16张图片


使用SQL方式删除检查约束
  1. 在SSMS工具栏中单击“新建查询”,打开“SQL编辑器”窗口
    在这里插入图片描述

  2. 输入创建SQL代码

USE schoolDB                                                 --打开数据库schoolDB
GO
ALTER TABLE student
DROP CONSTRAINT CK_student_Sex --删除Sex列的检查约束

  1. 点击“分析”按钮,或按住Ctrl+F5,对SQL代码进行语法分析,确保SQL语句语法正确。
    SQL Server 2012 检查约束(定义检查约束、删除检查约束)_第17张图片
  2. 点击“执行”按钮,或按住F5,执行SQL代码。
    SQL Server 2012 检查约束(定义检查约束、删除检查约束)_第18张图片
  3. 检查约束已被删除。
    SQL Server 2012 检查约束(定义检查约束、删除检查约束)_第19张图片



你可能感兴趣的:(数据库,SQL,Server数据库入门指南)