class ExportSql extends ExportPlugin

Handles the export for the SQL class

Properties

protected ExportPluginProperties $properties PhpMyAdmin\Properties\Plugins\ExportPluginProperties object containing the specific export plugin type properties from ExportPlugin
Relation $relation from ExportPlugin
protected Export $export from ExportPlugin
protected Transformations $transformations from ExportPlugin

Methods

__construct()

Constructor

bool
exportHeader()

Outputs export header. It is the first method to be called, so all the required variables are initialized here.

bool
exportFooter()

Outputs export footer

bool
exportDBHeader(string $db, string $db_alias = '')

Outputs database header

bool
exportDBFooter(string $db)

Outputs database footer

bool
exportDBCreate(string $db, string $export_type, string $db_alias = '')

Outputs CREATE DATABASE statement

bool
exportData(string $db, string $table, string $crlf, string $error_url, string $sql_query, array $aliases = [])

Outputs the content of a table in SQL format

bool
exportRoutines(string $db, array $aliases = [])

Exports routines (procedures and functions)

bool
exportEvents(string $db)

Exports events

bool
exportStructure(string $db, string $table, string $crlf, string $error_url, string $export_mode, string $export_type, bool $relation = false, bool $comments = false, bool $mime = false, bool $dates = false, array $aliases = [])

Outputs table's structure

bool
exportMetadata(string $db, string|array $tables, array $metadataTypes)

Exports metadata from Configuration Storage

string
getTableDefStandIn(string $db, string $view, string $crlf, array $aliases = [])

Returns a stand-in CREATE definition to resolve view dependencies

string
getTriggers(string $db, string $table)

Outputs triggers

void
initSpecificVariables()

Initialize the specific variables for each export plugin

getProperties()

Gets the export specific format plugin properties

void
setProperties()

Sets the export SQL properties

void
initAlias(array $aliases, string $db, string $table = null)

Initialize aliases

string
getAlias(array $aliases, string $id, string $type = 'dbtblcol', string $db = '', string $tbl = '')

Search for alias of a identifier.

string
getRelationString(array $res_rel, string $field_name, string $db, array $aliases = [])

Gives the relation string and also substitutes with alias if required in this format: [Foreign Table] ([Foreign Field])

string
_exportRoutineSQL(string $db, array $aliases, string $type, string $name, array $routines, string $delimiter)

Generates SQL for routines export

string
getTableDef(string $db, string $table, string $crlf, string $error_url, bool $show_dates = false, bool $add_semicolon = true, bool $view = false, bool $update_indexes_increments = true, array $aliases = [])

Returns $table's CREATE definition

string
replaceWithAliases(string $sql_query, array $aliases, string $db, string $table = '', string $flag = null)

replaces db/table/column names with their aliases

string
generateComment(string $crlf, string|null $sql_statement, string $comment1, string $comment2, string $table_alias, string $compat)

Generate comment

Details

at line 51
__construct()

Constructor

at line 701
bool exportHeader()

Outputs export header. It is the first method to be called, so all the required variables are initialized here.

Return Value

bool Whether it succeeded

at line 661
bool exportFooter()

Outputs export footer

Return Value

bool Whether it succeeded

at line 904
bool exportDBHeader(string $db, string $db_alias = '')

Outputs database header

Parameters

string $db Database name
string $db_alias Aliases of db

Return Value

bool Whether it succeeded

at line 935
bool exportDBFooter(string $db)

Outputs database footer

Parameters

string $db Database name

Return Value

bool Whether it succeeded

at line 809
bool exportDBCreate(string $db, string $export_type, string $db_alias = '')

Outputs CREATE DATABASE statement

Parameters

string $db Database name
string $export_type 'server', 'database', 'table'
string $db_alias Aliases of db

Return Value

bool Whether it succeeded

at line 2199
bool exportData(string $db, string $table, string $crlf, string $error_url, string $sql_query, array $aliases = [])

Outputs the content of a table in SQL format

Parameters

string $db database name
string $table table name
string $crlf the end of line sequence
string $error_url the url to go back in case of error
string $sql_query SQL query for obtaining data
array $aliases Aliases of db/table/columns

Return Value

bool Whether it succeeded

at line 562
bool exportRoutines(string $db, array $aliases = [])

Exports routines (procedures and functions)

Parameters

string $db Database
array $aliases Aliases of db/table/columns

Return Value

bool Whether it succeeded

at line 967
bool exportEvents(string $db)

Exports events

Parameters

string $db Database

Return Value

bool Whether it succeeded

at line 2020
bool exportStructure(string $db, string $table, string $crlf, string $error_url, string $export_mode, string $export_type, bool $relation = false, bool $comments = false, bool $mime = false, bool $dates = false, array $aliases = [])

