SQLSERVER2008实用教程实验参考答案(实验7)

合集下载

数据库应用技术——SQLServer2008篇第3版习题答案作者延霞徐守祥习题参考答案

数据库应用技术——SQLServer2008篇第3版习题答案作者延霞徐守祥习题参考答案

第一章:1、订单管理系统的功能有哪些?答:订单管理系统的功能主要有客户查询商品信息、客户预订商品并提交订单、销售人员处理客户的订单信息、销售人员管理商品信息、客户信息等。

2、说明ER模型的作用?答:ER模型(实体关系模型)是描述概念世界,建立概念世界的工具,ER方法把管理系统所要描述的问题划分为单个的实体,通过实体间的联系实现有效、自然地模拟现实世界。

3、什么是关系模型?关系的完整性包括哪些内容?答:关系模型就是用二维表格结构来表示实体及实体之间联系的模型,关系模型包括四类完整性:域完整性、实体完整性、参照完整性和用户定义的完整性。

4、按照功能,SQL语言分为哪4部分?答:按照功能,SQL语言分为数据定义语言、查询语言、数据操纵语言、数据控制语言。

5、规范化范式是依据什么来划分的?它与一事一地的原则有什么联系?答:规范化范式根据一个关系满足数据依赖的程度不同,可规范化为第一范式(1NF)、第二范式(2NF)、第三范式(3NF)。

规范化范式遵循一事一地的原则,将描述一个独立事物的属性组成一个关系。

第二章:1、SQL Server2008有哪些新增特性?答:见教材17页2、SQL Server2008安装的软件和硬件环境是什么?答:参见教材表2-3、2-4、2-5、2-6。

3、SQL Server2008有哪些版本?有哪些服务组件?答:Microsoft SQL Server2008系统提供了多个不同的版本,不同的应用需求,往往需要安装不同的版本。

既有32位的版本,也有64位的版本,既有正式使用的服务器版本,也有满足特殊需要的专业版本。

其中,服务器版本包括了企业版和标准版,专业版本主要包括开发人员版、工作组版、Web版、Express版、Compact版等。

另外,还有企业评估版。

服务组件主要有SQL Server数据库引擎、Analysis Services、Reporting Services、Notification Services、Integration Services等。

数据库实验指导—SQL_Server_2008

数据库实验指导—SQL_Server_2008

目录目录 (2)实验1 SQL Server的安装及管理工具的使用 (3)实验2 交互式SQL (4)实验3 数据完整性和安全性管理 (16)实验4 触发器和存储过程实验 (26)实验5 数据库备份与恢复 (30)实验6 数据库设计综合应用 (31)实验1 SQL Server的安装及管理工具的使用一、实验目的1、通过对某个商用数据库管理系统的使用,了解DBMS的工作原理和系统构架。

在此推荐数据库管理系统SQL Server 2005,该系统已经在机房FTP上。

你也可以从微软官方网站上下载该系统。

2、熟悉对DBMS的操作二、实验内容1、根据安装文件的说明安装数据库管理系统。

在安装过程中记录安装的选择,并且对所作的选择进行思考,为何要进行这样的配置,对今后运行数据库管理系统会有什么影响。

2、学会启动和停止数据库服务,思考可以用哪些方式来完成启动和停止。

3、掌握管理工具的使用(1)SQL Server Management Studio的使用➢连接服务器的方法➢查询编辑器的使用(2)配置管理器的使用4、了解数据库系统的逻辑组件:它们主要是数据库对象,包括基本表、视图、触发器、存储过程、约束等。

今后将学习如何操作这些数据库对象。

三、实验报告要求1、给出安装过程中出现的错误及解决方法。

2、根据你所了解的SQL Server工具,写出部分主要组件的功能(以SQL Server2005为例,写出SQL Server Management Studio、配置管理器)。

实验2 交互式SQL2.1创建数据库及表一、实验目的本次实验了解SQL Server 2005的启动,熟悉如何使用SSMS和SQL建立数据库和表,并加深对于完整性的理解。

二、背景知识在使用数据库的过程中,接触最多的就是数据库中的表。

表是数据存储的地方,是数据库中最重要的部分,管理好表也就管理好了数据库。

表是由行和列组成的。

创建表的过程主要就是定义表的列的过程。

SQLSERVER2008实用教程实验参考答案(综合实验)

SQLSERVER2008实用教程实验参考答案(综合实验)

系统开发入门实习2 VISUAL C#2008/SQL Server2008员工信息管理系统一、新建项目1. 运行Visual Stutio2008,单击菜单“文件-新建-项目”,在弹出的对话框中选择“Visual C#-Windows窗体应用程序”模板,命名为SimpleCRM,确定。

2. 新建父窗体:右击项目名“添加-Windows窗体”,选择“MDI父窗体”,确定。

3. 设计父窗体:1)父窗体的Text属性值设置为:员工管理系统。

删除父窗体中原有的menuStrip和toolStrip 控件。

2)添加菜单。

从工具箱中拖放一个menuStrip菜单控件到父窗体中,分别添加员工管理和关于菜单。

并在菜单下分别添加员工管理、工资管理和关于、帮助子菜单。

3)删除原有代码。

按F7键打开代码页,删除MDIParent1部分类中除构造函数外的所有代码。

4)添加代码。

切换到窗体设计窗口,双击员工管理子菜单,在“员工管理ToolStripMenuItem1_Click”方法中添加如下代码。

Form1 form1 = new Form1();form1.MdiParent = this;form1.Show();5)将父窗体设置为首选执行窗体。

在解决方案资源管理器中打开“Program.cs”文件,将“form1”修改为“MDIParent1”6)修改父窗体和子窗体的Size。

父窗体Size改为1024,768。

子窗体改为800,600。

二、设计员工管理窗体员工管理窗体(Form1.cs)的功能包括:员工查询、员工添加、员工修改、员工删除。

