SQL server实验四 视图和索引

合集下载

2016《数据库原理》实验指导书SQL-Server2012

2016《数据库原理》实验指导书SQL-Server2012

网络数据库技术实验指导书南京工业大学经济与管理学院2017年9月目录实验目的 (2)实验要求 (2)实验环境 (2)实验一、常用数据库管理系统介绍 (3)实验二、SQL Sever 数据库管理系统的基本操作 (10)实验三、基本表的定义 (26)实验四、基本表与删除索引的修改与删除 (30)实验五、条件及统计汇总查询 (35)实验六、数据表连接查询与数据更新操作 (39)实验七、视图的定义、查询与维护 (42)实验八、数据库的完整性实验 (43)实验九、触发器实验 (46)实验十、数据的导出与导入实验 (55)实验十一数据库备份与数据库还原技术 (72)实验十二、数据库用户管理技术 (77)实验十三、数据库综合设计与实现 (77)实验目的数据库原理是一门理论和实践很强的课程。

学生学习这门课程要求掌握两方面内容:数据库设计和上机实践。

因此数据库的实验要围绕这两方面进行。

通过对 Access、SQL Server 数据库管理系统的学习帮助学生巩固和加深理解所学过的理论知识,树立工程的观点和严谨的科学作风,使学生熟练掌握基本的 SQL 语句,熟悉 SQL Server 数据库管理系统的功能、数据管理、应用和开发技术。

熟练使用 SQL 语句创建数据库、表、索引、修改表结构,以及进行数据的查询、更新、定义视图等操作。

掌握 SQL Server 中触发器的创建方法,学会数据的导入和导出操作。

通过实验,培养学生的动手能力以及在实践中发现问题并能及时解决问题的能力,锻炼学生的逻辑思维能力,提高数据库应用开发能力。

为学生毕业后从事计算机应用职业做好必要的准备。

实验要求给出一个现实世界的应用问题要求学生在正确分析问题的基础上,完成以下任务:1、熟悉概念数据库的概念;2、熟悉运用 SQL操纵数据库;3、熟悉 SQL Server数据库管理系统环境,学会用该数据库管理系统创建数据库;4、理解范式的意义,能判断其能达到第几范式。

SQLServer创建索引(index)

SQLServer创建索引(index)

SQLServer创建索引(index)索引的简介:索引分为聚集索引和⾮聚集索引,数据库中的索引类似于⼀本书的⽬录,在⼀本书中通过⽬录可以快速找到你想要的信息,⽽不需要读完全书。

索引主要⽬的是提⾼了SQL Server系统的性能,加快数据的查询速度与减少系统的响应时间。

但是索引对于提⾼查询性能也不是万能的,也不是建⽴越多的索引就越好。

索引建少了,⽤ WHERE ⼦句找数据效率低,不利于查找数据。

索引建多了,不利于新增、修改和删除等操作,因为做这些操作时,SQL SERVER 除了要更新数据表本⾝,还要连带⽴即更新所有的相关索引,⽽且过多的索引也会浪费硬盘空间。

索引的分类:索引就类似于中⽂字典前⾯的⽬录,按照拼⾳或部⾸都可以很快的定位到所要查找的字。

唯⼀索引(UNIQUE):每⼀⾏的索引值都是唯⼀的(创建了唯⼀约束,系统将⾃动创建唯⼀索引)主键索引:当创建表时指定的主键列,会⾃动创建主键索引,并且拥有唯⼀的特性。

聚集索引(CLUSTERED):聚集索引就相当于使⽤字典的拼⾳查找,因为聚集索引存储记录是物理上连续存在的,即拼⾳ a 过了后⾯肯定是 b ⼀样。

⾮聚集索引(NONCLUSTERED):⾮聚集索引就相当于使⽤字典的部⾸查找,⾮聚集索引是逻辑上的连续,物理存储并不连续。

PS:聚集索引⼀个表只能有⼀个,⽽⾮聚集索引⼀个表可以存在多个。

什么情况下使⽤索引:语法:CREATE [ UNIQUE ] [ CLUSTERED | NONCLUSTERED ] INDEX index_nameON <object> ( column_name [ ASC | DESC ] [ ,...n ] )[ WITH <backward_compatible_index_option> [ ,...n ] ][ ON { filegroup_name | "default" } ]<object> ::={[ database_name. [ owner_name ] . | owner_name. ]table_or_view_name}<backward_compatible_index_option> ::={PAD_INDEX| FILLFACTOR = fillfactor| SORT_IN_TEMPDB| IGNORE_DUP_KEY| STATISTICS_NORECOMPUTE| DROP_EXISTING}参数:UNIQUE:为表或视图创建唯⼀索引。

实验1-4 数据库和表的创建

实验1-4  数据库和表的创建

实验一数据库和表的创建、修改和删除一、实验目的掌握利用SQL Server2000及其交互式查询语言SQL进行数据定义的基本操作(如建立、修改、删除基本表)。

二、实验设备与环境1.硬件:电脑一台。

2.软件:Windows 2000/XP等操作系统,安装SQL Server 2000个人版或企业版。

三、实验内容1.掌握查询分析器及企业管理器的使用。

2.利用查询分析器,使用SQL中的CREATE、DROP、ALTER语句创建和删除数据库,创建、删除、更新基本表。

四、实验步骤(一)、利用企业管理器进行操作。

1.使用“”创建数据库“学生数据库”。

在“数据库”上右键单击选择“新建数据库”,如图2.1所示。

图2.1新建数据库2.在“数据库属性”中的名称中,输入“学生数据库”。

可以通过“数据文件”与“事务日志”选项分别查看数据库数据文件与事务日志的属性,如图2.2所示。

图2.2 数据库属性3.在新建的“学生数据库”上右键单击,选择“新建”中的“表”,开始创建数据表,如图2.3所示。

图2.3 新建数据表4.在创建数据表的对话框中,输入数据表的各个字段名称、选择合适的数据类型、长度以及确定该字段是否允许空,如图1.4所示。

图2.4 创建数据表的各个字段5.创建表的主键。

在Student表中Sno为主键,在Sno字段的左边,单击鼠标右键选择“设置主键”。

如果某个表的主键由多个字段联合组成,可以通过Ctrl键将多个字段选中,然后按上述方法设置主键。

如图2.5所示。

图2.5 设置表的主键6.将表建好以后要对其进行保存,在保存表对话框中输入表的名称。

如图2.6所示。

图2.6 保存表7.按照以上步骤,完成课程表Course和选课表SC。

8.表建好以后,可以添加数据。

在“学生数据库”中找到上述建立的Student表,右键单击选择“打开表”中的“返回所有行”,如图2.7所示。

图2.7 选择查看数据表的数据9.通过步骤8可以看到Student表中的所有数据,在表中另起一行,向表中添加新的数据,如图2.8所示。

SQL Server数据库教程-视图

SQL Server数据库教程-视图
USE stsc SELECT * FROM st2_comm
查询结果如图5所示。
SQL Server数据库教程

2 查询视图
【例4】 查询通信专业学生的学号、姓名、课程名。
USE stsc SELECT stno, stname, cname FROM st_comm 该语句对st_comm视图进行查询,查询结果如图6所示。
SQL Server数据库教程

4 修改视图定义和重命名视图
4.1修改视图定义
1. 使用图形界面方式修改视图定义 【 例 10】 使 用 图 形 界 面 方 式 修 改 例 1 创 建 的 视 图 st_comm,以降序显示成绩。 (1)启动SQL Server Management Studio,在对象资源 管理器中,展开“数据库”节点,选中“stsc”数据库,展开 该数据库节点,展开“视图”,选择“dbo. st_comm”,单击 鼠标右键,在弹出的快捷菜单中选择“设计”命令。 (2)进入“视图设计器”窗口,如图13所示,可以查 看和修改视图结构,其操和创建视图的类似。
SQL Server数据库教程

2 查询视图
使用SELECT语句对sc_avg视图进行查 询:
USE stsc SELECT * FROM sc_avg
查询结果如图7所示。
SQL Server数据库教程

