界面方式创建、修改和删除关系表以及定义表的完整约束
就是用SSMS工具图形化地创建及维护关系表
1、创建表:
在SSMS中,图形化地创建表的步骤如下图所示,
第一步:打开SSMS,展开需要创建表的数据库,然后再在表的节点上鼠标右击在新弹出来的单中选择'新建表'命令,在窗口右边将出现表设计器窗格;效果如下图,
第二步:在表设计器窗格中定义表的结构,针对每一个字段进行设置,包括'列名'、'数据类型'、'允许为空'
第三步:保存表的定义;效果如下图(以下介绍两种保存的方法)
或者是
2、定义完整性约束:
(1)主码约束:
首先,先选中要定义主码的列,然后单击工具栏上的'设置主键'按钮(或者是在要定义主码的列上右击鼠标,在弹出的菜单中选择'设置主键'命令),效果如下图,
注意:如果定义多个列组成的组成的主码,则必须先同时选中这些列,然后再单击'设置主键'按钮
(2)外码约束:
那外码是什么呢?
一般在有2张表或多张表的关系时,其中一张表的主码在另外一张表中被引用,那么它就是另外一张表的外码;
举例:比如说,有两张表F1(a,b,c)和F2(x,y,z,a),其中a是F1表的主码,x是F2的主码,但是a在F2关系表中存在着一种联系,所以这时就把a叫做F2的外码
设置外码步骤:
首先,再创建上course表和sc表(前面的博客有这两张表的信息),然后在sc表的基础上开始定义外码
第一步:在工具栏上单击'关系'按钮,如下图所示,出现下图对话框,再点击左下方的'添加'
第二步:点击'添加'后出现下图的对话框,再在【常规】->表和列规范处的右边点击'三个点'按钮
出现表和列的对话框
第三步:表和列的对话框中设置主键表和外键表;其中,左边的主键表下拉菜单表中选择外码所引用的主码所在表,再在主键表下边的网格中,选择外码所引用的主码列;同理,右边的外键表下拉菜单表中选择外码所在表,再在外键表下边的网格中,第一行选择外码所引用的主码列(如果系统自动还显示多余的列,但是目前定义的外码不包含对应的这些列,则应该选择'无'),效果如下图;
第四步:在表和列的对话框中的下方单击'确定'后,外键关系的设计器
第五步:点击工具单上的'保存'按钮,出现下图的对话框,再点击下方的'是'按钮
(3)unique约束:(把student中的SID列上定义unique约束为列)
第一步:在student表的设计器界面中,上面的工具栏中选择'管理索引和键'的按钮,弹出索引/键对话框出来
第二步:在索引/键对话框的左下方先点击添加,左边的空白框就多呢一个IK_Student*,然后再点击IK_Student*;再看左边的【常规】那一栏,分别把'类型'右边的'索引'选项在下拉列表中选择'唯一键'
第三步:然后单击在'索引'项下面的Sno(ASC)项,它的右边就出现一个'三个点'按钮,再单击按钮弹出'索引列'对话框;在列名的下拉列表中选择要建立唯一值约束的列
第四步:关闭索引/键对话框,再保存
(4)default约束:
以student表中的Ssex列为例:首先,选中Ssex列,然后再下面的列属性部分的'默认值或绑定'对应的文本框中输入 男,再单击保存
(5)定义check约束:
第一步:单击在工具栏上的'管理check约束',弹出'check约束'对话框,在此对话框上单击'添加'按钮
第二步:在【常规】->表达式右边的空白部分上单击鼠标,然后单击右边出现的'三个点'按钮,弹出check约束表达式对话框,写上check的表达式,再点确定
第三步:保存设置
3、修改表:
展开相应数据库在表的节点上,再展开表在对应的具体表节点上鼠标右击选'设计'命令,然后就可以进行添加新列、修改列的数据类型、删除列、添加约束、删除约束
注意:如果删除的是check、default约束,则展开表下的'约束'节点;如果删除的是主码、外码和唯一值约束,则展开表下的'键'节点,然后在要删除的约束上右击鼠标,在弹出的菜单中选择删除命令
特别提醒:如果被删除的主码约束有外码引用,则必须先删除相应的外码,然后再删除主码
4、删除表:
展开要删除的表所在的数据库,再展开其下的'表'的节点,在要删除的表上右击鼠标,选择删除命令