主要操作数据库YGGL下的Employees表。

1)添加控件:2个GroupBox、4个Button、9个Label、9个TextBox、1个DataGridView。

调整控件布局,修改控件Text属性值。

2)DataGridView控件设置。

打开DataGridView的属性窗口,单击DataSource属性,添加项目数据源,弹出“数据源配置向导”对话框。

数据库实用技术SQL Server 2008练习题答案

数据库实用技术SQL Server 2008练习题答案

《数据库实用技术SQL Server 2008》拓展练习参考答案第二章一、选择题1.C2.D3.A4.A5.C6.C7.B8.C二、填空题1.数据库系统2.共享性3. 数据操纵语言DML4.联系三、简答题1.答:数据库系统是在计算机系统中引入数据库后的一个人-机系统,数据库系统主要由计算机、操作系统、DBMS、数据库、应用程序等组成。

2.答:数据库系统的三级模式是指外模式、模式和内模式。

外模式是特定数据库用户的数据视图,是与某一具体应用相关的数据局部逻辑结构的描述。

模式是数据库中全体数据的总体逻辑结构描述,是所有用户的公共数据视图。

内模式是数据物理结构和存储方式的描述,定义数据在数据库内部的表示方式。

数据库系统的三级模式提供了三个层次的数据抽象。

这样做的一个优点是可以隐蔽数据存储细节和内部复杂性,保护了数据库安全性,简化系统的用户界面。

另一个优点是可以带来数据的独立性。

3.答:数据库设计分6个阶段:需求分析、概念设计、逻辑设计、物理设计、应用开发和运行维护阶段。

需求分析阶段:需求分析是整个数据库设计的基础,进行数据库设计首先要在给定的应用环境下,了解与分析用户的各种应用需求,形成需求说明书。

概念设计阶段:概念结构设计是整个数据库设计的关键,它通过对用户需求进行综合、归纳和抽象,形成独立于任何数据库管理系统的概念模型。

概念设计的结果通常用E-R模型来描述。

逻辑设计阶段:逻辑设计是整个数据库的模式设计,是将概念设计的E-R图转换成具体数据库管理系统所支持的数据模型,并对数据进行优化处理,根据用户处理的要求,以及安全性的考虑,形成数据库的全局逻辑模式、外模式的过程。

物理设计阶段:物理设计就是确定数据库的存储结构。

主要任务包括:确定数据库文件和索引文件的记录格式和物理结构,选择存取方法,决定访问路径和外存储器的分配策略等,形成数据库的内模式。

应用开发阶段:运用DBMS提供的数据语言、工具及宿主语言,根据逻辑设计和物理设计的结果建立数据库,编制与调试服务器端和客户端的各应用程序,组织数据入库并运行,做好数据库的转储和恢复工作。

sql_server实验指导 课后答案

sql_server实验指导 课后答案

sql_server实验指导课后答案一、实验目的1、掌握SQL Server的安装及配置;2、掌握SQL Server的基本操作;3、掌握SQL Server的数据库管理;4、掌握SQL Server的数据库设计;5、掌握SQL Server的数据库查询;6、掌握SQL Server的数据库维护;7、掌握SQL Server的数据库安全管理。

二、实验内容1、安装SQL Server首先,我们需要下载SQL Server安装文件,然后双击安装文件,按照提示安装SQL Server,安装完成后,我们就可以使用SQL Server了。

2、配置SQL Server在安装完成后,我们需要配置SQL Server,配置SQL Server的方法有很多,比如设置SQL Server的安全性、设置SQL Server的连接属性、设置SQL Server的数据库文件位置等等。

3、基本操作在配置完成后,我们就可以使用SQL Server进行基本操作了,比如创建数据库、创建表、插入数据、更新数据、删除数据等等。

4、数据库管理在使用SQL Server进行基本操作后,我们还可以使用SQL Server进行数据库管理,比如创建视图、创建存储过程、创建触发器等等。

5、数据库设计在使用SQL Server进行数据库管理后,我们还可以使用SQL Server进行数据库设计,比如设计数据库模式、设计数据库索引、设计数据库视图等等。

6、数据库查询在使用SQL Server进行数据库设计后,我们还可以使用SQL Server进行数据库查询,比如使用SELECT语句查询数据、使用JOIN语句查询数据、使用GROUP BY语句查询数据等等。

7、数据库维护在使用SQL Server进行数据库查询后,我们还可以使用SQL Server进行数据库维护,比如备份数据库、恢复数据库、优化数据库等等。

8、数据库安全管理在使用SQL Server进行数据库维护后,我们还可以使用SQL Server进行数据库安全管理,比如设置用户权限、设置数据库安全策略、设置数据库审计等等。

实验07_使用T-SQL编写存储过程和函数实验报告

实验07_使用T-SQL编写存储过程和函数实验报告

北京理工大学珠海学院实验报告ZHUHAI CAMPAUS OF BEIJING INSTITUTE OF TECHNOLOGY 班级学号姓名指导教师成绩实验题目使用T-SQL编写存储过程和函数实验时间一实验目的1. 理解存储过程的概念、使用方式;2. 熟悉使用T-SQL编写存储过程来进行数据库应用程序的设计;3. 掌握SQL Server中自定义函数的概念,熟悉自定义函数的类型;4. 能创建相关的自定义函数,解决T-SQL程序设计中的相关问题。

二实验工具SQL Server 2008利用SQL Server 2008 SSMS及其SQL新建查询编辑器,使用T-SQL编写存储过程和函数。

三实验内容和要求1.建立学生-课程数据库,其中包含学生表Student(Sno,Sname,Ssex,Sage,Sdept)、课程表:Course(Cno,Cname,Cpno,Ccredit)和学生选课表:SC(Sno,Cno,Grade);编写相应的存储过程,完成下面的功能:(1)编写一个存储过程,可以查询指定系的学生的选课信息,列出学号、姓名、所在系、课程名和成绩等内容。

