数据库原理及应用实验指导书_第1页
数据库原理及应用实验指导书_第2页
数据库原理及应用实验指导书_第3页
数据库原理及应用实验指导书_第4页
数据库原理及应用实验指导书_第5页
已阅读5页,还剩44页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

4.新建表(1)使用企业管理器建立student、course和SC三个表,其结构为:Student(学生)列名描述数据类型允许空值说明Sno学号Varchar(20)No主键Sname姓名Varchar(50)NoAge年龄IntYESSex性别char(2)YESDept所在系Varchar(50)YESCourse(课程)列描述数据类型允许空值说明cno课程号Varchar(20)No主键cname课程名Varchar(50)Nocredit学分FloatYESpcno先行课Varchar(20)YESdescribe课程描述varchar(100)YESSC(选课)列描述数据类型允许空值说明sno学号Varchar(20)No主键(同时都是外键)cno课程号Varchar(20)Nograde成绩FloatYES在SQLServer2000的数据库中,文件夹是按数据库对象的类型建立的,文件夹名是该数据库对象名。当在企业管理器中选择服务器和数据库文件夹,并打开己定义好的学生选课数据库后。会发现它自动设置了关系图、表、视图、存储过程、用户、角色、规则、默认等文件夹。要建立“student”表,先选中学生选课数据库中的表文件夹,单击鼠标右键,在弹出的菜单中选择“新建表”,随后的输入表结构对话框。输入表结构对话框是一张表,它的列属性有列名、数据类型、长度和是否允许空4项。用户把新建表的结构填入对话框的表中,表中的每一行定义新建表(Course)的一列,每一列定义新建表的一个列属性。当光标移到表中的某一行时,下面的列描述就会对应当前行显示输入项,用户可在其中对关系的属性进行进一步说明。列描述包括数据的精度、小数位数、默认值、是否标识等项。(2)使用T-SQL语句建立student,course,SC三个表CreateTablestudent(snovarchar(20)primarykey,Snamevarchar(50)notnull,Ageint,Sexchar(2),Deptvarchar(50)); Createtablecourse(cnovarchar(20)primarykey,Cnamevarchar(50)notnull,Creditfloatnotnull,Pcnovarchar(20)notnull,Describevarchar(100)notnull);CreatetableSC(snovarchar(20),Cnovarchar(20),Gradefloat,primarykey(sno,cno),foreignkey(sno)REFERENCESstudent(sno),foreignkey(cno)REFERENCEScourse(cno));5.定义表的完整性约束和索引表的约束包括码(主键)约束、外键约束(关联或关系约束)、惟一性约束、Check(检查)约束4种。这些约束可以在表属性对话框中定义。(l)定义索引和键选择“索引/键”页面,其界面如图10所示。l)查看、修改或删除索引时,先要在“选定的索引”下拉列表框中选择索引名,其索引内容就显示在表中。需要时,可以直接在表中修改索引内容。如改变索引列名、改变排序方法等。对于不需要的索引可以单击“删除”按钮,直接删除此索引。2)新建一个索引时,单击“新建”按钮,并在下面的表中输入索引名、索引列名及排列顺序;3)设置UNIQUE复选框,确定是否为惟一索引约束。设置CLUSTERED复选框,确定是否为群集索引(CLUSTERED)。(2)定义表间关联选择表页面,其界面如图12所示。l)查看、修改或删除表关联时,先要在“选定的关系”下拉列表框中选择关联名(即关系名),其关联内容就显示在表中。需要时,可以直接在表中修改关联内容,例如改变主键、改变外键键等。对于不需要的关联可以单击“删除”按钮,直接删除此关联。2)新建一个关联时,单击“新建”按钮,选择库中的关联表(参照表)后,在表中输入关联名、主键和外键。3)设置“创建中检查现存数据”复选框,确定新建关联时是否对数据进行检查,要求符合外键约束;设置“对复制强制关系”复选框。确定在进行数据复制时是否要符合外键约束:设置“对INSERT和UPDATE强制关系”复选框,确认在对数据插入和更新时,是否符合外键约束:设置“级联更新相关的字段”复选框和“级联删除相关的记录”复选框,确认被参照关系的主键位被修改时,是否也将参照表中的对应的外键值修改,而被参照关系的上码值被删除时,是否也将参照表中对应外键的记录删除。(3)定义CHECK约束选择CHECK约束页面。其界面如图13所示。图12表属性对话框中的表关联页面图13表属性对话框中的约束页面1)查看、修改或删除CHECK约束时,先要在“选定的约束”下拉列表框中选择约束名,其约束内容就显示在约束表达式框中。需要时,可以直接在框中修改约束表达式。对于不需要的CHECK约束可以按“删除”按钮,直接删除此约束。2)新建一个CHECK约束时,单击“新建”按钮,并在表中输入约束名和约束表达式。3)设置“创建中检查现存数据”,确认在创建约束时是否对表中数据进行检查,要求符合约束要求;设置“对复制强制约束”复合框,确认对数据复制时是否要求符合约束条件;设置“对INSERT和UPDATE强制约束”,确认在进行数据插入和数据修改时,是否要求符合约束条件。6.修改表结构(1)使用企业管理器修改表结构当需要对建好的表修改结构时,首先要在企业管理器中找到该表,用鼠标右击该表名,就会弹出一个菜单,如图14所示。随后,在弹出的菜单中选择“设计表”项,企业管理器会调出如图9所示的建表对话框,用户可对原有内容进行修改。图14在弹出菜单中选择“设计表”项(2)使用T-SQL语句修改表结构可以使用Alter语句增加、删除或修改字段信息。例如为学生表中增年龄字段增加约束,限制年龄至少要15岁:ALTERTABLEstudentADDCONSTRAINTAGECHECK(AGE>15)例如在学生表中增加班集字段为字符型,长度为50:ALTERTABLEstudentADDClassvarchar(50)NULL例如修改学生表中的班集字段的长度为20:AlterTablestudentALTERCOLUMNClassvarchar(20)例如删除学生表中的班集字段:ALTERTABLEstudentDROPCOLUMNClass四、注意事项1.建表中如果出现错误,应采用相应的修改结构或删除结构的方法。2.注意数据库的主键、外键和数据约束的定义。五、思考题1.数据库中一般不允许更改主键数据。如果需要更改主键数据时,怎样处理?2.为什么不能随意删除被参照表中的主键。

