数据库系统原理上机实验
预备知识
一、本实验指导书采用的数据库例子(见本课程参考用书《数据库系统概论》(第三版)P59) Student-Course-SC数据库:一个学生可以修多门课程,一门课程可以被多个学生选修,则学生、课程之间的E-R图如下:
转化为关系数据模型:
Student(Sno, Sname,Ssex,Sage,Sdept)
Course(Cno,Cname,Cpno,Ccredit)
SC(Sno,Cno,Grade)
物理数据模型如下:
索引:对表Course中的字段Ccredit创建降序索引,索引名为IX_Course_Ccredit;
检查约束:对表Student中的字段Sno创建检查约束LEN(Sno)>4,约束名为CK_Student_Sno;
图表:建立名为“SC_Diagrame1”的图表,反映“SC”、“Student”、“Course”三张表间的关系;
备份和维护计划:为自己所建立的数据库创建备份和维护计划。
二、实验过程中,除了通过实验讲义中的练习熟悉SQL Server2000系统外,同学们必须完成一个数据库应用系统的大作业,题目为“简单的学生选课系统”,编程语言自选,但后台数据库必须采用SQL Server2000。
三、安排的实验总课时为16(不包括编程),实验一至实验四均为2课时,实验五为8课时。
实验一 开始使用SQL Server2000
一、实验目的
1、学会安装SQL Server 2000系统:
2、掌握Enterprise Manager的基本用法,熟悉SQL Server 2000环境;
3、掌握使用Enterprise Manager创建数据库、表、索引、关系、检查约束、数据库图表以 及管理SQL Server的方法。
二、实验内容
l、安装SQL Server 2000系统(示例:在Windows2000 Professional上安装SQL Server 2000(个人版)
2、启动Enterprise Manager,浏览分层结构
3、创建数据库
4、创建表
5、创建索引
6、创建关系
7、创建检查约束
8、刨建数据库图表
9、管理SQL Server
三、实验步骤
l、在Windows2000 Professional上安装SQL Server 2000个人版
请看这部分的演示SQL Server 20## setup
2、启动Enterprise Manager,浏览分层结构
在启动Enterprise Manager之前,检查服务管理器,确保服务器正在运行;
现在,选择“开始/程序/Microsoft SQL Server/企业管理器(Enterprise Manager)”,这时,将出现Enterprise Manager窗口;
Enterprise Manager窗口又被分为两个大的窗格,在左边的窗格——树(Console Tree)中,以分层结构显示了Enterprise Manager所能识别的所有SQL Server对象,可以通过单击“展开”图标展开分层结构中的项目(当然,也可以通过双击该项目完成这个功能),相应地,可以通过单击“折叠”图标折叠分层结构中的项目,浏览SQL Server对象;
注意:当单击或双击某个项目时,它所包含的子项目还将显示在右边的大窗格中;
在左边的窗格——树(Console Tree)中,找到“数据库”,展开该对象,其中,“master”、“model”、“msdn”、“tempdb”为“系统数据库”,注意:只许看,不许动!
展开除系统数据库以外的其它数据库,浏览数据库对象。
请看这部分的演示Starting Enterprise Manager
完成这部分的作业:在实验报告中列出你所浏览到的主要的SQL Server对象和数据库对象
3、创建数据库
3.l创建新的数据库
最简单的方法是使用“创建数据库向导”(Create Database Wizard);
定位到服务器的“数据库”文件夹,单击企业管理器工具栏上的“运行向导”(Wizard)按钮,这时将出现“选择向导”(Select Wizard)对话框;
在该对话框的“数据库”(Database)区中.选择“创建数据库向导”(Create Database Wizard),单击“确定”,这时将显示向导的第一个页面;
单击“下一步”,这时将显示一个请求新数据库名称和位置的页面;
在“数据库名称”(Database name)字段中键入你想要的数据库名称(如:MySC);
单击“数据库文件位置”(Database file location)字段旁的“浏览”(Browse)按钮,更 改数据库文件的位置(默认位置为安装该服务器的文件夹MSSQL/data),这时将显示一个请求新位置的对话框,定位到你想要的文件夹(如,D:\myDatabase\):
单击“事务日志文件位置”(Transaction log file location)字段旁的“浏览”(Browse) 按钮,更改事务日志的位置,这时将显示一个请求新位置的对话框。定位到你想要的文件夹 (如,D:\myTransactionLog\):
注意:实际应用中你应当将事务日志存放在一个与数据库文件不同的位置,最好在不同的机器上!
单击“下一步”,这时将显示一个请求数据库文件名称和初始大小的页面,接受默认值
单击“下一步”,这时将显示一个页面.让你选择数据库文件是自动增长,还是仅在你扩大它(们)时增长。接受默认设置;
单击“下一步”,这时将显示一个请求事务日志名称和初始大小的页面,接受默认值;
单击“下一步”,这时将显示一个页面,让你选择是否让事务日志文件自动增长,接受默认设置;
单击“下一步”,这时将显示一个确认你所做选择的页面;
单击“完成”,这时向导将创建数据库及事务日志文件,然后询问是否为新数据库创建一个“维护计划”:
单击“否”,这时将关闭该向导。
3、2设置数据库属性
注意:重命名数据库不能在“企业管理器”中进行!
.在“树”窗格中选定“MySC”数据库(即刚才建好的那个库);
.单击工具栏上的“属性”按钮,这时将显示该数据库的“属性”对话框;
.单击“数据文件”选项卡,这时将显示数据库的数据文件的属性;
.将其“增长百分比”设为20%;
.单击“确定”,这时SQLServer将设置新的属性,并关闭“属性”对话框;
3、3删除数据库
.在“树”窗格中选定“MySC”数据库;
按“Delete”键,这时将显示一条要求你确认删除的消息;
.单击“否”(若单击“是”,将删除该数据库及其所有相关的引用!)。
请看这部分的演示Creating Database
完成这部分的作业:创建自己的“学生——课程”数据库
4、创建表
4、1建新表 .
.定位到“MySC”数据库的“表”文件夹,这时将显示现有表的列表;
.单击工具栏上的“新建”按钮,这时将打开“表设计器”;
.单击工具栏上的“属性”按钮,这时将打开该表的“属性”对话框;
.更改“表名”为“Student”;
.单击“关闭”,这时将关闭“属性”对话框。
4、2为表添加列
4、2、l为表添加数字型列
在“列名”单元格中键入“Sage”,然后按“Tab”键,这时SQL Server建议将“char” 作为数据类型;
将数据类型改为“tinyint”,这时SQL Server将把列的长度设为“1”.并启用“默认值”、 “标识”、“公式”字段;
在“描述”单元格中键入“学生的年龄”。
提示:为列添加描述是SQL Server 2000中新增的功能。
4、2、2为表添加字符型列
在“列名”单元格中键入“Sno”,然后按“Tab”键,这时SQL Server建议将“char”作为数据类型;
.把该列的长度改为“5”;
注意:一个英文字母占l字节,一个汉字占2字节!
.取消选中“允许空”复选框:
注意:“Sno”是主键列,唯一地标识一条记录,显然不可为“空”!
.在“描述”单元格中键入“学生的学号”。
4、2、3为表添加标识列
提示:“标识值”将唯一标识每一行。为表添加标识列后,插入到该表的新行将被自动添加“标识值”。
.在“列名”单元格中键入“Identity”,然后按“Tab”键,这时SQL Server建议将“char”作为数据类型;
将数据类型改为“decimal”,这时SQL Server将把列的长度设为“9”,并启用“精度”、“小数位数”、“标识”字段;
.取消选中“允许空”复选框;
提示:若忘记做这一步,则在后面设置完“标识”字段后会自动完成该步骤。
注意:“标识值”显然不可为“空”!
在“描述”单元格中键入“标识列”;
.将“标识”字段改为“是(不用丁复制)”,这时SQL Server将建议把字段“标识种子”和“标识递增量”的值都设为l,接受该设置。
提示:“标识种子”为该表的第一行被指定的标识值,而标识值将在“标识种子”的基础上按“标识递增量”增加。
4、2、4为表添加日期列
.在“列名”单元格中键入“MyDate”.然后按“Tab”键,这时SQL Server建议将“char”作为数据类型;
.将数据类型改为“datetime”,这时SQL Server将把列的长度设为“8”;
.在“描述”单元格中键入“日期列”。
4、2、5保存和关闭表
.单击“表设计器”’工具栏上的“保存”按钮,这时SQL Server将保存表的定义;
.关闭“表设计器”窗口。
4、3管理表
4、3、l修改列
(1)、重新命名列
在“树”中选定“MySC”数据库的“表”文件夹,这时将在“Details Pane”窗格中显示现有表的列表;
.右击“Details Pane”中的“Student”表,然后选择“设计表”,这时SQLServer将打开“表设计器”;
-选定“列名”单元格中的“Identity”,然后键入“MyIdentity”,这时SQL Server将更改该列的名称;
.单击“表设计器”工具栏上的“保存”按钮,保存所做的更改。
(2)、删除列
. 通过单击列名称左边的灰框来选定”MyDate”列;
.按“Delete”键,这时SQL Server将删除该列;
.单击“表设计器”工具栏上的“保存”按钮,保存所做的更改;
.关闭“表设计器”窗口.
4、3、2修改表
(1)、重新命名表
.在“树”中选定“MySC”数据库的“表”文件夹,这时将在“Details Pane”窗格中显示现有表的列表;
. 右击“Details Pane”中的“Student”表,然后选择”重命名”;
. 键入“NewStudent”,然后按“确定”键。这时SQLServer将显示一个“重命名”对话框,警告“更改表的名称将会使其他对象中对该表的引用失效”;
.单击“查看相关性”,显示可能会受到影响的对象,这时 SQL Server将打开“相关性”对话框;
.关闭该对话框;
.单击“重命名”对话框中的“否”,不改变原有的表名。
(2)、删除表
.选定“Details Pane”中的“Student”表:
.按“Delete”键,这时SQL Server将显示“除去对象”对话框:
提示:可以通过单击“显示相关性”,显示可能会受到影响的对象;
.单击“取消”,暂不删除该表。
注意:删除表时,将从数据库中删除该表及其所有的数据,恢复的唯一方法是使用数据库备份。
请看这部分的演示Creating Table
完成这部分的作业:按“预备知识”的要求创建“Student”、“Course”、“SC”表。
5、创建索引
5、1创建新的索引
5、1、1使用“创建索引向导”创建索引
.从“树”中定位到“Mysc”数据库,这时SQL Server将在“Details Pane”窗格中显示数据库对象的列表;
单击企业管理器工具栏上的“运行向导”(Wizard)按钮,这时将出现“选择向导”(Select Wizard)对话框;
在该对话框的“数据库”(Database)区中,选择“创建索引向导”(Create Index Wizard),单击“确定”,这时将显示向导的第一个页面;
单击下一步”,这时将显示一个页面,请求创建索引所需的数据库和表;
.确保选定的数据库为“MySC”,并选定Student作为表名;
.单击“下一步”,这时向导将显示该表的列;
.单击“Sname”和“Sdept”列的“包含在索引”单元格,以此在索引中包括它们;
单击“下一步”,这时向导将显示一个请求索引属性的页面;
.接受默认值,单击“下一步”,这时向导将显示一个确认你所做选择和请求索引名称的页面;
.选定“Sdept”字段,然后单击“上移”按钮,更改索引的字段顺序(当然,你可以随意更改索引字段的顺序,这里的指示仅作演示之需);
.单击“完成”,这时向导将显示一条确认已经创建索引的消息。
5、1、2创建主键索引
注意:SQL Server将在你定义表的主键时自动创建一个称为“主键索引”的聚集索引(有时又称“聚簇索引”)。在一张表上至多只能建立一个聚集索引!
.在“树”中选定“MySC”数据库的“表”文件夹,这时将在“Details Pane”窗格中显示现有表的列表;
.右击“Details Pane”中的“Student”表,然后选择“设计表”,这时SQL Server将打开“表设计器”;
.通过单击列名左边的灰框来选定网格中的“Sno”列。这时SQL Server将选定该列;
.单击“表设计器”工具栏上的“设置主键”按钮,这时SQL Server将把选定的列设置为主键:
. 单击“表设计器”工具栏上的“保存”按钮,保存所做的设置并关闭窗口。
5、l、3创建简单索引
.右击“Details Pane”中的“SC”表,然后选择“设计表”,这时SQL Server将打开“表设计器”;
.单击“表设计器”工具栏上的“管理索引/键”按钮,这时SQL Server将打开该表的“属性”对话框,其中显示“索引/键”属性页;
提示:也可以通过单击“属性”按钮.打开“属性”对话框,然后单击“索引/键”选项卡,
完成这个步骤。
单击“新建”.这时SQL Server将建议把“PK_SC”作为索引名,把“Sno”作为索引列;
提示:即把“IX表名”作为索引名,把表中第一列作为索引列,故是你建表时添加列的次序决定了当前的显示,若因此而与指示的显示不同,不必介意。
. 可将索引名改为“IX__SC_Grade”;
.通过从组合框中选择列来把索引列更改为“Grade”;
.选中“创建UNIQUE”复选框,创建“唯一的索引”;
.选中“索引”选项;
提示:可以根据需要选中“创建UNIQUE”复选框,创建“唯一的索引”。它确保对于索引
中定的列,不会在一个表的两个列中包含重复的数据。
. 单击“关闭”.这时SQL Server将关闭“属性”对话框:
. 单击“表设计器”工具栏上的“保存”按钮,保存所做的设置并关闭窗口。
5、l、4创建组合索引
右击"Details Pane”中的“Student”表,然后选择“设计表”,这时SQLServer将打开“表设计器”
单击“表设计器”工具栏上的“管理索引/键”按钮,这时SQLServer将打开该表的“属性”对话框.其中显示“索引/键”属性页;
单击“新建”,这时SQL Server将建议把“IX_Student”作为索引名,把“Sage”作为索引列;
通过单击“列名”单元格,然后从组合框中选择它,将“Ssex”添加到索引中(此时的“列名”中已有了两个索引列了);
.单击“关闭”,这时SQL Server将关闭“属性”对话框;
.单击“表设计器”工具栏上的“保存”按钮,保存所做的设置并关闭窗口。
5、2维护索引
5、2、l修改索引
(1)重新命名索引
.右击“Details Pane”中的“Student”表.然后选择“设计表”,这时SQL Server将打开“表设计器“;
.单击“表设计器”工具栏上的“管理索引/键”按钮,这时SQL Server将打开该表的“属性”对话框,其中显示“索引/键”属性页;
在“选定的索引”组合框中选定“student_index_1”,这时SQL Server将显示该索引的详细信息;
可将索引名改为“Ix_Student_Sage&Ssex”;
.单击“关闭”,这时SQLServer将关闭“属性”对话框:
.单击“表设计器”工具栏上的“保存”按钮,保存所做的设置。
(2)更改索引中的列
. 确保在“Student”表的设计器里
.单击“表设计器”工具栏上的“管理索引/键”按钮,这时SQL Server将打开该表的“属性”对话框,其中显示”索引/键”属性页;
.在“选定的索引”组合框中选定“IX_Student”,这时SQL Server将显示该索引的详细信息;
.在“列名”字段中选定“Sdept”单元格,然后将索引列更改为“Ssex”;
.单击“关闭”,这时SQL Server将关闭“属性”对话框;
.单击“表设计器”工具栏上的“保存”按钮,保存所做的设置并关闭窗口。
5、2、2删除索引
.确保在“Student”表的设计器里
.单击“表设计器”工具栏上的“管理索引/键”按钮,这时SQL Server将打开该表的“属性”对话框,其中显示“索引/键”属性页;
.在“选定的索引”组合框中选定“Ⅸ_Student”,这时SQL Server将显示该索引的详细信息:
.单击“Delete”按钮,这时SQL Server将删除该索引;
. 单击“关闭”,这时SQL Server将关闭“属性”对话框;
.单击“表设计器”工具栏上的“保存”按钮,保存所做的设置并关闭窗口。
请看这部分的演示Creating Index
完成这部分的作业:按“预备知识”的要求创建索引。
注意:切勿遗漏各表的主键!
6、创建关系
6、1创建一个关系
提示:使用SQL Server可以直接建立一对一、一对多关系,且这两种关系的创建方式是完全相同的,SQL Server将根据在外键表中指定的列来决定关系的类型。而多对多关系是通过“连接表”来创建的,连接表由关系中的一个表的主键组成。在表级上,关系是通过包括一个多方表(称为“外键表”)的一方表(称为“主键表”)中的唯一标识符(通常情况下为“主键”)来模式化的.
.右击“Details Pane”中的“SC”表,然后选择“设计表”,这时SQL Server将打开“表设计器”;
.单击“表设计器”工具栏上的“管理关系”按钮,这时SQL Server将打开该表的“属性”对话框,其中显示“关系”属性页;
.单击“新建”,这时SQLServer将建议把“Details Pane”中的表格列表的第一个表用于新的关系;
.选择“Course”作为主键表,这时SQL Server建议将“FK_SC_Course”作为关系名;
. 选择“Cno”作为主键字段;
. 选择“Cno”作为键键字段;
.单击“关闭”,这时SQL Server将关闭“属性”对话框;
.单击“表设计器”工具栏上的“保存”按钮,这时SQL Server将显示一个对话框,要求确认是否将对这两个表所做的更改保存到你的数据库中;
.单击“是”,这时SQLServer将创建关系;
.关闭“表设计器”窗口。
6、2维护关系
6、2、l重命名关系
.右击“Details Pane”中的“SC”表,然后选择“设计表”,这时SQL Server将打开“表设计器”:
.单击“表设计器”工具栏上的“管理关系”按钮,这时SQL Server将打开该表的“属性”对话框,其中显示“关系”属性页;
.在“选定的关系”组合框中选定“FK_SC_Course”,这时SQL Server将显示该关系的详细信息;
.选定“关系名”字段中的文本,然后键入“DeleteMe”;
.单击“关闭”,这时SQL Server将关闭“属性”对话框;
.单击“表设计器”工具栏上的“保存”按钮,这时SQL Server将显示一个对话框.要求确认是否将对这两个表所做的更改保存到你的数据库中;
.单击“是”,这时SQL Server将创建关系;
.关闭“表设计器”窗口。
6、2、2删除关系
.右击“Details Pane”中的“SC”表,然后选择“设计表”,这时SQLServer将打开“表设计器”;
.单击“表设计器”工具栏上的“管理关系”按钮,这时SQLServer将打开该表的“属性”对话框,其中显示“关系”属性页;
.在“选定的关系”组合框中选定“DeleteMe”,这时SQL Server将显示该关系的详细信息; ’
.单击“删除”按钮,这时SQL Server将显示一条要求确认删除的消息;
.单击“是”;
.单击“关闭”,这时SQLServer将关闭“属性”对话框;
.单击“表设计器”工具栏上的“保存”按钮,这时SQL Server将显示一个对话框,要求确认是否将对这两个表所作的更改保存到你的数据库中;
.单击“是”,这时SQL Server将删除关系;
.关闭“表设计器”窗口.
请看这部分的演示Creating Relationships
÷完成这部分的作业:按“预备知识”的要求创建关系。
7、创建检查约束
7、l创建一个检查约束
提示:数据库设计中的一个很重要的方面是确保“数据完整性”.上一部分所讲的“关系”可以确保“相关完整性”;而“检查约束”用于强制数据库完接性的两种其它形式:“域完整性”和“实体完整性”;“域”是列中可以包含的值的范围;“实体完整性”强制实体本身的完整性,还可以涉及一个表中多个列的条件赋值。检查约束以“布尔表达式”的形式来指定。
.右击“Details Pane”中的“Student”表,然后选择“设计表”,这时SQLServer将打开“表设计器”;
. 单击“表设计器”工具栏上的“管理约束”按钮,这时SQL Server将打开该表的“属性”对话框,其中显示“约束”属性页;
.单击“新建”,这时SQLServer将建议把CK_Student”作为约束名,接受这个名称;
.输入“LEN(Sno)>=4”作为约束表达式;
提示:LEN是一个Transact-SQL函数,它将返回字符串中的字符个数.
. 单击“关闭”,这时SQL Server将关闭“属性”对话框;
.单击“表设计器”工具栏上的“保存”按钮,这时SQL Server将检查表中的所有行是否满足检查约束,然后保存约束。
7、2管理检查约束
7、2、1修改检查约束
.确保打开了“Student”表的“表设计器”;
.单击“表设计器”工具栏上的“管理约束”按钮,这时 SQLServer将打开该表的“属性”对话框,其中显示“约束”属性页;
.在“选定的约束”组合框中选定“CK _Student”,这时SQL Server将显示该关系的详细信息;
. 将约束文本改为“LEN(Sno)>4”,作为新的约束表达式;
.单击“关闭”,这时SQL Server将关闭“属性”对话框;
.单击“表设计器”工具栏上的“保存”按钮,这时SQL Server将检查表中的所有行是否满足检查约束,然后保存约束。
7、2、2维护检查约束
(1)重命名检查约束
.确保打开了“Student”表的“表设计器”;
.单击“表设计器”工具栏上的“管理约束”按钮,这时SQL Server将打开该表的“属性”对话框,其中显示“约束”属性页;
.在“选定的约束”组合框中选定“CK_Student”,然后将它改为“CK_Student_Sno”
. 单击“关闭”,这时SQL Server将关闭“属性”对话框:
.单击“表设计器”工具栏上的“保存”按钮,这时SQL Server将检查表中的所有行是否满足检查约束,然后保存约束。
(2)删除检查约束
.确保打开了“Student”表的“表设计器”;
.单击“表设计器”工具栏上的“管理约束”按钮,这时SQL Server将打开该表的“属性”对话框,其中显示“约束”属性页;
.在“选定的约束”组合框中选定“CK_Student_Sno”,然后单击“删除”按钮;
.单击“关闭”,这时SQL Server将关闭“属性”对话框;
.单击“表设计器”工具栏上的“保存”按钮,这时SQL Server将删除该约束;
.关闭“表设计器”。
请看这部分的演示Creatin~Constraints
÷完成这部分的作业:按“预备知识”的要求创建检查约束。
8、创建数据库图表
提示:数据库图表为可视化数据库中的表的结构和关系(称为“数据库方案”)提供了一种很好的方法。可以在“关系图”窗口中创建整个数据库方案,但是从现有的表格创建图表是较为常用的方法。
8、l从现有的方案创建数据库图表
8、1、1创建一个教据库图表
. 定位到“MySC”数据库,这时SQL Server将在“Details Pane”窗格中显示数据库对象的列表;
.单击企业管理器工具栏上的“新建”按钮,这时将出现“创建数据库关系图向导”的第一个页面;
.单击“下一步”,这时将显示一个页面,要求你选择要在数据库图表中包括的表;
.单击“自动添加相关的表”复选框,并将相关表的级别设为“l”;
.在“可用的表”列表中选定“SC”,然后单击“添加”,这时SQL Server将把"SC”表及所有相关表添加到要在图表中包含的表的列表中;
. 单击“下一步”。这时向导将显示一个页面,要求确认要添加到数据库图表中的表的列表;
.单击“完成”,这时向导将创建图表。
提示:SQL Server用线连接两个表指出它们间存在的关系,可通过单击和拖动来重新组织这些关系线。
.单击“保存”按钮.这时SQL Server将显示一个要求提供图表名称的对话框;
.键入“SC_Diagraml”作为图表名,然后单击“确定”,这时SQL Server将保存图表。
8、1、2更改数据库图表中显示的详细信息
.通过单击图表中的表名选中“SC”表;
提示:可以通过按住“Ctrl”键并单击鼠标左键来选定你所需要的多个表。
.单击“编辑关系图”窗口工具栏上的“显示”按钮,从下拉列表中选择“标准”.这时SQLServer将把“数据类型”、“长度”及“允许空”的设置添加到"SC”表显示的内容中;
. 单击工具栏上的“排列表”按钮,这时SQL Server将重新组织数据库图表,以适应“SC”表所需的额外空间;
. 单击“保存”按钮,这时SQL Server将保存这个新的图表布局。
8、l、3将现有的表添加到数据库图表中
.单击工具栏上的“在关系图上添加表”按钮,这时SQL Server将显示“添加表”对话框;
.在列表中选定“dtproperties”表,然后单击“添加”.这时SQL Server将把该表添加到图表中:
提示:由于“dtproperties”表是一个与“MySC”数据库中数据表无关的系统表,故SQLServer将不会在这个图表中添加任何关系线;
单击“关闭”,关闭“添加表”对话框,然后单击“编辑关系图”工具栏上的“保存”按钮.这时SQL Server将用新表保存该图表。
8、l、4从数据库图表中删除表
.右键单击数据库图表中的“dtproperties”表,然后从快捷菜单中选择“从关系图中删除表”.这时SQLServer将从图表中删除该表;
.单击“保存”按钮,这时SQL Server将保存图表。
8、2使用数据库图表维护数据库
8、2、l更改数据库方案
提示:“编辑关系图”窗口还允许在它的图形化环境下维护数据库方案:你可以添加新表、创建关系、修改现有表等,使你方便地进行少量的调整。
在“编辑关系图”窗口中为表添加列
.向下拖动”SC”表的右下角,直到显示出足够的空行;
.单击“列名”字段中的第一个空白单元格。添加一个名为“Description”的新列,将该列的数据类型设置为“varchar”,将“长度”设置为50;
提示:此时“SC“表的名称后多了一个星号(*),表明该表被更改,但尚未保存所做的更改。
.单击“排列表”按钮,这时SQL Server将重新调整表的显示大小:
.单击“保存”按钮,这时SQL Server将显示一个要求确认对“SC”表所做更改的对话框;
.单击“是”,这时SQL Server将用新列更新“SC”表,并删除“SC”表名后的星号。
8、2、2创建数据库对象
在“编辑关系图”窗口中创建表
.右键单击“编辑关系图”窗口的空白区域,然后从快捷菜单中选择“新建表”,这时SQL Server将显示一个请求新表名称的对话框;
提示:也可通过单击“编辑关系图”窗口工具栏上的”新建表”按钮来创建新表。
.键入”Sample”作为新表名称,然后单击“确定”.这时SQL Server将把该表添加到图表中;
.为新表添加两个列:
.单击列名左边的灰框选定“Sno”列,然后单击工具栏上的“设置主键”按钮,这时SQL Server将把“Sno”设置为该表的主键;
.右键单击该表,然后从快捷菜单中选择“表视图”,然后选择“列名”这时SQL Server将更改该表的显示方式;
.单击“保存”按钮,这时SQL Server将显示一个要求确认对数据库图表所做更改的对话框;
.单击“是”,这时SOL Server将把新行添加到数据库中。
8、2、3在“编辑关系图”窗口中创建关系
.在数据库图表中选定“SC”表的“Sno”列,然后将它拖到“Sample”表的“Sno”列中,这时SQL Server将打开“创建关系”对话框;
.单击“确定”,这时SQL Server将关闭该对话框;
.单击“保存”按钮,这时SQL Server将显示一个要求确认对数据库方案所做更改的对话框;
.单击“是”,这时SQL Server将保存该图表,并更新数据库方案。
÷请看这部分的演示Creating Diagram
÷完成这部分的作业:按“预备知识”的要求创建图表。
9、管理SQLServer
9、1备份和恢复数据库
提示:为防止数据库受到诸如计算机硬件失败、软件本身混乱、死机和用户犯错等的破坏,SQL Server提供“备份和恢复数据库”的保护方法,即:定期为数据库制作一个副本,将它们存放在一个安全的位置;一旦出现问题,可以使用这个备份来恢复数据库,恢复到出问题之前的状态。
9、1、l使用“创建数据库备份向导”备份数据库
提示:亦可通过选择数据库快捷菜单中的“备份数据库”来备份数据库.其选项与“备份向导”相同。
定位到“MySC”数据库,单击企业管理器工具栏上的“运行向导”按钮,这时将出现“选择向导”对话框;
在该对话框的“管理”区中,选择“创建数据库备份向导”,单击“确定”,这时将显示 向导的第一个页面:
单击“下一步”。这时将显示一个页面,要求你选择要备份的数据库;
确保在组合框中选定“MySC”,然后单击“下一步”,这时将显示一个页面,要求你命名并描述备份;
在描述框中键入"Initial Backup”;
单击“下一步”,这时将显示一个页面,询问你要执行哪一种备份:完全备份、差异备份或事务日志备份;
提示:“完全备份”:制作一个完整的数据库备份;“差异备份”:只记录最后一次完全备份之后更改的信息;“事务日志备份”:允许将数据库恢复到某一特定的时间点,若服务器失败,SQL Server将使用事务日志来自动恢复数据库。
接受默认设置(完全备份),单击“下一步”,这时将显示一个页面,要求你选择备份目 标;
单击“浏览”(Browse)按钮,这时将显示“备份设备位置”对话框.定位到你想要的文件夹 (如,D:\MyBackup\);
注意:实际应用中你应当将备份存放在一个与数据库文件不同的位置,最好在不同的机器上!
单击“确定”,返回向导。在“属性”区,你可以选择“追加到”或“重写”备份媒体.选择“追加到备份媒体”;
单击“下一步”,这时将显示一个页面。要求你确认并安排细节;
因为在本次备份中,并未要求SQL Server验证备份,因此取消选中“检查媒体集名称和备份集到期时间”复选框;
提示:SQL Server以“媒体集”的形式组织备份媒体。媒体集可以是单个磁盘文件,亦可是20个甚至更多的备份磁带集。
单击“下一步”,这时将显示一个确认你所做选择的页面;
单击“完成”,这时向导将执行备份,然后将显示一条消息,指出备份已经成功地完成。
9、1、2恢复(还原)数据库
在“树”中右键单击“MySC”指向“所有任务”,然后单击“还原数据库”,这时将显示“还原数据库”对话框;
单击“确定”,执行恢复完毕后,将显示一条消息,指出恢复已经成功完成。
9、2使用“数据库维护计划向导”
提示:SQL Server还提供一种在预定时间定期自动执行备份的机制---“数据库维护计划”。
定位到“MySC”数据库,单击企业管理器工具栏上的“运行向导”按钮,这时将出现“选择向导”对话框:
在该对话框的“管理”区中,选择“创建数据库维护计划向导”,单击“确定”,这时将显示向导的第一个页面;
单击“下一步”,这时将显示一个页面,要求你选择要创建维护计划的数据库;
提示:默认选中你启动向导时所定位的数据库,当然。你可以在该对话框中更改这个选择。
单击“下一步”,这时将显示一个页面,要求你选择要被更新的优化信息;
.单击“下一步”,这时将显示一个页面,询问你是否执行完整性检查;
单击“下一步”,这时将显示一个页面,要求你指定数据库备份计划;
.单击“更改”,这时将显示“编辑反复出现的作业调度”对话框;
.在“发生频率”组中选中“每周”,这时向导将更改该对话框,以反映用于每周备份的选项;
.选中在每周星期日进行备份的选项按钮;
. 单击“确定”,返回向导。
. 单击“下一步”,这时将显示一个页面,要求指定备份目录;
·选中“使用次目录”选项按钮,然后单击“浏览”按钮,这时将显示“查找备份目录” 对话框;
·定位到“D:\MyBackup\”,然后单击“确定”,这时将关闭该对话框;
.单击“下一步”。这时将显示一个页面,询问你是否在备份计划中包括事务日志;
. 单击“下一步”,这时将显示一个页面,询间在执行完计划后是否生成一个报告;
. 单击“下一步”,这时将显示一个页面,询问你是否在本地服务器存储维护历史记录;
. 单击“下一步”,这时将显示一个确认你所做选择的页面:
. 单击“完成”,这时向导将创建维护计划,然后将显示一条消息,指出维护计划已经成功地完成。
注意:确保“树\管理\SQL Server代理”正在运行,否则右键单击“SQL Server代理”,在快捷菜单中选择“属性”,打开“属性”对话框,选中“连接”选项卡,单击“确定”,进行连接即可。
请看这部分的演示Creating Maintenance Plan.
完成这部分的作业:按“预备知识”的要求创建数据库备份和维护计划。
数据库系统及应用上机实验报告实验1一实验目的理解SQLServer数据库的存储结构掌握SQLServer数据库的建立方法和维护方法…
课程代码1010000450数据库Database学分3总学时48实验学时16面向专业信息与计算科学数学与应用数学一实验教学目标数…
数据库上机实验报告实验一数据库实验11创建数据库实验目的1使用交互方法创建数据库2使用TransactSQL创建数据库3指定参数创…
数据库系统原理上机实验预备知识一本实验指导书采用的数据库例子见本课程参考用书数据库系统概论第三版P59StudentCourseS…
数据库基础课堂实验报告20xx20xx学年第1学期班级姓名学号上机前准备充分不充分未准备上机考勤全到缺次上机操作认真不认真实验计划…
实验一建立数据库班级:姓名:学号:分数:一、实验目的1、理解SQLServer数据库的存储结构;2、掌握SQLServer数据库的…
实习报告一、实习时间和单位时间:20xx年x月x日地点:许昌西继迅达实习单位简介:西继迅达(许昌)电梯有限公司现拥有四个子公司和一…
实验一(1)无条件单表查询selectsnameNAME,'yearofbirth:'BIRTH,20xx-sageBIRTHDA…
课程代码1010000450数据库Database学分3总学时48实验学时16面向专业信息与计算科学数学与应用数学一实验教学目标数…
数据库系统及应用上机实验报告实验1一实验目的理解SQLServer数据库的存储结构掌握SQLServer数据库的建立方法和维护方法…
个人实验总结报告经过一学期的组织行为学课程学习可谓收获颇丰数次上机测试使得我对自己的优势与劣势有了更加科学而深刻的了解现将实验报告…