调用该存储过程,测试执行结果。

(2)编写一个存储过程,返回指定课程的平均分。

调用该存储过程,测试执行结果。

(3)编写一个存储过程,可以查询指定系指定成绩等级的学生的选课信息,列出学号、姓名、所在系、课程名和成绩等内容。

调用该存储过程,测试执行结果。

(成绩等级为优、良、中、及格、不及格,其中成绩在90分到100分之间为‘优’,在80分到89分之间为‘良’,在70分到79分之间为‘中’,在60分到69分之间为‘及格’,在0分到59分之间为‘不及格’。

)要求:提交创建存储过程的SQL脚本,并标注必要的注释。

保证程序能够正确编译和运行,并有相应的测试代码。

2. 自定义标量函数假设有一家生产的集装箱的公司,生产一些不同型号的集装箱,存储集装箱信息的表如下所示。

sqlserver实验答案

sqlserver实验答案

sqlserver实验答案【篇一:sqlserver2008实用教程实验参考答案(实验6)】=txt>一、索引当表中数据量很大时,合理建立索引,可以提高查询的效率。

1. 对yggl数据库的employees表中的departmentid列建立索引create index em_d_ind on employees(departmentid)2. 在employees表的name列和address列上建立复合索引create index em_na_ind on employees(name,address)3. 对departments表上的departmentname列建立唯一非聚集索引create unique index de_n_ind ondepartments(departmentname)4. 重建索引alter index all on employees rebuild5. 删除索引drop index em_d_id on employees一次删除多个索引drop index employees.em_d_ind,employees.em_na_ind6. 使用界面方式创建、删除索引二、数据完整性1. 创建一个表employees5,只含有employeeid、name、sex和education列。

将name设为主键,并对employeeid列进行unique约束。

验证主键约束和唯一约束。

create table employees5()employeeid char(6) not null, name char(10) not null primary key, sex bit, education char(4) constraint uk_idunique(employeeid)2. 删除上例中创建的unique约束,删除后再验证唯一约束。

alter table employees5 drop constraint uk_id3. 创建新表,使用复合列作为主键。

sql server 2008表数据操作答案

sql server 2008表数据操作答案

Vmare Workstation 8及linux系统安装实验报告一、实验目的掌握虚拟机软件的安装和使用掌握Linux的安装掌握Linux的基本配置二、实验环境一台运行Windows的计算机(硬盘剩余空间在10G以上)、虚拟机软件Vmware、Linux安装软件。

三、实验内容安装虚拟机软件Vmware在Vmware中安装Linux。

四、主要步骤VMware安装完成后,重启机器后,打开VMware,如图1图1 VMware Workstation 主界面在VMware中新建一台虚拟机的主要步骤:1.选择File->New->Virtual Machine(或直接按ctrl+n键),出现新建虚拟机向导,如图2所示:图2 新建虚拟机向导2.选择”Custom(advanced)”3.Choose the Vitual Machine Hardware Compatability(选择虚拟机硬件兼容性),”Hardware compatability”选”Worksation 6.5-7.0”4.Guest Operating System Installation(寄宿操作系统安装,即虚拟机上安装的操作系统),如图3:图3 Guest OS 安装选项在”Install from”部分选取安装源,可从光盘驱动器(”Installer disc”)或光盘映像(“Installer disc image file(iso)”)安装,此处选择Fedora-8-i386-DVD.iso。

5.Name the Virtual Machine(命名虚拟机),如图4:图4 虚拟机名称及目录设置“Virtual machine name”设置此虚拟机的名称。

“Location”设置此虚拟机的安装位置。

6.Processor Configuration(处理器设置)“Number of processor”设置虚拟机使用的处理器数“Number of cores per processor”设置每处理器核心数7.Memory for the Virtual Machine(虚拟机内存设置)建议最小设置为512M推荐为虚拟机分配1G以上内存8.Network Type(虚拟机网络设置)此项设置为:”Use network address translation(NA T)”(使用网络地址转换),虚拟机操作系统共享宿主主机的网络IP地址与外部网络连接。

《SQL_Server_2008_实验指导》课后作业

《SQL_Server_2008_实验指导》课后作业

SQL Server 2008 实验指导课后作业问题一:创建数据库1.使用以下 SQL 语句创建一个名为myDB的数据库。

CREATE DATABASE myDB;2.使用以下 SQL 语句查询系统中的所有数据库。

SELECT name FROM sys.databases;问题二:创建表格1.在myDB数据库中,创建一个名为students的表格,包含以下字段:–id:学生编号,整数类型,主键;–name:学生姓名,字符串类型;–age:学生年龄,整数类型;–gender:学生性别,字符串类型。

USE myDB;CREATE TABLE students (id INT PRIMARY KEY,name VARCHAR(100),age INT,gender VARCHAR(10));2.使用以下SQL 语句查询students表格的结构信息。

EXEC sp_columns students;问题三:插入数据1.使用以下SQL 语句向students表格插入一条记录。

INSERT INTO students (id, name, age, gen der)VALUES (1, '张三', 20, '男');2.使用以下 SQL 语句查询students表格中的所有记录。

SELECT*FROM students;问题四:更新数据1.使用以下 SQL 语句更新students表格中的一条记录。

UPDATE studentsSET age =21WHERE id=1;2.使用以下 SQL 语句查询更新后的students表格中的记录。

SELECT*FROM students;问题五:删除数据1.使用以下 SQL 语句删除students表格中的一条记录。

DELETE FROM studentsWHERE id=1;2.使用以下 SQL 语句查询删除后的students表格中的记录。

(word完整版)SQLServer2008数据库案例教程课后习题答案

(word完整版)SQLServer2008数据库案例教程课后习题答案

