ホームページ  >  記事  >  php教程  >  mysqlはストアドプロシージャを作成し、phpでそれを呼び出します

mysqlはストアドプロシージャを作成し、phpでそれを呼び出します

WBOY
WBOYオリジナル
2016-06-21 08:49:101596ブラウズ

今日、Web開発で、phpを使用してmysqlのストアドプロシージャを呼び出す必要がある人に遭遇しました。長い間研究した後、最終的にmysqlを使用してストアドプロシージャを作成する方法の記録です。手順と、php を使用して mysql のストアド プロシージャを呼び出す方法について説明します。

1. PHPmyadmin で test1 ストアド プロシージャを作成します。

create procedure test1(in a int) //create创建;procedure存储过程;test1是存储过程名还管有没有参数都得加上()
begin //开始
select * from test where id=a;//这里是存储过程的语句
end;//结束
//注:用mysql创建必须把Delimiter改为//

2. PHP でこの test1 ストアド プロシージャを呼び出します

<?php
define('CLIENT_MULTI_RESULTS',131072);//直接取数据取出不来,浪费了一个多小时终于找到这个办法,(通知服务器客户端可以处理由多语句或者存储过程执行生成的多结果集。当打开CLIENT_MULTI_STATEMENTS时,这个标志自动的被打开。可以在本表后查看更多关于该标志位的信息。) 
$link=mysql_connect("localhost", "root", "",1,CLIENT_MULTI_RESULTS) or die("Could not connect: ".mysql_error());
mysql_select_db("yii"); mysql_query("set names utf8");
$resule=mysql_query("call test2(5)");
while($rows=mysql_fetch_array($resule)){
	echo $rows['title']."<br>";
}
記事著者: Imagination QQ: 576272452



声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。