教学文库网 - 权威文档分享云平台
您的当前位置:首页 > 精品文档 > 高等教育 >

第11章 数据库应用实践指导 - 图文(9)

来源:网络收集 时间:2026-09-19
导读: 数据库原理及应用学习与实践指导 SQL Server 2012 SELECT * FROM student 3)字段函数(列函数)运用: 从教务管理数据库teachingSystem中学生选课表student_teacher_course中查询出成绩的最高分、最低价、平均分和

数据库原理及应用学习与实践指导 SQL Server 2012

SELECT * FROM student

3)字段函数(列函数)运用:

从教务管理数据库teachingSystem中学生选课表student_teacher_course中查询出成绩的最高分、最低价、平均分和总分。

USE teachingSystem GO

SELECT MAX(score) AS 最高分,MIN(score) AS 最低分,AVG(score) AS 平均分,SUM(score) AS

总分

FROM student_teacher_course GO

查询学生选课表中最低分的学生编号和课程编号(提示用子查询结构)。 USE teachingSystem GO

SELECT stu_id AS 学生编号,course_id AS 课程编号 FROM student_teacher_course

WHERE score=(SELECT MIN(score) FROM student_teacher_course) GO

查询结果如图11-68所示:

图11-68 投影所有列查询结果

4)FROM子句连接查询

从教务管理数据库teachingSystem的教师表teacher中查询出教师的编号、姓名和系部名称。

USE teachingSystem GO

SELECT teacher_id,teacher_name,dept_name FROM teacher ,department

WHERE teacher.dept_id=department.dept_id 或采用表的别名: USE teachingSystem GO

SELECT teacher_id,teacher_name,dept_name FROM teacher X ,department Y WHERE Y.dept_id==Y.dept_id

查询结果如图11-69所示:

第11章 数据库应用实验指导

图11-69 FROM子句连接查询查询结果

5)比较、逻辑判断、模糊匹配查询

查找学生表中年龄不满20岁,专业名称带有“机械”两个字的学生信息。

USE teachingSystem GO

SELECT * FROM student

WHERE not(year(getdate())-year(birthday)+1>20) and major LIKE '%机械%' GO

6)分组查询

查找学生表中每个系部的平均总分大于550的系部编号、平均总分。

USE teachingSystem GO

SELECT dept_id, AVG(totalscore) as ?平均总分? FROM student GROUP BY dept_id

HAVING AVG(totalscore)>550 GO

11.4实验四 索引及视图操作 11.4.1实验目的 (1)了解SQL Server 2012中索引的定义、类型及其作用; (2)掌握创建索引、编辑索引以及删除索引的方法 (3)熟悉视图常用操作、视图创建,修改,删除操作。 (4)熟悉使用视图访问数据。 11.4.2 实验内容及步骤 1.索引操作

本章在学习SQL Server 2012索引的基础知识之后,主要练习对索引的使用,如创建索引、编辑索引以及删除索引等。

(1) 在SQL Server 2012中teachingSystem数据库中Student表,选择stu_id来创建一个惟一聚集索引,如图11-70所示。

实验操作步骤 :

使用图形界面进行操作:单击相应表左边的“+”号,右击“索引”节点,选择“新建索引”命令,如图11-71所示。

数据库原理及应用学习与实践指导 SQL Server 2012

图11-70 新建索引 图11-71 新建索引对话框设置信息 图11-72 选择要建立索引的字段

在弹出的“新建索引”对话框中设置要创建索引的名称、类型,添加索引键列。如图11-72所示.

使用T-SQL语句建立索引:在新建查询窗口中输入下列语句,并单击“执行”按钮。

USE teachingSystem GO

CREATE UNIQUE CLUSTERED INDEX student_index1 ON student(stu_id ASC) GO

(2) 使用SQL Server Management Studio 查询窗口在student表中新建一个惟一非簇索引,命名为student_index2,使用字段stu_id。

实验操作步骤:

在查询窗口输入下列SQL语句:

USE teachingSystem GO

CREATE UNIQUE NONCLUSTERED INDEX student_index2 ON student (stu_id ASC)

(3)通过新建学院College表添加主键约束来使SQL Server 2012自动为该表生成一个惟一性的簇索引。

