mirror of
https://github.com/MariaDB/server.git
synced 2025-01-30 18:41:56 +01:00
148 lines
6.1 KiB
Text
148 lines
6.1 KiB
Text
SHOW TABLES FROM information_schema LIKE 'EVENTS';
|
|
Tables_in_information_schema (EVENTS)
|
|
EVENTS
|
|
#######################################################################
|
|
# Testcase 3.2.1.1: INFORMATION_SCHEMA tables can be queried via SELECT
|
|
#######################################################################
|
|
DROP VIEW IF EXISTS test.v1;
|
|
DROP PROCEDURE IF EXISTS test.p1;
|
|
DROP FUNCTION IF EXISTS test.f1;
|
|
CREATE VIEW test.v1 AS SELECT * FROM information_schema.EVENTS;
|
|
CREATE PROCEDURE test.p1() SELECT * FROM information_schema.EVENTS;
|
|
CREATE FUNCTION test.f1() returns BIGINT
|
|
BEGIN
|
|
DECLARE counter BIGINT DEFAULT NULL;
|
|
SELECT COUNT(*) INTO counter FROM information_schema.EVENTS;
|
|
RETURN counter;
|
|
END//
|
|
# Attention: The printing of the next result sets is disabled.
|
|
SELECT * FROM information_schema.EVENTS;
|
|
SELECT * FROM test.v1;
|
|
CALL test.p1;
|
|
SELECT test.f1();
|
|
DROP VIEW test.v1;
|
|
DROP PROCEDURE test.p1;
|
|
DROP FUNCTION test.f1;
|
|
#########################################################################
|
|
# Testcase 3.2.12.1: INFORMATION_SCHEMA.EVENTS layout
|
|
#########################################################################
|
|
DESCRIBE information_schema.EVENTS;
|
|
Field Type Null Key Default Extra
|
|
EVENT_CATALOG varchar(64) NO NULL
|
|
EVENT_SCHEMA varchar(64) NO NULL
|
|
EVENT_NAME varchar(64) NO NULL
|
|
DEFINER varchar(384) NO NULL
|
|
TIME_ZONE varchar(64) NO NULL
|
|
EVENT_BODY varchar(8) NO NULL
|
|
EVENT_DEFINITION longtext NO NULL
|
|
EVENT_TYPE varchar(9) NO NULL
|
|
EXECUTE_AT datetime YES NULL
|
|
INTERVAL_VALUE varchar(256) YES NULL
|
|
INTERVAL_FIELD varchar(18) YES NULL
|
|
SQL_MODE varchar(8192) NO NULL
|
|
STARTS datetime YES NULL
|
|
ENDS datetime YES NULL
|
|
STATUS varchar(18) NO NULL
|
|
ON_COMPLETION varchar(12) NO NULL
|
|
CREATED datetime NO NULL
|
|
LAST_ALTERED datetime NO NULL
|
|
LAST_EXECUTED datetime YES NULL
|
|
EVENT_COMMENT varchar(64) NO NULL
|
|
ORIGINATOR bigint(10) NO NULL
|
|
CHARACTER_SET_CLIENT varchar(32) NO NULL
|
|
COLLATION_CONNECTION varchar(64) NO NULL
|
|
DATABASE_COLLATION varchar(64) NO NULL
|
|
SHOW CREATE TABLE information_schema.EVENTS;
|
|
Table Create Table
|
|
EVENTS CREATE TEMPORARY TABLE `EVENTS` (
|
|
`EVENT_CATALOG` varchar(64) NOT NULL,
|
|
`EVENT_SCHEMA` varchar(64) NOT NULL,
|
|
`EVENT_NAME` varchar(64) NOT NULL,
|
|
`DEFINER` varchar(384) NOT NULL,
|
|
`TIME_ZONE` varchar(64) NOT NULL,
|
|
`EVENT_BODY` varchar(8) NOT NULL,
|
|
`EVENT_DEFINITION` longtext NOT NULL,
|
|
`EVENT_TYPE` varchar(9) NOT NULL,
|
|
`EXECUTE_AT` datetime,
|
|
`INTERVAL_VALUE` varchar(256),
|
|
`INTERVAL_FIELD` varchar(18),
|
|
`SQL_MODE` varchar(8192) NOT NULL,
|
|
`STARTS` datetime,
|
|
`ENDS` datetime,
|
|
`STATUS` varchar(18) NOT NULL,
|
|
`ON_COMPLETION` varchar(12) NOT NULL,
|
|
`CREATED` datetime NOT NULL,
|
|
`LAST_ALTERED` datetime NOT NULL,
|
|
`LAST_EXECUTED` datetime,
|
|
`EVENT_COMMENT` varchar(64) NOT NULL,
|
|
`ORIGINATOR` bigint(10) NOT NULL,
|
|
`CHARACTER_SET_CLIENT` varchar(32) NOT NULL,
|
|
`COLLATION_CONNECTION` varchar(64) NOT NULL,
|
|
`DATABASE_COLLATION` varchar(64) NOT NULL
|
|
) DEFAULT CHARSET=utf8mb3 COLLATE=utf8mb3_general_ci
|
|
SHOW COLUMNS FROM information_schema.EVENTS;
|
|
Field Type Null Key Default Extra
|
|
EVENT_CATALOG varchar(64) NO NULL
|
|
EVENT_SCHEMA varchar(64) NO NULL
|
|
EVENT_NAME varchar(64) NO NULL
|
|
DEFINER varchar(384) NO NULL
|
|
TIME_ZONE varchar(64) NO NULL
|
|
EVENT_BODY varchar(8) NO NULL
|
|
EVENT_DEFINITION longtext NO NULL
|
|
EVENT_TYPE varchar(9) NO NULL
|
|
EXECUTE_AT datetime YES NULL
|
|
INTERVAL_VALUE varchar(256) YES NULL
|
|
INTERVAL_FIELD varchar(18) YES NULL
|
|
SQL_MODE varchar(8192) NO NULL
|
|
STARTS datetime YES NULL
|
|
ENDS datetime YES NULL
|
|
STATUS varchar(18) NO NULL
|
|
ON_COMPLETION varchar(12) NO NULL
|
|
CREATED datetime NO NULL
|
|
LAST_ALTERED datetime NO NULL
|
|
LAST_EXECUTED datetime YES NULL
|
|
EVENT_COMMENT varchar(64) NO NULL
|
|
ORIGINATOR bigint(10) NO NULL
|
|
CHARACTER_SET_CLIENT varchar(32) NO NULL
|
|
COLLATION_CONNECTION varchar(64) NO NULL
|
|
DATABASE_COLLATION varchar(64) NO NULL
|
|
SELECT event_catalog, event_name, event_body, event_type, event_type,
|
|
status, on_completion
|
|
FROM information_schema.events
|
|
WHERE event_catalog IS NOT NULL or
|
|
event_body NOT IN ('SQL') or
|
|
event_type NOT IN ('ONE TIME','RECURRING') or
|
|
status NOT IN ('ENABLED','DISABLED','SLAVESIDE_DISABLED') or
|
|
on_completion NOT IN ('PRESERVE','NOT PRESERVE');
|
|
event_catalog event_name event_body event_type event_type status on_completion
|
|
########################################################################
|
|
# Testcases 3.2.1.3-3.2.1.5 + 3.2.1.8-3.2.1.12: INSERT/UPDATE/DELETE and
|
|
# DDL on INFORMATION_SCHEMA tables are not supported
|
|
########################################################################
|
|
DROP DATABASE IF EXISTS db_datadict;
|
|
CREATE DATABASE db_datadict;
|
|
CREATE TABLE db_datadict.t1 (f1 BIGINT)
|
|
ENGINE = <engine_type>;
|
|
INSERT INTO information_schema.events
|
|
SELECT * FROM information_schema.events;
|
|
ERROR 42000: Access denied for user 'root'@'localhost' to database 'information_schema'
|
|
UPDATE information_schema.events SET event_name = '1234567'
|
|
WHERE table_name = 't1';
|
|
Got one of the listed errors
|
|
DELETE FROM information_schema.events WHERE event_catalog IS NULL;
|
|
ERROR 42000: Access denied for user 'root'@'localhost' to database 'information_schema'
|
|
TRUNCATE information_schema.events;
|
|
ERROR 42000: Access denied for user 'root'@'localhost' to database 'information_schema'
|
|
CREATE INDEX my_idx_on_events ON information_schema.events(event_name);
|
|
ERROR 42000: Access denied for user 'root'@'localhost' to database 'information_schema'
|
|
ALTER TABLE information_schema.events DROP PRIMARY KEY;
|
|
ERROR 42000: Access denied for user 'root'@'localhost' to database 'information_schema'
|
|
ALTER TABLE information_schema.events ADD f1 INT;
|
|
ERROR 42000: Access denied for user 'root'@'localhost' to database 'information_schema'
|
|
DROP TABLE information_schema.events;
|
|
ERROR 42000: Access denied for user 'root'@'localhost' to database 'information_schema'
|
|
ALTER TABLE information_schema.events RENAME db_datadict.events;
|
|
ERROR 42000: Access denied for user 'root'@'localhost' to database 'information_schema'
|
|
ALTER TABLE information_schema.events RENAME information_schema.xevents;
|
|
ERROR 42000: Access denied for user 'root'@'localhost' to database 'information_schema'
|
|
DROP DATABASE db_datadict;
|