> 数据库 > MySQL >

PHP和MySQL存储过程的实例演示

PHP与MySQL存储过程

实例一:无参的存储过程

 
  1. $conn = MySQL_connect('localhost','root','root') or die ("数据连接错误!!!");    
  2. MySQL_select_db('test',$conn);    
  3. $sql = "  create procedure myproce()  begin   
  4.  INSERT INTO user (id, username, sex)   
  5. VALUES (NULL, 's', '0');  end;   ";    
  6. MySQL_query($sql);   

创建一个myproce的存储过程

 
  1. $sql = "call test.myproce();";  
  2. MySQL_query($sql);  


调用myproce的存储过程,则数据库中将增加一条新记录。


实例二:传入参数的存储过程

 
  1. $sql = "  create procedure myproce2(in score int)    
  2. begin  if score >= 60 then    
  3. select 'pass';  else  select 'no';    
  4. end if;  end;   ";    
  5. MySQL_query($sql);   

创建一个myproce2的存储过程

 
  1. $sql = "call test.myproce2(70);";   
  2. MySQL_query($sql);  

 
调用myproce2的存储过程,看不到效果,可以在cmd下看到结果。

实例三:传出参数的存储过程

 
  1. $sql = "  create procedure myproce3(out score int)    
  2. begin  set score=100;  end;   ";   
  3.  MySQL_query($sql);   

创建一个myproce3的存储过程

 
  1. $sql = "call test.myproce3(@score);"; MySQL_query($sql);  

调用myproce3的存储过程

 
  1. $result = MySQL_query('select @score;');    
  2. array = MySQL_fetch_array($result);   
  3. echo '<pre>';print_r($array);   


(责任编辑:IT)