(word完整版)SQLServer2008数据库案例教程课后习题答案《SQL Server 2008数据库案例教程》练习题及模拟试卷答案第1章⼀、判断题1. 数据库技术是是计算机数据处理与信息管理系统的核⼼。

(√)2. 数据是⽤于描述现实世界中具体事物或抽象概念,可存储的数字符号。

(×)3. 数据库是⼀个长期存储在计算机内的、有组织的、有共享的、统⼀管理的数据集合。

(√)4. 数据库管理系统是⼀个按数据结构来存储和管理数据的服务器管理系统。

(×)5. 关系数据库,是建⽴在关系模型基础上的数据库。

(√)⼆、单选题1. 数据(Data)是⼀些可存储并具有明确意义的(A)A. 符号B.图形C.⽂字D.数字2. ⼈⼯阶段计算机⽤于数值计算,没有操作系统及管理数据的软件。

这⼀阶段的年代是(C)A. 19世纪80年代B. 20世纪20年代C.20世纪50年代D. 20世纪80年代3. 在⽹页中常⽤的图像格式是(D)A..bmp和.jpgB..gif和.bmpC. .png和.bmpD. .gif和.jpg4.数据库系统的重要特征是什么?(D)A. 数据的独⽴性和动态性 B.数据的静态性和独⽴性C.数据的动态性和共享性 D.数据的独⽴性和共享性三、多选题1.与数据库技术密切相关的基本概念有(ABCD)A. 数据B. 数据库C. 数据库管理系统D. 数据库系统2.数据库可分为哪⼏种类型?(ABC)A. 关系型数据库B. ⽹状数据库C. 层次数据库D.树形数据库3. DBMS提供数据操作语⾔DML,为⽤户提供了哪些操作?(ABCD)A.数据的追加B.数据的删除C.数据的更新D.数据的查询4.DBMS要分类组织、存储和管理各种数据,包括哪些内容?(ABC)A. 数据字典B. ⽤户数据C. 存取路径D.服务器5. ⽬前,DBMS常见品牌有哪些公司?(ABC)A.微软公司的SQL Server B.IBM公司的DB2 C.甲⾻⽂公司的ORACLE D.索尼公司的MySQL四、填空题1.数据库(管理)技术经历了⼈⼯管理阶段和⽂件管理阶段。

sql_server实验指导 课后答案

sql_server实验指导 课后答案

sql_server实验指导课后答案一、实验题目1. 什么是SQL Server?答:SQL Server是一种关系型数据库管理系统(RDBMS),由微软公司开发,用于存储和管理大量的数据。

它可以处理复杂的数据查询,提供高性能的数据存储和管理,并且可以支持多种编程语言,如T-SQL、C#、Java等。

2. SQL Server的优势有哪些?答:SQL Server的优势有:(1)高性能:SQL Server提供了高性能的数据存储和管理,可以满足大量数据的需求。

(2)安全性:SQL Server提供了多种安全性功能,可以有效保护数据安全。

(3)可扩展性:SQL Server可以根据用户的需求进行扩展,满足不同的业务需求。

(4)可移植性:SQL Server可以跨多种操作系统运行,可以满足不同的环境需求。

(5)可维护性:SQL Server提供了多种维护功能,可以有效管理数据库。

3. SQL Server的组件有哪些?答:SQL Server的组件有:(1)SQL Server数据库引擎:用于存储和管理数据库中的数据。

(2)SQL Server数据库安全:用于保护数据库中的数据安全。

(3)SQL Server数据库管理工具:用于管理数据库中的数据。

(4)SQL Server数据库开发工具:用于开发数据库应用程序。

(5)SQL Server数据库报表服务:用于创建和管理报表。

(6)SQL Server数据库集成服务:用于数据集成和数据交换。

(7)SQL Server数据库分析服务:用于分析数据库中的数据。

(8)SQL Server数据库服务器:用于管理数据库服务器。

SQLServer课后实训参考答案

SQLServer课后实训参考答案

课后实训参考答案单元1(SQL Server概述)1、使用SQL语句。

在Sale数据库中创建名为MyDataType的用户定义数据类型,数据类型为NV ARCHAR,长度为20,该列允许为NULL。

USE SaleGOEXEC sp_addtype MyDataType,'NVARCHAR(20)','NULL' GO单元2(单表数据)使用查询窗口或sqlcmd实施查询。

本实训使用Xk数据库。

--1.查看系部编号为“03”的系部名称。

USE XkGOSELECT DepartNameFROM DepartmentWHERE DepartNo='03'GO--2.查看系部名称中包含有“工程”两个字的系的全名。

USE XkGOSELECT DepartNameFROM DepartmentWHERE DepartName LIKE'%工程%' GO--3.显示共有多少个系部。

USE XKGOSELECT'系部总数'=COUNT(*)FROM DepartmentGO--4.显示“01”年级共有多少个班级。

USE XKGOSELECT'01 级班级数'=COUNT(*)FROM ClassWHERE ClassNo LIKE'2001%'GOSELECT'01 级班级数'=COUNT(*)FROM ClassWHERE ClassName LIKE'01%'GOSELECT'01 级班级数'=COUNT(*)FROM StudentWHERE ClassNo LIKE'2001%'GO--5.查看在“周二晚”上课的课程名称和教师。

USE XKGOSELECT'课程名称'=CouName,'任课教师'=TeacherFROM CourseWHERE SchoolTime='周二晚'GO--6.查看姓“张”、“陈”、“黄”同学的基本信息,要求按照姓名降序排序查询结果。

sql server 2008 数据库应用与开发教程 课后习题参考答案

sql server 2008 数据库应用与开发教程  课后习题参考答案

SQL Server 2008数据库应用与开发教程(第二版)第一章习题参考答案1.简述SQL Server 2008系统中主要数据库对象的特点。

