3

mysql ターミナルで一連の sql ステートメントを使用してイベントを作成しましたが、正常に動作しています。しかし、私はこのイベントをphpスクリプトから作成したいと考えています。私の質問は以下です。

DELIMITER |

CREATE EVENT e_cart

ON SCHEDULE AT CURRENT_TIMESTAMP + INTERVAL 3 MINUTE

DO

BEGIN

SET @var_orderid = '';

SET @var_orderid = (SELECT orderid FROM order WHERE id=308);

IF @var_orderid = NULL THEN

UPDATE order SET status=1 WHERE id=308;

END IF;
END |

DELIMITER ;

これにより:-

エラー : SQL 構文にエラーがあります。使用する MySQL サーバーのバージョンに対応するマニュアルで、「DELIMITER | CREATE EVENT e_cart ON SCHEDULE AT CUR' 行 1

このイベントをphpスクリプトから実行するにはどうすればよいですか?

4

1 に答える 1

7

DELIMITER は MySQL サーバー コマンドではなく、MySQL CLI/Query Browser/Workbench などです。MySQL サーバーにコマンドを送信するタイミングを示すだけです。

DELIMITER を省略し、CREATE EVENT ステートメント全体を 1 つのコマンドとして送信すると、機能するはずです。

于 2012-08-11T09:30:35.363 に答える