0

EVENT の作成に問題があります。

「アーティコリ」テーブルがあります。articoli.titolo フィールド varchar (255) があり、次のようなイベントを作成しようとすると:

CREATE EVENT inser_value
ON SCHEDULE every 1 day
DO INSERT INTO articoli (titolo) VALUES ('my_value');

これは mysqlerror の出力です

エラー 1064 (42000): SQL 構文にエラーがあります。使用する正しい構文については、MySQL サーバーのバージョンに対応するマニュアルを確認してください。near 'EVENT inser_value ON SCHEDULE every 1 day DO INSERT INTO articoli (titolo) VALUE' at line 1

4

1 に答える 1

5

このエラーは、MySQLバージョンがイベントモジュールをサポートしていない場合、または開始されていない場合に表示されます。

この2つを確認してください。

この記事では、 MySQLイベントスケジューラを構成する方法について説明します。

MySQLのイベントスケジューラの起動

MySQLイベントは、特別なイベントスケジューラスレッドによって実行されます。デフォルトでは無効になっているため、次のMySQLコマンドを使用して、実行されているかどうかを判断できます。

SHOW PROCESSLIST;  

スケジューラーが実行されている場合、少なくとも2つの行が表示され、1つはユーザーフィールドがに設定されevent_schedulerます。1行のみが返される場合、スケジューラーは無効になり、イベントは実行されません。

--event-scheduler=ONコマンドラインオプションを使用して、またはsetting event_scheduler=ONMySQL構成ファイル(Windowsの場合はmy.cnfまたはmy.ini)でMySQLを起動したときに、スケジューラが確実に起動するようにすることができます。

または、MySQLコマンドラインからスケジューラを起動することもできます。

SET GLOBAL event_scheduler = ON;  

于 2012-06-01T16:20:43.600 に答える