Outputs table's structure

Parameters

string $db database name
string $table table name
string $crlf the end of line sequence
string $error_url the url to go back in case of error
string $export_mode 'create_table','triggers','create_view', 'stand_in'
string $export_type 'server', 'database', 'table'
bool $relation whether to include relation comments
bool $comments whether to include the pmadb-style column comments as comments in the structure; this is deprecated but the parameter is left here because /export calls exportStructure() also for other export types which use this parameter
bool $mime whether to include mime comments
bool $dates whether to include creation/update/check dates
array $aliases Aliases of db/table/columns

Return Value

bool Whether it succeeded

at line 1017
bool exportMetadata(string $db, string|array $tables, array $metadataTypes)

Exports metadata from Configuration Storage

Parameters

string $db database being exported
string|array $tables table(s) being exported
array $metadataTypes types of metadata to export

Return Value

bool Whether it succeeded

at line 1244
string getTableDefStandIn(string $db, string $view, string $crlf, array $aliases = [])

Returns a stand-in CREATE definition to resolve view dependencies

Parameters

string $db the database name
string $view the view name
string $crlf the end of line sequence
array $aliases Aliases of db/table/columns

Return Value

string resulting definition

in ExportPlugin at line 227
protected string getTriggers(string $db, string $table)

Outputs triggers

Parameters

string $db database name
string $table table name

Return Value

string Formatted triggers list

in ExportPlugin at line 236
protected void initSpecificVariables()

Initialize the specific variables for each export plugin

Return Value

void

in ExportPlugin at line 247
ExportPluginProperties getProperties()

Gets the export specific format plugin properties

Return Value

ExportPluginProperties

at line 67
protected void setProperties()

Sets the export SQL properties

Return Value

void

in ExportPlugin at line 276
void initAlias(array $aliases, string $db, string $table = null)

Initialize aliases

Parameters

array $aliases Alias information for db/table/column
string $db the database
string $table the table

Return Value

void

in ExportPlugin at line 298
string getAlias(array $aliases, string $id, string $type = 'dbtblcol', string $db = '', string $tbl = '')

Search for alias of a identifier.

Parameters

array $aliases Alias information for db/table/column
string $id the identifier to be searched
string $type db/tbl/col or any combination of them representing what to be searched
string $db the database in which search is to be done
string $tbl the table in which search is to be done

Return Value

string alias of the identifier if found or ''

in ExportPlugin at line 363
string getRelationString(array $res_rel, string $field_name, string $db, array $aliases = [])

Gives the relation string and also substitutes with alias if required in this format: [Foreign Table] ([Foreign Field])

Parameters

array $res_rel the foreigners array
string $field_name the field name
string $db the field name
array $aliases Alias information for db/table/column

Return Value

string the Relation string

at line 504
protected string _exportRoutineSQL(string $db, array $aliases, string $type, string $name, array $routines, string $delimiter)

Generates SQL for routines export

Parameters

string $db Database
array $aliases Aliases of db/table/columns
string $type Type of exported routine
string $name Verbose name of exported routine
array $routines List of routines to export
string $delimiter Delimiter to use in SQL

Return Value

string SQL query

at line 1381
string getTableDef(string $db, string $table, string $crlf, string $error_url, bool $show_dates = false, bool $add_semicolon = true, bool $view = false, bool $update_indexes_increments = true, array $aliases = [])

Returns $table's CREATE definition

Parameters

string $db the database name
string $table the table name
string $crlf the end of line sequence
string $error_url the url to go back in case of error
bool $show_dates whether to include creation/ update/check dates
bool $add_semicolon whether to add semicolon and end-of-line at the end
bool $view whether we're handling a view
bool $update_indexes_increments whether we need to update two global variables
array $aliases Aliases of db/table/columns

Return Value

string resulting schema

at line 2689
string replaceWithAliases(string $sql_query, array $aliases, string $db, string $table = '', string $flag = null)

replaces db/table/column names with their aliases

Parameters

string $sql_query SQL query in which aliases are to be substituted
array $aliases Alias information for db/table/column
string $db the database name
string $table the tablename
string $flag the flag denoting whether any replacement was done

Return Value

string query replaced with aliases

at line 2874
protected string generateComment(string $crlf, string|null $sql_statement, string $comment1, string $comment2, string $table_alias, string $compat)

Generate comment

Parameters

string $crlf Carriage return character
string|null $sql_statement SQL statement
string $comment1 Comment for dumped table
string $comment2 Comment for current table
string $table_alias Table alias
string $compat Compatibility mode

Return Value

string