当前位置: 首页 > news >正文

SQL Server从入门到项目实践(超值版)读书笔记 16

8.8 在SSMS中管理约束条件

除了使用SQL语句设置表中的约束条件外,还可以在SSMS中管理。

8.8.1 管理主键约束

使用“对象资源管理器”可以以界面方式管理主键约束。

8.8.1.1 添加primary key约束

1、在“对象资源管理器”窗口中选择数据库mydatabase下面的表persons,他在创建时,是没有主键的。

2、在表名上单击鼠标右键,选择右键菜单中的设计命令。

3、在设计窗口,同样右键单击“name”字段,选择右键菜单中的命令“设置主键”。

4、设置完成后,“name”所在的行会出现一个钥匙图标,表示主键设置成功。

5、如果需要多行主键,则可以多选行后一次性设置

8.8.1.2 删除primary key约束

当不再需要约束时,可以将其删除。

在“对象资源管理器”中删除主键约束的方法有几种:

第一种:在打开的设计窗口中,单击工具栏的【删除主键】按钮,可以立即删除主键。

第二种:在打开的设计窗口中,右键菜单选择“索引/键”命令,或者单击工具栏的【管理索引和键】按钮,弹出该命令对话框。

选择需要删除的约束,点击【删除】按钮,再点击【关闭】,操作结束。

8.8.2 管理外键约束

使用SSMS工具操作界面,设置数据表的外键约束要比设置主键约束稍微复杂一点。

这里以水果信息表fruit与水果供应商表为例,介绍添加与删除外键约束的操作。

水果信息表fruit结构

字段名称

数据类型

备注

id

int

编号

name

varchar(20)

名称

price

decimal(6,2)

价格

origin

varchar(20)

产地

supplierid

int

供应商编号

remark

varchar(200)

备注

水果供应商表supplier结构

字段名称

数据类型

备注

id

int

编号

name

varchar(20)

名称

tel

varchar(15)

电话

remark

varchar(200)

备注

8.8.2.1 添加foreign key约束

在“对象资源管理器”中,添加外键的操作如下:

1、选择要添加的表fruit,在表设计界面右击鼠标,选项右键菜单“关系”命令;

2、打开“外键关系”对话框,在其中单击【添加】按钮;

3、即可添加选定的关系,然后选择“表和规范”,单击“表和规范”右侧的按钮;

4、打开“表和列”对话框,左边是主键表,右边是外键表;

5、这里要求给水果信息表添加外键约束,因此,供应商表是主键表,水果信息表是外键表。根据要求设置;设置完毕后单击【确定】按钮,完成外键约束的添加。

💡注意:
在为数据表添加外键约束时,主键表与外键表必须添加相应的主键约束,否则在添加外键约束的过程中,会弹出警告信息。
8.8.2.2 删除foreign key约束

在SSMS中删除外键约束很简单,按照添加外键约束的步骤,在含有外键约束的表中,找到并打开“关系”--“外键关系”窗口,在“选定的关系”列表中,选择要删除的外键约束,单击【删除】按钮,即可将其外键约束删除。

8.8.3 管理默认约束

在SSMS中添加和删除默认值约束非常简单,但需要注意,添加的数据类型要与字段的数据类型相匹配,如果是字符类型,需要添加相应的单引号。

1、进入SSMS工作界面,在“对象资源管理器”中,找到需要添加默认约束的表,右键打开设计界面;

2、单击要添加约束的列,这里选择origin列,展开“列属性”界面;

3、选择“默认值或绑定”选项,在右侧的文本框中输入默认值,这里输入“广西”;

4、单击【保存】按钮,完成默认约束的添加;

💡提示:
在“对象资源管理器”中,给表中的列设置默认值时,可以对字符串类型的数据省略单引号,系统会在保存时自动为其加上。

删除默认值在SSMS中跟添加的流程一样,只是把默认值清空即可。这里就不再赘述。

8.8.4 管理检查约束

在SSMS里添加检查约束:

1、在“对象资源管理器”中,找到需要添加的表,右键打开设计界面,再右键需要添加检查约束的列,这里选择price列,选择“check约束”命令;

打开“check约束”对话框,单击【添加】按钮,进入检查约束的编辑状态;

选择“表达式”,然后右侧输入检查约束的条件,这里输入“price>25 and price<80”;单击【关闭】按钮,关闭“check约束”对话框。

8.8.5 管理唯一约束

进入需要添加唯一约束的表设计界面,右键快捷菜单中选择“索引/键”菜单;

打开“索引/键”对话框,单击【添加】按钮,进入唯一约束的编辑状态;

这里为fruit表的name列添加唯一约束,设置“类型”为“唯一键”,单击“列”右侧按钮,打开“索引列”对话框,在其中设置列名为“name”,排序方式“升序”;

单击【确定】按钮,返回到“索引/键”对话框,在其中设置唯一约束的名称为“uq_fruit_name",单击【关闭】按钮,关闭“索引/键”对话框。

8.8.6 管理非空约束

在SSMS中管理非空约束就更简单方便,只需要在数据表的设计界面勾选“允许null值”即可。

相关文章:

  • 用 DeepSeek 高效完成数据分析与挖掘
  • 时序数据库IoTDB结合SeaTunnel实现高效数据同步
  • 浅谈未来汽车电子电气架构发展趋势中的通信部分
  • 码蹄杯真题分享
  • LangChain知识库管理后端接口:数据库操作详解—— 构建本地知识库系统的基础《二》
  • 前端现行架构浅析
  • masm32汇编实现扫雷进程注入
  • 深入理解 x86 汇编中的符号扩展指令:从 CBW 到 CDQ 的全解析
  • Chainlink Automation 深度解析与实战
  • 【算法】【优选算法】优先级队列
  • LUFFY(路飞): 使用DeepSeek指导Qwen强化学习
  • 27、基于map实现的简易kv数据库
  • 第二部分 方法,还是方法——“信管法则”的四大要点
  • 求解一次最佳平方逼近多项式
  • 28、元组的遍历
  • XXL-JOB——源码分析解读(1)
  • 勒让德多项式
  • yolov11与双目测距结合,实现目标的识别和定位测距(onnx版本)
  • 求解插值多项式及其余项表达式
  • 5.3.2_2二叉树的线索化
  • 网站开发工程师面试题/百度笔记排名优化
  • 给客户做网站建设方案/百度网址大全旧版
  • 手机网站设置方法/优化关键词的公司
  • 只做PC版网站/网站软文推广网站
  • 北京网站建设在线/性能优化大师
  • 珠宝行业网站建设/互联网运营推广