答:主要的数据库对象包括数据库关系图、表、视图、同义词、存储过程、函数、触发器、程序集、类型、规则和默认值等。

“表”节点中包含了数据库最基本、最重要的对象——表。

表实际用来存储系统数据和用户数据,是最核心的数据库对象。

“视图”节点包含了数据库中的视图对象。

视图是一种虚拟表,用来查看数据库中的一个或多个表,视图是建立在表基础之上的数据库对象,它主要以SELECT语句形式存在。

在“同义词”节点中包含了数据库中的同义词对象。

这是Microsoft SQL Server 2008系统新增的一种对象。

“可编程性”对象是一个逻辑组合,它包括存储过程、函数、触发器、程序集、类型、规则和默认值等对象。

数据库中的函数对象包含在“函数”节点中。

函数是接受参数、执行复杂操作并将结果以值的形式返回的例程。

2.SQL Server 2008数据库管理系统产品分为哪几个版本,各有什么特点?答:SQL Server 2008数据库管理系统产品的服务器版本包括了企业版和标准版,专业版本主要包括以下版本:工作组版(Workgroup)、开发人员版(Developer)、免费精简版(Express)、Web版,以及免费的集成数据库SQL Server Compact 3.5。

3.SQL Server 2008包含哪些组件,其功能各是什么?答:SQL Server 2008的体系结构是对SQL Server的组成部分和这些组成部分之间的描述。

Microsoft SQL Server 2008系统由4个组件组成,这4个组件被称为4个服务,分别是数据库引擎、Analysis Services、Reporting Services和Integration Services。

数据库引擎是Microsoft SQL Server 2008系统的核心服务,负责完成数据的存储、处理、查询和安全管理等操作。

SQL-2008实训含标准答案

SQL-2008实训含标准答案

1.6综合实训实训名称SQL Server 2008常用工具的使用。

实训任务(1)ﻩ启动并使用SQL Server Management Studio。

(2)启动并使用SQL Server配置管理器。

实训目的(1) 掌握SQL Server Management Studio的基本操作方法。

(2)掌握SQL Server配置管理器的基本操作方法。

实训环境Windows Server平台及SQL Server 2008系统。

实训内容(1)ﻩ用SQL Server 2008的SSMS更改服务的状态。

(2) 用SQL Server 2008的配置管理器更改登录身份。

实训步骤操作具体步骤略,请参考相应案例。

实训结果在本次实训操作结果的基础上,分析总结并撰写实训报告。

实训步骤操作具体步骤略,请参考相应案例。

实训结果在本次实训操作结果的基础上,分析总结并撰写实训报告。

1.7 拓展项目安装自己的SQL Server 2008管理系统,并根据需求对系统进行合理配置。

2.6综合实训实训名称创建并管理学生信息管理数据库(Students)。

实训任务(1) 使用SSMS对学生信息管理数据库(Students)进行创建、修改与删除等操作。

(2) 使用T-SQL命令对学生信息管理数据库(Students)进行创建、修改与删除等操作。

实训目的(1)规划学生信息管理数据库(Students)的主数据文件、辅助数据文件与日志文件的名称、大小、增长方式与存储路径等属性。

(2)在SSMS中完成学生信息管理数据库(Students)从创建、修改、分离、附加,直到删除的完整过程。

(3) 使用T-SQL语句完成学生信息管理数据库(Students)的创建、修改与删除等操作。

实训环境WindowsServer平台及SQL Server 2008系统。

实训内容Students数据库,该数据库包含一个主数据文件逻辑名‘StuInfodata1’,物理名‘C:\DATA\StuInfodata1.mdf’,初始容量3MB,最大容量10MB,每次增长量为15%;一个辅助数据文件逻辑名‘StuInfodata2’物理名‘D:\DATA\StuInfodat a2.ndf ’,初始默认,最大容量不受限,每次增长量为2MB;一个事务日志文件逻辑名‘St uInfolog’物理名‘D:\DATA\StuInfolog.ldf ’,其他参数默认。

SQL Server SQL实验与练习题参考答案

SQL Server SQL实验与练习题参考答案

/zh-cn/library/ms177503.aspx实验1 数据库操作1.创建数据库:操作1.1:创建一个test数据库,其主数据文件逻辑名test_data,物理文件名test_data.mdf,初始大小10MB,最大尺寸为无限大,增长速度1MB;数据库日志文件逻辑名称为test_log,物理文件名为test_log.ldf,初始大小为1MB,最大尺寸为5MB,增长速度为10%。

参考答案:create database TestON primary(name = test_data,filename = 'd:\test\test_data.mdf',size = 5MB,maxsize = unlimited,filegrowth = 1MB)LOG ON(name = test_log,filename = 'd:\test\test_log.ldf',size = 1MB,maxsize = 5MB,filegrowth = 10%)GO2.查看数据库属性:操作1.2:使用T-SQL语句查看数据库test属性参考答案:EXEC sp_helpdb testEXEC 执行存储过程sp_helpdb 报告有关指定数据库或所有数据库的信息。

