学生信息管理系统sql.docx
- 文档编号:8888199
- 上传时间:2023-02-02
- 格式:DOCX
- 页数:36
- 大小:1.59MB
学生信息管理系统sql.docx
《学生信息管理系统sql.docx》由会员分享,可在线阅读,更多相关《学生信息管理系统sql.docx(36页珍藏版)》请在冰豆网上搜索。
学生信息管理系统sql
第1单元数据库和表的创建
一、实训目的
1、了解数据库的逻辑结构、物理结构及其特点
2、学会利用企业管理器对数据库进行操作
3、学会利用Transact-SQL语句对数据库进行操作
二、实训任务
1、建立数据库,删除该数据库
2、建立新数据库
3、更改数据库属性
4、设计表结构
5、建立表,删除表
6、更改表
7、向表中插入数据,删除表中的数据,更改表中的数据
三、实训要求
1、数据库、表的创建、更改和删除要求用SQL命令和企业管理器两种方式完成
2、要求数据库中至少包含两个文件组,主文件组中至少包含两个数据文件,明确规定数据库存放的物理路径,文件大小,增长方式等属性。
3、建立四张以上的用户表,字段类型要求合理、合法,为空性要求要合理。
4、每张表给出至少三十条以上记录作为后续实训数据,实验数据要求合理
5、表结构要用表格的形式给出,并添加到实训内容中
6、将涉及到的SQL命令拷贝到“实训内容及步骤”中
7、将实训过程、结果通过截屏的方式添加到“实训内容及步骤”中,并用适当的文字进行说明
四、实训内容及步骤
1、创建数据库
(1)用企业管理器创建数据库
2、修改数据库
(1)企业管理器器修改数据库
3、删除数据库
(1)企业管理器删除数据库
4、创建表
(1)企业管理器创建表
5、修改表
(1)企业管理器修改表
6、删除表
(1)企业管理器删除表
7、表数据
KCB表数据
课程号
列名
数据类型
学时
学分
101
计算机基础
1
80
5
102
程序设计与语言
2
68
4
206
离散数学
4
68
4
208
数据结构
5
68
4
210
计算机原理
5
85
5
209
操作系统
6
68
4
212
数据库管理
7
68
4
301
计算机网络
7
51
3
302
软件工程
7
51
3
五、遇到的问题及解决办法
在编程过程中出现了语法上的错误,有的时候是语句不正确,有的时候是少了一个‘,’,经过提示和修改后可正确运行。
六、实训评价
第2单元数据库查询及T-SQL语言
一、实训目的
1、掌握使用SQL语句进行查询的基本方法
2、掌握视图创建更改删除。
3、掌握游标创建更改删除
4、掌握T-SQL语言
二、实训任务
1、写一个SQL语句,实现查询,实现选择一个表中指定的列,修改查询结果中的列标题
2、写一个SQL语句,实现查询,要求消除结果集中的重复行、限制结果集返回行数
3、查询数据库表中某字段值大于等于一定值的记录
4、用LIKE谓词查询指定字段中包含指定字符串的记录
5、写一个SQL语句,实现查询,要求查询条件中使用BETWEENAND关键字
6、用IN实现子查询、用JOIN关键字实现跨表查询
7、对某字段进行汇总
8、利用GROUPBY子句对查询结果分组
9、对查询结果按某字段排序
10、创建、修改、删除游标
11、从游标中读取数据
12、创建视图
13、查询视图
14、用循环语句实现查找某字段中最小值
15、利用内置函数得到某字段的最大值
16、建立一个用户自定义函数实现求某字段平均值
17、删除用户自定义函数
三、实训要求
1、视图的创建、更改和删除要求用SQL命令和企业管理器两种方式完成
2、将涉及到的SQL命令拷贝到“实训内容及步骤”中
3、将实训过程、结果通过截屏的方式添加到“实训内容及步骤”中
4、在需要的时候对实训过程进行一定的文字说明
四、实训内容及步骤
1、写一个SQL语句,实现查询,实现选择一个表中指定的列,修改查询结果中的列标题
select学号asnumber,姓名asname,总学分asmark
fromxsb
where专业='计算机'
2、写一个SQL语句,实现查询,要求消除结果集中的重复行、限制结果集返回行数
(1)消除重复行
selectdistinct专业,总学分
fromXSB
执行结果如下所示:
(2)限制结果集返回行数
selecttop4姓名,专业,总学分
fromXSB
执行结果如下所示:
3、查询数据库表中某字段值大于等于一定值的记录
查找比所有计算机系的学生年龄都大的学生
select*
fromXSB
where出生时间 ( select出生时间 fromXSB where专业=’计算机’ ) 执行结果如下所示: 4、用LIKE谓词查询指定字段中包含指定字符串的记录 查询XSB表中姓“王”且名的学生情况 select* fromXSB where姓名like‘王_’ 5、写一个SQL语句,实现查询,要求查询条件中使用BETWEENAND关键字 查找XSB表中不在1989年出生的学生情况 select* fromXSB where出生时间notbetween‘1989-1-1’and’1989-12-31’ 6、用IN实现子查询、用JOIN关键字实现跨表查询 (1)IN实现子查询 查找选修了课程号为206的课程的学生的情况 select* fromXSB where学号IN ( select学号 fromCJB where课程号='206') 执行结果如下所示: (2)JOIN关键字实现跨表查询 查找每个学生的情况以用选修的课程情况 select* fromXSBinnerjoinCJB onXSB.学号=CJB.学号 7、对某字段进行汇总 求学生的总人数 selectcount(*)as学生总数 fromXSB 8、利用GROUPBY子句对查询结果分组 求各专业的学生人数 select专业,count(*)as学生总数 fromXSB groupby专业 9、对查询结果按某字段排序 select* fromXSB where专业='通信工程' orderby出生时间 10、创建、修改、删除游标 (1)创建游标 declarexscursor for select学号,姓名,性别,出生时间,总学分 fromXSB where专业='计算机' (2)删除游标 deallocatexs 11、从游标中读取数据 读取下一行 fetchnextfromxs 12、创建视图 (1)T—SQL语句创建视图 createviewcs as select* fromXSB where专业='计算机' (2)企业管理器创建视图 13、更新视图 企业管理器更新视图 14、视图的删除 企业管理器删除视图 15、查询视图 select学号 fromcs 16、循环语句 将学号为081101的学生的总学分使用循环修改到大于等于60,每次只加2,并判断循环了多少次。 USEPXSCJ GO DECLARE@numINT SET@num=0 WHILE(SELECT总学分FROMXSBWHERE学号='081101')<60 BEGIN UPDATEXSBSET总学分=总学 分+2WHERE学号='081101' SET@num=@num+1 END SELECT@numAS循环次数 17、利用内置函数得到某字段的最大值 selectmax(成绩)AS'课程101最高分' fromCJB where课程号='101' 18、建立一个用户自定义函数实现求某字段平均值 createfunctionaverage(@cunmchar(20))returnsint as begin declare@averint select@aver= ( selectavg(成绩) fromCJB where课程号=@cunm groupby课程号 ) return@aver end 19、删除用户自定义函数 dropfunctionaverage 五、遇到的问题及解决办法 在使用循环语句时总是有语法错误,或是在编写程序过程中有一些地方是思路上的错误,在经过调试和修改后,可正确运行 六、实训评价(教师填写) 第3单元数据完整性、存储过程和触发器 一、实训目的 1、掌握数据完整性、索引的含义及其用法 2、掌握存储过程、触发器定义、修改、删除,存储过程的调用 二、实训任务 1、在某张表上建立索引 2、删除创建的索引 3、创建默认值约束 4、帮定默认值约束 5、删除默认值约束 6、创建check约束 7、删除check约束 8、创建规则 9、帮定规则、解除帮定规则 10、删除规则 11、创建、删除PRIMARYKEY约束、UNIQUE约束 12、实现参照完整性 13、分别创建带参数的、带output参数的存储过程、修改存储过程 14、执行存储过程 15、删除存储过程 16、创建、修改、删除触发器 三、实训要求 1、各种操作要求用SQL命令和企业管理器两种方式完成 2、将涉及到的SQL命令拷贝到“实训内容及步骤”中 3、将实训过程、结果通过截屏的方式添加到“实训内容及步骤”中 4、在需要的时候对实训过程进行一定的文字说明 四、实训内容及步骤 1、在KCB表上建立索引 (1)企业管理器创建索引 2、删除创建的索引 企业管理器删除索引 3、创建默认值约束 向表XSB2中添加一个字段并设置默认值约束 altertableXSB2 addadddatedatetimenull constraintadddatedflt defaultgetdate()withvalues 4、帮定默认值约束 首先在PXCJ数据库中定义表book及名为today的默认值然后将其绑定到book表的hire_date列 createtablebook ( book_idchar(6), namevarchar(20)notnull, hire_datedatetimenotnull ) createdefaulttodayasgetdate() execsp_bindefault'today','book.hire_date' 5、删除默认值约束 altertableXSB2 dropconstraintadddatedflt 6、创建check约束 企业管理器创建 7、删除check约束 企业管理器删除 8、创建规则 企业管理器 9、帮定规则、解除帮定规则 (1)T—SQL语句绑定规则 如下程序定义一个用户数据类型course_num,然后将前面定义的规则“kc_rule”绑定到用户数据类型course_num上,最后创建表KCB1,其课程号的数据类型为course_num execsp_addtype'course_num','char(3)','notnull' execsp_bindrule'kc_rule','course_num' go createtableKCB1 ( 课程号course_num, 课程名char(16)notnull, 开学日期tinyint, 学时tinyint, 学分tinyint ) (2)T—SQL语句解除绑定规则 execsp_unbindrule'KCB.课程号' execsp_unbindrule'course_num' 10、删除规则 企业管理器删除规则 11、创建、删除PRIMARYKEY约束、UNIQUE约束 创建PRIMARYKEY约束、UNIQUE约束 (1)T—SQL语句创建PRIMARYKEY约束、UNIQUE约束 创建XSB1表,并对学号字段创建PRIMARYKEY约束,对姓名字段定义UNIQUE约束 createtableXSB1 ( 学号char(6)notnullconstraintXH_PKprimarykey, 姓名char(8)notnullconstraintXM_UKunique, 性别bitnotnulldefault1, 出生时间datetimenotnull, 专业char(12)null, 总学分intnull, 备注varchar(500)null ) (2)企业管理器创建PRIMARYKEY约束 删除PRIMARYKEY约束、UNIQUE约束 (1)T—SQL语句删除PRIMARYKEY约束 altertableXSB1 dropconstraintXH_PK,XM_UK (2)企业管理器删除PRIMARYKEY约束 (3)企业管理器创建UNIQUE约束 (4)企业管理器删除UNIQUE约束 12、实现参照完整性 (1)企业管理器实现参照完整性 (2)T—SQL语句创建参照完整性 创建STU表,要求stu表中所有的学生号都必须在XSB3表中,假设已经使用学号列作为主键创建了XSB3表 createtableXSB3 ( 学号char(6)notnullforeignkey(学号)referencesXSB3(学号), 姓名char(8)notnull, 出生时间datetimenotnull ) 13、分别创建带参数的、带output参数的存储过程、修改存储过程 创建带参数的存储过程 (1)T—SQL语句 从PXSCJ数据库的三个表中查询某人指定课程的成绩和学分。 该存储过程接受与传递参数精确匹配值。 USEPXSCJ GO CREATEPROCEDUREstudent_info1@namechar(8),@cnamechar(16) AS SELECTa.学号,姓名,课程名,成绩,t.学分 FROMXSBaINNERJOINCJBb ONa.学号=b.学号INNERJOINKCBt ONb.课程号=t.课程号 WHEREa.姓名=@nameandt.课程名=@cname GO (2)企业管理器创建 14、执行存储过程 (1)执行存储过程student_info1: EXECUTEstudent_info1'王林','计算机基础' (2)执行存储过程do_action来查看结果: DECLARE@strchar(8) EXECdbo.do_action0,@strOUTPUT SELECT@str; 15、删除存储过程 删除PXSCJ数据库中的student_info1存储过程。 企业管理器删除存储过程 16、修改存储过程 企业管理器修改存储过程 五、遇到的问题及解决办法 在编程过程中出现了语法上的错误,有的时候是语句不正确,有的时候是少了一个‘,’,经过提示和修改后可正确运行。 六、实训评价(教师填写) 第4单元备份恢复导入导出及系统安全管理 一、实训目的 1、了解数据库备份恢复 2、了解导入导出的概念及用法 3、掌握数据库安全管理基本知识 二、实训任务 1、创建备份设备 2、备份数据库 3、备份事务日志 4、恢复备份内容 5、从表中导出数据 6、向表中导入数据 7、创建、删除登陆帐号 8、添加和删除固定服务器角色成员 9、创建数据库角色 10、将一个登录账号添加为某个数据库的用户 11、给数据库角色添加成员 12、数据库用户、角色操作权限的授予、拒绝和收回 13、数据库用户、角色的删除 三、实训要求 1、各种操作要求用SQL命令和企业管理器两种方式完成 2、将涉及到的SQL命令拷贝到“实训内容及步骤”中 3、将实训过程、结果通过截屏的方式添加到“实训内容及步骤”中 4、在需要的时候对实训过程进行一定的文字说明 四、实训内容及步骤 1、创建备份设备 在本地硬盘上创建一个备份设备。 所创建的备份设备的逻辑名是: mybackupfile。 所创建的备份设备的物理名是: E: \mybackupfile.bak。 企业管理器创建 2、备份数据库 使用BACKUP语句进行完全数据库备份 企业管理器创建 3、备份事务日志 企业管理备份事务日志 4、恢复备份内容 企业管理器恢复备份内容 5、向表中导入数据 因为导入数据和导出数据的操作过程基本一至,所有在这里只给出导入过程 6、创建、删除登陆帐号 企业管理器创建 删除登陆账号 企业管理器删除登陆账号 7、添加和删除固定服务器角色成员 添加固定服务器角色成员 (1)T—SQL语句添加固定服务器角色成员 将windows用户OBD7E57C949A420\liu添加到sysadmin固定服务器角色中: execsp_addsrvrolemember’0bd7e57c949a420\liu’,’sysadmin’ (2)企业管理器添加固定服务器角色成员 删除固定服务器角色成员: (1)T—SQL语句删除固定服务器角色成员 Sp_addrolemember[@rolename=]’role’,[@membername=]’security_account’ (2)企业管理器删除固定服务器角色成员 8、创建数据库角色 用企业管理器创建数据库角色 9、创建数据库角色 (1)T-SQL命令方式: Usepxscj Createrolerole2 Authorizationdbo (2)企业管理器方式: 10、将一个登录账号添加为某个数据库的用户 11、给数据库角色添加成员 (1)T-SQL命令方式: EXECsp_addrolemember'tt','uy' (2)企业管理器方式: 12、数据库用户、角色操作权限的授予、拒绝和收回 授予权限: (1)T-SQL命令方式: 授予角色role2在XSB表上的select权限: Grantselect Onxsb Torole2 Withgrantoption 拒绝权限: T-SQL命令方式: 对所有role2角色成员拒绝权限: Denycreateview,createtable Toli,huang Go 撤销权限: T-SQL命令方式: 撤销已授予用户wang的createtable权限 Revokecreatetable Fromwang (2)企业管理器方式: PXSCJ用户、角色操作权限的授予、拒绝和收回,可以在一个图上进行操作,如图: 13、数据库用户、角色的删除 企业管理器方式: 数据库角色的删除: (1)T-SQL命令方式: EXECsp_droprolemember'db_owner','tt' (2)企业管理器方式: 五、遇到的问题及解决办法 在编程过程中出现了语法上的错误,有的时候是语句不正确,有的时候是少了一个‘,’,经过提示和修改后可正确运行。 六、实训评价(教师填写) 第5单元编程实现数据库操作 一、实训目的 1、了解数据库应用程序的开发过程 2、能够使用编程语言对数据库进行增、删、改、查等操作 二、实训任务 1、建立应用程序 2、实现对数据库中各表的增删改查操作 三、实训要求 1、将主要代码拷贝到实训内容及步骤中去 2、将实训过程、结果通过截屏的方式添加到“实训内容及步骤”中 四、实训内容及步骤 创建学生成绩查询及添加等界面。 如图5-1: 图5-1 添加模块如图5-2: 图5-2 连接数据库及查询代码: namespaceDBXS { publicclassDBXS { publicconststringXS_CONNSTR=@"database=PXSCJ;userid=sa;password=123456"; publicconststringXS_SQLSTR=@"select*from(selectrow_number()over(orderby学¡ì号? )as'rownum', *fromXSB)astempwhererownumbetween1and10"; publicDBXS() { } publicstringXS_CONN_STR {get {returnXS_CONNSTR;} } publicstringXS_SQL_STR {get {returnXS_SQLSTR} } } } 显示查询结果,如图5-3: 图5-3 删除一条记录,如图5-4: 图5-4 其他功能如”上一条”,”下一条”等在该程序中均有体现,连接数据库的时候应注意数据库的名字应相一致。 五、遇到的问题及解决办法 相对前几章来说,这一章主要的内容是对数据进行增删改查等操作,想对来说比较简单,几乎没有遇到什么问题 六、实训评价(教师填写)
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 学生 信息管理 系统 sql