实验三数据库的建立和维护实验本实验需要2学时。一、实验目的要求学生熟练掌握使用Transact-SQL和SQLServer企业管理器向数据库输入数据、修改数据和删除数据的操作。二、实验内容(1)通过企业管理器,在数据库的student、course和SC三个表中各输入10条记录。要求记录不仅满足数据约束要求,还要有表间关联的记录。(2)通过企业管理器实现对学生选课数据库的student、course和SC三个表中数据的插入、删除和修改操作。(3)通过企业管理器实现对学生选课库的数据增加、数据删除和数据修改操作。要求学生、课程和选课表中各有10条以上的记录。snosnameAgesexdept001101张林18男计算机系001102程明18男计算机系001103王艳19女计算机系001104严平平20男计算机系001201王敏19女数学系001202王林20女数学系001203李计21男数学系001204孙祥欣17男数学系001205孙研18男数学系001206孙小18男数学系cnocnameCreditpcnodescribe1310101计算机基础5可自学1310102C++程序设计41310101可自学1310206离散数学4可自学1310208数据结构41310102可自学1310209操作系统41310101可自学1310210微机原理51310101可自学1310212数据库原理41310102可自学1310301计算机网络31310102可自学1310302软件工程31310102可自学1310211图形学31310101可自学snocnoGrade001203131010188001203131020676001103131010162001103131010270001104131010191001104131010284001104131020695001201131010278001201131020678001201131010191三、实验步骤(1)使用企业管理器更新数据在MicrosoftSQLserver2000的企业管理器中,对表进行数据增、删、改操作非常简便。其操作方法是:1)选中服务器,展开数据库文件夹,进一步展开指定的数据库。单击表文件夹,找到需要更新数据的基本表。2)用鼠标右击要更新数据的表,会出现与表相关操作的弹出菜单,如图15所示。在弹出菜单中选择“打开表”→“返回所有行”。图15基本表的弹出菜单在该对话框中,数据以表格形式组织,每个字段就是表中的一列,每条记录是表中的一行。原有的记录已经在表格中,通过移动右边的滑块可查阅所有的记录。3)需要数据插入时,就在最后一条记录后输入一条记录。当鼠标点击其他行时,输入的记录会自动保存在表中。4)需要修改记录时,直接对表中已有记录的数据进行改动,用新值替换原有值。5)需要删除记录时,先用鼠标单击要删除行的左边灰色方块,使该记录成为当前行,然后按(Delete)键。为了防止误操作,SQLserver2000将弹出一个警告框,要求用户确认删除操作,单击“确认”按钮即可删除记录,也可通过先选中一行或多行记录,然后再按(Delete)键的方法一次删除多条记录。(2)使用T-SQL语句更新数据请给每个学生选修三门课,在期未时给每门课一个成绩。如张林同学选修了计算机基础这门课,期未的考试成绩为95分,SQL语句如下:InsertintoSC(sno,cno)values('001101','1310101')UpdateSCsetgrade=95wheresno='001101'四、注意事项1.输入数据时要注意数据类型、主键和数据约束的限制。2.数据更改和数据删除时要注意外键约束。五、思考题1.数据库中一般不允许更改主键数据。如果需要更改主键数据时,怎样处理?2.为什么不能随意删除被参照表中的主键。实验四数据库的简单查询和连接查询实验一、实验目的使学生掌握SQLServer查询分析器的使用方法,加深对Transact-SQL语言的查询语句的理解。熟练掌握简单表的数据查询、数据排序和数据联结查询的操作方法。二、实验内容1.简单查询操作该实验包括投影、选择条件表达、数据排序、使用临时表等。2.连接查询操作该实验包括等值连接、自然连接、求笛卡儿积、一般连接、外连接、内连接、左连接、右连接和自连接等。三、实验步骤(1)简单查询实验1)用Transact-SQL语句表示下列操作,在学生选课库中实现其数据查询操作:①求数学系学生的学号和姓名。②求选修了课程的学生学号。③求选修课程号为1310101的学生学号和成绩,并要求对查询结果按成绩降序排列,如果成绩相同则按学号升序排列。④求选修课程号为1310101的成绩在80-90分之间的学生学号和成绩,并将成绩乘以系数0.8输出。⑤求数学系或计算机系姓张的学生的信息。⑥求缺少了成绩的学生的学号和课程号。(2)连接查询实验用Transact-SQL语句表示,并在学生选课库中实现下列数据连接查询操作:①查询每个学生的情况以及他(她)所选修的课程。②求学生的学号、姓名、选修的课程名及成绩。③求选修离散数学课程且成绩为90分以上的学生学号、姓名及成绩。④查询每一门课的间接先行课(即先行课的先行课)。四、注意事项1.查询结果的几种处理方式。2.内连接、左外部连接和右外部连接的含义及表达方法。3.输入SQL语句时应注意,语句中均使用西文操作符号。五、思考题1.如何提高数据查询和连接速度。2.对于常用的查询形式或查询结果,怎样处理好?

