ホームページ > バックエンド開発 > PHPチュートリアル > MsSQL Server 2012 ストアド プロシージャを呼び出して複数の結果セット (出力パラメータを含む) を取得する PHP の詳細説明_PHP チュートリアル

MsSQL Server 2012 ストアド プロシージャを呼び出して複数の結果セット (出力パラメータを含む) を取得する PHP の詳細説明_PHP チュートリアル

WBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWB
リリース: 2016-07-21 15:01:08
オリジナル
937 人が閲覧しました

【PHPソースコード】:

コードをコピー コードは次のとおりです:

$dbh = new PDO('sqlsrv:server=接続アドレス;Database=データベース名',ユーザー名,パスワード) ;
try {
$procName = "P_Test_GetMixData";
$stmt = $dbh->prepare("EXEC $procName ?, ?, ?");
$nReturnValue = 0;
$strReturnValue = "";
$ strSearchValue = "放棄";
$stmt->bindParam(1, $nReturnValue, PDO::PARAM_INT | PDO::PARAM_INPUT_OUTPUT, PDO::SQLSRV_PARAM_OUT_DEFAULT_SIZE);
$stmt->bindParam(2, $strReturnValue, PDO: :PARAM_STR | PDO::PARAM_INPUT_OUTPUT, 10);
$stmt->bindParam(3, $strSearchValue , PDO::PARAM_STR);
$stmt->execute();

//最初の結果セットを取得します。
$ rowset_1 = $stmt->fetch(PDO::FETCH_ASSOC);
print_r($rowset_1);
echo '

';

// 2 番目の結果セットを取得します。
$stmt - >nextRowset();
$rowset_2 = $stmt->fetch();
print_r($rowset_2);
echo '

';
$stmt->nextRowset();
// 2 つの出力タイプのパラメータを取得します
echo $nReturnValue.'

';
echo $strReturnValue;
} catch (Exception $e) {
echo $e->getMessage(); Q}


[SQL プロシージャ]:
コードをコピーします。 コードは次のとおりです:
/**
* 複合結果セットを取得するために MsSQLServer2012 ストアド プロシージャを呼び出す PDO をテストするために使用されました デモ
* コード CreateBy 放棄 2012.10.11
**/
Create Procedure [dbo] (
@message_1) tinyint 出力 ,
@Messgae_2 varchar(10) 出力,
@SearchValue varchar(50)
) As
set nocount on

set @Message_1 = 123
set @Messgae_2 = 'こんにちは、放棄です!'
select * from _T1 wherecol1 like '%'+@SearchValue+'%'
select * from _T2 wherecol1 like '%'+@SearchValue+'%'
set nocount off


[注意すべき問題]:bindParam が存在する場合出力タイプのパラメータが必要な場合は、長さ ($length) を含める必要があります。
【備考】:$length: $data_type で PDO::PARAM_INT または PDO::PARAM_BOOL を使用する場合、デフォルトのサイズを示すために PDO::SQLSRV_PARAM_OUT_DEFAULT_SIZE を指定できます。

http://www.bkjia.com/PHPjc/328018.html

tru​​ehttp://www.bkjia.com/PHPjc/328018.html技術記事 [PHP ソース コード]: 次のようにコードをコピーします: $dbh = new PDO('sqlsrv:server=接続アドレス;Database=データベース名', ユーザー名, パスワード); try { $procName = "P_Test_GetMixData"; .
ソース:php.cn
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
最新の問題
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート