《实验指导书数据库原理及应用(66页).doc》由会员分享,可在线阅读,更多相关《实验指导书数据库原理及应用(66页).doc(66页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、-实验指导书数据库原理及应用-第 60 页数据库原理及应用实验指导书通信工程学院 2015年9月目 录实验1SQL Server的安装及管理工具的使用1一、实验目的1二、实验内容及要求1三、实验内容及任务13.1安装SQL Server 200513.2 SQL Server的环境介绍93.3熟悉SQL Server 200510四、实验思考11五、实验报告要求12实验2 SQL Server数据库的管理13一、实验目的13二、实验内容及要求13三、实验任务及步骤13四、实验思考18五、实验报告要求18实验3 SQL Server数据表的管理19一、实验目的19二、实验内容及要求19三、实验任
2、务及步骤193.1 实验任务1193.2、实验任务2213.3 实验任务3223.4任务3参考24四、实验思考26五、实验报告要求27实验4 简单SELECT语句28一、实验目的28二、实验内容及要求28三、实验任务及步骤283.1查询设计器使用方法283.2实验任务29四、实验报告要求34实验5 子查询35一、实验目的35二、实验内容及要求35三、实验任务及步骤35四、实验报告要求39实验6 汇总查询40一、实验目的40二、实验内容及要求40三、实验任务及步骤40四、实验报告要求43实验7 索引和视图44一、实验目的44二、实验内容及要求44三、实验任务及步骤44四、实验思考45五、实验报告
3、要求45实验8SQL数据更新语句46一、实验目的46二、实验内容及要求46三、实验任务及步骤46四、实验报告要求47实验9 数据完整性管理48一、实验目的48二、实验内容及要求48三、实验任务及步骤483.1可视化界面的操作方法485 、按照步骤4的方法设置表student_course中“tcid”和course表中的“cno”字段的参照。493.2命令方式操作方法493.3完整性验证503.4、实验任务:53 四、实验报告要求53实验10 数据安全性管理54一、实验目的54二、实验内容及要求54三、实验任务及步骤54四、实验报告要求56实验11 Transact-SQL程序设计57一、实验
4、目的57二、实验内容及要求57三、实验内容及步骤57五、实验报告要求59实验12 触发器实验60一、实验目的60二、实验内容及要求60三、实验任务及步骤60四、实验报告要求62实验13 存储过程实验63一、实验目的63二、实验内容及要求63三、实验内容及任务633.1 存储过程的创建和执行633.2 管理存储过程64四、实验报告要求66实验14 函数67一、目的与要求67二、实验准备67三、实验内容及要求67四、实验任务及步骤67四、实验报告要求68实验15 数据库备份与恢复69一、实验目的69二、实验内容及要求69二、实验内容69三、思考69四、实验报告要求70实验16 导入、导出数据71一
5、、实验目的71二、实验内容及要求71三、实验任务及步骤71四、实验报告要求72实验17 数据库设计综合应用73一、实验任务与要求73二、课程设计基础知识73三、课程设计题目及进度安排75实验1SQL Server的安装及管理工具的使用一、实验目的1、通过对某个商用数据库管理系统的使用,了解DBMS的工作原理和系统构架。 在此推荐数据库管理系统SQL Server 2005,系统可以从微软官方网站上下载该系统。2、 熟悉DBMS的配置要求及操作(1)了解SQL Server 2005安装对软、硬件的要求,掌握安装方法。(2)了解SQL Server 2005的注册和配置方法。(3)了解SQL S
6、erver 2005包含的主要组件及其功能。(4)熟悉SQL Server 2005管理平台的界面及基本使用方法。(5)了解SQL Server 2005数据库及其对象。(6)了解在SQL Server2005管理平台中执行SQL语句的方法。二、实验内容及要求1、了解常用的DBMS。2、了解SQL Server 的版本及安装3、SQL Server 的使用。三、实验内容及任务3.1安装SQL Server 20051 根据安装机器软硬件的要求,选择一个合适的版本,以下以开发版为例2 将 SQL Server 2005 DVD 插入 DVD 驱动器。如果DVD驱动器的自动运行功能无法启动安装程序
7、无法启动安装程序,请导航到 DVD 的根目录然后启动splash.hta。3 在自动运行的对话框中,单击“运行 SQL Server 安装向导”。4 在“最终用户许可协议”页上,阅读许可协议,再选中相应的复选框以接受许可条款和条件。接受许可协议后即可激活“下一步”按钮。若要继续,请单击“下一步” 若要结束安装程序,请单击“取消”。如下图:5 在“SQL Server 组件更新”页上,安装程序将安装 SQL Server 2005 的必需软件。有关组件要求的详细信息,请单击该页底部的“帮助”按钮。若要开始执行组件更新,请单击“安装”。更新完成之后若要继续,请单击“完成”。6 在 SQL Serv
8、er 安装向导的“欢迎”页上,单击“下一步”以继续安装。7 在“系统配置检查 (SCC)”页上,将扫描安装计算机,以检查是否存在可能妨碍安装程序的条件。8 在“注册信息”页上的“姓名”和“公司”文本框中,输入相应的信息。若要继续,请单击“下一步”9 在“要安装的组件”页上,请选择要安装的组件。选择各个组件组时,“要安装的组件”窗格中会显示相应的说明。您可以选中任意一些复选框。建议全选。若要安装单个组件,请单击“高级”。否则,请单击“下一步”继续。10 在“实例名”页上,请为安装的软件选择默认实例或已命名的实例。计算机上必须没有默认实例,才可以安装新的默认实例。若要安装新的命名实例,请单击“命名
9、实例”,然后在提供的空白处键入一个唯一的实例名。11 在“服务帐户”页上,为 SQL Server 服务帐户指定用户名、密码和域名。您可以对所有服务使用一个帐户。12 在“身份验证模式”页上,选择要用于 SQL Server 安装的身份验证模式。如果选择 Windows 身份验证,安装程序会创建一个 sa 帐户,该帐户在默认情况下是被禁用的。选择“混合模式身份验证”时,请输入并确认系统管理员 (sa) 登录名。建议选择混合模式,并输入安全的密码。13 如果选择 Reporting Services 作为要安装的功能,将显示“报表服务器安装选项”页。使用单选按钮选择是否使用默认值配置报表服务器。
10、如果没有满足在默认配置中安装 Reporting Services 的要求,则必须选择“安装但不配置服务器”安装选项。若要继续安装,请单击“下一步”14 在“错误报告”页上,可以清除复选框以禁用错误报告。有关错误报告功能的详细信息,请单击该页底部的“帮助”。若要继续安装,请单击“下一步”。15 在“准备安装”页上,查看要安装的 SQL Server 功能和组件的摘要。若要继续安装,请单击“安装”。16 在“安装进度”页上,可以在安装过程中监视安装进度。若要在安装期间查看某个组件的日志文件,请单击“安装进度”页上的产品或状态名称。17 在“完成 Microsoft SQL Server 安装向导
11、”页上,可以通过单击此页上提供的链接查看安装摘要日志。若要退出 SQL Server 安装向导,请单击“完成”。18 如果提示您重新启动计算机,请立即重新启动。19 如果成功安装了SQL Server 2005,则在开始菜单中添加了如下程序和相应的服务:3.2 SQL Server的环境介绍1. Analysis Services提供“部署向导”,为用户提供将某个Analysis Services项目的输出部署到某个目标服务器的功能。2. 配置工具其子菜单中提供的配置管理器“SQL Server Configulation manager”用于查看和配置SQL Server的服务。以下是SQL
12、 Server 2005 系统的7个服务。右击某个服务名称,可以查看该服务的属性,并且可以启动、停止、暂停和重新启动相应的服务。也可以使用操作系统“我的电脑”“管理”选项,在【计算机管理】窗口中查看和启动、停止、暂停和重新启动相应的服务。3. 文档和教程提供了SQL Server 2005的联机帮助和示例数据库概述。4. 性能工具子菜单提供了“SQL Server Profiler”和“数据库引擎优化顾问”用户数据库性能调试和优化工具。5.SQL Server Business Intelligence Development Studio商务智能(BI)系统开发人员设计的集成开发环境,构建于
13、Visual Studio 2005 技术之上,为商业智能系统开发人员提供了一个丰富、完整的专业开发平台,支持商业智能平台上的所有组件的调试、源代码控制以及脚本和代码的开发。6.SQL Server Management Studio它将 SQL Server 早期版本中包含的企业管理器、查询分析器和分析管理器的功能组合到单一环境中,为不同层次的开发人员和管理员提供 SQL Server 访问能力。3.3熟悉SQL Server 20051、使用“联机丛书”了解SQL Server 2005的安装、配置、结构、组件使用等相关信息。2、通过选择“开始”“程序”Microsoft SQL Serv
14、er 2005“配置工具”SQL Server Configuration Manager菜单项,打开“SQL Server配置管理器”窗口,在界面左边的树目录中选择“SQL Server 2005 服务”,在右边的项列表区中选择SQL Server。并且通过该窗口“启动服务”和“停止服务”图标来启动和停止SQL Server服务。3、通过“开始”“程序”Microsoft SQL Server 2005SQL Server Management Studio菜单项打开SQL Server 2005管理平台。4、在SQL Server 2005管理平台中,注册服务器。查看本地已注册的SQL S
15、erver。查找网络上另一台计算机,并且注册该机上的SQL Server,注册时使用“Windows身份认证”或“SQL Server身份认证”的连接方式。5、从SQL Server管理平台中删除网络SQL Server服务器。6、在SQL Server管理平台的对象资源管理器中打开本地服务器的属性对话框,查看以下信息:产品名称、主机操作系统、产品的版本、操作平台、主机内存等。7、利用SQL Server管理平台访问系统自带的AdventureWorks数据库。 以系统管理员身份登录到SQL Server管理平台。 在SQL Server管理平台的对象资源管理器窗口中找到AdventureWo
16、rks数据库并展开,查看该数据库的所有对象,如表、视图、存储过程、默认和规则等。 选择AdventureWorks数据库的“表”选项,在右窗格中将列出AdventureWorks数据库的所有表,选择雇员表HumanResources.Employee,右击鼠标,弹出快捷菜单,从中选择“打开表”菜单项,打开Employee表,查看其内容。8、利用SQL Server管理平台的查询设计器窗口访问AdventureWorks数据库的表。 在SQL Server管理平台的对象资源管理器窗口中,选择AdventureWorks数据库结点,单击鼠标右键,在弹出的快捷菜单中选择“新建查询”命令,或者选择数据
17、库后,单击工具栏的“新建查询”命令,打开查询设计器窗口。 在查询设计器窗口中,输入以下代码:SELECT * FROM HumanResources.Employee aWHERE a.Gender=MORDER BY a.Title 选择SQL Server管理平台的“查询”“分析”菜单项,或者单击常用工具栏上“验证SQL语法”按钮,查询设计器将对输入的代码进行语法分析,并由消息窗格给出分析结果报告。 选择SQL Server管理平台的“查询”“执行”菜单项,或者单击常用工具栏上“执行SQL”按钮,SQL Server将编译窗口中的代码,并在结果窗格中显示查询结果,如图1-1所示。图1-1
18、查询设计器窗口 9、了解数据库系统的逻辑组件:它们主要是数据库对象,包括基本表、视图、触发器、存储过程、约束等。今后将学习如何操作这些数据库对象。四、实验思考1、SQL Server管理平台的作用是什么?如何进入SQL Server管理平台?2、SQL Server配置管理器的作用是什么?如何进入SQL Server配置管理器?3、用几种不同的方法实现注册数据库服务器与对象资源管理器的连接。4、查询设计器窗口的作用是什么?如何打开查询设计器窗口?5、改变查询设计器的当前数据库使用什么方法?五、实验报告要求1、实验目的、内容和步骤。2、给出安装过程中、使用过程中出现的错误及解决方法3、根据你所了
19、解的SQL Server工具,写出部分主要组件的功能(以SQL Server2005为例,写出SQL Server Management Studio、配置管理器)。实验2 SQL Server数据库的管理一、实验目的1、了解SQL Server 数据库的逻辑结构和物理结构的特点。2、掌握使用SQL Server管理平台对数据库进行管理的方法。3、掌握使用Transact-SQL语句对数据库进行管理的方法。二、实验内容及要求1、掌握数据库系统的三级模式结构。2、熟悉SQL Server 2005 的使用。三、实验任务及步骤1、在SQL Server管理平台中创建数据库。 将使用SQL Serv
20、er2005数据库管理系统创建Student数据库,并在Student数据库中创建表Student,使你能够掌握使用SQL Server2005数据库管理系统创建数据库和表的方法。1) 启动SQL Server2005:依次单击开始所有程序SQL Server 2005SQL Server Management Studio 启动SQL Server 2005数据库管理系统2) 登录数据库服务器:点击“连接到服务器“对话框中的连接按钮连接到SQL Server 2005数据库服务器。3) 创建数据库Student在SQL Server 2005数据库管理系统的左边栏“对象资源管理器”中右击数据
21、库对象,在弹出的快捷菜单中单击“新建数据库”命令。在弹出的“新建数据库”对话框右侧的数据库名称中输入数据库名称“Student”,然后单击确定。4) 在Student数据库中新建表”Student”单击SQL Server 2005数据库管理系统的左侧的“对象资源管理器”栏中的”刷新”按钮,以显示出新建的数据库“Student”。依次展开左侧栏对象资源管理器中的“数据库”“Student”,并右击Student数据库中的表项目,在弹出的快捷菜单中单击“新建表”命令。在右侧在工作区中输入“Student”表的信息,该表具有如下列:列名数据类型完整性约束SnoCHAR(5)主码SnameCHAR(
22、10)非空SsexBIT无SageINT无SdeptCHAR(15)无单击文件菜单中的保存命令保存该表,并取名为“Student”。2、选择Student数据库,在其快捷菜单中选择“属性”菜单项,查看“常规”、“文件”、“文件组”、“选项”、“权限”和“扩展属性”等页面。3、打开Student数据库的“属性”对话框,在“文件”选项卡中的数据库文件列表中修改Student数据文件的“分配的空间”大小为2MB。指定“最大文件大小”为5MB。修改Student数据库的日志文件的大小在每次填满时自动递增5%。4、单击“新建查询”打开查询设计器窗口,在查询设计器窗口中使用Transact-SQL语句CR
23、EATE DATABASE创建studb数据库。使用T-SQL语句创建数据库的语法如下:CREATE DATABASE database_name ON PRIMARY (NAME=logical_file_name, FILENAME = os_file_name , SIZE = size , MAXSIZE = max_size | UNLIMITED , FILEGROWTH =growth_increment ) , n, , n LOG ON (NAME=logical_file_name, FILENAME = os_file_name , SIZE = size , MAXSI
24、ZE = max_size | UNLIMITED , FILEGROWTH =growth_increment ) , n 参数含义如下:(1)database_name:创建的数据库的名称。(2)PRIMARY:用来指定主数据文件。如果不指定主数据文件,那么列出的第一个文件将成主数据文件。(3)logical_file_name:逻辑文件名。逻辑文件名是指在T-SQL语句中应用文件时所使用的名字。(4)os_file_name:物理文件名。即操作系统在创建数据文件或日志文件的物理文件时使用的路径和文件名。(5)size:数据文件或日志文件的初始大小。(6)max_size:数据文件或日志文
25、件可以增长到的最大值。 (7)growth_increment:指定数据文件或日志文件空间不足时每次增长的大小。增长方式可以按百分比、MB或者KB方式增长,必须为整数,默认为MB。(8)filegroupspec:指定文件所在的文件组。5、通过系统存储过程sp_helpdb查看系统中的数据库信息。使用系统存储过程sp_helpdb查看某个数据库或所有数据库的属性的语法格式如下:EXECUTE sp_helpdb database_name参数含义如下:database_name:要查看的数据库的名称,若省略数据库的名称,则表示查看所有数据库的信息 6、在查询设计器中使用Transact-SQL
26、语句ALTER DATABASE修改studb数据库的设置,指定数据文件大小为5MB,最大文件大小为20MB,自动递增大小为1MB。 使用Transcat-SQL语言的ALTER DATABASE语句修改数据库的语法格式如下:ALTER DATABASE数据库名称ADD FILE ,.n TO FILEGROUP 文件组名称 | ADD LOG FILE ,.n | REMOVE FILE 逻辑文件名 WITH DELETE| ADD FILEGROUP文件组名称| REMOVE FILEGROUP文件组名称| MODIFY FILE | MODIFY NAME = 新数据库名| MODIFY
27、 FILEGROUP 文件组名称 文件组属性 | NAME = 新文件组名称参数含义如下: 数据库名称:是要更改的数据库的名称ADD FILE:指定要添加文件。TO FILEGROUP:表示要将指定的文件添加到其后指定的的文件组中。ADD LOG FILE:表示要将其后指定的日志文件添加到指定的数据库中。REMOVE FILE:从数据库系统表中删除文件描述并删除物理文件。ADD FILEGROUP:指定要添加文件组。REMOVE FILEGROUP:从数据库中删除文件组。只有当文件组为空时才能将其删除。7、在数据库studb中增加如下文件:在主文件组中增加数据文件td4,初始大小为5MB,最大
28、为15MB,增长幅度为1MB。在次文件组u2中增加数据文件td5,属性同td4。增加日志文件tlog2,属性同td4。参考代码:alter database testdbadd file(name=td4, filename= e:sqltd4.ndf , size=5, maxsize=15, filegrowth=1),(name=td5, filename= e:sqltd5.ndf , size=5, maxsize=15, filegrowth=1) to filegroup u2alter database testdbadd log file(name=tlog2, filena
29、me= e:sqltlog2.ldf , size=5, maxsize=15, filegrowth=1)8、使用SQL Server管理平台将studb数据库的名称更改为student_db。9、使用Transact-SQL语句DROP DATABASE删除student_db数据库。 格式: drop database 数据库名10、在SQL Server管理平台中删除Student数据库。四、实验思考1、数据库中的日志文件是否属于某个文件组?2、数据库中的主数据文件一定属于主文件组吗?3、数据文件和日志文件可以在同一个文件组吗?为什么? 4、删除了数据库,其数据文件和日志文件是否已经删
30、除?是否任何人都可以删除数据库?删除了的数据库还有可能恢复吗?5、能够删除系统数据库吗?五、实验报告要求1、实验目的、内容和步骤。2、给出安装过程中、使用过程中出现的错误及解决方法3、回答思考题。实验3 SQL Server数据表的管理一、实验目的1、熟悉SQL Server 2005中SQL Server Management Studio的环境2、了解SQL Server 2005数据库的逻辑结构和物理结构3、了解表的结构特点4、了解SQL Server的常用数据类型5、掌握使用SQL Server管理平台和Transact-SQL语句CREATE TABLE和ALTER TABLE创建和
31、修改表的方法。6、掌握在SQL Server管理平台中对表进行插入、修改和删除数据操作的方法。二、实验内容及要求1、掌握数据库系统的三级模式结构。2、掌握数据模型、关系模型的基本概念。3、表的建立,数据维护。三、实验任务及步骤3.1 实验任务11、启动SQL Server管理平台,在对象资源管理器中创建studentsdb数据库。2、在studentsdb数据库中包含有数据表student_info、curriculum、grade,这些表的数据结构如图3-1至图3-3所示。图3-1 学生基本情况表student_info图32 课程信息表curriculum图3-3 学生成绩表grade3、
32、在SQL Server管理平台中创建student_info、curriculum表。4、在SQL Server管理平台中,将student_info表的学号列设置为主键,非空。5、使用Transact-SQL语句CREATE TABLE在studentsdb数据库中创建grade表。6、student_info、curriculum、grade表中的数据如图3-4至图3-6所示。图3-4 student_info的数据图3-5 curriculum的数据图3-6 grade的数据7、在SQL Server管理平台中为student_info、curriculum、grade表添加数据。8、使
33、用Transact-SQL语句ALTER TABLE修改curriculum表的“课程编号”列,使之为非空。9、使用Transact-SQL语句ALTER TABLE修改grade表的“分数”列,使其数据类型为real。10、使用Transact-SQL语句ALTER TABLE修改student_info表的“姓名”列,使其列名为“学生姓名”,数据类型为varchar(10),非空。11、分别使用SQL Server管理平台和Transact-SQL语句DELETE删除studentsdb数据库的grade表中学号为0004的成绩记录。12、使用Transact-SQL语句UPDATE修改s
34、tudentsdb数据库的grade表中学号为0003、课程编号为0005的分数为90的成绩记录。13、使用Transact-SQL语句ALTER.ADD为studentsdb数据库的grade表添加一个名为“备注”的数据列,其数据类型为VARCHAR(20)。3.2、实验任务21建立一个新数据库HRM。2在数据库HRM中,建立如下所示的三个表:Employee表列名数据类型长度是否允许为空说明EmployeeIDChar6否员工编号,主键NameChar10否姓名BirthdayDatetime8否出生日期SexBit1否性别AddressChar20是地址ZipChar6是邮编PhoneN
35、umberChar12是电话号码EmailAddressChar30是电子邮件地址DepartmentIDChar3否员工部门号,外键Departments表列名数据类型长度是否允许为空说明DepartmentIDChar3否员工部门号,主键DepartmentNameChar20否部门名NoteText16是备注Salary表列名数据类型长度是否允许为空说明EmployeeIDChar6否员工编号,外键IncomeFloat8否收入OutComeFloat8否支出3.对三张表输入数据建立的表输入数据:Departments表:DepartmentIDDepartmentNameNote1财务
36、部财务部2研发部研发部3人力资源部人力资源部Employee表EmployeeIDNameBirthdaySexAddressZipPhoneNumberEmailAddressDepartmentID1001李勇78-3-120河南4750013880378ly11002王敏80-11-21河南4750020378311wm11003刘晨78-6-220河南4750030378322lc12001张立78-8-10河南4750040378333zl22002刘毅82-1-230河南4750050378344ly22003张玫81-3-151河南4750060378355zm23001徐静76
37、-8-121河南4750070378366xj33002赵军79-2-190河南4750080378377zj3Salary表EmployeeIDIncomeOutCome1001360015001002330010001003370012002001400016002002380018002003380015003001420020003002410018003.3 实验任务31、 建立一个新数据库student2、 在数据库student中,根据分析需要如下几个表: 表3.1 student表(学生信息表)字段名称类 型宽 度允许空值主 键说 明snochar8NOT NULL是学生学号s
38、namechar8NOT NULL学生姓名sexchar2NULL学生性别nativechar20NULL籍贯birthdaysmalldate4NULL学生出生日期dnochar6NULL学生所在院系spnochar8NULL专业代码(外键)classnochar4NULL班级号entimesmalldate4NULL学生入校时间homevarchar40NULL学生家庭住址telvarchar40NULL学生联系电话表3.2 course表(课程信息表)字段名称类 型宽 度允许空值主 键说 明cnochar10NOT NULL是课程编号spnochar8NULL专业代码(外键)cnamec
39、har20NOT NULL课程名称ctnotinyint1NULL课程类型编号(外键)experimenttinyint1NULL实验时数lecturetinyint1NULL授课学时semestertinyint1NULL开课学期credittinyint1NULL课程学分表3.3 student_course表(学生选课成绩表)字段名称类 型宽 度允许空值主 键说 明snochar8NOT NULL是学生学号tcidsmallint2NOT NULL是上课编号scoretinyint1NULL学生成绩表3.4 teacher表(教师信息表)字段名称类 型宽 度允许空值主 键说 明tnoch
40、ar8NOT NULL是教师编号tnamechar8NOT NULL教师姓名sexchar2NULL教师性别birthdaysmalldate4NULL教师出生日期dnochar6NULL教师所在院系pnotinyint1NULL教师职务或职称编号homevarchar40NULL教师家庭住址zipcodechar6NULL邮政编码telvarchar40NULL联系电话emailvarchar40NULL电子邮件表3.5 teacher_course表(教师上课课表)字段名称类 型宽 度允许空值主 键说 明tcidsmallint2NOT NULL是上课编号tnochar8NULL教师编号(
41、外键)spnochar8NULL专业代码(外键)classnochar4NULL班级号cnochar10NOT NULL课程编号(外键)semesterchar6NULL学期schoolyearchar10NULL学年classtimevarchar40NULL上课时间classroomvarchar40NULL上课地点weektimetinyint1NULL每周课时数3、根据如上表结构用SQL语句创建各表。 用sql语句创建student表sql代码如下:CREATE TABLE student snochar(8) PRIMARY KEY, -学号(主键) snamechar (8) NOT NULL,-姓名 sexchar(2),-性别 nativechar(20),-籍贯 birthdaysmalldatetime,-出生日期 dnochar(6),-所在院系 spnochar(8),-专业代码(外键) classnochar(4),-班级号 entimesmalldatetime,-入校时间 homevarchar (40),-家庭住址 telvarchar (40)-联系电话
限制150内