3 更新视图
3.1 可更新视图
【例6】 在stsc数据库中,以student为基表,创建专业 为计算机的可更新视图st_cp。
语法格式:
ALTER VIEW [ schema_name . ] view_name [ ( column [ ,...n ] ) ] [ WITH <view_attribute>[,…n ] ] AS select_statement [ WITH CHECK OPTION ]

SQL Server实用教程(SQL Server 版)

SQL Server实用教程(SQL Server 版)
SQL Server实用教程(SQL Server 版)
读书笔记模板
01 思维导图
03 目录分析 05 精彩摘录
目录
02 内容摘要 04 读书笔记 06 作者介绍
思维导图
本书关键字分析思维导图
教学
实验
数据库
实验
数据库
创建
设计

应用
综合 习题
实习
实用教程
管理
过程
系统

数据
应用
内容摘要
本书是普通高等教育“十一五”国家级规划教材,分为实用教程、实验和综合应用实习三部分。本书以 MicrosoftSQLServer2008中文版为教学和开发平台,先介绍数据库的基本概念、数据库创建、表与表数据操作、 数据库的查询和视图、T-SQL语言、索引与数据完整性、存储过程和触发器、备份与恢复、系统安全管理、 SQLServer2008与XML等数据库基础知识,然后是实验和综合应用实习题目。本书免费提供教学课件和配套的客户 端/SQLServer2008应用系统数据库和源程序文件。
P0.1数据库 P0.2基本表 P0.3视图 P0.4完整性约束 P0.5存储过程 P0.6触发器 P0.7系统功能 P0.8 B/S方式界面的设计
P1.1创建图书管理站 P1.2设计母版页 P1.3设计“读者管理”页面 P1.4设计“借书”页面
P2.1创建图书管理系统 P2.2设计父窗体 P2.3设计读者管理窗体 P2.4设计借书窗体
目录分析
第2章数据库创建
第1章数据库的基 本概念
第3章表与表数据 操作
1
第4章数据库的 查询和视图
2
第5章 T-SQL 语言
3
第6章索引与数 据完整性

新SQL——SERVER实验练习

新SQL——SERVER实验练习

实用文档SQL-Server实验答案上海师范大学计算机系目录第一部分企业管理器的使用 (4)试验一注册服务器....................................... 错误!未定义书签。

试验二创建数据库....................................... 错误!未定义书签。

试验三创建表........................................... 错误!未定义书签。

实验四数据输入......................................... 错误!未定义书签。

实验五登录到数据库服务器............................... 错误!未定义书签。

第二部分 SQL语言 (4)第二部分 SQL语言 (4)试验一数据库创建 (4)试验二创建表 (4)试验三创建数据完整性 (6)试验四数据完整性试验 (8)试验五索引 (11)试验六更新数据 (12)试验七 Sql 查询语句 (13)试验八视图 (16)试验九安全性控制实验 (17)试验十存储过程 (18)试验十二触发器 (23)试验十二恢复技术 (26)试验十三事务 (27)试验十四锁 (28)第一部分企业管理器的使用第二部分 SQL语言试验一数据库创建目的:1掌握利用SQL语言进行数据库的创建、维护。

2 sp_helpdb 命令要求:1 创建数据库 2 修改数据库 3 删除数据库一建立school 数据库1 使用查询分析器创建数据库 schoolCreate DataBase school2 使用 SP_helpdb 查询数据库 School 的信息3 使用SQL-Server 的企业管理器查看数据库 school 的信息。

4 记录:1)school 数据库文件所在的文件夹。

2)school 数据库的文件名二删除School数据库1 使用查询分析器删除数据库 schoolDROP DATABASE school2 使用SQL-Server 的企业管理器删除数据库 school 。

实验三、四创建表及输入数据及完整性约束

实验三、四 创建表及输入数据及完整性约束本实验需要4学时。

一、实验目的要求学生熟练掌握和使用Transact-SQL、SQL Server企业管理器创建表、索引和修改表结构,并学会使用SQL Server 查询分析器接收Transact-SQL语句和进行结果分析。

学生熟练掌握使用 SQL、Transact-SQL和SQL Server企业管理器向数据库输入数据、修改数据和删除数据的操作。

二、实验内容1 创建表、确定表的主码和约束条件。

为主码建索引。

2 查看和修改表结构。

3 输入数据、修改数据和删除数据三、实验步骤(1)通过企业管理器,在建好的图书借阅数据库中建立图书、读者和借阅3个表,其结构为;图书(书号,类别,出版社,作者,书名,定价,作者).读者(编号,姓名,单位,性别,电话).借阅(书号,读者编号,借阅日期)要求为属性选择合适的数据类型,定义每个表的主码.是否允许空值和默认值等列级数据约束。

(2)在企业管理器中建立图书、读者和借阅3个表的表级约束.每个表的主码约束.借阅表与图书表间、借阅表与读者表之间的外码约束,要求按语义先确定外码约束表达式.再通过操作予以实现.实现借阅表的书号和读者编号的惟一性约束:实现读者性别只能是“男”或“女”的Check(检查)约束。

(3)通过企业管理器,在图书借阅数据库的图书、读者和借阅3个表中各输入10条记录。

要求记录不仅满足数据约束要求.还要有表间关联的记录。

(4)通过企业管理器实现对图书借阅数据库的图书、读者和借阅3个表中数据的插入。

删除和修改操作。

(5)通过企业管理器实现对学生选课库的数据增加、数据删除和数据修改操作、要求学生、课程和选课表中各有10条以上的记录。

四、实验方法1 新建表在 SQL Serve 2000的数据库中,文件夹是按数据库对象的类型建立的.文件夹名是该数据库对象名。

当在企业管理器中选择服务器和数据库文件夹,并打开已定义好的图书.读者数据库后,会发现它自动设置了关系图、表、视图、存储过程、用户、角色、规则、默认等文件夹。

《sql server数据库实用案例教程》实验

《sql server数据库实用案例教程》实验SQL Server数据库是一种常用的关系型数据库管理系统,可以用于存储和管理大量的结构化数据。

本实用案例教程将介绍一些常见的SQL Server数据库实例,向读者展示如何使用SQL Server数据库来解决实际的数据管理问题。

让我们考虑一个在线商城的数据库实例。

我们可以创建一个名为"Product"的表来存储产品信息,包括产品ID、产品名称、价格等字段。

另外,我们可以创建一个名为"Order"的表来存储用户订单信息,包括订单ID、用户ID、产品ID和订单数量等字段。

为了实现产品与订单之间的关联,我们可以在"Order"表中添加一个外键,将产品ID与"Product"表中的产品ID进行关联。

在这个示例中,我们可以使用SQL查询语句来实现以下功能:1. 查询某个产品的详细信息:可以使用SELECT语句来查询"Product"表中某个产品的详细信息,例如:SELECT * FROM Product WHERE ProductID = 1;这将返回产品ID为1的详细信息。

2. 插入新的产品信息:可以使用INSERT INTO语句向"Product"表中插入新的产品信息,例如:INSERT INTO Product (ProductName, Price) VALUES ('iPhone', 999);这将插入一条新的产品信息,产品名称为"iPhone",价格为999。

3. 更新产品信息:可以使用UPDATE语句来更新"Product"表中某个产品的信息,例如:UPDATE Product SET Price = 899 WHERE ProductID = 1;这将将产品ID为1的产品价格更新为899。

SQL Server 2008数据库设计与管理04单元4检索与操作数据表数据