操作步骤:

在SQL Server Management Studio 查询窗口中键入以下语句:

use teachingSystem create table College (

col_ID smallint primary key, col_name char(8), ) GO

(4)使用SQL Server Management Studio向导删除Reader表中的student_index2索引. 操作步骤:

1)启动SQL Server Management Studio查询窗口。 2)在查询窗口中键入以下SQL语句:

use teachingSystem

DROP INDEX student.student_index2 GO

2.视图操作

在熟悉了本章SQL Server 2012中关系和视图的基础知识之后,主要练习建立、修改和删除视图以及视图的应用等。

(1)使用SSMS创建视图。以创建学生表的视图为例。

在“对象资源管理器”中,右键单击teachingSystem数据库的“视图”节点或该节点中的任何视图,从快捷菜单中选择“新建视图”,如图11-73所示。

第11章 数据库应用实验指导

图11-73 打开新建视图 图11-74 添加表

在弹出“添加表”对话框中选择所需的表student或视图等,再单击“添加”;如图11-74所示。

在“视图设计器”中选择要投影的列,选择条件等,如图11-75所示。

图11-75 视图设计器选择投影列及条件

执行该SQL语句,运行正确后保存该视图View_student1。 (2)使用T-SQL语句创建上述视图。

CREATE VIEW View_student2 AS SELECT * FROM dbo.student

WHERE (dept_id = ?1001?)

(3)定义视图View_student3,课程成绩大于85分的学生学号,姓名,性别,出生日期

CREATE VIEW View_student3 AS

SELECT student.stu_id,student.name,student.sex,student.birthday FROM student INNER JOIN

student_teacher_course ON student.stu_id = student_teacher_course.stu_id WHERE (student_teacher_course.score > 85) 或者

CREATE VIEW View_student3 AS

SELECT student.stu_id, student.name, student.sex,student.birthday FROM student,student_teacher_course

WHERE student.stu_id = student_teacher_course.stu_id AND (dbo.student_teacher_course.score> 85)

(4) 创建一个新视图从原来视图View_student3中查询1990年以后出生的学生信息。

数据库原理及应用学习与实践指导 SQL Server 2012

CREATE VIEW View_student4 AS

SELECT *

FROM View_student3

WHERE (YEAR(birthday) >= 1990)

(5)通过视图对基本表进行插入、修改、删除行的操作,有一定的限制条件.在视图View_student1中插入一条新的记录,其各字段的值分别为'1220', N'1001', '陈静', '女', '1993-1-1' ,'上海', NULL, '汉族', '1 ', '电子信息', '1001', '计算机'。

USE teachingSystem GO

INSERT INTO View_student1

(stu_id, dept_id, name,sex, birthday, address, totalscore, nationality, grade, school, class, major)

VALUES ('1220', N'1001', '陈静', '女', '1993-1-1' ,'上海', NULL, '汉族', '1 ', '电子信息', '1001', '计算机') GO

修改记录:将视图View_student1中的学生姓名为“张思文”的出生日期改为’ …… 此处隐藏:3035字,全部文档内容请下载后查看。喜欢就下载吧 ……

第11章 数据库应用实践指导 - 图文(9).doc 将本文的Word文档下载到电脑,方便复制、编辑、收藏和打印
本文链接:https://www.jiaowen.net/wendang/604288.html(转载请注明文章来源)
Copyright © 2020-2025 教文网 版权所有
声明 :本网站尊重并保护知识产权,根据《信息网络传播权保护条例》,如果我们转载的作品侵犯了您的权利,请在一个月内通知我们,我们会及时删除。
客服QQ:78024566 邮箱:78024566@qq.com
苏ICP备19068818号-2
Top
× 游客快捷下载通道(下载后可以自由复制和排版)
VIP包月下载
特价:29 元/月 原价:99元
低至 0.3 元/份 每月下载150
全站内容免费自由复制
VIP包月下载
特价:29 元/月 原价:99元
低至 0.3 元/份 每月下载150
全站内容免费自由复制
注:下载文档有可能出现无法下载或内容有问题,请联系客服协助您处理。
× 常见问题(客服时间:周一到周五 9:30-18:00)