The world's most popular open source database
The EVENTS table provides information
about scheduled events, which are discussed in
Section 18.4, “Using the Event Scheduler”.
INFORMATION_SCHEMA
Name |
SHOW Name |
Remarks |
EVENT_CATALOG |
NULL, MySQL extension |
|
EVENT_SCHEMA |
Db |
MySQL extension |
EVENT_NAME |
Name |
MySQL extension |
DEFINER |
Definer |
MySQL extension |
TIME_ZONE |
Time zone |
MySQL extension |
EVENT_BODY |
MySQL extension | |
EVENT_DEFINITION |
MySQL extension | |
EVENT_TYPE |
Type |
MySQL extension |
EXECUTE_AT |
Execute at |
MySQL extension |
INTERVAL_VALUE |
Interval value |
MySQL extension |
INTERVAL_FIELD |
Interval field |
MySQL extension |
SQL_MODE |
MySQL extension | |
STARTS |
Starts |
MySQL extension |
ENDS |
Ends |
MySQL extension |
STATUS |
Status |
MySQL extension |
ON_COMPLETION |
MySQL extension | |
CREATED |
MySQL extension | |
LAST_ALTERED |
MySQL extension | |
LAST_EXECUTED |
MySQL extension | |
EVENT_COMMENT |
MySQL extension | |
ORIGINATOR |
Originator | MySQL extension |
CHARACTER_SET_CLIENT |
MySQL extension | |
COLLATION_CONNECTION |
MySQL extension | |
DATABASE_COLLATION |
MySQL extension |
Notes:
The EVENTS table is a
non-standard table.
EVENT_CATALOG: The value of this column is
always NULL.
EVENT_SCHEMA: The name of the schema
(database) to which this event belongs.
EVENT_NAME: The name of the event.
DEFINER: The user who created the event.
Always displayed in
'
format.
user_name'@'host_name'
TIME_ZONE: The time zone in effect when
schedule for the event was last modified. If the event's
schedule has not been modified since the event was created,
then this is the time zone that was in effect at the event's
creation. The default value is SYSTEM.
EVENT_BODY: The language used for the
statements in the event's DO
clause; in MySQL 6.0, this is always
SQL.
This column is not to be confused with the column of the same
name (now named EVENT_DEFINITION) that
existed in earlier MySQL versions.
EVENT_DEFINITION: The text of the SQL
statement making up the event's
DO clause; in other words, the
statement executed by this event.
EVENT_TYPE: One of the two values
ONE TIME or RECURRING.
EXECUTE_AT: For a one-time event, this is
the DATETIME value specified in
the AT clause of the
CREATE EVENT statement used to
create the event, or of the last ALTER
EVENT statement that modified the event. The value
shown in this column reflects the addition or subtraction of
any INTERVAL value included in the event's
AT clause. For example, if an event is
created using ON SCHEDULE AT CURRENT_TIMESTAMP +
'1:6' DAY_HOUR, and the event was created at
2006-02-09 14:05:30, the value shown in this column would be
'2006-02-10 20:05:30'.
If the event's timing is determined by an
EVERY clause instead of an
AT clause (that is, if the event is
recurring), the value of this column is
NULL.
INTERVAL_VALUE: For recurring events, this
column contains the numeric portion of the event's
EVERY clause.
For a one-time event (that is, an event whose timing is
determined by an AT clause), this column's
value is NULL.
INTERVAL_FIELD: For recurring events, this
column contains the units portion of the
EVERY clause governing the timing of the
event. Thus, this column contains a value such as
'YEAR',
'QUARTER', 'DAY', and so
on.
For a one-time event (that is, an event whose timing is
determined by an AT clause), this column's
value is NULL.
SQL_MODE: The SQL mode in effect at the
time the event was created or altered.
STARTS: For a recurring event whose
definition includes a STARTS clause, this
column contains the corresponding
DATETIME value. As with the
EXECUTE_AT column, this value resolves any
expressions used.
If there is no STARTS clause affecting the
timing of the event, this column is empty.
ENDS: For a recurring event whose
definition includes a ENDS clause, this
column contains the corresponding
DATETIME value. As with the
EXECUTE_AT column (see previous example),
this value resolves any expressions used.
If there is no ENDS clause affecting the
timing of the event, this column contains
NULL.
STATUS: One of the three values
ENABLED, DISABLED, or
SLAVESIDE_DISABLED.
SLAVESIDE_DISABLED indicates that the
creation of the event occurred on another MySQL server acting
as a replication master and was replicated to the current
MySQL server which is acting as a slave, but the event is not
presently being executed on the slave. See
Section 16.3.1.6, “Replication of Invoked Features”, for more
information.
ON_COMPLETION: One of the two values
PRESERVE or NOT
PRESERVE.
CREATED: The date and time when the event
was created. This is a DATETIME
value.
LAST_ALTERED: The date and time when the
event was last modified. This is a
DATETIME value. If the event
has not been modified since its creation, this column holds
the same value as the CREATED column.
LAST_EXECUTED: The date and time when the
event last executed. A DATETIME
value. If the event has never executed, this column's value is
NULL.
Before MySQL 6.0.5, LAST_EXECUTED indicates
when event finished executing. As of 6.0.5,
LAST_EXECUTED instead indicates when the
event started. As a result, the ENDS column
is never less than LAST_EXECUTED.
EVENT_COMMENT: The text of a comment, if
the event has one. If there is no comment, the value of this
column is an empty string.
ORIGINATOR: The server ID of the MySQL
server on which the event was created; used in replication.
The default value is 0.
CHARACTER_SET_CLIENT is the session value
of the character_set_client
system variable when the event was created.
COLLATION_CONNECTION is the session value
of the collation_connection
system variable when the event was created.
DATABASE_COLLATION is the collation of the
database with which the event is associated.
Example: Suppose the user
jon@ghidora creates an event named
e_daily, and then modifies it a few minutes
later using an ALTER EVENT
statement, as shown here:
DELIMITER |
CREATE EVENT e_daily
ON SCHEDULE
EVERY 1 DAY
COMMENT 'Saves total number of sessions then clears the table each day'
DO
BEGIN
INSERT INTO site_activity.totals (time, total)
SELECT CURRENT_TIMESTAMP, COUNT(*)
FROM site_activity.sessions;
DELETE FROM site_activity.sessions;
END |
DELIMITER ;
ALTER EVENT e_daily
ENABLED;
(Note that comments can span multiple lines.)
This user can then run the following
SELECT statement, and obtain the
output shown:
mysql>SELECT * FROM INFORMATION_SCHEMA.EVENTS>WHERE EVENT_NAME = 'e_daily'>AND EVENT_SCHEMA = 'myschema'\G*************************** 1. row *************************** EVENT_CATALOG: NULL EVENT_SCHEMA: test EVENT_NAME: e_daily DEFINER: paul@localhost TIME_ZONE: SYSTEM EVENT_BODY: SQL EVENT_DEFINITION: BEGIN INSERT INTO site_activity.totals (time, total) SELECT CURRENT_TIMESTAMP, COUNT(*) FROM site_activity.sessions; DELETE FROM site_activity.sessions; END EVENT_TYPE: RECURRING EXECUTE_AT: NULL INTERVAL_VALUE: 1 INTERVAL_FIELD: DAY SQL_MODE: STARTS: 2008-09-03 12:13:39 ENDS: NULL STATUS: ENABLED ON_COMPLETION: NOT PRESERVE CREATED: 2008-09-03 12:13:39 LAST_ALTERED: 2008-09-03 12:13:39 LAST_EXECUTED: NULL EVENT_COMMENT: Saves total number of sessions then clears the table each day ORIGINATOR: 1 CHARACTER_SET_CLIENT: latin1 COLLATION_CONNECTION: latin1_swedish_ci DATABASE_COLLATION: latin1_swedish_ci
These times are all given in terms of local time as determined by
the MySQL server's time_zone
setting. (The same is true of the starts,
ends, and last_executed
columns of the mysql.event table as well as the
Starts and Ends columns in
the output of SHOW [FULL] EVENTS.)
The CREATED and LAST_ALTERED
columns use the server time zone (as do the
created and last_altered
columns of the mysql.event table).
See also Section 12.5.6.19, “SHOW EVENTS Syntax”.


User Comments
Add your own comment.