13春数据库实验6 TSQL语句的程序设计和关系完整性操作.docx

上传人:牧羊曲112 文档编号:3141942 上传时间:2023-03-11 格式:DOCX 页数:7 大小:38.78KB
返回 下载 相关 举报
13春数据库实验6 TSQL语句的程序设计和关系完整性操作.docx_第1页
第1页 / 共7页
13春数据库实验6 TSQL语句的程序设计和关系完整性操作.docx_第2页
第2页 / 共7页
13春数据库实验6 TSQL语句的程序设计和关系完整性操作.docx_第3页
第3页 / 共7页
13春数据库实验6 TSQL语句的程序设计和关系完整性操作.docx_第4页
第4页 / 共7页
13春数据库实验6 TSQL语句的程序设计和关系完整性操作.docx_第5页
第5页 / 共7页
亲,该文档总共7页,到这儿已超出免费预览范围,如果喜欢就下载吧!
资源描述

《13春数据库实验6 TSQL语句的程序设计和关系完整性操作.docx》由会员分享,可在线阅读,更多相关《13春数据库实验6 TSQL语句的程序设计和关系完整性操作.docx(7页珍藏版)》请在三一办公上搜索。

1、13春数据库实验6 TSQL语句的程序设计和关系完整性操作实验六 T-SQL的程序设计和关系完整性操作(6学时) 1. 了解T-SQL编程的基础知识。 2. 理解数据库中的关系数据完整性。 1.掌握各类型常量的表示;局部变量的声明和赋值;各类运算符的使用。 2.掌握批处理的含义;脚本的含义、注释的使用及流程控制语句的使用。 3.了解局部变量的作用域;部分内置函数的使用。 4. 掌握使用T-SQL语句来创建各种约束和默认值、规则等数据库对象,从而保证数据的完整性。 一、T-SQL程序设计基础 1.设计一段程序,能在屏幕上输出“欢迎使用选课管理信息系统”。 2.在查询分析器窗口中利用declare

2、分别定义bit、int型变量n、m ,再利用set命令分别给n、m 赋值为7、123,利用select命令看结果。 3. 在查询分析器窗口中利用declare分别定义变量n1、n2、n3、n4为 Real型、 float型 、decimal型及numeric型,再利用set命令赋值为10.9999988888888899,利用select命令看结果。 4. 在查询分析器窗口中利用declare分别定义变量n1、n2、n3、n4为 char型、 varchar型 、 nchar型 、nvarchar型的长度为5的字符串变量 ,再利用set命令赋值为abcef,利用select命令看结果并利用da

3、talength函数查看各变量所占用的内存空间。 5.设计一段程序,功能是统计随机产生的1000个0到1之间小数以0.5为分界出现的次数,用以说明随机数的均匀性。 6.设计程序完成如下功能,将该程序保存为lab6-6.SQL。 打开“student”数据库。 创建一个名为“score”的表,该表包含如下字段:sname,cname,grade。 利用SELECT语句为“score”插入正确数据。 显示“score”的所有记录。 7.在查询分析器中分别调试如下程序,先修正错误再将结果以注释语句的形式写在相应程序的下方。 (1) declare n decimal(5,2),m varchar(1

4、0) n=99.995 m=n 的值为 print m+ n go (2) exec sp_addtype , cy1 , varchar(24) declare a cy1 a=abcd select a, datalength(a) 1 (3) select sno 学号, grade 成绩, 等级= case when grade =100 then A when grade90 then B when grade80 then C when grade70 then D when grade60 then E else 成绩输入有误! end from sc (4)-本题的功能是求10

5、0以内的自然数之和 declare i int,s int set i=1 set s=0 while i=100 begin s=s+i i=i+1 end print 100以内的自然数之和为: +ltrim( s) 二、关系完整性操作 1.对本实验第一大项第6题的score表增加以下约束。 非空约束:sname,cname。主键约束。 2.对表student增加以下约束:Sdept的默认值定义为“计算机学院” 3.对表score增加以下约束:grade值的范围在0-100之间。 4.参照上述要求,自行设计约束。 一、T-SQL程序设计基础 1在查询分析器中输入参考代码如下,该段程序的功能

6、是在屏幕上输出“欢迎使用选课管理信息系统”。 declare str char(30) set str= 欢迎使用选课管理信息系统 print print str go 2在查询分析器中输入参考代码如下。 declare n bit, m int set n=8 set m=256 select n+m 2 (1) n+m运算结果是否如你预期? (2)如果使用print n+m 替代 select n+m,观察输出结果的形式有何不同? 3在查询分析器中输入参考代码如下。 declare n1 real,n2 float,n3 decimal,n4 numeric set n1=10.99999

7、88888888899 set n2=10.9999988888888899 set n3=10.9999988888888899 set n4=10.9999988888888899 select n1 as n1_real,n2 as n2_float ,n3 n3_decimal,n4 n4_numeric 如果 定义n3 decimal(19,16),观察 n3的输出结果有何不同? 4在查询分析器中输入参考代码如下。 declare n1 char(5),n2 varchar(5),n3 nchar(5),n4 nvarchar(5) set n1=abcdef set n2=abcd

8、ef set n3=abcdef set n4=abcdef select n1 as n1_char,n2 as n2_varchar ,n3 n3_nchar, n4 n4_nvarchar select datalength(n1) as n1_char,datalength(n2) as n2_varchar , datalength(n3) n3_nchar, datalength(n4) n4_nvarchar 5在查询分析器中输入参考代码如下。 /*本程序的功能是统计随机产生的1000个0到1之间 小数以0.5为分界出现的次数,用以说明随机数的均匀性*/ declare r nu

9、meric(10,2), m int declare n1 int, n2 int set m=1 set n1=0 3 set n2=0 while m=1000 begin set r=rand if r=0.5 set n1=n1+1 else set n2=n2+1 set m=m+1 end print 小于等于0.5的随机数出现了+ str(n1)+次 print 大于0.5的随机数出现了+str(n2)+次 6.程序编码建立在本课程已经完成的实验基础上,即已经建立了stu_DB数据库和表student、sc和course,参考代码如下。 use stu_DB go create

10、table score ( sname CHAR(20) , cname CHAR(30) , grade SMALLINT DEFAULT NULL, -primary key(sname,cname) ) insert into score (sname,cname,grade) select sname,cname,grade from student,sc,course where student.sno=sc.sno and o=o select * from score 7正确代码参考如下。 (1) declare n decimal(5,2),m varchar(10) set

11、n=99.995 set m=n 的值为 print m print n go 4 (2) exec sp_addtype cy1,varchar(24) declare a cy1 set a=abcd select a,datalength(a) (3) select sno 学号,grade 成绩,等级= case when grade =60 then E when grade70 then D when grade80 then C when grade90 then B when grade=100 then A else 成绩输入有误! end from sc (4)-本题的功能是求100以内的自然数之和 declare i int,s int set i=1 set s=0 while i=0 and grade=100) 6

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 生活休闲 > 在线阅读


备案号:宁ICP备20000045号-2

经营许可证:宁B2-20210002

宁公网安备 64010402000987号