实验五数据库的嵌套查询实验一、实验目的使学生进一步掌握SQLServer查询分析器的使用方法,加深Transact-SQL语言的嵌套查询语句的理解。二、实验内容在SQLServer查询分析器中使用IN、比较符、ANY或ALL和EXISTS操作符进行嵌套查询操作。三、实验步骤用Transact-SQL语句表示,在学生选课库中实现其数据嵌套查询操作。(l)求选修了离散数学的学生学号和姓名。SELECTS#,SNAMEFROMSWHERES#IN(SELECTS#FROMSCWHEREC#IN(SELECTC#FROMCWHERECNAME=‘离散数学’(2)求1310101课程的成绩高于张林的学生学号和成绩。(3)求其他系中年龄小于计算机系年龄最大者的学生。(4)求其他系中比计算机系学生年龄都小的学生。(5)求选修了1310206课程的学生姓名。SELECTSNAMEFROMSWHERES#IN(SELECTS#FROMSCWHEREC#=‘1310206’(6)求没有选修1310206课程的学生姓名。SELECTSNAMEFROMSWHERES#NOTIN(SELECTS#FROMSCWHEREC#=‘1310206’(7)查询选修了全部课程的学生的姓名。答案:selectsnameFromstudentWherenotexists(select*FromcourseWherenotexists(select*FromscWheresno=student.snoandcno=o))(8)求至少选修了学号为“001103”的学生所选修的全部课程的学生学号和姓名。答案:selectsno,snameFromstudentWheresnoin(selectscx.snoFromscscxWherenotexists(select*FromscscyWherescy.sno=’001103’andnotexists(select*FromscsczWherescz.sno=o=o)))四、注意事项1.输入SQL语句时应注意,语句中均使用西文操作符号。2.语句的层次嵌套关系和括号的配对使用问题。五、思考题试用多种形式表示实验中的查询语句,并进行比较。

实验六数据库的组合查询和统计查询实验一、实验目的使学生熟练掌握SQLServer查询分析器的使用方法,加深对Transact-SQL语言的查询语句的理解。熟练掌握数据查询中的分组、统计、计算和组合的操作方法。二、实验内容1.分组查询实验。该实验包括分组条件表达、选择组条件的表达方法。2.使用函数查询的实验。该实验包括统计函数和分组统计函数的使用方法。3.组合查询实验。4.计算和分组计算查询的实验。三、实验步骤在学生课程数据库中实现其查询操作(1)查找选修“计算机基础”课程的学生成绩比此课程的平均成绩大的学生学号,成绩。(2)求选修计算机基础课程的学生的平均成绩。(3)列出各系学生的总人数,并按人数进行降序排列。(4)统计各系各门课程的平均成绩。(5)查询选修计算机基础和离散数学的学生学号和平均成绩。四、注意事项1.子句WHERE(条件)表示元组筛选条件,子句HAVING(条件)表示组选择条件。2.组合查询的子句间不能有语句结束符。3.子句HAVING(条件)必须和CROUPBY(分组字段)子句配合使用。五、思考题1.组合查询语句是否可以用其他语句代替,有什么不同?2.使用GROUPBBY(分组条件)子句后,语句中的统计函数的运行结果有什么不同?

