概述
以下均要求以SQL语句实现,解答写在每个部分的【答题】下面,
【实验目的与要求】
1.掌握SQL程序设计用户变量定义与使用
2.掌握SQL程序控制初步
一、在sakila数据库中film,film_categroy,category,利用用户变量分步实现查询影片title为ACADEMY DINOSAUR的影片分类,即category表中的name。(sakila数据库需提前导入,这里就不做相关步骤了)
【答题】
USE mysql
USE sakil
SET @fi=(SELECT film_id FROM film WHERE title='academy dinosaur');
SELECT @fi
SET @fi=(SELECT category_id FROM film_category WHERE film_id=@fi);
SELECT @fic
SET @cate=(SELECT NAME FROM category WHERE category_id=@fic);
SELECT @cate
创建查询@fi,查询academy dinosaur影片在film表中的位置
创建查询@fic,查询academy dinosaur影片在film_categroy表的位置
创建查询@cate,查询academy dinosaur影片在category表中的分类
查询@cate,输出结果
二、在sakila数据库中,查询category表,查询结果如下:
【答题】
SELECT category_id,CASE NAME
WHEN 'action' THEN '动作片'
WHEN 'animation' THEN '动画片'
WHEN 'children' THEN '儿童片'
ELSE '其他片'
END AS '电影类型'
FROM category
查询各种分类的数量
三、编写一个无参数存储过程,存储过程名称为up_jiecheng(),利用控制语句实现10的阶乘。即10!=10*9*…….1。当调用up_jiecheng()给出10的阶乘结果。
CREATE PROCEDURE up_jiecheng()
BEGIN
DECLARE i INT DEFAULT 10;
DECLARE result INT DEFAULT 1;
WHILE i>=1 DO
SET result=result*i;
SET i=i-1;
END WHILE;
SELECT result;
END #先运行一遍上面的
CALL up_jiecheng() #当上面的运行过一遍,才能运行这条语句
创建存储过程为up_jiecheng()
设置i的值,result的初始值,设置运算,输出
运行up_jiecheng()得到结果
最后
以上就是爱笑鼠标为你收集整理的这姐姐呀的《数据库安全技术》实验报告-3_SQL程序编写初步的全部内容,希望文章能够帮你解决这姐姐呀的《数据库安全技术》实验报告-3_SQL程序编写初步所遇到的程序开发问题。
如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。
本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
发表评论 取消回复