版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、第5章 数据表的管理与使用,知识导航,学习目标,理解: 使用企业管理器和T-SQL命令管理表中内容 使用企业管理器管理和维护表结构 数据完整性的概念。 掌握: 使用企业管理器和T-SQL命令创建表 使用T-SQL命令管理和维护表结构 数据完整性的操作,数据表的管理与使用,5.1数据表的操作 5.2数据完整性,5.1 数据表的操作,任务描述:数据库建立后,要建立和管理数据表。本任务主要使用企业管理器和T-SQL语句进行“RtvuStu”数据库中的学生信息表“Student”、课程信息表“Course”和成绩信息表“Results”的操作和管理。 任务目标:掌握使用企业管理器和T-SQL语句创建数
2、据库表;掌握管理表的内容,包括修改表结构、更改表名等;掌握表中数据的插入、修改和删除等操作。,5.1 数据表的操作,5.1.1 创建表 SQL Server 2000提供了两种创建表的方法 (1)使用企业管理器 (2)使用T-SQL命令。,5.1 数据表的操作,1使用企业管理器创建数据表 1)选择“开始”“程序”“Microsoft SQL Server”“企业管理器”命令,打开企业管理器。 2)展开“SQL Server组”,再展开要为其创建数据的“服务器”节点。 3)单击“数据库”项,在左边窗口的树型目录中,展开要建表的数据库“RtvuStu”。 4)右击“表”选项,在弹出的快捷菜单中选择
3、“新建表”命令,如图5-1所示。 5)在出现的表设计器窗口中定义表结构,依次填写表中包含的列名、数据类型、长度。在“允许空”部分设置该字段是否可以接受Null值,系统默认是“”,表示允许接受Null。若不允许字段为空(如学号字段S_ID),则可以单击“”将其去除,如图5-2所示。,5.1 数据表的操作,图5-1 使用企业管理器创建数据表,5.1 数据表的操作,图5-2 表设计器窗口,5.1 数据表的操作,6)单击工具栏上的“保存”图标,在弹出的“选择名称”对话框中,输入数据表的名称“Student”,单击“确定”按钮,如图5-3所示。 表被保存后,可以在任务列表中看到该表。双击该表名称弹出“表
4、属性”对话框,通过该对话框可以查看表的基本结构及其权限,如图5-4所示。,图5-3 “选择名称”对话框,图5-4 “表属性”对话框,5.1 数据表的操作,2使用T-SQL命令创建数据表 使用T-SQL语句在查询分析器中创建表,语法格式: Create Table 表名 (列名 列属性 列约束),,5.1 数据表的操作,1)打开企业管理器,在菜单栏中选择“工具”“SQL查询分析器”命令,打开“SQL查询分析器”窗口,在其编辑窗口输入如下语句: Use RtvuStu Go Create Table Course (C_ID char(8) primary key, Cname char(20),
5、 Credit tinyint ) Go,5.1 数据表的操作,2)命令输入完毕后,按“F5”键或者单击工具栏中的“运行”按钮,执行该命令。在消息窗口中显示“命令已成功完成”的信息,如图5-5所示。 3)运行成功后,如果不能在“查询分析器”的“对象浏览”窗口中看到所创建的数据表,在“对象浏览”窗口中单击鼠标右键,选择“刷新”命令,就可以看到所创建的数据表了。,图5-5 查询分析器执行结果,5.1 数据表的操作,5.1.2 修改表结构 SQL Server 2000提供了两种修改表结构的方法: (1)使用企业管理器; (2)使用T-SQL命令。,5.1 数据表的操作,1使用企业管理器修改表结构
6、1)打开企业管理器,展开“SQL Server组”,再展开要为其修改数据表结构的“服务器”节点。 2)选中要修改的数据库,如“RtvuStu”。 3)展开该数据库中的表节点,选中要修改的表,如“Student”,单击鼠标右键,从弹出的快捷菜单中选择“设计表”命令,随即打开的表设计窗口和创建表时所显示的表设计窗口相同,操作方法也相同,如图5-6所示。,图5-6 企业管理器之“设计表”命令,5.1 数据表的操作,4)可以在表设计窗口中修改各个字段的定义,重新设置字段名、字段长度、是否允许为空、是否为标识等。 5)可以添加新字段、删除字段、修改各种约束等。如图5-7所示。 6)修改完成后,进行保存。
7、,图5-7 设计表窗口,5.1 数据表的操作,5.1.3 删除表 SQL Server 2000提供了两种删除表的方法 (1)使用企业管理器 (2)使用T-SQL命令。,5.1 数据表的操作,1使用企业管理器删除数据表 1)打开企业管理器,展开SQL Server实例,展开“数据库”,展开要删除的表所属的数据库,如“RtvuStu”。 2)选中“表”,在企业管理器窗口的右边将弹出该数据库中所包含的所有系统表和用户表,选中要删除的表,按住“Ctrl”键可以进行多选,单击鼠标右键,选择“删除”命令,完成删除表操作,如图5-8所示。,图5-8 使用企业管理器“删除”表,5.1 数据表的操作,2使用T
8、-SQL语句删除数据表 使用T-SQL语句删除数据表的语法格式如下: Drop Table 表名,n,5.1 数据表的操作,5.1.4 表数据管理 表中的数据管理方法一般有两种: (1)使用企业管理器 (2)使用T-SQL语句。,5.1 数据表的操作,1使用企业管理器向表中插入数据 1)打开企业管理器,展开“SQL Server组”,再展开“服务器”节点,选中“RtvuStu”数据库。 2)展开该数据库中的表节点,选中“Student”表,单击鼠标右键,从弹出的快捷菜单中选择“打开表”“返回所有行”命令,如图5-9所示,随即打开数据录入窗口。在开始录入前,去掉外键约束,以免录入数据时出现违背数
9、据参照完整性的错误。,图5-9 在企业管理器中“打开表”,5.1 数据表的操作,3)录入数据后,关闭窗口,系统自动保存数据。数据录入完毕之后的效果如图5-10所示。,图5-10 表记录浏览器窗口,5.1 数据表的操作,2使用T-SQL语句向表中插入数据 使用Insert语句可以向数据表中插入数据格式如下: Insert Into 表|视图(列名列表) Values (值列表),5.1 数据表的操作,【例5-3】 打开查询分析器,使用T-SQL命令输入一条学生记录,输入以下内容: Use RtvStu Go Insert student Values(2009133030088,张三,男,1/2
10、/1972,计算机系),图5-11 查询分析器之插入语句“执行查询”,5.1 数据表的操作,3使用企业管理器修改数据表 1)打开企业管理器,展开SQL Server实例,接着展开“数据库 ”,再展开要修改数据的那个表所属的数据库,如“RtvuStu”。 2)选中“表”,在企业管理器窗口的右边,选择要修改的表,如“Student”,单击鼠标右键,在弹出的快捷菜单中选择“打开表”“返回所有行”命令。 3)将光标定位在要修改的记录上,对数据进行修改,操作方法和插入数据类似。 4)数据修改完毕后,关闭窗口,系统会自动保存修改。,5.1 数据表的操作,4使用T-SQL语句修改数据表 使用T-SQL语句来
11、修改记录的语法格式如下: Update表名 Set列名=表达式|Default|Null,n Where ,5.1 数据表的操作,【例5-4】 打开查询分析器,使用T-SQL命令将张三的姓名改为“张大三”,输入以下语句: Update student Set sname=张大三 Where sname=张三 Go Select * from student Go,图5-12 查询分析器之修改语句“执行查询”,5.1 数据表的操作,5使用企业管理器删除数据 1)打开企业管理器,展开SQL Server实例,接着展开“数据库”,再展开要修改数据的表,如“RtvuStu”。 2)选中“表”,在企业管
12、理器窗口的右边,选择要删除数据的表,如“Student”,单击鼠标右键,在弹出的快捷菜单中选择“打开表”“返回所有行”命令。 3)在弹出的表记录浏览器窗口中,可以选中某一条记录或按住鼠标左键连续选中多条记录,单击鼠标右键,在弹出的快捷菜单中选择“删除”命令,如图5-13所示。在弹出的系统提示对话框中单击“是”按钮,即可删除记录,如图5-14所示,图5-13 在表设计器中“删除”按钮,图5-14 “删除”确认对话框,5.1 数据表的操作,6使用T-SQL语句删除数据 使用T-SQL语句来删除记录的语法格式如下: Delete 表名 Where 条件 【例5-5】 使用T-SQL语句,删除学生“王
13、玉玲”的记录。 Use RtvuStu Delete Student Where sname=王玉玲 Go,5.2 数据完整性,任务描述:数据完整性保证了在数据库中存储数据的一致性和正确性,这对数据库管理系统很重要。如在“RtvuStu”数据库中,“Student”表的学生学号S_ID必须唯一,成绩表“Results”中必须是“Student”表中有的学号,S_ID才能有成绩。数据完整性关系到数据库系统中的数据是否准确、一致和可靠,对使用、管理和维护数据库是十分重要的。 任务目标:理解数据完整性的基本概念;掌握数据库完整性的操作,5.2 数据完整性,5.2.1 数据完整性概述 数据完整性有4种
14、类型: -实体完整性 -域完整性 -参照完整性 -用户定义的完整性。,5.2 数据完整性,1实体完整性 实体完整性要求表中的每一行必须是唯一的,它可以通过主键约束、唯一键约束、索引和标识等来实现,也称为行完整性。,5.2 数据完整性,2域完整性 域完整性也称为列完整性,用来保证数据库中数据取值的合理性,即输入数据的数据类型、格式以及有效范围是否正确,5.2 数据完整性,3参照完整性 参照完整性又称为引用完整性。它定义了一个关系数据库中,被参照表(主表)中的数据要与参照表(从表)中的数据保持一致。参照完整性基于外键和主键之间或外键和候选键之间的关系,通过外键约束和检查约束来实现,5.2 数据完整
15、性,4用户自定义完整性 由于每个用户的数据库都有自己独特的需求,所以系统必须有一种方式来实现定制自己的数据完整性。用户自定义完整性可以通过数据类型、规则、存储过程和触发器来实现,5.2 数据完整性,5.2.2 约束 约束是SQL Server提供的自动保持数据库中数据完整性的一种机制,它定义了可输入表或表的单个列中的数据的限制条件 在SQL Server中主要的约束有主键结束、外键约束、唯一性约束、检查约束、默认约束等,5.2 数据完整性,1主键约束 表的一列或几列组合的值在表中唯一地指定一行记录,这样的一列或多列称为表的主键,通过它可强制表的实体完整性.,5.2 数据完整性,在一个没有定义主
16、键的表上添加一个主键,可以通过以下方法实现。 (1)使用企业管理器创建主键 1)打开企业管理器,展开SQL Server实例,展开“数据库”,展开要设置主键的那个表所属的数据库,如“RtvuStu”。 2)选中“表”,在企业管理器窗口的右边选择要设置主键的表,如“Student”,单击鼠标右键,在弹出的快捷菜单中选择“设计表”命令,如图5-15所示。,图5-15 企业管理器之“设计表”命令,5.2 数据完整性,3)在弹出的表设计器窗口中进行表的修改,可以选中某一个字段或按住“Ctrl”键选中多个字段,单击鼠标右键,选择“设置主键”命令。 4)保存所做的修改,关闭表设计器窗口,如图5-16所示,
17、图5-16 表设计器之“设置主键”命令,5.2 数据完整性,(2)使用SQL语句创建主键 定义单列主键的语法格式如下: Create Table 数据表名 (列名 数据类型 Constraint 约束名 Primary key) 对已有的数据表,重新定义主键语法格式如下: Alter Table 数据表名 Add Constrain约束名 Primary key,5.2 数据完整性,2外键约束 外键约束定义了表与表之间的关系。当一个表中的一列或多列的组合和其他表中的主键定义相同时,就可以将这些列或列的组合定义为外键,并设定与它关联的表或列,5.2 数据完整性,(1)使用企业管理器创建外键 使用
18、企业管理器创建外键的具体步骤如下: 1)打开企业管理器,展开SQL Server实例,接着展开“数据库”,再展开要设置外键的表所属的数据库,如“RtvuStu”。 2)选中“表”,在企业管理器窗口的右边选择要设置外键的表,如“Student”,单击鼠标右键,在弹出的快捷菜单中选择“设计表”命令,如图5-17所示,图5-17 企业管理器之“设计表”命令,5.2 数据完整性,3)在弹出的表设计器窗口中,单击鼠标右键,选择“关系”命令,如图5-18所示。在弹出的“属性”对话框中单击“新建”按钮,可以设定关系名、主键表、外键表以及相关联的字段,如图5-19所示 4)单击“关闭”按钮,关闭“属性”对话框
19、,保存所做的修改,关闭表设计器的窗口。,5.2 数据完整性,图5-18 设计表之“设置主键”命令,图5-19 “属性”对话框之“关系”选项卡,5.2 数据完整性,(2)使用T-SQL语句定义外键约束 使用T-SQL语句定义外键约束语法格式如下: Alter Table 表名 Add Constraint 外键名 Foreign key (创建外键的列名) References 主键表名 (所关联的列名),5.2 数据完整性,【例5-7】 将“Student”表中的S_ID字段设置为“Results”表的外键。其中,S_ID为“Student”的主键。 Use RtvuStu Go Alter
20、Table Results Add constraint fk_Results_student Foreign key (S_ID) References student(S_ID) Go,5.2 数据完整性,3唯一性约束 唯一性约束是指不允许数据表在指定列上具有相同的值,但允许Null。唯一性约束与主键约束的区别在于:唯一性约束主要用于在非主键的一列或多列上要求数据唯一;唯一性约束允许该列上存在一个Null,而主键绝不允许;可以在一个表上创建多个唯一约束,而在一个表上只能设置一个主键,5.2 数据完整性,(1)使用企业管理器创建唯一性约束 使用企业管理器创建唯一性约束的具体步骤如下: 1)打
21、开企业管理器,展开SQL Server实例,接着展开“数据库”,再展开要设置唯一性约束的表所属的数据库,如“RtvuStu”。 2)选中“表”,在企业管理器窗口的右边选择要设置唯一性约束的表,如“Student”,单击鼠标右键,在弹出的快捷菜单中选择“设计表”命令,5.2 数据完整性,3)在弹出的表设计器窗口中单击鼠标右键,在弹出的快捷菜单中,选择“索引/键”命令,如图5-20所示 4)在弹出的“属性”对话框中单击“新建”按钮,可以设置约束名,选中“创建Unique”复选框,则可以创建唯一性约束,图5-20 设计表之“索引/键”命令,5.2 数据完整性,(2)使用T-SQL语句创建唯一性约束
22、使用T-SQL语句定义唯一性约束语法格式如下: Add Constraint 约束名 Unique(列名),5.2 数据完整性,【例5-8】 为学生表“Student”的姓名“Sname”列创建唯一性约束。 在查询分析器中输入以下语句: Use RtvuStu Go Alter Table Student Add Constraint stu_name unique(Sname) Go,5.2 数据完整性,4检查约束 检查(Check)约束对输入列或整个表中的值设置检查条件,以限制输入值,保证数据库的数据完整性,5.2 数据完整性,(1)使用企业管理器创建Check约束 使用企业管理器创建Ch
23、eck约束的具体步骤如下: 1)打开企业管理器,展开SQL Server实例,接着展开“数据库”,再展开要创建Check约束的表所属的数据库,如“RtvuStu”。 2)选中“表”,在企业管理器窗口的右边选中要创建Check约束的表,如“Student”,单击鼠标右键,在弹出的快捷菜单中选择“设计表”命令,5.2 数据完整性,3)在弹出的表设计器窗口中单击鼠标右键,在弹出的快捷菜单中选择“Check约束”命令,如图5-22所示。在弹出的“属性”对话框中单击“Check约束”选项卡,单击“新建”按钮,可以设定约束的名称和约束表达式,在“约束表达式”编辑框中编写相应的Check约束表达式,如图5-
24、23所示。单击“关闭”按钮结束Check约束的设计,5.2 数据完整性,图5-22 表设计器之“Check”约束命令,图5-23 创建Check约束,5.2 数据完整性,(2)使用T-SQL语句实现检查约束 使用T-SQL语句定义检查约束语法格式如下: Add Constraint 约束名 Check (逻辑表达式),5.2 数据完整性,【例5-9】 在“Student”表中,增加Sex属性列只能取“男”或者“女”的Check约束。 在查询分析器中输入以下语句: Use RtvuStu Go Alter Table Student Add Constraint S_Sex check (sex
25、 in(男,女) Go,5.2 数据完整性,5默认约束 默认约束通过定义列的默认值或使用数据库的默认值对象绑定表的列,以确保在没有为某列指定数据时,指定列的值。默认值可以是常量,也可以是表达式,还可以为Null值,5.2 数据完整性,(1)使用企业管理器创建 使用企业管理器创建默认约束的具体步骤如下: 1)打开企业管理器,展开SQL Server实例,接着展开“数据库”,再展开要创建默认约束的表所属的数据库,如“RtuvStu”。 2)选中“表”,在企业管理器窗口的右边选择要设置默认约束的表,如“Student”,单击鼠标右键,选择“设计表”命令。 3)在表设计器窗口中选中要设置默认约束的字段
26、,在表设计器下方的“列”属性部分设置“默认值”的值,如图5-24所示,5.2 数据完整性,图5-24 表设计器之“默认值”属性,5.2 数据完整性,【例5-10】 在“Student”表中的Sex列上,添加默认值约束,默认值为“男”。 在查询分析器上输入以下语句: Use RtvuStu Go Alter Table Student Add Constraint M_sex default 男 for sex Go,5.2 数据完整性,5.2.3 规则 规则是数据库中对表的列或用户定义数据类型中的值的规定和限制,是单独存储的独立的数据库对象。规则与其作用的表或用户定义数据类型是相互独立的,即表
27、或用户定义的对象的删除、修改不会对与之相连的规则产生影响 规则的创建、查看、绑定和删除等操作可在企业管理器中进行,也可利用T-SQL语句实现,5.2 数据完整性,1使用企业管理器创建规则对象 使用企业管理器,在“RtvuStu”数据库中创建一个名为RL_ID的规则对象,要求每个新加入或修改的课程号为8位数字。 1)打开企业管理器,展开SQL Server实例,选中要创建规则的数据库“RtvuStu”,选中“规则”节点,单击鼠标右键,在弹出的快捷菜单中,单击“新建规则”命令。 2)在弹出的“规则属性”对话框中,输入名称RL_ID和值“y Like0-9+ 0-9 +0-9+0-9+0-9+0-9
28、+0-9+0-9”,5.2 数据完整性,3)单击“确定”按钮,完成创建规则对象的操作,如图5-25所示。,图5-25 新建规则,5.2 数据完整性,2使用SQL语句创建规则对象 使用T-SQL语句创建规则对象的语法如下: Create Rule 规则名称 As 条件表达式,5.2 数据完整性,【例5-11】 使用T-SQL语句,创建性别规则sex_rule,将限定绑定该规则的列所能插入的数据范围是“男”、“女”。 Create rule sex_rule As sex in(男,女),5.2 数据完整性,3查看和修改规则 (1)在企业管理器查看和修改规则 在企业管理器的数据库对象中选择“规则”
29、对象,可从右窗格中看到规则的大部分信息,如图5-26所示。,图5-26 企业管理器中查看规则,5.2 数据完整性,(2)使用存储过程sp_helptext查看规则 使用sp_helptext系统存储过程可以查看规则的文本信息,如图5-27所示,图5-27 查询分析器中查看规则,5.2 数据完整性,4绑定和解绑定规则 创建好规则对象后,不能直接使用,必须绑定到表的列上或用户自定义的数据类型上才能使用 绑定和解绑定操作既可以使用企业管理器完成,也可以通过系统存储过程来实现,5.2 数据完整性,(1)使用企业管理器绑定和解绑定规则对象 1)打开企业管理器,展开SQL Server实例,选中要操作的数
30、据库“RtvuStu”,单击“规则”节点。 2)在右窗格中,选中sex_rule规则对象,单击鼠标右键,在弹出的快捷菜单中选中“属性”命令,打开“规则属性”对话框。 3)在打开的“规则属性”对话框中,单击“绑定列”按钮,弹出“将规则绑定到列”对话框。 4)在该对话框中的“表”下拉列表框中,选定相应的表和要绑定的列,然后单击“添加”按钮,再单击“确定”按钮完成操作,5.2 数据完整性,5)解除绑定操作,只需按以上步骤,选中“绑定列”列表框中相应的列,然后单击“删除”按钮即可,如图5-28所示,图5-28 将规则绑定到列,5.2 数据完整性,(2)使用系统存储过程绑定和解除绑定规则对象 系统存储过
31、程sp_bindrule可以绑定一个规则到表的一个列或一个用户定义数据类型上,其语法格式如下: sp_bindrule 规则名称,表名.字段名|用户自定义数据类型 解除规则的绑定可以使用sp_unbindrule存储过程。 sp_unbindrule存储过程的语法格式如下: sp_unbindrule 规则名称,表名.字段名|用户自定义数据类型,5.2 数据完整性,5删除规则 可以在企业管理器中选择规则,单击右键,从快捷菜单中选择“删除”命令,即可删除规则,也可使用Drop Rule语句删除当前数据库中的一个或多个规则。其语法格式如下: Drop rule规则名称,5.2 数据完整性,5.2.
32、4 默认 如果在插入行时没有输入列的值,则默认值指定列中所使用的值。默认值可以是任何取值为常量的对象。 在SQL Server中,有两种使用默认值的方法: (1)使用默认值约束 (2)使用默认对象。,5.2 数据完整性,1创建默认对象 (1)使用企业管理器创建默认对象 使用企业管理器创建默认对象操作步骤如下: 1)打开企业管理器,展开SQL Server实例,打开数据库,选择“默认”选项,然后单击鼠标右键,在弹出的快捷菜单中选择“新建默认”命令。 2)此时会打开“默认属性”对话框,如图5-29所示,输入默认对象的名称和默认值。,5.2 数据完整性,图5-29 “默认属性”对话框 3)单击“确定”按钮,创建一个默认对象。,5.2 数据完整性,(2)使用Create Default创建默认对象 Create Default语句的语法格
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2026江西南昌大学招聘科研助理1人(八)模拟试卷附参考答案详解(基础题)
- 回收废弃热固性环氧树酯及玻璃纤维再生制备层压板的方法与试验研究
- 高温后混凝土静动态力学性能及微观特性研究
- AI技术助力传统草编文化数字化传播
- 2025年中国医用棉签机数据监测报告
- 2026年内蒙古自治区中考化学试卷(含答案及解析)
- 2025年中国儿童免疫系统数据监测报告
- 2025年中国二氧化碳压力控制系统数据监测报告
- 2025年中国PEPVC塑料管数据监测报告
- 【三上英语】沪教牛津版三年级上册英语 寒假作业
- 2026年浙大附中 分班考试试题及答案
- 电气工作票技术规范
- 再生水利用项目可行性研究报告立项
- 体育社会组织建设与管理
- T-CBIA 010-2024 营养素饮料标准
- 2024年广东省普通高中学业水平合格性地理试卷(1月份)
- DZ∕T 0033-2020 固体矿产地质勘查报告编写规范(正式版)
- 思念混声合唱简谱
- 投资回报模型构建及应用
- 肌筋膜触发点及肌筋膜疼痛综合征 完整版
- 23S519 小型排水构筑物
评论
0/150
提交评论