以下的文章主要是向大家介紹的是PHP和MySQL存儲過程的實例演示,我前兩天在相關網站看見PHP和MySQL存儲過程的實例演示的資料,覺得挺好,就拿出來供大家分享。希望在大家今後的學習中會有所幫助。
PHP與MySQL存儲過程 實例一:無參的存儲過程
- $conn = MySQL_connect('localhost','root','root') or die ("數據連接錯誤!!!");
- MySQL_select_db('test',$conn);
- $sql = "
- create procedure myproce()
- begin
- INSERT INTO user (id, username, sex) VALUES (NULL, 's', '0');
- end;
- ";
- MySQL_query($sql);
創建一個myproce的存儲過程
- $sql = "call test.myproce();";
- MySQL_query($sql);
調用myproce的存儲過程,則數據庫中將增加一條新記錄。
PHP與MySQL存儲過程 實例二:傳入參數的存儲過程
- $sql = "
- create procedure myproce2(in score int)
- begin
- if score >= 60 then
- select 'pass';
- else
- select 'no';
- end if;
- end;
- ";
- MySQL_query($sql);
創建一個myproce2的存儲過程
- $sql = "call test.myproce2(70);";
- MySQL_query($sql);
調用myproce2的存儲過程,看不到效果,可以在cmd下看到結果。
PHP與MySQL存儲過程 實例三:傳出參數的存儲過程
- $sql = "
- create procedure myproce3(out score int)
- begin
- set score=100;
- end;
- ";
- MySQL_query($sql);
創建一個myproce3的存儲過程
- $sql = "call test.myproce3(@score);";
- MySQL_query($sql);
調用myproce3的存儲過程
- $result = MySQL_query('select @score;');
- $array = MySQL_fetch_array($result);
- echo '<pre>';print_r($array);
PHP與MySQL存儲過程 實例四:傳出參數的inout存儲過程
- $sql = "
- create procedure myproce4(inout sexflag int)
- begin
- SELECT * FROM user WHERE sex = sexflag;
- end;
- ";
- MySQL_query($sql);
創建一個myproce4的存儲過程
- $sql = "set @sexflag = 1";
- MySQL_query($sql);
設置性別參數為1
- $sql = "call test.myproce4(@sexflag);";
- MySQL_query($sql);
調用myproce4的存儲過程,在cmd下面看效果