0

複数のテーブルを作成してデータを挿入するMySqlプロシージャを作成しました。データが最新でない場合は削除して、mysqlコマンドラインまたはSQLワークベンチにメッセージを表示します。このために変数を使用し、次のように表示しますmysqlで大丈夫です。

SET _output = 'Generating table one...'; 
select _output;

create table ec_ms_yy_qt
(select * from table1);
call checkdata();

SET _output = 'Generating table tow..'; 
select _output;

PHPから同じものを呼び出した場合、最初のステートメントの後に停止し、プロシージャを実行しません。「テーブル1を生成しています...」のみを返します。. selectステートメントが見つかった場合、実行を停止することを意味します

$rs = mysql_query( ‘CALL processdata()’ );
while($row = mysql_fetch_assoc($rs))
{
  print_r($row);
}

次に、正常に動作するストア プロシージャから select _output を削除しました。しかし、これは私が望む解決策ではありません。ユーザーは、エラーが発生したことや、エラーが発生した場所について通知を受けません。また、手順が完了するまでプログラムをハングさせ、ローカルホストを待っているステータスバーにブラウズショーを表示しました。

4

1 に答える 1