On this page
Grammar
abstract class Grammar 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 | $tablePrefix | The grammar table prefix. |
from Grammar |
protected string[] | $modifiers | The possible column modifiers. |
|
protected bool | $transactions | If this Grammar supports schema changes wrapped in a transaction. |
|
protected array | $fluentCommands | The commands to be executed outside of create or alter command. |
Methods
static void | macro(string $name, object|callable $macro) Register a custom macro. |
from Macroable |
static void | mixin(object $mixin, bool $replace = true) Mix another object into the class. |
from Macroable |
static bool | hasMacro(string $name) Checks if macro is registered. |
from Macroable |
static void | flushMacros() Flush the existing macros. |
from Macroable |
static mixed | __callStatic(string $method, array $parameters) Dynamically handle calls to the class. |
from Macroable |
mixed | __call(string $method, array $parameters) Dynamically handle calls to the class. |
from Macroable |
array | wrapArray(array $values) Wrap an array of values. |
from Grammar |
string | wrapTable(Expression|string $table) Wrap a table in keyword identifiers. |
|
string | wrap(Expression|string $value, bool $prefixAlias = false) Wrap a value in keyword identifiers. |
|
string | wrapAliasedValue(string $value, bool $prefixAlias = false) Wrap a value that has an alias. |
from Grammar |
string | wrapSegments(array $segments) Wrap the given value segments. |
from Grammar |
string | wrapValue(string $value) Wrap a single string in keyword identifiers. |
from Grammar |
string | wrapJsonSelector(string $value) Wrap the given JSON selector. |
from Grammar |
bool | isJsonSelector(string $value) Determine if the given string is a JSON selector. |
from Grammar |
string | columnize(array $columns) Convert an array of column names into a delimited string. |
from Grammar |
string | parameterize(array $values) Create query parameter place-holders for an array. |
from Grammar |
string | parameter(mixed $value) Get the appropriate query parameter place-holder for a value. |
from Grammar |
string | quoteString(string|array $value) Quote the given string literal. |
from Grammar |
string | escape(string|float|int|bool|null $value, bool $binary = false) Escapes a value for safe SQL embedding. |
from Grammar |
bool | isExpression(mixed $value) Determine if the given value is a raw expression. |
from Grammar |
string|int|float | getValue(Expression|string|int|float $expression) Transforms expressions to their scalar types. |
from Grammar |
string | getDateFormat() Get the format for database stored dates. |
from Grammar |
string | getTablePrefix() Get the grammar's table prefix. |
from Grammar |
$this | setTablePrefix(string $prefix) Set the grammar's table prefix. |
from Grammar |
$this | setConnection($connection) Set the grammar's database connection. |
from Grammar |
array | wrapJsonFieldAndPath(string $column) Split the given JSON selector into the field and the optional path and wrap them separately. |
from CompilesJsonPaths |
string | wrapJsonPath(string $value, string $delimiter = '->') Wrap the given JSON path. |
from CompilesJsonPaths |
string | wrapJsonPathSegment(string $segment) Wrap the given JSON path segment. |
from CompilesJsonPaths |
void | compileCreateDatabase(string $name, Connection $connection) Compile a create database command. |
|
void | compileDropDatabaseIfExists(string $name) Compile a drop database if exists command. |
|
array|string | compileRenameColumn(Blueprint $blueprint, Fluent $command, Connection $connection) Compile a rename column command. |
|
array|string | compileChange(Blueprint $blueprint, Fluent $command, Connection $connection) Compile a change column command into a series of SQL statements. |
|
string | compileFulltext(Blueprint $blueprint, Fluent $command) Compile a fulltext index key command. |
|
string | compileDropFullText(Blueprint $blueprint, Fluent $command) Compile a drop fulltext index command. |
|
string | compileForeign(Blueprint $blueprint, Fluent $command) Compile a foreign key command. |
|
array | getColumns(Blueprint $blueprint) Compile the blueprint's added column definitions. |
|
string | getType(Fluent $column) Get the SQL for the column data type. |
|
void | typeComputed(Fluent $column) Create the column definition for a generated, computed column type. |
|
string | addModifiers(string $sql, Blueprint $blueprint, Fluent $column) Add the column modifiers to the definition. |
|
Fluent|null | getCommandByName(Blueprint $blueprint, string $name) Get the primary key command if it exists on the blueprint. |
|
array | getCommandsByName(Blueprint $blueprint, string $name) Get all of the commands with a given name. |
|
array | prefixArray(string $prefix, array $values) Add a prefix to an array of values. |
|
string | getDefaultValue(mixed $value) Format a value so that it can be used in "default" clauses. |
|
TableDiff | getDoctrineTableDiff(Blueprint $blueprint, AbstractSchemaManager $schema) Create an empty Doctrine DBAL TableDiff from the Blueprint. |
|
array | getFluentCommands() Get the fluent commands for the grammar. |
|
bool | supportsSchemaTransactions() Check if this Grammar supports schema changes wrapped in a transaction. |
Details
static void macro(string $name, object|callable $macro)
Register a custom macro.
static void mixin(object $mixin, bool $replace = true)
Mix another object into the class.
static bool hasMacro(string $name)
Checks if macro is registered.
static void flushMacros()
Flush the existing macros.
static mixed __callStatic(string $method, array $parameters)
Dynamically handle calls to the class.
mixed __call(string $method, array $parameters)
Dynamically handle calls to the class.
array wrapArray(array $values)
Wrap an array of values.
string wrapTable(Expression|string $table)
Wrap a table in keyword identifiers.
string wrap(Expression|string $value, bool $prefixAlias = false)
Wrap a value in keyword identifiers.
protected string wrapAliasedValue(string $value, bool $prefixAlias = false)
Wrap a value that has an alias.
protected string wrapSegments(array $segments)
Wrap the given value segments.
protected string wrapValue(string $value)
Wrap a single string in keyword identifiers.
protected string wrapJsonSelector(string $value)
Wrap the given JSON selector.
protected bool isJsonSelector(string $value)
Determine if the given string is a JSON selector.
string columnize(array $columns)
Convert an array of column names into a delimited string.
string parameterize(array $values)
Create query parameter place-holders for an array.
string parameter(mixed $value)
Get the appropriate query parameter place-holder for a value.
string quoteString(string|array $value)
Quote the given string literal.
string escape(string|float|int|bool|null $value, bool $binary = false)
Escapes a value for safe SQL embedding.
bool isExpression(mixed $value)
Determine if the given value is a raw expression.
string|int|float getValue(Expression|string|int|float $expression)
Transforms expressions to their scalar types.
string getDateFormat()
Get the format for database stored dates.
string getTablePrefix()
Get the grammar's table prefix.
$this setTablePrefix(string $prefix)
Set the grammar's table prefix.
$this setConnection($connection)
Set the grammar's database connection.
protected array wrapJsonFieldAndPath(string $column)
Split the given JSON selector into the field and the optional path and wrap them separately.
protected string wrapJsonPath(string $value, string $delimiter = '->')
Wrap the given JSON path.
protected string wrapJsonPathSegment(string $segment)
Wrap the given JSON path segment.
void compileCreateDatabase(string $name, Connection $connection)
Compile a create database command.
void compileDropDatabaseIfExists(string $name)
Compile a drop database if exists command.
array|string compileRenameColumn(Blueprint $blueprint, Fluent $command, Connection $connection)
Compile a rename column command.
array|string compileChange(Blueprint $blueprint, Fluent $command, Connection $connection)
Compile a change column command into a series of SQL statements.
string compileDropFullText(Blueprint $blueprint, Fluent $command)
Compile a drop fulltext index command.
protected array getColumns(Blueprint $blueprint)
Compile the blueprint's added column definitions.
protected string getType(Fluent $column)
Get the SQL for the column data type.
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 primary key command if it exists on the blueprint.
protected array getCommandsByName(Blueprint $blueprint, string $name)
Get all of the commands with a given name.
array prefixArray(string $prefix, array $values)
Add a prefix to an array of values.
protected string getDefaultValue(mixed $value)
Format a value so that it can be used in "default" clauses.
TableDiff getDoctrineTableDiff(Blueprint $blueprint, AbstractSchemaManager $schema)
Create an empty Doctrine DBAL TableDiff from the Blueprint.
array getFluentCommands()
Get the fluent commands for the grammar.
bool supportsSchemaTransactions()
Check if this Grammar supports schema changes wrapped in a transaction.
© Taylor Otwell
Licensed under the MIT License.
Laravel is a trademark of Taylor Otwell.
https://laravel.com/api/10.x/Illuminate/Database/Schema/Grammars/Grammar.html