实验七数据库的视图和图表的定义及使用实验本实验需要2学时。一、实验目的使学生掌握SQLServer中的视图创建向导和图表创建向导的使用方法,加深对视图和SQLserver图表作用的理解。二、实验内容1.创建、查看、修改和删除视图。2.创建、编辑和删除数据库图表。三、实验步骤1.创建视图根据学生选课数据库中已经建立了student、course和SC三个表,结构如下:student(sno,sname,age,sex,dept);course(cno,cname,credit,pcno,describe);SC(sno,cno,grade)。如果要在上述3个表的基础上建立一个视图,取名为SC_VIEW;其操作用SQL语句表示为:CREATEVIEWSC_VIEWASSELECTSTUDENT.*,COURSE.*,SC.GRADEFROMSTUDENT,COURSE,SCWHERESTUDENT.SNO=SC.SNOANDCOURSE.CNO=SC.CNO下面利用SQLServer中提供的视图创建向导,来创建SC_VIEW视图。1)打开企业管理器窗口,确认服务器,打开数据库文件夹,选中新视图所在的数据库。2)选择菜单“工具”→“向导”,如图18所示。3)在如图19所示的向导选择对话框中,单击数据库左边的“+”号,使之展开。选择“创建视图向导”项,单击“确定”按钮。4)进入创建视图向导后,首先出现的是欢迎进入创建视图向导对话框,其中简单介绍了该向导的功能,如图20所示。单击“下一步”按钮后,就会出现如图21所示的选择“数据库名称”对话框。图18选择向导工具选项图19在向导对话框中选择视图向导图20欢迎进入创建视图向导对话框图21选择数据库名称对话框5)在“选择数据库名称”对话框中,选择视图所属的数据库。本例的数据库为“学生选课”;单击“下一步”按钮,则进入如图22所示的选择表对话框。6)在选择表对话框中,列出了指定数据库中所有用户定义的表和视图。用户可以从中选择构造视图所需的一个表或多个表(或视图),被选中的表成为构造视图的参考表。选择构造视图参考表的方法是:用鼠标单击表名后的“包含在视图中”列,使义选框为选中状态。本例的数据库中的3个表都应当被选中。单击“下一步”按钮,则进入选择列对话框,如图23所示。7)列选择对话框中以表格形式列出了创建视图参考表的全部属性,每个属性占表的一行。创建视图的参考属性可以在表格中选出。选择视图参考属性的方法是用鼠标单击属性名后边的“选择列”,使其复选框为选中状态。单击“下一步”按钮,进入创建视图的定义限制对话框,如图24所示。8)在定义限制对话框中,输入表的连接和元组选择条件。本例应输入“WHERESTUDENT.SNO=SC.SNOANDCOURSE.CNO=SC.CNO”。图22创建视图向导的选择表对话框图23创建视图向导的选择列对话框图24创建视图的定义限制对话框图25定义视图名称对话框单击“下一步”按钮后,出现视图名对话框,如图25所示。9)在输入视图名对话框中输入所建视图的标识名。本例的视图名为“SC_VIEW”。单击“下一步”按钮,则出现如图26所示的视图创建完成对话框。图26创建视图向导的完成对话框在完成对话框中给出了根据前面对话框输入的内容译成的SQL语句。读者可以认真阅读该SQL语句,如果发现与要求有不符合之处则可以直接进行修改。确认无误后单击“完成”按钮。随后出现一个通知用户已成功创建视图的信息框,单击“确认”按钮后,整个创建视图工作就完成了。2.查看和修改视图视图创建好后,就可以利用它进行查询信息了。如果发现视图的结构不能很好地满足要求,还可以在企业管理器对它进行修改。(1)操作步骤l)在企业管理器中,选择服务器、数据库,并使数据库展开,然后用鼠标右击要修改结构的视图,会弹出视图功能菜单,如图27所示。图27视图的功能弹菜单2)在弹出的菜单上选择“设计视图”项,则弹出一个视图设计对话框,如图28所示。图中列出了视图结构的详细内容,当对其修改完毕后关闭窗口,新的视图结构就会取代原先的结构。图28视图设计对话框图28中的视图设计对话框分为4个区域:图表区、表格区、SQL语言区和结果区,各区域的作用如下:(2)视图设计对话中各区域的作用l)图表区。图表区域与数据库图表很相似,它图形化地显示了视图中的表以及表之间的关联。在图表区中,可以添加或去掉视图所基于的表,也可以添加或去掉视图所包含的表列。2)表格区。表格区用表格显示视图所有的表列。在表格区中,可以添加或去掉视图所包含的表列,设定排序和分组,也可以通过修改某些列的取值规则来限制结果集的范围。3)SQL语言区。SQL语言区用Transact-SQL语句表示视图结构,可以在区域中检查SQL语句是否正确,并可以直接修改视图的SQL语句。4)结果区。结果区用于显示视图的结果集。单击工具条上的“!"(运行)按钮,就可以在结果区中显示当前视图的结果集。(3)视图修改的方法l)在图表区中为视图添加表。用鼠标右击图表区中的空白处,会出现如图29所示的菜单,在弹出的菜单中选择“添加表”项,则出现添加表的对话框。该对话框中有表和视图两个选项卡,表选项卡中列出了视图所属数据库的全部表,视图中列出了数据库中已建好的其他视图。通过对话框中的“增加”按钮,可将己选定的表或视图加入到当前视图中。2)在图表区中从视图中移去表。在图表区中,用鼠标单击欲移去的表或视图,使它们被选中。对准被选中的表右键单击鼠标,会弹出菜单。在弹出菜单中选择“移去表”项,对应的表或视图就会被移去。3)在图表区中修改视图中所包含的列。在图表区中,视图的每个参考表都用一个小窗口显示。每个表或视图的属性前面都有一个复选框,可以通过选中或不选中该复选框来修改视图所包含的属性。如果框中有“√”号则表明该属性属于视图,否则不属于视图。图29图表区空白处的弹出单4)在表格区中修改视图的结构。表格区中以表格形式列出了视图参考表的每个属性。每个属性用一行表示,它包括列出了列名、别名、表名、输出、限制等项。输出项是复选框,如果框中有“√”号则表明该属性属于视图,否则不属于视图;用户在别名列中,可以为数据列定义别名;在限制列中,可以为视图增加或修改诸如“DEPT=‘计算机系’”形式的元组选择条件。3.删除视图删除视图的方法是:首先要在企业管理器中,将鼠标指针指向数据库中的视图文件夹,单击右键。在随后出现的弹出菜单中,选择“删除”项,会出现如图30所示的删除视图对话框。选中欲删除的视图,单击“全部移出”按钮,被选中的视图就会从视图中被移出。图30数据库对象删除对话框4.创建关联表假如要在学生选课数据库中建立一个Student_SC_Course关系,要求该图表包括Course、SC和Student3个表,并包括它们之间的“Co=SC.cnoANDSC.sno=Student.sno”的外键与被参照表之间的关联,即用关联表实现上述视图的功能。在企业管理器中,通过向导建立数据库关系表的步骤为:l)打开服务器、数据库文件夹和关联表所属的数据库,本例为学生选课数据库。2)用鼠标右键单击关系表文件夹,出现如图31所示的菜单。在弹出的菜单中选择“新建数据库关系图”项,就会弹出创建关系表向导的欢迎对话框,如图32所示。在欢迎对话框中,介绍了该创建图表向导的主要功能。图31数据库关系表弹出单图32创建数据库图表向导的欢迎对话框3)单击“下一步”按钮,则进入创建关系表的选择表对话框,如图33所示。4)在表选择对话框中有两个数据列表:左边的列表为关系表可选的表,它包括数据库所有的表;右边的列表为已被图表选中的表。通过两个列表之间的“添加”按钮,可以把左边列表被选中的表添加到右边的列表中。同样,也可以用“移去”按钮,把右边列表中的选中表从关系表中移出。本例是将学生选课库中己建好的Course、SC和Student表全部选中,将它们都增加到右边列表中。当选择完关系表中的表后,单击“下一步”按钮,就会出现如图34所示的数据库关系表完成对话框。图33创建图表的选择表对话框图34数据库图表的完成对话框5)当单击“完成”按钮后,会出现如图35所示的新建关系表编辑对话框。图35数据库图表的编辑对话框图在编辑对话框中出现表的结构图。6)要建立表之间的关联,通过拉线和填写关联对话框的方法解决。本例中,先选中Course的主键“cno”项,然后按下鼠标左键拖动鼠标向SC表拉出一条线。这时屏幕上就会出现如图36所示的建立表间关联对话框。在建立关联对话框中,选择外键和被参照表的主键,单击“确定”按钮。图36建立表间关联对话框7)用鼠标右键单击表中的列,则弹出一个如图38所示的菜单。通过选择选项可以进行对当前选中表的增加列、建立主键、建立表间关系等操作。8)用鼠标右键单击对话框的空白处,则会弹出一个菜单。通过选择菜单中的增加表、删除表和视图等选项,可完成相应的操作功能。9)当关系表编辑完毕后,可关闭编辑窗口,并在随后出现的关系表命名的对话框中输入图表名。5.编辑数据库图表图38关系表的字段弹出单在企业管理器中,展开数据库图表所属的服务器、数据库文件夹、数据库以及关系表文件夹。用鼠标右键单击要编辑的关系表,在弹出的菜单中选择“设计关系表”项,则弹出一个编辑关系表的对话框数据库关系表中的所有操作都是在该对话框中完成的。6.数据库图表的删除在企业管理器中,用鼠标右键单击欲删除的数据库关系表。在弹出的菜单上选择“删除”项。在随后出现的删除对象对话框中选中关系表后,单击“删除全部”按钮,即可删除该数据库中被选中的关系表。四、注意事项1.参照表和被参照表之间的关系。主键和外键间的关系。2.视图中字段名的重命名问题。五、思考题1.为什么要建立视图?视图和基本表有什么不同?2.视图和图表有什么不同?

