ホームページ  >  記事  >  php教程  >  PHPでmysqlストアドプロシージャと関数を呼び出す方法

PHPでmysqlストアドプロシージャと関数を呼び出す方法

高洛峰
高洛峰オリジナル
2016-12-02 10:50:111836ブラウズ

ストアド プロシージャと関数は MySql5.0 で導入されたばかりです。 PHP ではこの操作を直接サポートしていません。ただし、Mysql PHP API の設計により、以前の PHP バージョンの mysql php API のストアド プロシージャと関数の呼び出しをサポートできます。

phpでストアドプロシージャと関数を呼び出します。

1.ストアド プロシージャを呼び出すメソッド。

ストレージ プロシージャに IN/INOUT パラメーターがあり、変数を宣言し、入力パラメーターがストアド プロシージャに与えられる場合、変数はペアであり、

PHP 変数 (そうでない場合もありますが、PHP 変数はありません。動的入力を実行する方法)、mysql

変数。

b.ストアド プロシージャに OUT 変数がある場合は、Mysql 変数を宣言します。

mysql 変数の宣言は特別であり、mysql サーバーはこの変数の存在を認識している必要があります。これは、mysql ステートメントを実行することを意味します。

set @mysqlvar=$phpvar と入力します。 mysql_query()/mysql_db_query() を使用して、mysql 変数宣言ステートメントを実行します。

. "); IN パラメータの場合、その値は phpar から渡すことができます。

d. ストアドプロシージャの場合。

1. callprocedure()ステートメントを実行します。 Q q is mysql_query("Call Proceduer ([VAR1] ...)");

2. 戻り値がある場合は、select @AR を実行し、実行結果を返します。 Q mysql_query ("Select @var)"

次の操作は、PHP の一般的な MySQL ステートメントと同じです。結果は、mydql_fetch_row() などの関数を通じて取得できます。

If 関数 select function() を直接実行するだけです。

$host="localhost";

$user="root";

$password="11212";

$db="samp_db";

$dblink=mysql_connect($host,$user,$password)

または die("mysql に接続できません");

mysql_select_db($db,$dblink)

または die("samp_db を選択できません");
$res=mysql_query("set @a=$password", $dblink);
$res=mysql_query("call aa(@a)",$dblink);
$res=mysql_query("select @a",$dblink);
$row=mysql_fetch_row($res);
エコー $row[0];



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