MySqlGrammar
class MySqlGrammar extends Grammar
Properties
protected string | $tablePrefix | The grammar table prefix. |
from Grammar |
protected bool | $transactions | If this Grammar supports schema changes wrapped in a transaction. |
from Grammar |
protected array | $modifiers | The possible column modifiers. |
|
protected array | $serials | The possible column serials. |
Methods
Wrap a value that has an alias.
Wrap a single string in keyword identifiers.
Convert an array of column names into a delimited string.
Get the appropriate query parameter place-holder for a value.
Compile a rename column command.
Compile a change column command into a series of SQL statements.
Add the column modifiers to the definition.
Get the primary key command if it exists on the blueprint.
Format a value so that it can be used in "default" clauses.
Create an empty Doctrine DBAL TableDiff from the Blueprint.
Check if this Grammar supports schema changes wrapped in a transaction.
Compile the query to determine the list of tables.
Compile the query to determine the list of columns.
Compile a create table command.
Create the main create table clause.
Append the character set specifications to a command.
Append the engine specifications to a command.
Compile a drop table (if exists) command.
Compile the command to enable foreign key constraints.
Compile the command to disable foreign key constraints.
Get the SQL for a generated virtual column modifier.
Get the SQL for a generated stored column modifier.
Get the SQL for a character set column modifier.
Get the SQL for an auto-increment column modifier.
Details
in
Grammar at line 22
array
wrapArray(array $values)
Wrap an array of values.
in
Grammar at line 192
string
wrapTable(Expression|string $table)
Wrap a table in keyword identifiers.
in
Grammar at line 206
string
wrap(Expression|string $value, bool $prefixAlias = false)
Wrap a value in keyword identifiers.
in
Grammar at line 72
protected string
wrapAliasedValue(string $value, bool $prefixAlias = false)
Wrap a value that has an alias.
in
Grammar at line 94
protected string
wrapSegments(array $segments)
Wrap the given value segments.
at line 821
protected string
wrapValue(string $value)
Wrap a single string in keyword identifiers.
in
Grammar at line 124
string
columnize(array $columns)
Convert an array of column names into a delimited string.
in
Grammar at line 135
string
parameterize(array $values)
Create query parameter place-holders for an array.
in
Grammar at line 146
string
parameter(mixed $value)
Get the appropriate query parameter place-holder for a value.
in
Grammar at line 157
bool
isExpression(mixed $value)
Determine if the given value is a raw expression.
in
Grammar at line 168
string
getValue(Expression $expression)
Get the value of a raw expression.
in
Grammar at line 178
string
getDateFormat()
Get the format for database stored dates.
in
Grammar at line 188
string
getTablePrefix()
Get the grammar's table prefix.
in
Grammar at line 199
$this
setTablePrefix(string $prefix)
Set the grammar's table prefix.
in
Grammar at line 30
array
compileRenameColumn(Blueprint $blueprint, Fluent $command, Connection $connection)
Compile a rename column command.
in
Grammar at line 45
array
compileChange(Blueprint $blueprint, Fluent $command, Connection $connection)
Compile a change column command into a series of SQL statements.
in
Grammar at line 57
string
compileForeign(Blueprint $blueprint, Fluent $command)
Compile a foreign key command.
in
Grammar at line 96
protected array
getColumns(Blueprint $blueprint)
Compile the blueprint's column definitions.
in
Grammar at line 118
protected string
getType(Fluent $column)
Get the SQL for the column data type.
in
Grammar at line 131
protected string
addModifiers(string $sql, Blueprint $blueprint, Fluent $column)
Add the column modifiers to the definition.
in
Grammar at line 149
protected Fluent|null
getCommandByName(Blueprint $blueprint, string $name)
Get the primary key command if it exists on the blueprint.
in
Grammar at line 165
protected array
getCommandsByName(Blueprint $blueprint, string $name)
Get all of the commands with a given name.
in
Grammar at line 179
array
prefixArray(string $prefix, array $values)
Add a prefix to an array of values.
in
Grammar at line 219
protected string
getDefaultValue(mixed $value)
Format a value so that it can be used in "default" clauses.
in
Grammar at line 237
TableDiff
getDoctrineTableDiff(Blueprint $blueprint, AbstractSchemaManager $schema)
Create an empty Doctrine DBAL TableDiff from the Blueprint.
in
Grammar at line 251
bool
supportsSchemaTransactions()
Check if this Grammar supports schema changes wrapped in a transaction.
at line 33
string
compileTableExists()
Compile the query to determine the list of tables.
at line 43
string
compileColumnListing()
Compile the query to determine the list of columns.
at line 56
string
compileCreate(Blueprint $blueprint, Fluent $command, Connection $connection)
Compile a create table command.
at line 85
protected string
compileCreateTable(Blueprint $blueprint, Fluent $command, Connection $connection)
Create the main create table clause.
at line 102
protected string
compileCreateEncoding(string $sql, Connection $connection, Blueprint $blueprint)
Append the character set specifications to a command.
at line 133
protected string
compileCreateEngine(string $sql, Connection $connection, Blueprint $blueprint)
Append the engine specifications to a command.
at line 165
string
compilePrimary(Blueprint $blueprint, Fluent $command)
Compile a primary key command.
at line 179
string
compileUnique(Blueprint $blueprint, Fluent $command)
Compile a unique key command.
at line 191
string
compileIndex(Blueprint $blueprint, Fluent $command)
Compile a plain index key command.
at line 204
protected string
compileKey(Blueprint $blueprint, Fluent $command, string $type)
Compile an index creation command.
at line 234
string
compileDropIfExists(Blueprint $blueprint, Fluent $command)
Compile a drop table (if exists) command.
at line 246
string
compileDropColumn(Blueprint $blueprint, Fluent $command)
Compile a drop column command.
at line 260
string
compileDropPrimary(Blueprint $blueprint, Fluent $command)
Compile a drop primary key command.
at line 272
string
compileDropUnique(Blueprint $blueprint, Fluent $command)
Compile a drop unique key command.
at line 286
string
compileDropIndex(Blueprint $blueprint, Fluent $command)
Compile a drop index command.
at line 300
string
compileDropForeign(Blueprint $blueprint, Fluent $command)
Compile a drop foreign key command.
at line 314
string
compileRename(Blueprint $blueprint, Fluent $command)
Compile a rename table command.
at line 326
string
compileEnableForeignKeyConstraints()
Compile the command to enable foreign key constraints.
at line 336
string
compileDisableForeignKeyConstraints()
Compile the command to disable foreign key constraints.
at line 347
protected string
typeChar(Fluent $column)
Create the column definition for a char type.
at line 358
protected string
typeString(Fluent $column)
Create the column definition for a string type.
at line 369
protected string
typeText(Fluent $column)
Create the column definition for a text type.
at line 380
protected string
typeMediumText(Fluent $column)
Create the column definition for a medium text type.
at line 391
protected string
typeLongText(Fluent $column)
Create the column definition for a long text type.
at line 402
protected string
typeBigInteger(Fluent $column)
Create the column definition for a big integer type.
at line 413
protected string
typeInteger(Fluent $column)
Create the column definition for an integer type.
at line 424
protected string
typeMediumInteger(Fluent $column)
Create the column definition for a medium integer type.
at line 435
protected string
typeTinyInteger(Fluent $column)
Create the column definition for a tiny integer type.
at line 446
protected string
typeSmallInteger(Fluent $column)
Create the column definition for a small integer type.
at line 457
protected string
typeFloat(Fluent $column)
Create the column definition for a float type.
at line 468
protected string
typeDouble(Fluent $column)
Create the column definition for a double type.
at line 483
protected string
typeDecimal(Fluent $column)
Create the column definition for a decimal type.
at line 494
protected string
typeBoolean(Fluent $column)
Create the column definition for a boolean type.
at line 505
protected string
typeEnum(Fluent $column)
Create the column definition for an enum type.
at line 516
protected string
typeJson(Fluent $column)
Create the column definition for a json type.
at line 527
protected string
typeJsonb(Fluent $column)
Create the column definition for a jsonb type.
at line 538
protected string
typeDate(Fluent $column)
Create the column definition for a date type.
at line 549
protected string
typeDateTime(Fluent $column)
Create the column definition for a date-time type.
at line 560
protected string
typeDateTimeTz(Fluent $column)
Create the column definition for a date-time type.
at line 571
protected string
typeTime(Fluent $column)
Create the column definition for a time type.
at line 582
protected string
typeTimeTz(Fluent $column)
Create the column definition for a time type.
at line 593
protected string
typeTimestamp(Fluent $column)
Create the column definition for a timestamp type.
at line 608
protected string
typeTimestampTz(Fluent $column)
Create the column definition for a timestamp type.
at line 623
protected string
typeBinary(Fluent $column)
Create the column definition for a binary type.
at line 634
protected string
typeUuid(Fluent $column)
Create the column definition for a uuid type.
at line 645
protected string
typeIpAddress(Fluent $column)
Create the column definition for an IP address type.
at line 656
protected string
typeMacAddress(Fluent $column)
Create the column definition for a MAC address type.
at line 668
protected string|null
modifyVirtualAs(Blueprint $blueprint, Fluent $column)
Get the SQL for a generated virtual column modifier.
at line 682
protected string|null
modifyStoredAs(Blueprint $blueprint, Fluent $column)
Get the SQL for a generated stored column modifier.
at line 696
protected string|null
modifyUnsigned(Blueprint $blueprint, Fluent $column)
Get the SQL for an unsigned column modifier.
at line 710
protected string|null
modifyCharset(Blueprint $blueprint, Fluent $column)
Get the SQL for a character set column modifier.
at line 724
protected string|null
modifyCollate(Blueprint $blueprint, Fluent $column)
Get the SQL for a collation column modifier.
at line 738
protected string|null
modifyNullable(Blueprint $blueprint, Fluent $column)
Get the SQL for a nullable column modifier.
at line 752
protected string|null
modifyDefault(Blueprint $blueprint, Fluent $column)
Get the SQL for a default column modifier.
at line 766
protected string|null
modifyIncrement(Blueprint $blueprint, Fluent $column)
Get the SQL for an auto-increment column modifier.
at line 780
protected string|null
modifyFirst(Blueprint $blueprint, Fluent $column)
Get the SQL for a "first" column modifier.