3.删除数据库:操作1.3:使用T-SQL语句删除数据库test参考答案:drop database Test实验2 表操作1.创建表:操作2.1:创建学生表:表名:student 说明:学生基本信息表参考答案:USE testGOCREATE TABLE student(st_id nVarChar(9) primary key NOT NULL ,st_nm nVarChar(8) NOT NULL ,st_sex nVarChar(2) NULL ,st_birth datetime NULL ,st_score int NULL ,st_date datetime NULL ,st_ from nVarChar(20) NULL ,st_dpid nVarChar(2) NULL ,st_ mnt tinyint NULL)GO操作2.2:创建课程信息表:表名:couse 说明:课程信息表参考答案:USE testGOCREATE TABLE couse(cs_id nVarChar(4) primary key NOT NULL ,cs_nm nVarChar(20) NOT NULL ,cs_tm int NULL ,cs_sc int NULL)GO操作2.3:创建选课表:表名:slt_couse 说明:选课表参考答案:USE testGOCREATE TABLE couse(cs_id nVarChar(4) NOT NULL ,st_id nVarChar(9) NOT NULL ,score int NULL ,sltdate datetime NULL)GO操作2.4:创建院系信息表:表名:dept 说明:院系信息表USE testGOCREATE TABLE dept(dp_id nVarChar(2) NOT NULL ,dp_nm nVarChar(20) NOT NULL ,dp_drt nVarChar(8) NULL ,dp_tel nVarChar(12) NULL)GO2.修改表结构:(1)向表中添加列:操作2.5:为“dept”表添加“dp_count”列(数据类型为nvarchar,长度为3,允许为空)参考答案:ALTER TABLE dept ADD dp_count nvarchar(3) NULL (2)修改列数据类型:操作2.6:修改“dept”表的“dp_count”列数据类型为int参考答案:ALTER TABLE dept ALTER COLUMN dp_count int NULL (3)删除表中指定列:操作2.7:删除“dept”表的“dp_count”列参考答案:ALTER TABLE dept DROP COLUMN dp_count3.删除表操作2.8:删除“dept”表参考答案:DROP TABLE student4.向表中输入数据记录操作2.9:分别向“student”表、“couse”表、“slt_couse”表、“dept”表中输入数据记录实验3 数据完整性1.空值约束( NULL )操作3.1:将student表中的st_sex列属性更改为NOT NULL参考答案:ALTER TABLE student ALTER COLUME st_nm nVarChar(8) NOT NULL2.默认值约束( DEFAULT )操作3.2:将student表中的st_from列默认值设置为“陕西省”参考答案:ALTER TABLE student ADD DEFAULT '陕西省' FOR st_from3.默认值对象操作3.3:创建默认值对象df_today为当前日期,并将其绑定到slt_couse表中的sltdate列,然后取消绑定,最后删除默认值对象df_today。

SQL server实验指导第7章答案(马晓梅第三版)

SQL server实验指导第7章答案(马晓梅第三版)

实验七1.SELECT Student.Sno,Sname,Dept,o,ScoreFROM Student,SC,CourseWHERE Student.Sno=SC.Sno AND SC.Score BETWEEN 80 AND 90 AND o=o;E jiaoxuedbSELECT Cno AS 课程号,Cname AS 课程名FROM CourseWHERE Cno=ANY(SELECT CnoAS 课程号FROM SCGROUP BY CnoHA VING COUNT(*)>=4)GOE jiaoxuedbSELECT Sno AS 学号,Sname AS 姓名,Age AS 年龄,Dept AS 专业FROM StudentWHERE Age>ALL(SELECT Age FROM StudentWHERE Dept='信息')AND Dept <> '信息'ORDER BY Age DESCGOE jiaoxuedbSELECT Sno AS 学号,Sname AS 姓名,Age AS 年龄,Dept AS 专业FROM StudentWHERE Age=ANY(SELECT Age FROM StudentWHERE Sname='张建国')AND Sname <> '张建国'ORDER BY Age DESCGOE jiaoxuedbSELECT Sno AS 学号,Sname AS 姓名,Age AS 年龄,Dept AS 专业FROM StudentWHERE Sno=ANY(SELECT Sno FROM SCGROUP BY SnoHA VING COUNT(*) >=2)GOE jiaoxuedbSELECT Sno AS 学号,Sname AS 姓名,Age AS 年龄,Dept AS 专业FROM StudentWHERE Sno=ANY(SELECT Sno FROM SCWHERE Cno=ANY(SELECT Cno FROM SCWHERE Sno=’991103’))AND Sname <> '张建国'GOE jiaoxuedbSELECT Sno AS 学号,Sname AS 姓名,Age AS 年龄,Dept AS 专业FROM StudentWHERE Sno=ANY(SELECT Sno FROM SC xWHERE Score >=(SELECT AVG(Score) FROM SC yWHERE y.Sno=x.Sno));GOE jiaoxuedbSELECT Sname,Cname,ScoreFROM Student ,SC,CourseWHERE Student.Sno=(SELECT s1.Sno FROM SC s1,SC s2WHERE o='01001' AND o='01002' AND s1.Score>s2.Score AND s1.Sno=s2.Sno)AND SC.Sno=Student.SnoAND o=oGOE jiaoxuedbSELECT Student.Sno,SnameFROM StudentWHERE Student.Sno IN(SELECT s1.Sno FROM SC s1WHERE Sno NOT IN(SELECT s2.Sno FROM SC s2WHERE Cno='01001'))GOE jiaoxuedbSELECT Sname AS 姓名,A VG(Score) AS 平均,MAX(Score) AS 最高FROM Student,SCWHERE Student.Sno=SC.SnoGROUP BY SnameORDER BY Sname DESCGOE jiaoxuedbSELECT Cname AS 课程号,Cno AS 课程名FROM CourseWHERE NOT EXISTS(SELECT * FROM StudentWHERE NOT EXISTS(SELECT * FROM SCWHERE Student.Sno=SC.Sno AND o=o));GOe jiaoxuedbselect distinct sno from sc s1 where not exists(select * from sc s2 where sno='991101' and not exists(select * from sc s3 where s1.sno=s3.sno ando=o))GO。

SQL Server实验指导书(答案)

SQL Server实验指导书(答案)

SQL Server数据库实验指导书目录实验一SQL Server常用管理工具的使用 (1)实验二数据库设计方法 (3)实验三数据库的管理 (6)实验四表的管理 (12)实验五数据查询1 (17)实验五数据查询2 (20)实验六视图的使用 (23)实验七索引 (25)实验八T-SQL语言 (26)实验九存储过程 (30)实验十触发器 (32)实验十一安全管理 (34)实验十二数据库的备份与恢复 (37)实验一SQL Server常用管理工具的使用实验目的1、理解服务的概念,掌握SQL Server服务的启动、暂停和停止;2、熟悉SQL Server数据库结构,掌握企业管理器的基本操作;3、理解查询分析器的作用,掌握查询分析器的常用用法;4、掌握联机丛书的用法。

