MySQL  8.0.20
Source Code Documentation
innobase_basic_ddl Class Reference

Class of basic DDL implementation, for CREATE/DROP/RENAME TABLE. More...

#include <ha_innodb.h>

Static Public Member Functions

template<typename Table >
static int create_impl (THD *thd, const char *name, TABLE *form, HA_CREATE_INFO *create_info, Table *dd_tab, bool file_per_table, bool evictable, bool skip_strict, uint32_t old_flags, uint32_t old_flags2)
 Create an InnoDB table. More...
 
template<typename Table >
static int delete_impl (THD *thd, const char *name, const Table *dd_tab)
 Drop an InnoDB table. More...
 
template<typename Table >
static int rename_impl (THD *thd, const char *from, const char *to, const Table *from_table, const Table *to_table)
 Renames an InnoDB table. More...
 

Detailed Description

Class of basic DDL implementation, for CREATE/DROP/RENAME TABLE.

Member Function Documentation

◆ create_impl()

template<typename Table >
int innobase_basic_ddl::create_impl ( THD thd,
const char *  name,
TABLE form,
HA_CREATE_INFO create_info,
Table dd_tab,
bool  file_per_table,
bool  evictable,
bool  skip_strict,
uint32_t  old_flags,
uint32_t  old_flags2 
)
static

Create an InnoDB table.

Template Parameters
Tabledd::Table or dd::Partition
Parameters
[in,out]thdTHD object
[in]nameTable name, format: "db/table_name"
[in]formTable format; columns and index information
[in]create_infoCreate info(including create statement string)
[in,out]dd_tabdd::Table describing table to be created
[in]file_per_tablewhether to create a tablespace too
[in]evictablewhether the caller wants the dict_table_t to be kept in memory
[in]skip_strictwhether to skip strict check for create option
[in]old_flagsold Table flags
[in]old_flags2old Table flags2
Returns
error number
Return values
0on success
Template Parameters
Tabledd::Table or dd::Partition
Parameters
[in,out]thdTHD object
[in]nameTable name, format: "db/table_name"
[in]formTable format; columns and index information
[in]create_infoCreate info (including create statement string)
[in,out]dd_tabdd::Table describing table to be created
[in]file_per_tablewhether to create a tablespace too
[in]evictablewhether the caller wants the dict_table_t to be kept in memory
[in]skip_strictwhether to skip strict check for create option
[in]old_flagsold Table flags
[in]old_flags2old Table flags2
Returns
error number
Return values
0on success

◆ delete_impl()

template<typename Table >
int innobase_basic_ddl::delete_impl ( THD thd,
const char *  name,
const Table dd_tab 
)
static

Drop an InnoDB table.

Drop a table.

Template Parameters
Tabledd::Table or dd::Partition
Parameters
[in,out]thdTHD object
[in]nametable name
[in]dd_tabdd::Table describing table to be dropped
Returns
error number
Return values
0on success

◆ rename_impl()

template<typename Table >
int innobase_basic_ddl::rename_impl ( THD thd,
const char *  from,
const char *  to,
const Table from_table,
const Table to_table 
)
static

Renames an InnoDB table.

Template Parameters
Tabledd::Table or dd::Partition
Parameters
[in,out]thdTHD object
[in]fromold name of the table
[in]tonew name of the table
[in]from_tabledd::Table or dd::Partition of the table with old name
[in]to_tabledd::Table or dd::Partition of the table with new name
Returns
error number
Return values
0on success

The documentation for this class was generated from the following files: