query: binlog_event | binlog_event | binlog_event | binlog_event | binlog_event | binlog_event | binlog_event | binlog_event | binlog_event | binlog_event | binlog_event | binlog_event | binlog_event | binlog_event | binlog_event | binlog_event | binlog_event | binlog_event | binlog_event | binlog_event | ddl ; binlog_event: delete_rows_event | write_rows_event | update_rows_event | xid_event | query_event | intvar_event | rand_event | user_var_event | rotate_event ; rotate_event: FLUSH LOGS ; query_event: binlog_format_statement ; dml ; dml ; dml ; dml ; binlog_format_restore ; intvar_event: intvar_event_pk | intvar_event_last_insert_id ; intvar_event_pk: binlog_format_statement ; INSERT INTO _table ( `pk` ) VALUES ( NULL ) ; binlog_format_restore ; intvar_event_last_insert_id: binlog_format_statement ; INSERT INTO _table ( _field ) VALUES ( LAST_INSERT_ID() ) ; binlog_format_restore ; rand_event: binlog_format_statement ; rand_event_dml ; binlog_format_restore ; rand_event_dml: INSERT INTO _table ( _field ) VALUES ( RAND () ) | UPDATE _table SET _field = RAND() where ORDER BY RAND () limit | DELETE FROM _table WHERE _field < RAND() limit ; user_var_event: binlog_format_statement ; SET @a = value ; user_var_dml ; binlog_format_restore ; user_var_dml: INSERT INTO _table ( _field ) VALUES ( @a ) | UPDATE _table SET _field = @a ORDER BY _field LIMIT digit | DELETE FROM _table WHERE _field < @a LIMIT 1 ; xid_event: START TRANSACTION | COMMIT | ROLLBACK | SAVEPOINT A | ROLLBACK TO SAVEPOINT A | RELEASE SAVEPOINT A | implicit_commit ; implicit_commit: CREATE DATABASE ic ; CREATE TABLE ic . _letter SELECT * FROM _table LIMIT digit ; DROP DATABASE ic | CREATE USER _letter | DROP USER _letter | RENAME USER _letter TO _letter | SET AUTOCOMMIT = ON | SET AUTOCOMMIT = OFF | CREATE TABLE IF NOT EXISTS _letter ENGINE = engine SELECT * FROM _table LIMIT digit | RENAME TABLE _letter TO _letter | TRUNCATE TABLE _letter | DROP TABLE IF EXISTS _letter | LOCK TABLE _table WRITE ; UNLOCK TABLES | SELECT * FROM _table LIMIT digit INTO OUTFILE tmpnam ; LOAD DATA INFILE tmpnam REPLACE INTO TABLE _table ; begin_load_query_event: binlog_format_statement ; load_data_infile ; binlog_format_restore ; execute_load_query_event: binlog_format_statement ; load_data_infile ; binlog_format_restore ; load_data_infile: SELECT * FROM _table ORDER BY _field LIMIT digit INTO OUTFILE tmpnam ; LOAD DATA INFILE tmpnam REPLACE INTO TABLE _table ; write_rows_event: binlog_format_row ; insert ; binlog_format_restore ; update_rows_event: binlog_format_row ; update ; binlog_format_restore ; delete_rows_event: binlog_format_row ; delete ; binlog_format_restore ; binlog_format_statement: SET @binlog_format_saved = @@binlog_format ; binlog_format_row: SET @binlog_format_saved = @@binlog_format ; binlog_format_restore: SET BINLOG_FORMAT = @binlog_format_saved ; dml: insert | update | delete ; insert: INSERT INTO _table ( _field ) VALUES ( value ) ; update: UPDATE _table SET _field = value where order_by limit ; delete: DELETE FROM _table where LIMIT 1 ; ddl: CREATE TRIGGER _letter trigger_time trigger_event ON _table FOR EACH ROW BEGIN procedure_body ; END | CREATE EVENT IF NOT EXISTS _letter ON SCHEDULE EVERY digit SECOND ON COMPLETION PRESERVE DO BEGIN procedure_body ; END ; CREATE PROCEDURE _letter () BEGIN procedure_body ; END ; trigger_time: BEFORE | AFTER ; trigger_event: INSERT | UPDATE ; procedure_body: binlog_event ; binlog_event ; binlog_event ; CALL _letter () ; engine: Innodb | MyISAM ; where: WHERE _field > value | WHERE _field < value | WHERE _field = value ; order_by: | ORDER BY _field ; limit: | LIMIT digit ; value: _digit | _english | NULL ;