PHP ODBC ライブラリを使用して MSSQL 2008 サーバー ( http://php.net/manual/en/ref.uodbc.php ) に接続しています。
私のストアド プロシージャの中には、レコード セットを返さないものがあります (たとえば、単に挿入または更新を行うだけです)。このような状況では、出力を適切に処理できるようにしたいと考えています。データベース呼び出しが行われた後、出力は配列に挿入され、処理のためにアプリケーションに返されます。コードの主要部分は次のとおりです (エラー処理などを除く)。
$sql_result = odbc_exec($connection, $sql);
while ($row = odbc_fetch_array($sql_result)) {
$resultArray[$i] = $row;
$i++;
}
が正常$sql_result
に実行されたが、レコード セットが含まれていない場合 (挿入または更新に続く場合)、次のodbc_fetch_array
警告がトリガーされます。
警告: odbc_fetch_row(): この結果インデックスで使用できるタプルはありません
理想的には、空のレコード セットが含まれているかどうかを最初にテストしたいと思い$sql_result
ますが、私が試した明らかな試みはすべて、常に同じ警告メッセージにつながります。
$sql_result
が空かどうかを確認するきちんとした方法を知っている人はいますか?