我创建了一个程序,但是当我试图执行它给出一个没有选择数据库的错误时。这是我的程序。
DELIMITER $$
create procedure myproced
as
declare arpt varchar(10);
declare num int;
BEGIN
use lookup;
create temporary table lookup.airportname as (select distinct name from lookup.airpot);
select count(*) into num from (select * from airportname);
END;
$$
我也看到了一些关于同一问题的堆栈溢出的帖子。如果你正在使用mysql workbench,我提到从下拉列表中选择数据库。我正在使用mysql查询浏览器。甚至我提到过使用database.But仍然是提示错误。
答案 0 :(得分:1)
尝试将此行添加到您的过程声明中:
create procedure `lookup`.myproced
这可能会解决您的问题,我在自己的程序中使用这种声明,从来没有遇到过这样的问题。
答案 1 :(得分:0)
在程序之外使用USE
语句。内部不需要。
DELIMITER $$
USE [DAtabase Name]$$
DELIMITER $$
create procedure myproced
as
declare arpt varchar(10);
declare num int;
BEGIN
create temporary table lookup.airportname as (select distinct name from lookup.airpot);
select count(*) into num from (select * from airportname);
END;
$$