实验八数据完整性和数据安全性实验本实验需要2学时。一、实验目的使学生加深对数据安全性和完整性的理解,并掌握SQLServer中有关用户、角色及操作权限的管理方法,学会创建和使用规则、缺省和触发器。二、实验内容l.数据库的安全性实验。在SQLServer企业管理器中,设置SQLServer的安全认证模式,实现对SQLServer的用户和角色管理,设置和管理数据操作权限。2.数据库的完整性实验。使用Transact-SQL设计规则、缺省、约束和触发器,通过SQLServer企业管理器定义它们。三、实验步骤l.设置SQLServer的安全认证模式l)在企业管理器中展开SQL服务器组,用鼠标右键单击需要设置的SQL服务器,在弹出的菜单中选择“属性”项,如图39所示。2)在弹出的SQL服务器属性对话框中,选择“安全性”选项卡,如图40所示。3)在安全性选项卡中有一个安全性栏,它包括两个单选钮:单击“SQLServer和Windows(S)”为选择混合安全认证模式;单击“仅Windows(s)”则为选择集成安全认证模式。图39SQL服务器的弹出菜单图40SQLServer属性的安全性页面2.登录的管理(1)查看安全性文件夹的内容使用企业管理器可以创建、查看和管理登录。登录文件夹存放在SQL服务器的安全性文件夹中。当执行了进入企业管理器,打开指定的SQL服务器组和SQL服务器,并选择安全性文件夹的系列操作后,就会出现如图4l所示的屏幕窗口。图41SQLServer的安全性文件夹通过该窗口可以看出,安全性文件夹包括4个文件夹:登录文件夹、服务器角色文件夹、链接服务器文件夹和远程服务器文件夹。其中:登录文件夹用于存储和管理登录用户;服务器角色文件夹用于存储和管理角色;链接服务器文件夹用于存储和管理连接的服务器;远程服务器文件夹用于存储管理远程服务器信息。(2)创建一个登录用户l)用鼠标右键单击登录文件夹,出现如图42所示的弹出菜单。在弹出的菜单中选择“新建登录”选项后,就会出现一个登录属性对话框,如图43所示。图42登录文件夹的弹出菜单图43登录对话框中的常规页面在对话框中有常规选项卡、服务器角色选项卡和数据库访问选项卡。2)选择常规选项卡,输入用户的一般特征。常规选项卡界面如图43所示,在常规选项卡中要输入用户名,选择该用户的安全认证模式,选择默认数据库和默认语言。如果选择Windows身份验证,需要单击名称右边的“…”按钮,调出Windows己有的登录用户,如图44所示,从中选择新建的登录名称;如果使用SQLServer安全认证模式,可以直接在名称栏中输入新登录名,并在下面的栏目中输入登录密码。图44Windows系统具有的默认登录用户3)选择服务器角色选项卡,确定用户所属服务器角色。服务器角色选项卡如图45所示,在服务器角色选项卡的服务器角色列表中列出了系统的固定服务器角色,在这些固定服务器角色的左端有相应的复选框,选择某个复选框,该登录用户就成为相应的服务器角色成员了。在下面描述栏目中,列出了当前被选中的服务器角色的权限。4)选择数据库访问选项卡,确定用户能访问的数据库,并确定用户所属的数据库角色:数据库访问选项卡界面如图46所示,在数据库访问选项卡中有两个列表框:上面的列表框中列出了该SQL服务器全部的数据库,单击某个数据库左端的复选框,表示允许该登录用户访问相应的数据库,它右边为该登录用户在数据库中使用的用户名,可以对其进行修改;下面为当前被选中的数据库的数据库角色清单,单击某个数据库角色左端的复选框,表示使该登录用户成为它的一个成员。图45新建登录的服务器角色选项卡图46新建登录的数据库访问选项卡5)操作完成后,单击“确定”按钮,即完成了创建登录用户的工作。3.数据库用户的管理登录用户只有成为数据库用户(DatabaseUser)后才能访问数据库。每个数据库的用户信息都存放在系统表sysusers中,通过查看sysusers表可以看到该数据库所有用户的情况SQLServer的任一数据库中都有两个默认用户:dbo(数据库拥有者用户)和guest(客户用户)。通过系统存储过程或企业管理器可以创建新的数据库用户。(l)dbo用户dbo用户即数据库拥有者或数据库创建者,dbo在其所拥有的数据库中拥有所有的操作权限。dbo的身份可被重新分配给另一个用户,系统管理员sa可以作为他所管理系统的任何数据库的dbo用户。(2)guest用户如果guest用户在数据库存在,则允许任意一个登录用户作为guest用户访问数据库,其中包括那些不是数据库用户的SQL服务器用户。除系统数据库master和临时数据库tempdb的guest用户不能被删除外,其他数据库都可以将自己的guest用户删除,以防止非数据库用户的登录用户对数据库进行访问。(3)创建新的数据库用户要在学生选课数据库中创建一个“Userl”数据库用户,可以按下面的步骤创建新数据库用户。1)在企业管理器中扩展SQL服务器及数据库文件夹。用鼠标右键单击用户文件夹,弹出一个快捷菜单,如图47所示。在弹出的菜单中选择“新建数据库用户”项,会出现如图48所示的新建数据库用户属性对话框。图47数据库用户的弹出菜单图48新建数据库用户属性对话框2)在对话框的登录名栏中选择一个SQL服务器登录用户名,本例为“login1”下面的用户名栏中输入数据库用户名,本例为“user2最后,在下面的数据库角色栏中选择该数据库用户参加的角色。3)单击“确定”按钮。4.服务器级角色的管理登录用户可以通过两种方法加入到服务器角色中:一种方法是在创建登录时,通过服务器角色页面中的服务器角色选项,确定登录用户应属于的角色;另一种方法是对己有的登录,通过参加或移出服务器角色的方法。使登录用户加入服务器角色的具体步骤为:l)在企业管理器中,扩展指定的SQL服务器、安全性文件夹。单击服务器角色后,就会在右面的细节窗口中出现8个预定义的服务器级角色,如图49所示。2)选中一个服务器级角色,例如DatabaseCreators,单击鼠标右键,弹出菜单如图50所示。图49SQLServer的服务器级角色图50服务器角色的弹出菜单3)在弹出的菜单中选择“属性”项后,就会出现一个服务器角色属性对话框,如图51所示。在服务器角色对话框中,有“常规”和“权限”两个选项卡:常规选项卡用于将登录用户添加到服务器角色中或从服务器角色中移去登录用户:权限选项卡的主要功能是介绍所选择的服务器角色的权限情况,如图52所示。图51服务器角色属性的常规页面图52服务器属性的权限菜单4)选择常规页面,并单击“添加”按钮,在出现的选择登录用户对话框中,选择登录名后,单击“确定”按钮,之后,新选的登录就会出现在常规对话框中。如果要从服务器角色中移去登录,则先选中登录用户,再单击“删除”按钮即可。5)选择权限页面,可以看到该服务器角色可以执行的全部管理命令,即新加的登录也可以使用这些操作命令。5.数据库角色的管理(1)在数据库角色中增加或移去用户在企业管理器中,向数据库角色添加或移去用户的方法是:l)展开一个SQL服务器、数据库文件夹和指定的数据库文件夹,选中角色文件夹后,在细节窗口中就会出现该数据库己有的角色。2)选中要加入的角色,例如选中db_owner角色,用鼠标右击它,在弹出的菜单中选择“属性”项,如图53所示。3)在如图54所示数据库角色属性对话框中,单击“添加”按钮,则出现选择该数据库用户的对话框,选择要加入角色的用户,单击“确定”按钮,关闭选择数据库用户对话框后,会发现新选的用户名出现在数据库角色属性对话框中。图53数据库角色的弹出菜单图54数据库角色属性对话框4)如果在数据库角色中要移走一个用户,在用户栏中选中它后,单击“删除”按钮。5)完成后,单击“确定”按钮。(2)创建新的数据库角色l)在企业管理器中打开SQL服务器组、服务器、数据库文件夹和特定的数据库文件夹。2)用鼠标选中角色子文件夹后,右边的细节窗口显示该数据库中的角色,用鼠标右击任意角色,并在弹出的菜单中选择“新建数据库角色”项,如图55所示。3)在如图56所示的新建数据库角色对话框的名称栏中输入新角色名;在用户栏中增加或移去角色中的用户;确定数据库角色的类型。数据库角色的类型有两种选择:标准角色(StandardRole)和应用程序角色(ApplicationRole)。标准角色用于正常的用户管理,它可以包括成员;而应用程序角色是一种特殊角色,需要指定口令,是一种安全机制。4)单击“确定”按钮完成。6.对象权限的管理对象权限的管理可以通过两种方法实现:一种是通过对象管理它的用户及操作权;另一种是通过用户管理对应的数据库对象及操作权。具体使用哪种方法要视管理的方便性来决定。(1)通过对象授予、撤消和废除用户权限图55新建数据库角色选项图56新建数据库角色对话框如果要一次为多个用户(角色)授予、撤消和废除对某一个数据库对象的权限时,应采用通过对象的方法实现。在SQLServer2000的企业管理器中,实现对象权限管理的操作步骤如下:1)展开SQL服务器、数据库文件夹和数据库,选中一个数据库对象,例如,选中学生选课数据库中的表文件夹中的Course表,单击鼠标右键,使之出现弹出菜单。2)在弹出的菜单中,选择“所有任务”中的“管理权限”项,如图57所示。随后就会出现一个对象权限对话框,如图58所示。图57在对象的弹出菜单中选择管理权限项图58对象权限对话框3)在对象权限对话框的上部有两个单选框:选择“列出全部用户/用户定义的数据库角色Public”项,则在下面的权限表中列出所有的数据库用户和角色;选择“仅列出对此对象具有权限的用户/用户定义的数据库角色Public”项。在权限表中列出仅具有本对象操作权的数据库用户和角色,一般选中第一项。4)在对象权限对话框的下面是有关数据库用户和角色所对应的权限表,这些权限均以复选框的形式表示。复选框有三种状态:“√”为授权;“X”为废除权;空为撤权。在表中可以对各用户或角色的各种对象操作权(SELECT、INSERT、UPDATE、DELETE、EXEC和DRI)进行授予或撤消。5)完成后单击“确定”按钮。(2)通过用户或角色授予、撤消和废除对象权限如果要为一个用户或角色同时授予、撤消或者废除多个数据库对象的使用权限,则可以通过用户或角色的方法进行。例如,要对学生选课数据库中的rolesl角色进行授权操作。在企业管理器中,通过用户或角色授权(或收权)的操作步骤如下:1)展开一个SQL服务器和数据库文件夹,单击用户或角色文件夹。在细节窗口中找到要选择的用户或角色,本例为角色中的rolesl角色,用鼠标右键单击该角色。在弹出的菜单中选择属性项后,出现形式如图59所示的数据库角色属性对话框。图59数据库角色属性对话框2)在数据库角色属性对话框中,单选钮的两个选项为:选择“列出全部对象”项,则在下面表中会列出全部数据库对象;选择“仅列出该角色具有权限的对象”项,则下面表中只列出该角色有操作权的对象。显然,要进行授权操作时应选前者,进行撤权或废除权限操作时可选后者;3)在对话框中的权限列表中,对每个对象进行授权、撤消权和废除权的操作。在权限表中,权力SELECT、INSERT、UPDATE等安排在列中,每个对象的操作权用一行表示。在相应的单元格中,如果为“√”表示授权;“×”表示废除权限;空白表示撤消权力。单击单元格可改变其状态。4)完成后,单击“确定”按钮。7.语句权限的管理在SQLServer2000的企业管理器中,还提供了管理语句权限的方法,其操作的具体步骤如下:l)展开一个SQL服务器、数据库文件夹,用鼠标右键单击指定的数据库文件夹。例如,学生选课数据库,在弹出的菜单中选择“属性”项,如图60所示。会出现数据库属性对话框。2)在数据库属性对话框中,选择“权限”选项卡,出现管理数据库语句权限的对话框,如图61所示。在对话框的列表栏中,单击表中的各复选小方块可分别对各用户或角色授予、撤消和废除数据库的语句操作权限。小方框内的“√”表示授户权限;“×”表示废除权限;空白表示撤消权限。图60数据库的弹出菜单图61管理数据库语句权限对话框3)完成后单击“确定”按钮。8.创建和修改存储过程在企业管理器中,如果要创建新的存储过程或要修改一个已存在的存储过程,首先要展开服务器、数据库文件夹以及存储过程所属的数据库,然后用鼠标右击存储过程文件夹,出现如图62的存储过程功能菜单。在弹出的菜单上选择“新建存储过程”项,就会出现如图63所示的存储过程属性对话框。在存储过程属性对话框的文本框中,输入创建存储过程的Transact-SQL语句。然后,单击“检查语法”按钮进行语法检查。检查无误后,单击“确定”按钮。这样就创建了一个存储过程。如果要修改一个已存在的存储过程,用鼠标双击该存储过程,就会出现与图63相似的存储过程属性对话框在它的文本框中,己经有原存储过程的内容,可以对其Transact-SQL语句进行检查、修改,直到满意后关闭对话框为止。图62存储过程功能菜单图63存储过程属性对话框9.创建和修改触发器1)在企业管理器中,由服务器开始逐步扩展到触发器所属表的数据库。打开表文件夹,在细节窗口中用鼠标右键单击触发器所属的表。在弹出的菜单上选择“所有任务”→“管理触发器”项,如图64所示,则弹出如图65所示的触发器属性对话框。图64触发器的弹出菜单图65触发器属性对话框2)如果要新建触发器,则要选择名称弹出项的“<new>”,并用新名替代它,然后在文本框中输入创建触发器的Transact-SQL语句,单击“捡查语法”按钮进行语法检查,检查无误后,单击“确定”按钮。3)如果要修改触发器,则在名称弹出项中选择要修改的触发器名,并在文木框中对已有的内容进行修改,检查无误后单击“确定”按钮。4)如果要删除触发器,则在名称弹出项中选择要删除的触发器名,并检查文本中的内容,看是否选得正确,最后单击“删除”按钮。四、注意事项1.用户、角色和权限的职能,以及它们之间的关系。2.各种触发器的含义。3.两种SQLServer的安全认证模式及特点。五、思考题1.SQLServer中有哪些数据安全性功能?性能怎样?有哪些不足之处?2.SQLServer中有哪些数据完整性功能?性能怎样?有哪些不足之处?3.什么是触发器?主要功能是什么?

