实验567索引视图TSQL编程.docx
- 文档编号:25938460
- 上传时间:2023-06-16
- 格式:DOCX
- 页数:16
- 大小:773.18KB
实验567索引视图TSQL编程.docx
《实验567索引视图TSQL编程.docx》由会员分享,可在线阅读,更多相关《实验567索引视图TSQL编程.docx(16页珍藏版)》请在冰豆网上搜索。
实验567索引视图TSQL编程
实验五索引
实验目的
1.掌握使用对象资源管理器创建索引的方法。
2.掌握T-SQL创建和删除索引语句的使用方法。
3.掌握查看索引的系统存储过程的用法。
实验内容
1.在对象资源管理其中创建索引。
要求:
在XSCJ数据库的Student表的“学号”列上建立非聚簇索引StuNo_ind。
在对象资源管理其中,选择XSCJ数据库的Student表,展开Student表,在“索引”节点上单击鼠标右键,在弹出的快捷菜单上选择“新建索引”命令,打开如图A5.1所示的“新建索引”窗口。
在“索引名称”文本框中输入新建索引的名称StuNo_ind。
单击“添加”按钮,出现如图A5.2所示的“选择列”对话框,在其中选择用于创建索引的列“学号”,单击“确定”按钮。
图A5.2选择索引列
图A5.1“新建索引”窗口
索引创建完成后,可在对象资源管理器中展开表的“索引”节点,查看该表上的所有索引。
2.使用T-SQL语句创建和删除索引。
1)在XSCJ数据库Course表的“课程号”列上建立非聚簇索引CourseNo_ind。
USEXSCJ
IFEXISTS(SELECTnameFROMsysindexes
WHEREname=’CourseNo_ind’)
DROPINDEXCourse.CourseNo_ind--删除索引
GO
CREATEINDEXCourse.No_indONCourse(课程号)
GO
在查询分析器中输入以下T-SQL语句并执行:
2)
USEXSCJ
DROPINDEXCourse.CourseNo_ind
GO
删除Course表上的索引CourseNo_ind。
3.使用系统存储过程sp_helpindex查看索引。
要求:
使用系统存储过程sp_helpindex查看Student表上的索引信息。
USEXSCJ
EXECsp_helpindexStudent
GO
实验总结
通过此次实验,我知道了既可以在对象资源管理器中创建索引,也可以使用T-SQL语句创建和删除索引。
实验六视图
实验目的
1.掌握使用对象资源管理器创建视图的方法。
2.掌握T-SQL创建和删除视图语句的使用方法。
3.掌握视图的查询方法。
实验内容
1.在对象资源管理器中创建视图。
要求:
创建名为Student_male的视图,包含所有男学生的信息。
在对象资源管理器中选择XSCJ数据库,展开XSCJ数据库,在“视图”节点上单击鼠标右键,在弹出的快捷菜单上选择“新建视图”命令,打开如图A6.1所示的“添加表”对话框。
选中“Student”表,单击“添加”按钮,然后再单击“关闭”按钮,将出现如图A6.2所示的创建视图窗口。
图A6.2创建视图窗口
图A6.1“添加表”对话框
在“Student”窗格中选择所有列,在条件窗格的列一栏中选择“性别”,“输出”栏不勾选,在“筛选器”一栏中输入“男”。
单击“保存”,命名为Student_male
2.使用T-SQL语句创建视图。
要求:
创建名为Student_Computer的视图,包含计算机科学与技术专业的学生信息。
USEXSCJ
GO
CREATEVIEWStudent_Computer
AS
SELECT*
FROMStudent
WHERE专业名=’计算机科学与技术’
GO
3.视图查询
1)查询Student_male视图。
SELECT*FROMStudent_male
2)在Student_Computer视图上查询计算机科学与技术专业在1989年出生的学生信息。
SELECT*
FROMStudent_Computer
WHEREYEAR(出生时间)=’1989’
4.使用T-SQL语句修改视图定义。
要求:
将Student_male视图定义更改为包含计算机科学与技术专业所有男生的信息。
ALTERVIEWStudent_male
AS
SELECT*
FROMStudent
WHERE性别=’男’AND专业名=’计算机科学与技术’
实验总结
通过此次试验,我学会了分别用对象资源管理器和T-SQL对视图进行创建和修改的方法。
查询视图时,语句与对表的查询类似。
实验七T-SQL编程
实验目的
1.了解T-SQL变量的使用方法。
2.掌握T-SQL各种运算符、控制语句的功能及使用方法。
3.掌握常用系统函数的调用方法。
4.掌握用户自定义函数的使用。
实验内容
1.局部变量的使用。
USEXSCJ
DECLARE@SpecVARCHAR(20)
SET@Spec=’计算机科学与技术’
SELECT学号、姓名
FROMStudent
WHERE专业名=@Spec
GO
要求:
创建一个名为Spec的局部变量,并在SELECT语句中使用该局部变量查找Student表中所有计算机科学与技术专业的学生学号、姓名。
2.
DECLARE@CNTINT,@SUMINT
SET@CNT=1
SET@SUM=0
WHILE@CNT<=100
BEGIN
SET@SUM=@SUM+@CNT
SET@CNT=@CNT+1
END
PRINT@SUM
GO
T-SQL流程控制。
要求:
编写求1+2+···+100的程序。
3.使用系统函数。
1)输出当前系统日期和时间。
SELECTGETDATE()
2)输出当前版本安装信息。
SELECT@@VERSION
3)统计学生所选课程总数。
USEXSCJ
SELECTCOUNT(DISTINCT课程号)
FROMStuCourse
GO
4)输出一个0~1之间的随机数。
SELECTRAND()
5)查询Student表,输出每个学生的学号、姓名和专业名,如果专业名中包含“计算机科学与技术”,则以“计算机”代替。
SELECT学号、姓名,REPLACE(专业名,‘计算机科学与技术’,’计算机’)
FROMStudent
6)查询Student表,输出每个学生的学号、姓名和总学分,若总学分为NULL则输出0。
SELECT学号、姓名,ISNULL(总学分,0)AS总学分
FROMStudent
4.使用自定义函数。
1)定义一个函数,其功能是:
查询某个学号的学生信息是否存在,若存在则返回0;若不存在则返回-1。
学号作为输入参数传入。
USEXSCJ
GO
IFEXISTS(SELECTnameFROMsysobjectS
WHEREtype='FN'ANDname='Check_Sno')
DROPFUNCTIONCheck_Sno
GO
CREATEFUNCTIONCheck_Sno
(@Snochar(6))
RETURNSINT
AS
BEGIN
DECLARE@flagINT
SELECT@flag=
(SELECTCOUNT(*)
FROMStudent
WHERE学号=@Sno
)
IF@flag>0
SET@flag=0
ELSE
SET@flag=-1
RETURN@flag
END
GO
2)对Check_Sno函数进行调用。
a)在SELECT语句中调用:
USEXSCJ
GO
DECLARE@Sno1CHAR(6),@flagINT
SET@Sno1='070101'
SELECT@flag=[XSCJ].[dbo].[Check_Sno](@Sno1)
SELECT@flagAS'学生是否存在'
GO
b)利用EXEC语句执行:
USEXSCJ
GO
DECLARE@flagINT
EXEC@flag=[XSCJ].[dbo].[Check_Sno]@Sno='070101'
SELECT@flagAS'学生是否存在'
GO
实验总结
通过此次实验,帮助我了解了T-SQL变量的编程,通过例子理解系统函数和自定义函数的使用。
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 实验567 索引视图TSQL编程 实验 567 索引 视图 TSQL 编程