mirror of
https://github.com/MariaDB/server.git
synced 2025-07-27 18:02:13 +03:00
Merge branch '10.3' into 10.4
This commit is contained in:
@ -118,6 +118,32 @@ enum enum_sql_command {
|
||||
SQLCOM_END
|
||||
};
|
||||
|
||||
|
||||
class Storage_engine_name
|
||||
{
|
||||
protected:
|
||||
LEX_CSTRING m_storage_engine_name;
|
||||
public:
|
||||
Storage_engine_name()
|
||||
{
|
||||
m_storage_engine_name.str= NULL;
|
||||
m_storage_engine_name.length= 0;
|
||||
}
|
||||
Storage_engine_name(const LEX_CSTRING &name)
|
||||
:m_storage_engine_name(name)
|
||||
{ }
|
||||
Storage_engine_name(const LEX_STRING &name)
|
||||
{
|
||||
m_storage_engine_name.str= name.str;
|
||||
m_storage_engine_name.length= name.length;
|
||||
}
|
||||
bool resolve_storage_engine_with_error(THD *thd,
|
||||
handlerton **ha,
|
||||
bool tmp_table);
|
||||
bool is_set() { return m_storage_engine_name.str != NULL; }
|
||||
};
|
||||
|
||||
|
||||
/**
|
||||
@class Sql_cmd - Representation of an SQL command.
|
||||
|
||||
@ -161,6 +187,11 @@ public:
|
||||
*/
|
||||
virtual bool execute(THD *thd) = 0;
|
||||
|
||||
virtual Storage_engine_name *option_storage_engine_name()
|
||||
{
|
||||
return NULL;
|
||||
}
|
||||
|
||||
protected:
|
||||
Sql_cmd()
|
||||
{}
|
||||
@ -177,6 +208,26 @@ protected:
|
||||
}
|
||||
};
|
||||
|
||||
class Sql_cmd_create_table_like: public Sql_cmd,
|
||||
public Storage_engine_name
|
||||
{
|
||||
public:
|
||||
Storage_engine_name *option_storage_engine_name() { return this; }
|
||||
bool execute(THD *thd);
|
||||
};
|
||||
|
||||
class Sql_cmd_create_table: public Sql_cmd_create_table_like
|
||||
{
|
||||
public:
|
||||
enum_sql_command sql_command_code() const { return SQLCOM_CREATE_TABLE; }
|
||||
};
|
||||
|
||||
class Sql_cmd_create_sequence: public Sql_cmd_create_table_like
|
||||
{
|
||||
public:
|
||||
enum_sql_command sql_command_code() const { return SQLCOM_CREATE_SEQUENCE; }
|
||||
};
|
||||
|
||||
|
||||
/**
|
||||
Sql_cmd_call represents the CALL statement.
|
||||
|
Reference in New Issue
Block a user