实验九数据库备份和恢复实验本实验需要2学时。一、实验目的使学生了解SQLServer的数据备份和恢复机制,掌握SQLServer中数据库备份和恢复的方法。二、实验内容1.用企业管理器创建一个备份设备。2.为学生选课数据库设置一个备份计划,要求每当CPU空闲时进行数据库备份。3.在企业管理器中恢复学生选课数据库。4.修改学生选课数据库备份计划,要求每星期对数据库备份一次。三、实验方法1.创建、查看和删除备份设备(l)创建备份设备在企业管理器中,扩展要操作的SQL服务器,在管理文件夹中找到备份文件夹。用鼠标右键单击该文件夹后,在弹出的菜单中选择“新建备份设备”项,如图66所示。随后会出现如图67所示的备份设备属性对话框。在备份设备属性对话框中,执行下列操作:输入备份设备的逻辑名称:确定备份设备的文件名;单击“确定”按钮。在确定备份设备的文件名时,需要单击文件名栏最右边的“…”按钮,并在弹出的文件名对话框中确定或改变备份设备的缺省磁盘文件路径和文件名。(2)查看备份设备的相关信息查看备份设备的相关信息时,需要执行的操作是:在企业管理器中扩展服务器,选择管理文件夹和备份文件夹,在细节窗口中找到要查看的备份设备;用鼠标右键单击该备份设备,在弹出的菜单上选择“属性”项,会弹出与图67相似的备份设备属性对话框;用鼠标单击设备名称右边的“查看”按钮,可弹出备份设备的信息框,从中可以得到备份数据库及备份创建日期等信息。图66备份文件夹的弹出菜单图67备份设备属性对话框(3)删除备份设备如果要删除一个不需要的备份设备,首先,在企业管理器中选中该备份设备,并用鼠标右键单击它;在弹出的菜单中选择“删除”项;在确认删除对话框中,单击“确认”按钮。2.备份数据库(1)进入数据库备份对话框在SQLServer的企业管理器中,用鼠标右键单击要备份的数据库;在弹出的菜单上选择“所有任务”中的“备份数据库”项,则会弹出一个数据库备份对话框。该对话框有常规和选项两个页面,“常规”选项卡的界面如图68所示,“选项”选项卡的界面如图69所示。图68数据库备份的常规页面图69数据库备份的选项页面(2)在常规选项卡中完成以下操作在“数据库”框中选择要备份的数据库;在“名称”框中为备份取一个便于识别的名称;选择备份方法,可选择完全备份、差异备份(增量备份)、事务日志、文件或文件组之一;为磁盘备份设备或备份文件选择目的地,即通过列表右边的“添加”按钮或“删除”确定备份文件的存放位置,列表框中显示要使用的备份设备或备份文件;在“重写”栏中选择将备份保存到备份设备时的覆盖模式;在“调度”栏中设置数据库备份计划。覆盖模式通过两个单选项指定:“追加到媒体”为将数据库备份追加在备份设备已有内容之后:“重写现有媒体”为用数据库备份覆盖备份设备中原有的内容,原有内容将统统丢失。(3)设定备份计划需要执行的操作先要选中调度复选框,并单击文本框右边的“…”按钮,就会出现如图70所示的编辑备份计划对话框,在对话框中可以设置以下4种备份类型:l)SQLServer代理启动时自动启动:每当SQLServerAgent启动工作时,都自动进行数据库备份。2)每当CPU闲置时启动:每当CPU空闲时进行数据库备份。3)一次:设定进行数据库备份的一次性时间;4)反复出现:按一定周期进行数据库备份。当选择“反复出现”备份类型后,还要用鼠标单击位于对话框右下方的“更改”按钮,在“编辑反复出现的作业调度”对话框中,设置备份的发生频率、时间、持续时间等参数,如图71所示。图70编辑备份计划对话框图71改变备份周期对话框(4)设置选项页面内容数据库备份对话框的选项页面如图69所示。在“选项”卡中,需要设置以下内容:l)通过设置“完成后验证备份”复选框决定是否进行备份设备验证。备份验证的目的是为了保证数据库的全部信息都正确无误地保存到备份设备上。通过备份验证,用户可以检查备份设备的性能,从而可以在以后的工作中大胆地使用该备份设备,而不必担心是否有潜在的危险。2)通过设置“检查媒体集名称和备份集到期时间”复选框决定是否检查备份设备上原有内容的失效日期。只有当原有内容失效后,新的备份才能覆盖原有内容。3)通过设置“初始化并标识媒体”复选框初始化备份设备。备份设备的初始化相当于磁盘格式化,必须是在使用的覆盖模式是重写时,才可

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论