/*MSSQL存储过程DownClass*/ 
create Procedure [DownClass]
(
@YX_ID int
)
as
declare @F_ParentID varchar(100)/*父级分类*/
declare @F_Path varchar(100)/*父级分类路径*/
declare @F_Child int/*父级分类的Child*/
declare @F_PrevID int/*父级分类的同深度分类上个ID*/
declare @F_NextID int/*父级分类的同深度分类下个ID*/
declare @F_OrderID int /*父级分类的排序ID*/
declare @TempPath varchar(100) /*临时路径*/
declare @TempNum int /*临时int型*/
select  @F_ParentID=YX_ParentID,@F_Path=YX_ParentPath,@F_Child=YX_Child,@F_PrevID=YX_PrevID,@F_NextID=YX_NextID
,@F_OrderID=YX_OrderID from YX_productclass where YX_ID=@YX_ID

if @F_NextID>0
        begin
         exec UpClass @F_NextID
end
该存储过程若要转成Mysql的,请问
if @F_NextID>0
        begin
         exec UpClass @F_NextID
end      exec这部分在mysql中如何执行?

解决方案 »

  1.   

    if F_NextID>0 then
    call UpClass(F_NextID);
    end if;不妨自己参考一下手册中的例子。
    MySQL官方文档 http://dev.mysql.com/doc/refman/5.1/zh/index.html
      

  2.   

    create Procedure [DownClass]
    (
    YX_ID int
    )
      

  3.   

    [Quote=引用 1 楼 acmain_chm 的回复:]SQL code
    if F_NextID>0 then
        call UpClass(F_NextID);
    end if;
    /*MYSQL存储过程DownClass*/ 
    delimiter //
    create Procedure DownClass()
    begin
    declare YX_ID int;
    declare F_ParentID varchar(100);/*父级分类*/
    declare F_Path varchar(100);/*父级分类路径*/
    declare F_Child int;/*父级分类的Child*/
    declare F_PrevID int;/*父级分类的同深度分类上个ID*/
    declare F_NextID int;/*父级分类的同深度分类下个ID*/
    declare F_OrderID int; /*父级分类的排序ID*/
    declare TempPath varchar(100); /*临时路径*/
    declare TempNum int; /*临时int型*/
    select  F_ParentID=YX_ParentID,F_Path=YX_ParentPath,F_Child=YX_Child,F_PrevID=YX_PrevID,F_NextID=YX_NextID
    ,F_OrderID=YX_OrderID from YX_productclass where YX_ID=YX_ID;
    if F_NextID>0 then 
             exec UpClass F_NextID;
    end if;
    end;//
      请问这样写有什么问题吗?
      

  4.   


    贴出你的错误提示。如果MYSQL不报错就自然没有问题。
      

  5.   

    You have an error in you SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to user near 'UpClass F_NextID;
      end if;
    end' at line 15就这样
      

  6.   

    exec UpClass F_NextID;这里错了。
      

  7.   

    exec UpClass F_NextID; 楼主看回复的吗?或者手册也不愿意查一下?
    MySQL官方文档 http://dev.mysql.com/doc/refman/5.1/zh/index.html