问题
在数据库中创建一个名为proc_3的存储过程,要求实现如下功能,根据会员昵称查询会员的订购信息,如果该会员没有订购任何图书,则输出“某某会员没有订购图书”的信息,否则输出订购图书的相关信息,调用存储过程显示会员“四十不惑”订购图书的情况。
这是所用数据表
这是我建立的存储数据的表
```sql
mysql> create table u_b_o
-> (uid int,
-> uname varchar(5),
-> email varchar(20),
-> tnum varchar(20),
-> score int,
-> bid int,
-> uid_ int,
-> ordernum int,
-> orderdate datetime,
-> deliverydate datetime);
Query OK, 0 rows affected (0.03 sec)
mysql> insert into u_b_o
-> select * from user as u left join b_order as b1 on u.uid=b1.uid;
Query OK, 9 rows affected (0.00 sec)
Records: 9 Duplicates: 0 Warnings:
```0
这是我的建立存储过程的代码
mysql> delimiter //
mysql> create procedure proc_3(in name varchar(5))
-> begin
-> select b_order.bid,b_order.uid,ordernum,orderdate,deliverydate from book as b2 left join u_b_o as u2 on b2.bid=u2.bid where uname=name;
-> if ordernum is null then select '该会员没有订购该图书';
-> else select * from book;
-> end if;
-> end;//
Query OK, 0 rows affected (0.01 sec)
调用后产生的错误
mysql> call proc_3('四十不惑');//
ERROR 1054 (42S22): Unknown column 'b_order.bid' in 'field list'
希望能够解决我的问题,谢谢!