实验内容与步骤1、服务管理器的用法SQL Server 是作为Windows 网络操作系统的一个服务运行的。

通过设置,可以在启动操作系统时自动启动SQL Server,也可以远程启动和停止SQL Server。

可以使用下列工具手工启动、暂停和停止SQL Server服务:●SQL Server企业管理器●SQL Server服务管理器●控制面板中的“服务”●在命令提示符中使用net命令net pause mssqlservernet continue mssqlservernet stop mssqlserver其中,服务管理器是最常用的图形界面工具。

实验要求1:使用SQL Server服务管理器查看SQL Server服务是否正在运行,若正在运行,将其停止。

实验要求2:使用控制面板中的“服务”管理控制台将已停止的SQL Server服务启动。

2、企业管理器的使用企业管理器是SQL Server提供的最主要的数据库管理图形界面工具,它以树形结构来组织数据库服务器、数据库和数据库中的对象,大部分的数据库管理工作都可以使用它来完成。

实验要求3:启动企业管理器,查看SQL Server的注册属性。

SQLServer2008数据库应用教程课后答案

SQLServer2008数据库应用教程课后答案

SQLServer2008数据库应⽤教程课后答案第1章数据库基础⼀、单项选择题1.C 2.A 3.C 4.D 5.D6.B 7.A 8.B 9.B 10.D11.C 12.A 13.C 14.B 15.A16.B 17.A 18.D 19.B 20.B21.A; D 22.A 23.C 24.D 25.B26.B 27.B 28.D 29.B 30.B⼆、填空题1.概念;数据2.属性3.码4.⼀对⼀联系;⼀对多(或多对⼀)联系;多对多联系5.候选码6.候选码7.关系名(属性1,属性2,…,属性n)8.关系数据结构;关系操作集合;关系完整性约束9.实体;参照;⽤户定义的;实体;参照10.空植11.需求分析阶段;概念结构设计阶段;逻辑结构设计阶段;物理结构设计阶段;数据库实施阶段;数据库运⾏和维护阶段12.准确了解并分析⽤户对系统的要求,尤其是⽤户的信息要求、处理要求、安全性与完整性要求,确定所要开发的应⽤系统的⽬标,产⽣⽤户和设计者都能接受的需求说明书,做为下⼀步数据库概念结构设计的基础。

13.将需求分析得到的⽤户需求抽象为信息结构即概念模型。

14.将概念结构进⼀步转化为某⼀DBMS⽀持的数据模型,并对其进⾏优化。

15.为逻辑数据模型选取⼀个最适合应⽤环境的物理结构,包括数据库在物理设备上的存储结构和存取⽅法。

三、指出以下各缩写的英⽂意思和中⽂意思1.DB:DataBase2.DBMS:Database Management System3.RDBMS:4.DBS:DataBase System5.DBA:Relational Database Management System6.NF:Normal Form7.DDL:Data Definition Language四、按题⽬要求回答问题1.答:2.答:3.答:(1)关系R是2NF。

因为R的候选码为课程名,⽽课程名→教师名,教师名→教师地址,所以课程名→教师地址,即存在⾮主属性教师地址对候选码课程名的传递函数依赖,因此R不是3NF。

SQLSERVER2008数据库实验任务七

SQLSERVER2008数据库实验任务七

SQLSERVER 200数8 据库实验任务七实验项目:复杂查询(一)实验时间:2015-2016 学年上期实验地点:J020505 指导教师:李学国实验课时:2 课程名称:SQL SERVER数据库管理实验目的:掌握SQL聚合函数,分组查询与子查询的使用实验环境:软件环境:windows2003 ,Oracle 11g,硬件环境:Cpu:1000MHZ以上,硬盘100G以上,内存2G以上。

实验步骤:注:运用上次实验所建立的三个表Stu(xh、sname、sex、birthday 、address、memo)KC(kch、kcname、kcpublish 、kcpubdate) SC(xh、ch、score)完成下列查询,请把查询结构写在每个的后面1.查询年龄最大的学生:SQL语句:2.查询年龄最小的学生SQL语句:2•在SC中查询考试最高分,最低分,平均分SQL语句:3•统计02系的学生数;SQL语句:4•统计每个学生选修的课程数:SQL语句:5•统计每门课程考试的最高分,最低分和平均分。

SQL语句:6•查询考试不及格的每个学生的课程数SQL语句:7.查询所有同学考试的最高分,最低分SQL语句:8.查询每个同学考试的总分,平均分SQL语句:9.查询考试不及格的每个学生的课程数SQL语句:10・统计考试成绩大于85分的学生学号和课程数。

SQL语句:11统计考试成绩平均分大于80分学生的xh,和平均分SQL语句:12・统计有两门课程及以上需要补考的学生人数SQL语句:13・查询选修了101号课程的学生学号,姓名和性别SQL语句:14.查询比刘五年龄大的学生的学号和姓名。

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

一、存储过程
1. 创建存储过程,使用Employees表中的员工人数来初始化一个局部变量,并调用这个存储过程。

CREATE PROCEDURE TEST@NUMBER1INT OUTPUT
AS
BEGIN
DECLARE@NUMBER2INT
SET@NUMBER2=(SELECT COUNT(*)FROM Employees)
SET@NUMBER1=@NUMBER2
END
执行该存储过程,查看结果。

DECLARE@num INT
EXEC TEST@num OUTPUT
SELECT@num
2. 创建存储过程,比较两个员工的实际收入,若前者比后者高就输出1,否则就输出0。

