MySqlGrammar
class MySqlGrammar extends Grammar (View source)
Traits
Properties
static protected array | $macros | The registered string macros. |
from Macroable |
protected Connection | $connection | The connection used for escaping values. |
from Grammar |
protected string[] | $modifiers | The possible column modifiers. |
|
protected bool | $transactions | If this Grammar supports schema changes wrapped in a transaction. |
from Grammar |
protected string[] | $fluentCommands | The commands to be executed outside of create or alter commands. |
|
protected string[] | $serials | The possible column serials. |
Methods
Mix another object into the class.
Dynamically handle calls to the class.
Dynamically handle calls to the class.
Wrap a table in keyword identifiers.
Wrap a table that has an alias.
Wrap a single string in keyword identifiers.
Wrap the given JSON selector.
Convert an array of column names into a delimited string.
Get the appropriate query parameter place-holder for a value.
Escapes a value for safe SQL embedding.
Split the given JSON selector into the field and the optional path and wrap them separately.
Wrap the given JSON path.
Wrap the given JSON path segment.
Compile a create database command.
Compile a drop database if exists command.
Compile the query to determine the schemas.
Compile the query to determine if the given table exists.
Compile the query to determine the tables.
Compile the query to determine the views.
Compile the query to determine the user-defined types.
Compile the query to determine the columns.
Compile the query to determine the indexes.
Compile the query to determine the foreign keys.
Compile a change column command into a series of SQL statements.
Add the column modifiers to the definition.
Get the command with a given name if it exists on the blueprint.
Format a value so that it can be used in "default" clauses.
Check if this Grammar supports schema changes wrapped in a transaction.
Compile the query to compare the schema.
Append the character set specifications to a command.
Append the engine specifications to a command.
Compile the auto-incrementing column starting values.
Compile a rename column command for legacy versions of MySQL.
Compile a drop table (if exists) command.
Compile a drop spatial index command.
Compile the SQL needed to drop all tables.
Compile the SQL needed to drop all views.
Compile the command to enable foreign key constraints.
Compile the command to disable foreign key constraints.
Quote-escape the given tables, views, or types.
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 "on update" column modifier.
Get the SQL for an auto-increment column modifier.
Details
string
wrapTable(Expression|string $table, string|null $prefix = null)
Wrap a table in keyword identifiers.
protected string
wrapAliasedTable(string $value, string|null $prefix = null)
Wrap a table that has an alias.
string
escape(string|float|int|bool|null $value, bool $binary = false)
Escapes a value for safe SQL embedding.
string|int|float
getValue(Expression|string|int|float $expression)
Transforms expressions to their scalar types.
string
getTablePrefix()
deprecated
deprecated Use DB::getTablePrefix()
Get the grammar's table prefix.
$this
setTablePrefix(string $prefix)
deprecated
deprecated Use DB::setTablePrefix()
Set the grammar's table prefix.
protected array
wrapJsonFieldAndPath(string $column)
Split the given JSON selector into the field and the optional path and wrap them separately.
string|null
compileTableExists(string|null $schema, string $table)
Compile the query to determine if the given table exists.
string
compileTypes(string|string[]|null $schema)
Compile the query to determine the user-defined types.
string
compileColumns(string|null $schema, string $table)
Compile the query to determine the columns.
string
compileIndexes(string|null $schema, string $table)
Compile the query to determine the indexes.
string
compileForeignKeys(string|null $schema, string $table)
Compile the query to determine the foreign keys.
array|string
compileRenameColumn(Blueprint $blueprint, Fluent $command)
Compile a rename column command.
array|string
compileChange(Blueprint $blueprint, Fluent $command)
Compile a change column command into a series of SQL statements.
string
compileDropFullText(Blueprint $blueprint, Fluent $command)
Compile a drop fulltext index command.
string
compileDropForeign(Blueprint $blueprint, Fluent $command)
Compile a drop foreign key command.
protected string
getColumn(Blueprint $blueprint, ColumnDefinition $column)
Compile the column definition.
protected void
typeComputed(Fluent $column)
Create the column definition for a generated, computed column type.
protected string
addModifiers(string $sql, Blueprint $blueprint, Fluent $column)
Add the column modifiers to the definition.
protected Fluent|null
getCommandByName(Blueprint $blueprint, string $name)
Get the command with a given name if it exists on the blueprint.
protected array
getCommandsByName(Blueprint $blueprint, string $name)
Get all of the commands with a given name.
protected string
getDefaultValue(mixed $value)
Format a value so that it can be used in "default" clauses.
bool
supportsSchemaTransactions()
Check if this Grammar supports schema changes wrapped in a transaction.
protected string
compileSchemaWhereClause(string|string[]|null $schema, string $column)
Compile the query to compare the schema.
protected string
compileCreateTable(Blueprint $blueprint, Fluent $command)
Create the main create table clause.
protected string
compileCreateEncoding(string $sql, Blueprint $blueprint)
Append the character set specifications to a command.
protected string
compileCreateEngine(string $sql, Blueprint $blueprint)
Append the engine specifications to a command.
string
compileAutoIncrementStartingValues(Blueprint $blueprint, Fluent $command)
Compile the auto-incrementing column starting values.
protected string
compileLegacyRenameColumn(Blueprint $blueprint, Fluent $command)
Compile a rename column command for legacy versions of MySQL.
string
compileSpatialIndex(Blueprint $blueprint, Fluent $command)
Compile a spatial index key command.
protected string
compileKey(Blueprint $blueprint, Fluent $command, string $type)
Compile an index creation command.
string
compileDropIfExists(Blueprint $blueprint, Fluent $command)
Compile a drop table (if exists) command.
string
compileDropPrimary(Blueprint $blueprint, Fluent $command)
Compile a drop primary key command.
string
compileDropSpatialIndex(Blueprint $blueprint, Fluent $command)
Compile a drop spatial index command.
string
compileDisableForeignKeyConstraints()
Compile the command to disable foreign key constraints.
protected string
typeMediumText(Fluent $column)
Create the column definition for a medium text type.
protected string
typeBigInteger(Fluent $column)
Create the column definition for a big integer type.
protected string
typeMediumInteger(Fluent $column)
Create the column definition for a medium integer type.
protected string
typeTinyInteger(Fluent $column)
Create the column definition for a tiny integer type.
protected string
typeSmallInteger(Fluent $column)
Create the column definition for a small integer type.
protected string
typeDateTimeTz(Fluent $column)
Create the column definition for a date-time (with time zone) type.
protected string
typeTimeTz(Fluent $column)
Create the column definition for a time (with time zone) type.
protected string
typeTimestampTz(Fluent $column)
Create the column definition for a timestamp (with time zone) type.
protected string
typeMacAddress(Fluent $column)
Create the column definition for a MAC address type.
protected string
typeGeometry(Fluent $column)
Create the column definition for a spatial Geometry type.
protected string
typeGeography(Fluent $column)
Create the column definition for a spatial Geography type.
protected string|null
modifyVirtualAs(Blueprint $blueprint, Fluent $column)
Get the SQL for a generated virtual column modifier.
protected string|null
modifyStoredAs(Blueprint $blueprint, Fluent $column)
Get the SQL for a generated stored column modifier.
protected string|null
modifyUnsigned(Blueprint $blueprint, Fluent $column)
Get the SQL for an unsigned column modifier.
protected string|null
modifyCharset(Blueprint $blueprint, Fluent $column)
Get the SQL for a character set column modifier.
protected string|null
modifyCollate(Blueprint $blueprint, Fluent $column)
Get the SQL for a collation column modifier.
protected string|null
modifyNullable(Blueprint $blueprint, Fluent $column)
Get the SQL for a nullable column modifier.
protected string|null
modifyInvisible(Blueprint $blueprint, Fluent $column)
Get the SQL for an invisible column modifier.
protected string|null
modifyDefault(Blueprint $blueprint, Fluent $column)
Get the SQL for a default column modifier.
protected string|null
modifyOnUpdate(Blueprint $blueprint, Fluent $column)
Get the SQL for an "on update" column modifier.
protected string|null
modifyIncrement(Blueprint $blueprint, Fluent $column)
Get the SQL for an auto-increment column modifier.
protected string|null
modifyFirst(Blueprint $blueprint, Fluent $column)
Get the SQL for a "first" column modifier.
protected string|null
modifyAfter(Blueprint $blueprint, Fluent $column)
Get the SQL for an "after" column modifier.