SqlServerGrammar
class SqlServerGrammar 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 columns available as serials. |
Methods
Wrap a value that has an alias.
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 if a table exists.
Compile the query to determine the list of columns.
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 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.
in
Grammar at line 109
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 29
string
compileTableExists()
Compile the query to determine if a table exists.
at line 40
string
compileColumnListing(string $table)
Compile the query to determine the list of columns.
at line 54
string
compileCreate(Blueprint $blueprint, Fluent $command)
Compile a create table command.
at line 68
string
compileAdd(Blueprint $blueprint, Fluent $command)
Compile a column addition table command.
at line 83
string
compilePrimary(Blueprint $blueprint, Fluent $command)
Compile a primary key command.
at line 99
string
compileUnique(Blueprint $blueprint, Fluent $command)
Compile a unique key command.
at line 115
string
compileIndex(Blueprint $blueprint, Fluent $command)
Compile a plain index key command.
at line 143
string
compileDropIfExists(Blueprint $blueprint, Fluent $command)
Compile a drop table (if exists) command.
at line 158
string
compileDropColumn(Blueprint $blueprint, Fluent $command)
Compile a drop column command.
at line 172
string
compileDropPrimary(Blueprint $blueprint, Fluent $command)
Compile a drop primary key command.
at line 186
string
compileDropUnique(Blueprint $blueprint, Fluent $command)
Compile a drop unique key command.
at line 200
string
compileDropIndex(Blueprint $blueprint, Fluent $command)
Compile a drop index command.
at line 214
string
compileDropForeign(Blueprint $blueprint, Fluent $command)
Compile a drop foreign key command.
at line 228
string
compileRename(Blueprint $blueprint, Fluent $command)
Compile a rename table command.
at line 240
string
compileEnableForeignKeyConstraints()
Compile the command to enable foreign key constraints.
at line 250
string
compileDisableForeignKeyConstraints()
Compile the command to disable foreign key constraints.
at line 261
protected string
typeChar(Fluent $column)
Create the column definition for a char type.
at line 272
protected string
typeString(Fluent $column)
Create the column definition for a string type.
at line 283
protected string
typeText(Fluent $column)
Create the column definition for a text type.
at line 294
protected string
typeMediumText(Fluent $column)
Create the column definition for a medium text type.
at line 305
protected string
typeLongText(Fluent $column)
Create the column definition for a long text type.
at line 316
protected string
typeInteger(Fluent $column)
Create the column definition for an integer type.
at line 327
protected string
typeBigInteger(Fluent $column)
Create the column definition for a big integer type.
at line 338
protected string
typeMediumInteger(Fluent $column)
Create the column definition for a medium integer type.
at line 349
protected string
typeTinyInteger(Fluent $column)
Create the column definition for a tiny integer type.
at line 360
protected string
typeSmallInteger(Fluent $column)
Create the column definition for a small integer type.
at line 371
protected string
typeFloat(Fluent $column)
Create the column definition for a float type.
at line 382
protected string
typeDouble(Fluent $column)
Create the column definition for a double type.
at line 393
protected string
typeDecimal(Fluent $column)
Create the column definition for a decimal type.
at line 404
protected string
typeBoolean(Fluent $column)
Create the column definition for a boolean type.
at line 415
protected string
typeEnum(Fluent $column)
Create the column definition for an enum type.
at line 426
protected string
typeJson(Fluent $column)
Create the column definition for a json type.
at line 437
protected string
typeJsonb(Fluent $column)
Create the column definition for a jsonb type.
at line 448
protected string
typeDate(Fluent $column)
Create the column definition for a date type.
at line 459
protected string
typeDateTime(Fluent $column)
Create the column definition for a date-time type.
at line 470
protected string
typeDateTimeTz(Fluent $column)
Create the column definition for a date-time type.
at line 481
protected string
typeTime(Fluent $column)
Create the column definition for a time type.
at line 492
protected string
typeTimeTz(Fluent $column)
Create the column definition for a time type.
at line 503
protected string
typeTimestamp(Fluent $column)
Create the column definition for a timestamp type.
at line 520
protected string
typeTimestampTz(Fluent $column)
Create the column definition for a timestamp type.
at line 535
protected string
typeBinary(Fluent $column)
Create the column definition for a binary type.
at line 546
protected string
typeUuid(Fluent $column)
Create the column definition for a uuid type.
at line 557
protected string
typeIpAddress(Fluent $column)
Create the column definition for an IP address type.
at line 568
protected string
typeMacAddress(Fluent $column)
Create the column definition for a MAC address type.
at line 580
protected string|null
modifyCollate(Blueprint $blueprint, Fluent $column)
Get the SQL for a collation column modifier.
at line 594
protected string|null
modifyNullable(Blueprint $blueprint, Fluent $column)
Get the SQL for a nullable column modifier.