A Static Table example
To familiarize ourselves with the extra structures and functions required for an Information Schema plugin, we will start with a simple example. This plugin will create an Information Schema table called VERSIONS
that will return a few rows of data with the version numbers for various MySQL internals:
#include <mysql_priv.h>
To see MySQL internal data structures such as TABLE_LIST, TABLE
, and Field
we need to include the mysql_priv.h
file. This is a mega-header that includes almost everything else and a kitchen sink too. At least this is the case in MySQL 5.1 and earlier versions, but it will change in one of the future MySQL releases. Still in 5.1 it is the only header we include, everything else we may need is included by it.
bool schema_table_store_record(THD *thd, TABLE *table);
As discussed above we need to declare a schema_table_store_record()
function.
static ST_FIELD_INFO versions_fields[] = { {"NAME", 30, MYSQL_TYPE_STRING, 0, 0, 0, 0}, {"VERSION", 10...