如何建立储存过程,如何PHP调用储存过程!!望解答!!

解决方案 »

  1.   

    如何建立应该看mysql手册
    CREATE
        [DEFINER = { user | CURRENT_USER }]
        PROCEDURE sp_name ([proc_parameter[,...]])
        [characteristic ...] routine_body调用就像执行sql语句差不多
    CALL sp_name(args)
      

  2.   


    delimiter //
    drop procedure if exists test;
    create procedure test(in user varchar(50),in pwd varchar(50))
    beginset @sql = concat('select * from user where username=',user,' and password=',pwd);
    prepare stmt from @sql;
    execute stmt;
    deallocate prepare stmt;
    end;
    //mysql_query(call test('root','root'));
      

  3.   

    按楼上写的程序怎么SQL老是不执行呀?$sql1="delimiter //
    drop procedure if exists test;
    create procedure test(in user varchar(50),in pwd varchar(50))
    beginset @sql = concat('select * from user where username=',user,' and password=',pwd);
    prepare stmt from @sql;
    execute stmt;
    deallocate prepare stmt;
    end;
    //
    "; 
    $ree1=mysql_query($sq1);
    var_dump($ree1);
      

  4.   

    不能在PHP上执行吗?那还有什么用吗?
      

  5.   

    就算把drop procedure if exists test这句删了,还行不执行呢?老是失败,估计SQL错误?
      

  6.   

    现在在MYSQL可以执行,就是$sql="sql语句",mysql_query($sql);还是不执行,
      

  7.   

    mysql_query只能执行一条语句,你在数据库建好存储过程直接调用就行了
      

  8.   

    没有好的办法了mysql_query一下都把命令执行了?