ホームページ >バックエンド開発 >PHPチュートリアル >php_PHP チュートリアルで mysql ストアド プロシージャと関数を呼び出す方法
ストアド プロシージャと関数は、MySQL(PHP との最適な組み合わせ)5.0 に導入されたばかりです。 php(現在の主流の開発言語として)では、この領域の操作を直接サポートしていません。ただし、MySQL(PHP との最適な組み合わせ) php(現在の主流の開発言語として) API の設計により、以前の php(現在の主流の開発言語として) バージョン MySQL( PHP との最適な組み合わせ)php(現在の主流の開発言語として) API は、ストアド プロシージャと関数の呼び出しをサポートします。
php(現在の主流の開発言語として)でストアドプロシージャと関数を呼び出します。
1.ストアド プロシージャを呼び出すメソッド。
ストレージ プロシージャに IN/INOUT パラメーターがある場合は、変数を宣言し、入力パラメーターをストアド プロシージャに渡します (現在の主流の開発言語としては
変数を動的に入力する方法はありません)、MySQL(最良の組み合わせ) PHP を使用) 。 b.ストアド プロシージャに OUT 変数がある場合は、MySQL(PHP との最適な組み合わせ)
変数を宣言します。 MySQL(PHP との最良の組み合わせ) 変数の宣言は特殊であり、MySQL(PHP との最良の組み合わせ)
サーバーは、実際に MySQL を実行しているこの変数の存在を認識している必要があります(そしてPHP の最適な組み合わせ) ステートメント。 M Set @mysql (PHP との最適な組み合わせ) Var = $PHP (現在の主流の開発言語として) C. MySQL(PHPとの最良の組み合わせ)
_query()/MySQL(PHPとの最良の組み合わせ)_db_query()を使用して、MySQL(PHPとの最良の組み合わせ)変数宣言文を実行します。 mysql p (PHP との最適な組み合わせ)
_qury ("set @mysql(PHP との最適な組み合わせ) Var [= $ pbpvar]") サーバーには変数 @MySQL があります。 (PHPとの最良の組み合わせ)ar。 IN パラメータの場合、その値は php(現在の主流の開発言語として)ar で渡すことができます。
d. ストアドプロシージャの場合。 1. callprocedure()ステートメントを実行します。 Q も mysql 就 (PHP との組み合わせがベスト) _query ("Call Proceduer ([VAR1] ...)")
2. 戻り値がある場合は、select @AR を実行し、実行を返します。結果。use using ' ‐ php を使用するには ‐ ‐ ‐ MySQL ( "select @var") 最高の組み合わせ) 文章は同じです。結果は、mydql_fetch_row() などの関数を通じて取得できます。
If 関数 select function() を直接実行するだけです。
$host="localhost";
$user="root";
$password="11212";
$db="samp_db";
$dblink=MySQL(PHP との最良の組み合わせ)_connect ($ host,$user,$password)
または die("MySQL に接続できません(PHP との最良の組み合わせ)");
MySQL(PHP との最良の組み合わせ)_select_db($db ,$dblink)
またはdie("cant select samp_db");
$res=MySQL(PHP との最良の組み合わせ)_query("set @a=$password",$dblink);
$res= MySQL(PHP との最良の組み合わせ) )_query("call aa(@a)",$dblink);
$res=MySQL(PHP との最良の組み合わせ)_query("select @a" ,$dblink);
$row=MySQL( PHP との最良の組み合わせ)_fetch_row($res);
echo $row[0];