create procedure myproc6()
begin
declare x1 char(5) default 'outer';
begin
declare x1 char(5) default 'inner';
select x1;
end;
select x1;
end;刚开始学mysql,照着书上敲的,请问这段代码有什么问题?
第一个outer报错,第二个declare报错,2个end报错.
开发环境:mysql 5.6.11 
开发工具:mysql workbenchmysqlprocedure

解决方案 »

  1.   

    DELIMITER $$
    create procedure myproc6()
    begin
    declare x1 char(5) default 'outer';
    begin
    declare x1 char(5) default 'inner';
    select x1;
    end;
    select x1;
    end$$
    DELIMITER ;
      

  2.   

    这种过程不加怎么能直接创建,是不是有begin/end的都要加?
      

  3.   

    DELIMITER $$
    create procedure myproc6()
    begin
    declare x1 char(5) default 'outer';
    begin
    declare x1 char(5) default 'inner';
    select x1;
    end;
    select x1;
    end$$
    DELIMITER ; 
      

  4.   

    DELIMITER $$
    create procedure myproc6()
    begin
    declare x1 char(5) default 'outer';
    declare x2 char(5) default 'inner';
    select x1;
    select x2;
    end;$$
    DELIMITER ;