CREATE PROCEDURE COMPA@ID1char(6),@ID2char(6),@BJ int OUTPUT
AS
BEGIN
DECLARE@SR1float,@SR2float
SET@SR1=(SELECT InCome-OutCome FROM Salary WHERE EmployeeID=@ID1) SET@SR2=(SELECT InCome-OutCome FROM Salary WHERE EmployeeID=@ID2) IF@SR1>@SR2
SET@BJ=1
ELSE
SET@BJ=0
END
执行该存储过程,查看结果。

DECLARE@BJ int
EXEC COMPA'504209','302566',@BJ OUTPUT
SELECT@BJ
3. 创建添加职员记录的存储过程EmployeeAdd。

CREATE PROCEDURE EmployeeADD
(
@employeeid char(6),@name char(10),@education char(4),@birthday datetime,
@workyear tinyint,@sex bit,@address char(40),@phonenumber char(12), @departmentID char(3)
)
AS
BEGIN
INSERT INTO Employees
VALUES(@employeeid,@name,@education,@birthday,
@workyear,@sex,@address,@phonenumber,@departmentID)
END
RETURN
GO
执行该存储过程。

EXEC EmployeeAdd'999992','小莫','硕士','1984-09-09',1,2,'武汉路','66666666','3'
4. 创建一个带有OUTPUT游标参数的存储过程,在Employees表中声明并打开一个游标。

CREATE PROCEDURE em_cursor@em_cursor cursor VARYING OUTPUT
AS
BEGIN
SET@em_cursor=CURSOR FORWARD_ONLY STATIC
FOR
SELECT*FROM Employees
OPEN@em_cursor
END
GO
声明一个局部游标变量,执行上述存储过程,并将游标赋值给局部游标变量,然后通过该游标变量读取记录。

DECLARE@MyCursor cursor
EXEC em_cursor@em_cursor=@MyCursor OUTPUT
FETCH NEXT FROM@MyCursor
WHILE (@@FETCH_STATUS=0)
BEGIN
FETCH NEXT FROM@MyCursor
END
CLOSE@MyCursor
DEALLOCATE@MyCursor
GO
5. 创建存储过程,使用游标确定一个员工的实际收入是否排在前三名。

结果为1表示是,结果为0表示否。

CREATE PROCEDURE TOP_THREE@EM_ID char(6),@OK bit OUTPUT
AS
BEGIN
DECLARE@X_EM_ID char(6)
DECLARE@ACT_IN int,@SEQ int
DECLARE SALARY_DIS cursor FOR
SELECT EmployeeID,InCome-OutCome
FROM Salary
ORDER BY InCome-OutCome DESC
SET@SEQ=0
SET@OK=0
OPEN SALARY_DIS
FETCH SALARY_DIS INTO@X_EM_ID,@ACT_IN
WHILE@SEQ<3 AND@OK=0
BEGIN
SET@SEQ=@SEQ+1
IF@X_EM_ID=@EM_ID
SET@OK=1
FETCH SALARY_DIS INTO@X_EM_ID,@ACT_IN
END
CLOSE SALARY_DIS
DEALLOCATE SALARY_DIS
END
GO
执行该存储过程,并查看结果。

--先执行SELECT * FROM Salary ORDER BY InCome-OutCome查看排序结果
DECLARE@OK bit
EXEC TOP_THREE'102201',@OK OUTPUT
SELECT@OK
二、触发器
1. 向Employees表插入或修改一个记录时,通过触发器检查记录的DepartmentID值在Departments表中是否存在,若不存在,则取消插入或修改操作。

CREATE TRIGGER EmployeeIns ON Employees
FOR INSERT,UPDATE
AS
BEGIN
IF(
(SELECT DepartmentID FROM inserted)NOT IN(SELECT DepartmentID FROM Departments)
)
ROLLBACK
END
插入或修改数据,查看效果。

验证之前需要删除之前的实验中建立的外键和约束关系,以确认触发器的有效性
2. 修改Departments表“DepartmentID”字段值时,该字段在Employees表中的对应值也做相应修改。

CREATE TRIGGER DepartmentUpdate ON Departments
FOR UPDATE
AS
BEGIN
UPDATE Employees
SET DepartmentID=(SELECT DepartmentID FROM inserted)
WHERE DepartmentID=(SELECT DepartmentID FROM deleted)
END
注意:需要先删除1.中建立的触发器,否则会报错。

3. 删除Departments表中记录的同时删除该记录“DepartmentID”字段值在Employees表中
对应的记录。

CREATE TRIGGER DepartmentsDelete ON Departments
FOR DELETE
AS
BEGIN
DELETE FROM Employees
WHERE DepartmentID=(SELECT DepartmentID FROM deleted)
END
GO
4. 创建INSTEAD OF触发器,当向Salary表中插入记录时,先检查EmployeeID列上的值在Employees中是否存在,如果存在则执行插入操作,如果不存在则提示“员工不存在”。

CREATE TRIGGER EM_EXISTS ON Salary
INSTEAD OF INSERT
AS
BEGIN
DECLARE@EmployeeID char(6)
SET@EmployeeID=(SELECT EmployeeID FROM inserted)
IF (@EmployeeID IN(SELECT EmployeeID FROM Employees))
INSERT INTO Salary SELECT*FROM inserted
ELSE
PRINT'员工号不存在'
END
向Salary表中插入数据来查看效果。

注意:需要先删除原先建立的外键,以确定是触发器在起作用
INSERT INTO Salary VALUES('222226',2000,12);
5. 创建DDL(数据定义语言)触发器,当删除YGGL数据库的一个表时,提示“不能删除表”,并回滚删除表的操作。

CREATE TRIGGER table_delete ON DATABASE
AFTER DROP_TABLE
AS
PRINT'不能删除该表'
ROLLBACK TRANSACTION。

相关文档
最新文档