暂无图片
暂无图片
暂无图片
暂无图片
暂无图片

设计题:有商品表(商品号,商品名,分类,单价),请编写一个实现更改商品单价的存储过程

DB宝 2017-11-23
752


Q
题目

设计题

有商品表(商品号,商品名,分类,单价),请编写一个实现更改商品单价的存储过程(存储过程名为PUPDATE),更改规则如下:“电脑”类商品降价10%,“电视”类商品降价6%,“冰箱”类商品降价3%,其它商品不降价。以商品的分类作为输入参数,假设“分类”为字符串类型,长度最多为6个字符。如果商品表中没有用户指定的分类,那么用输出参数返回字符串“指定的分类不存在”;如果用户指定的分类存在,那么用输出参数返回字符串“修改已成功”。



     

A
答案


这里以Oracle的存储过程语法进行说明:

CREATE PROCEDURE PUPDATE(P_TYPE VARCHAR2(6), P_OUT VARCHAR2(10)) AS

  V_COUNT NUMBER;

BEGIN

  SELECT COUNT(1) INTO V_COUNT FROM 商品表 WHERE 分类 = P_TYPE;

  IF V_COUNT > 0 THEN

    IF P_TYPE = '电脑' THEN

      UPDATE 商品表 SET 单价 = 单价 * 0.9 WHERE 分类='电脑';

    END IF;

    IF P_TYPE = '电视' THEN

      UPDATE 商品表 SET 单价 = 单价 * 0.94 WHERE 分类='电视';

    END IF;

    IF P_TYPE = '冰箱' THEN

      UPDATE 商品表 SET 单价 = 单价 * 0.97 WHERE 分类='冰箱';

    END IF;

    P_OUT := '修改已成功';

  ELSE

    P_OUT := '指定的分类不存在';

  END IF;

END;


DB笔试面试历史连接

http://mp.weixin.qq.com/s/Vm5PqNcDcITkOr9cQg6T7w

About Me:小麦苗

 本文作者:小麦苗,只专注于数据库的技术,更注重技术的运用

● 作者博客地址:http://blog.itpub.net/26736162/abstract/1/

 本系列题目来源于作者的学习笔记,部分整理自网络,若有侵权或不当之处还请谅解

 版权所有,欢迎分享本文,转载请保留出处

 QQ:646634621  QQ群:618766405

● 题目解答若有不当之处,还望各位朋友批评指正,共同进步

长按下图识别二维码或微信扫描下图二维码来关注小麦苗的微信公众号:xiaomaimiaolhr,学习最实用的数据库技术。


文章转载自DB宝,如果涉嫌侵权,请发送邮件至:contact@modb.pro进行举报,并提供相关证据,一经查实,墨天轮将立刻删除相关内容。

评论