存储过程练习

1,055 阅读1分钟

练习1:在网上书店数据库中创建存储过程

在网上书店数据库中创建一个名为proc_1的存储过程,实现查询所有会员信息的功能

CREATE PROCEDURE proc_1()

BEGIN

SELECT * from user;

END

练习2:在网上书店数据库创建带输入输出参数的存储过程

(1)在“网上书店”数据库中创建一个为名proc_2的存储过程,要求实现如下功能:根据会员的昵称查询该会员的积分情况。并调用存储过程,查询“平平人生”和“感动心灵”的积分。

CREATE PROCEDURE proc_2(in name VARCHAR(10))

BEGIN

SELECT score from user where uname=name;

END

call proc_2('平平人生');

call proc_2('感动心灵');

(2)在“网上书店”数据库中创建一个名为proc_3的存储过程,要求实现如下功能:根据会员的昵称查询该会员的订购信息,如果该会员没有订购任何图书,则输出“某某会员没有订购图书”的信息,否则输出订购图书的相关信息(包括:书名,作者,价格,出版社,折扣)。并调用存储过程,显示会员“四十不惑”订购图书的情况。

CREATE PROCEDURE proc_3(in name VARCHAR(10))

BEGIN

IF (SELECT uname from user where uname=name) is null

then SELECT '查无此人';

ELSE

select DISTINCT author 书名,price 作者,publisher 价格,discount 折扣

from user u join b_order bo on u.uid=bo.uid

join book b on bo.ordernum=b.bid

where u.uname=name;

end if;

END

call proc_3('四十不惑');