14
【实战演练 】
【任务4-1-2】查询数据表指定的列
图4-9 在【添加表】对话框选择待添加的数据表“出版社”
图4-8 在快捷菜单中选择【在编辑器中设计查询】命令
15
【实战演练 】
【任务4-1-2】查询数据表指定的列 【任务实施 】
(4)在【查询设计器】中选择字段和进行必要的设置
【查询设计器】分为上、中、下三个组成部分,上部为数据表关系 图窗格,中部为条件设计窗格,下部为SQL语句显示窗格。 在【查询设计器】上部的数据表窗格中选择需要输出的列,直接单击选 中字段名左侧的复选框即可。分别选择“出版社名称”、“出版社简称” 和“出版社地址”,如图4-10所示。 也可以在中间窗格中,单击列名右侧的按钮,在弹出的列名下拉列
【任务4-1-2】查询数据表指定的列 【任务实施 】
(3)打开【查询设计器】
在【SQL编辑器】中右键单击,在弹出的快捷菜单中选择 【在编辑器中设计查询】命令或者选择菜单命令【查询】→【在 编辑器中设计查询】,如图4-8所示。同时打开【查询设计器】和 【添加表】对话框,在【添加表】对话框选择数据表“出版社”, 如图4-9所示。然后单击【添加】按钮,将选择的数据表添加到 【查询设计器】中。然后单击【添加表】对话框中的【关闭】按 钮关闭该对话框进入【查询设计器】中。
图4-1 在【标准】工具栏中单击【新建查询】按钮
图4-2
“SQL编辑器”工具栏
6
【实战演练 】
【任务4-1-1】查询数据表所有的列 【任务实施 】
(2)设置当前数据库为bookDB04
在【SQL编辑器】工具栏中的数据库下拉列表框中选择“bookDB04” 数据库,如图4-3所示。或者使用“Use bookDB04”语句,打开 “bookDB04”数据库。

数据库技术与应用—SQL_Server_2008(第2版)第9章_视图




【例9.1】建立计算机系学生的视图。 CREATE VIEW vw_Stu_jsj1 AS SELECT studentID, studentName, sex, speciality FROM Student WHERE speciality = '计算机' 本查询省略了视图列名,隐含为与 SELECT 语句中的列相同 的名称。
参数说明

column:视图中的列使用的名称。


组成视图的列名要么全部省略要么全部指定,没有第三 种选择。如果省略了视图的各个列名,则视图列将获得 与SELECT语句中的列相同的名称。 但是对于下列情况,必须在视图定义中指定每列的名称: 视图中有任何从算术表达式、内置函数或常量派生出 的列。 视图中两列或多列具有相同名称(通常由于视图定义 包含联接,而来自两个或多个不同表的列具有相同的 名称)。 希望使视图中的列名与它的源列名不同。这时也可以 在视图中重命名列。无论重命名与否,视图列都会继 承其源列的数据类型。
9.4 通过视图查询数据

视图定义好后,用户就可以像对基本表一样对视图进行查 询了。 【例9.7】在计算机系学生的视图中找出所有女生信息。
SELECT studentID, studentName, sex FROM vw_Stu_jsj1 WHERE sex= '女‘


系统执行对视图的查询时,首先进行有效性检查,以确认 查询中涉及到的表、视图等是否存在。如果存在,则从数 据字典中取出视图的定义,把定义好的子查询和用户的查 询结合起来,转换成等价的对基本表的查询。 例如,本例的查询就相当于执行了下面的SQL语句:
视图的分类


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

实验四 视图和索引
一、实验目的
使学生掌握SQL SERVER中的视图创建、查看、修改和删除的方法;索引的
创建和删除方法

二、实验内容
在学生-课程数据库中
(1) 用图形工具和T-SQL两种方法创建视图,取名为view_stu_grade,要求查看学
生的学号,姓名,课程名和成绩。
(2) 若发现视图定义的结构不能很好满足要求,还可以对它进行修改。
(3) 删除视图
(4) 尝试分别为student表的每一个属性列添加一个惟一索引,将出现的现象和原因
分析一下。
(5) 删除索引

三、实验过程

要求个人填写(要求有文字描述和适当的图片辅助说明)
1.1 图形工具创建视图:
1.2 T_SQL创建视图:
2.1 视图输出:
修改:
修改后:

查看视图:
3 删除视图:
4 创建索引:
查看索引:
5 删除索引:
四、实验总结
这次实验主要是对SQL server 2000的视图和索引功能,这两项都跟查询有密切
的关系。不同创建视图的方法,视图创建后的查看、修改、删除等操作,根据不
同的需要来调整视图的显示。索引创建,并在创建过程中体会其创建的原则,索
引的查看、删除等操作。这次实验使我对SQL server2000的查询系统有了进一步
的了解,对使用SQL server2000不同功能进行更有效率的查询有了更深的了解。

相关文档
最新文档