SqlServerGrammar
класс SqlServerGrammar расширяет Grammar (View source)
Черты
| CompilesJsonPaths | |
| Macroable |
Свойства
| static protected array | $macros | Зарегистрированные строковые макросы. | из Macroable |
| protected Connection | $connection | Подключение, используемое для экранирования значений. | из Grammar |
| protected string | $tablePrefix | Префикс таблицы грамматики. | из Grammar |
| protected string[] | $modifiers | Возможные модификаторы столбцов. | |
| protected bool | $transactions | Поддерживает ли эта грамматика изменения схемы, заключенные в транзакцию. | |
| protected string[] | $fluentCommands | Команды, которые должны выполняться за пределами команды создания или изменения. | |
| protected string[] | $serials | Столбцы, доступные как сериалы. |
Методы
| static void | macro(string $name, object|callable $macro)
Зарегистрировать пользовательский макрос. | from Macroable |
| static void | mixin(object $mixin, bool $replace = true)
Вмешать другой объект в класс. | from Macroable |
| static bool | hasMacro(string $name)
Проверяет, зарегистрирован ли макрос. | from Macroable |
| static void | flushMacros()
Очистить существующие макросы. | from Macroable |
| static mixed | __callStatic(string $method, array $parameters)
Динамически обрабатывает вызовы класса. | from Macroable |
| mixed | __call(string $method, array $parameters)
Динамически обрабатывает вызовы класса. | from Macroable |
| array | wrapArray(array $values)
Завернуть массив значений. | from Grammar |
| string | wrapTable(Expression|string $table)
Завернуть таблицу в идентификаторы ключевых слов. | |
| string | wrap(Expression|string $value, bool $prefixAlias = false)
Завернуть значение в идентификаторы ключевых слов. | from Grammar |
| string | wrapAliasedValue(string $value)
Завернуть значение, имеющее псевдоним. | from Grammar |
| string | wrapAliasedTable(string $value)
Завернуть таблицу, имеющую псевдоним. | from Grammar |
| string | wrapSegments(array $segments)
Завернуть заданные сегменты значений. | from Grammar |
| string | wrapValue(string $value)
Завернуть одиночную строку в идентификаторы ключевых слов. | from Grammar |
| string | wrapJsonSelector(string $value)
Завернуть заданный селектор JSON. | from Grammar |
| bool | isJsonSelector(string $value)
Определить, является ли заданная строка селектором JSON. | from Grammar |
| string | columnize(array $columns)
Преобразовать массив имен столбцов в строку с разделителями. | from Grammar |
| string | parameterize(array $values)
Создать заполнители для параметров запроса для массива. | from Grammar |
| string | parameter(mixed $value)
Получить соответствующий заполнитель места для параметра запроса для значения. | from Grammar |
| string | quoteString(string|array $value)
Взять в кавычки заданный строковый литерал. | |
| string | escape(string|float|int|bool|null $value, bool $binary = false)
Экранирует значение для безопасного внедрения в SQL. | from Grammar |
| bool | isExpression(mixed $value)
Определить, является ли заданное значение необработанным выражением. | from Grammar |
| string|int|float | getValue(Expression|string|int|float $expression)
Преобразует выражения в их скалярные типы. | from Grammar |
| string | getDateFormat()
Получить формат для дат, хранящихся в базе данных. | from Grammar |
| string | getTablePrefix()
Получить префикс таблицы грамматики. | from Grammar |
| $this | setTablePrefix(string $prefix)
Установить префикс таблицы грамматики. | from Grammar |
| $this | setConnection(Connection $connection)
Установить соединение с базой данных грамматики. | from Grammar |
| array | wrapJsonFieldAndPath(string $column)
Разделить заданный селектор JSON на поле и необязательный путь и обернуть их по отдельности. | from CompilesJsonPaths |
| string | wrapJsonPath(string $value, string $delimiter = '->')
Завернуть заданный путь JSON. | from CompilesJsonPaths |
| string | wrapJsonPathSegment(string $segment)
Завернуть заданный сегмент пути JSON. | from CompilesJsonPaths |
| void | compileCreateDatabase(string $name, Connection $connection)
Скомпилировать команду создания базы данных. | |
| void | compileDropDatabaseIfExists(string $name)
Скомпилировать команду удаления базы данных, если она существует. | |
| array|string | compileRenameColumn(Blueprint $blueprint, Fluent $command, Connection $connection)
Скомпилировать команду переименования столбца. |
| array|string | compileChange(Blueprint $blueprint, Fluent $command, Connection $connection)
Компиляция команды изменения столбца в серию SQL-запросов. | |
| string | compileFulltext(Blueprint $blueprint, Fluent $command)
Компиляция команды создания ключа полнотекстового индекса. | из Grammar |
| string | compileDropFullText(Blueprint $blueprint, Fluent $command)
Компиляция команды удаления полнотекстового индекса. | из Grammar |
| string | compileForeign(Blueprint $blueprint, Fluent $command)
Компиляция команды внешнего ключа. | из Grammar |
| string | compileDropForeign(Blueprint $blueprint, Fluent $command)
Компиляция команды удаления внешнего ключа. | |
| array | getColumns(Blueprint $blueprint)
Компиляция определений добавленных столбцов чертежа. | из Grammar |
| string | getColumn(Blueprint $blueprint, ColumnDefinition $column)
Компиляция определения столбца. | из Grammar |
| string | getType(Fluent $column)
Получение SQL-кода для типа данных столбца. | из Grammar |
| void | typeComputed(Fluent $column)
Создание определения столбца для сгенерированного, вычисляемого типа столбца. | |
| string | addModifiers(string $sql, Blueprint $blueprint, Fluent $column)
Добавление модификаторов столбца к определению. | из Grammar |
| Fluent|null | getCommandByName(Blueprint $blueprint, string $name)
Получение команды с заданным именем, если она существует в чертеже. | из Grammar |
| array | getCommandsByName(Blueprint $blueprint, string $name)
Получение всех команд с заданным именем. | из Grammar |
| hasCommand(Blueprint $blueprint, $name) No description | из Grammar | |
| array | prefixArray(string $prefix, array $values)
Добавление префикса к массиву значений. | из Grammar |
| string | getDefaultValue(mixed $value)
Форматирование значения для использования в предложениях "default". | из Grammar |
| array | getFluentCommands()
Получение плавных команд для грамматики. | из Grammar |
| bool | supportsSchemaTransactions()
Проверка, поддерживает ли эта грамматика изменения схемы, заключенные в транзакцию. | из Grammar |
| string | compileDefaultSchema()
Компиляция запроса для определения имени схемы по умолчанию. | |
| string | compileTables()
Компиляция запроса для определения таблиц. | |
| string | compileViews()
Компиляция запроса для определения представлений. | |
| string | compileColumns(string $schema, string $table)
Компиляция запроса для определения столбцов. | |
| string | compileIndexes(string $schema, string $table)
Компиляция запроса для определения индексов. | |
| string | compileForeignKeys(string $schema, string $table)
Компиляция запроса для определения внешних ключей. | |
| string | compileCreate(Blueprint $blueprint, Fluent $command)
Компиляция команды создания таблицы. | |
| string | compileAdd(Blueprint $blueprint, Fluent $command)
Компиляция команды добавления столбца в таблицу. | |
| string | compilePrimary(Blueprint $blueprint, Fluent $command)
Компиляция команды первичного ключа. | |
| string | compileUnique(Blueprint $blueprint, Fluent $command)
Компиляция команды уникального ключа. | |
| string | compileIndex(Blueprint $blueprint, Fluent $command)
Компиляция команды простого ключа индекса. | |
| string | compileSpatialIndex(Blueprint $blueprint, Fluent $command)
Компиляция команды ключа пространственного индекса. | |
| string|null | compileDefault(Blueprint $blueprint, Fluent $command)
Компиляция команды значения по умолчанию. |
| string | compileDrop(Blueprint $blueprint, Fluent $command)
Компиляция команды удаления таблицы. | |
| string | compileDropIfExists(Blueprint $blueprint, Fluent $command)
Компиляция команды удаления таблицы (если существует). | |
| string | compileDropAllTables()
Компиляция SQL-кода, необходимого для удаления всех таблиц. | |
| string | compileDropColumn(Blueprint $blueprint, Fluent $command)
Компиляция команды удаления столбца. | |
| string | compileDropDefaultConstraint(Blueprint $blueprint, Fluent $command)
Компиляция команды удаления ограничения по умолчанию. | |
| string | compileDropPrimary(Blueprint $blueprint, Fluent $command)
Компиляция команды удаления первичного ключа. | |
| string | compileDropUnique(Blueprint $blueprint, Fluent $command)
Компиляция команды удаления уникального ключа. | |
| string | compileDropIndex(Blueprint $blueprint, Fluent $command)
Компиляция команды удаления индекса. | |
| string | compileDropSpatialIndex(Blueprint $blueprint, Fluent $command)
Компиляция команды удаления пространственного индекса. | |
| string | compileRename(Blueprint $blueprint, Fluent $command)
Компиляция команды переименования таблицы. | |
| string | compileRenameIndex(Blueprint $blueprint, Fluent $command)
Компиляция команды переименования индекса. | |
| string | compileEnableForeignKeyConstraints()
Компиляция команды включения ограничений внешнего ключа. | |
| string | compileDisableForeignKeyConstraints()
Компиляция команды отключения ограничений внешнего ключа. | |
| string | compileDropAllForeignKeys()
Компиляция команды удаления всех внешних ключей. | |
| string | compileDropAllViews()
Компиляция команды удаления всех представлений. | |
| string | typeChar(Fluent $column)
Создание определения столбца для типа char. | |
| string | typeString(Fluent $column)
Создание определения столбца для типа string. | |
| string | typeTinyText(Fluent $column)
Создание определения столбца для типа tiny text. | |
| string | typeText(Fluent $column)
Создание определения столбца для типа text. | |
| string | typeMediumText(Fluent $column)
Создание определения столбца для типа medium text. | |
| string | typeLongText(Fluent $column)
Создание определения столбца для типа long text. | |
| string | typeInteger(Fluent $column)
Создание определения столбца для типа integer. | |
| string | typeBigInteger(Fluent $column)
Создание определения столбца для типа big integer. | |
| string | typeMediumInteger(Fluent $column)
Создание определения столбца для типа medium integer. | |
| string | typeTinyInteger(Fluent $column)
Создание определения столбца для типа tiny integer. | |
| string | typeSmallInteger(Fluent $column)
Создание определения столбца для типа small integer. | |
| string | typeFloat(Fluent $column)
Создание определения столбца для типа float. | |
| string | typeDouble(Fluent $column)
Создание определения столбца для типа double. | |
| string | typeDecimal(Fluent $column)
Создание определения столбца для типа decimal. | |
| string | typeBoolean(Fluent $column)
Создание определения столбца для типа boolean. | |
| string | typeEnum(Fluent $column)
Создание определения столбца для типа enumeration. | |
| string | typeJson(Fluent $column)
Создание определения столбца для типа json. | |
| string | typeJsonb(Fluent $column)
Создание определения столбца для типа jsonb. | |
| string | typeDate(Fluent $column)
Создание определения столбца для типа date. | |
| string | typeDateTime(Fluent $column)
Создание определения столбца для типа date-time. | |
| string | typeDateTimeTz(Fluent $column)
Создание определения столбца для типа date-time (с часовым поясом). |
| string | typeTime(Fluent $column)
Создать определение столбца для типа времени. | |
| string | typeTimeTz(Fluent $column)
Создать определение столбца для типа времени (с часовым поясом). | |
| string | typeTimestamp(Fluent $column)
Создать определение столбца для типа метки времени. | |
| string | typeTimestampTz(Fluent $column)
Создать определение столбца для типа метки времени (с часовым поясом). | |
| string | typeYear(Fluent $column)
Создать определение столбца для типа года. | |
| string | typeBinary(Fluent $column)
Создать определение столбца для двоичного типа. | |
| string | typeUuid(Fluent $column)
Создать определение столбца для типа uuid. | |
| string | typeIpAddress(Fluent $column)
Создать определение столбца для типа IP-адреса. | |
| string | typeMacAddress(Fluent $column)
Создать определение столбца для типа MAC-адреса. | |
| string | typeGeometry(Fluent $column)
Создать определение столбца для пространственного типа Geometry. | |
| string | typeGeography(Fluent $column)
Создать определение столбца для пространственного типа Geography. | |
| string|null | modifyCollate(Blueprint $blueprint, Fluent $column)
Получить SQL для модификатора столбца сортировки. | |
| string|null | modifyNullable(Blueprint $blueprint, Fluent $column)
Получить SQL для модификатора столбца допуска нулевых значений. | |
| string|null | modifyDefault(Blueprint $blueprint, Fluent $column)
Получить SQL для модификатора столбца значения по умолчанию. | |
| string|null | modifyIncrement(Blueprint $blueprint, Fluent $column)
Получить SQL для модификатора столбца автоматической нумерации. | |
| string|null | modifyPersisted(Blueprint $blueprint, Fluent $column)
Получить SQL для модификатора столбца хранимого вычисляемого значения. |
Подробности
static void macro(string $name, object|callable $macro)
Зарегистрировать пользовательский макрос.
static void mixin(object $mixin, bool $replace = true)
Вмешать другой объект в класс.
static bool hasMacro(string $name)
Проверить, зарегистрирован ли макрос.
static void flushMacros()
Очистить существующие макросы.
static mixed __callStatic(string $method, array $parameters)
Динамически обрабатывать вызовы класса.
mixed __call(string $method, array $parameters)
Динамически обрабатывать вызовы класса.
array wrapArray(array $values)
Завернуть массив значений.
string wrapTable(Expression|string $table)
Завернуть таблицу в идентификаторы ключевых слов.
string wrap(Expression|string $value, bool $prefixAlias = false)
Завернуть значение в идентификаторы ключевых слов.
protected string wrapAliasedValue(string $value)
Завернуть значение, имеющее псевдоним.
protected string wrapAliasedTable(string $value)
Оборачивает таблицу с псевдонимом.
protected string wrapSegments(array $segments)
Оборачивает заданные сегменты значений.
protected string wrapValue(string $value)
Оборачивает одиночную строку в идентификаторах ключевых слов.
protected string wrapJsonSelector(string $value)
Оборачивает заданный JSON-селектор.
protected bool isJsonSelector(string $value)
Определяет, является ли заданная строка JSON-селектором.
string columnize(array $columns)
Преобразует массив имен столбцов в разделительную строку.
string parameterize(array $values)
Создает заполнители для параметров запроса для массива.
string parameter(mixed $value)
Получает соответствующий заполняющий параметр запроса для значения.
string quoteString(string|array $value)
Кавычки для заданной строковой константы.
string escape(string|float|int|bool|null $value, bool $binary = false)
Экранирует значение для безопасного внедрения в SQL.
bool isExpression(mixed $value)
Определяет, является ли заданное значение сырым выражением.
string|int|float getValue(Expression|string|int|float $expression)
Преобразует выражения в их скалярные типы.
string getDateFormat()
Получить формат для дат, хранящихся в базе данных.
string getTablePrefix()
Получить префикс таблицы грамматики.
$this setTablePrefix(string $prefix)
Установить префикс таблицы грамматики.
$this setConnection(Connection $connection)
Установить подключение к базе данных грамматики.
protected array wrapJsonFieldAndPath(string $column)
Разделить заданный JSON-селектор на поле и необязательный путь и обернуть их отдельно.
protected string wrapJsonPath(string $value, string $delimiter = '->')
Оборачивает заданный JSON-путь.
protected string wrapJsonPathSegment(string $segment)
Оборачивает заданный сегмент JSON-пути.
void compileCreateDatabase(string $name, Connection $connection)
Компилирует команду создания базы данных.
void compileDropDatabaseIfExists(string $name)
Компилирует команду удаления базы данных, если она существует.
array|string compileRenameColumn(Blueprint $blueprint, Fluent $command, Connection $connection)
Компиляция команды переименования столбца.
array|string compileChange(Blueprint $blueprint, Fluent $command, Connection $connection)
Компиляция команды изменения столбца в серию SQL-запросов.
string compileFulltext(Blueprint $blueprint, Fluent $command)
Компиляция команды создания ключа полнотекстового индекса.
string compileDropFullText(Blueprint $blueprint, Fluent $command)
Компиляция команды удаления полнотекстового индекса.
string compileDropForeign(Blueprint $blueprint, Fluent $command)
Компиляция команды удаления внешнего ключа.
protected array getColumns(Blueprint $blueprint)
Компиляция определений добавленных столбцов проекта.
protected string getColumn(Blueprint $blueprint, ColumnDefinition $column)
Компиляция определения столбца.
protected string getType(Fluent $column)
Получение SQL-кода для типа данных столбца.
protected void typeComputed(Fluent $column)
Создание определения столбца для сгенерированного, вычисляемого типа столбца.
protected string addModifiers(string $sql, Blueprint $blueprint, Fluent $column)
Добавление модификаторов столбца к определению.
protected Fluent|null getCommandByName(Blueprint $blueprint, string $name)
Получение команды с заданным именем, если она существует в проекте.
protected array getCommandsByName(Blueprint $blueprint, string $name)
Получение всех команд с заданным именем.
protected hasCommand(Blueprint $blueprint, $name)
Нет описания
array prefixArray(string $prefix, array $values)
Добавить префикс к массиву значений.
protected string getDefaultValue(mixed $value)
Форматировать значение так, чтобы его можно было использовать в предложениях "default".
array getFluentCommands()
Получить команды fluent для грамматики.
bool supportsSchemaTransactions()
Проверить, поддерживает ли эта грамматика изменения схемы, заключенные в транзакцию.
string compileDefaultSchema()
Компилировать запрос для определения имени схемы по умолчанию.
string compileTables()
Компилировать запрос для определения таблиц.
string compileViews()
Компилировать запрос для определения представлений.
string compileColumns(string $schema, string $table)
Компилировать запрос для определения столбцов.
string compileIndexes(string $schema, string $table)
Компилировать запрос для определения индексов.
string compileForeignKeys(string $schema, string $table)
Компилировать запрос для определения внешних ключей.
string compileAdd(Blueprint $blueprint, Fluent $command)
Компилировать команду добавления столбца в таблицу.
string compilePrimary(Blueprint $blueprint, Fluent $command)
Компилировать команду первичного ключа.
string compileUnique(Blueprint $blueprint, Fluent $command)
Компилировать команду уникального ключа.
string compileIndex(Blueprint $blueprint, Fluent $command)
Компилировать команду простого индексного ключа.
string compileSpatialIndex(Blueprint $blueprint, Fluent $command)
Компилировать команду пространственного индексного ключа.
string|null compileDefault(Blueprint $blueprint, Fluent $command)
Компилировать команду значения по умолчанию.
string compileDropIfExists(Blueprint $blueprint, Fluent $command)
Скомпилировать команду удаления таблицы (если существует).
string compileDropAllTables()
Скомпилировать SQL-запрос, необходимый для удаления всех таблиц.
string compileDropColumn(Blueprint $blueprint, Fluent $command)
Скомпилировать команду удаления столбца.
string compileDropDefaultConstraint(Blueprint $blueprint, Fluent $command)
Скомпилировать команду удаления ограничения по умолчанию.
string compileDropPrimary(Blueprint $blueprint, Fluent $command)
Скомпилировать команду удаления первичного ключа.
string compileDropUnique(Blueprint $blueprint, Fluent $command)
Скомпилировать команду удаления уникального ключа.
string compileDropIndex(Blueprint $blueprint, Fluent $command)
Скомпилировать команду удаления индекса.
string compileDropSpatialIndex(Blueprint $blueprint, Fluent $command)
Скомпилировать команду удаления пространственного индекса.
string compileRename(Blueprint $blueprint, Fluent $command)
Скомпилировать команду переименования таблицы.
string compileRenameIndex(Blueprint $blueprint, Fluent $command)
Скомпилировать команду переименования индекса.
string compileEnableForeignKeyConstraints()
Скомпилировать команду включения ограничений внешнего ключа.
string compileDisableForeignKeyConstraints()
Скомпилировать команду отключения ограничений внешнего ключа.
string compileDropAllForeignKeys()
Скомпилировать команду удаления всех внешних ключей.
string compileDropAllViews()
Скомпилировать команду удаления всех представлений.
protected string typeChar(Fluent $column)
Создать определение столбца для типа char.
protected string typeString(Fluent $column)
Создать определение столбца для строкового типа.
protected string typeTinyText(Fluent $column)
Создать определение столбца для типа tiny text.
protected string typeText(Fluent $column)
Создать определение столбца для текстового типа.
protected string typeMediumText(Fluent $column)
Создать определение столбца для типа medium text.
protected string typeLongText(Fluent $column)
Создать определение столбца для типа long text.
protected string typeInteger(Fluent $column)
Создать определение столбца для целочисленного типа.
protected string typeBigInteger(Fluent $column)
Создать определение столбца для типа big integer.
protected string typeMediumInteger(Fluent $column)
Создать определение столбца для типа medium integer.
protected string typeTinyInteger(Fluent $column)
Создать определение столбца для типа tiny integer.
protected string typeSmallInteger(Fluent $column)
Создать определение столбца для типа small integer.
protected string typeFloat(Fluent $column)
Создать определение столбца для типа float.
protected string typeDouble(Fluent $column)
Создать определение столбца для типа double.
protected string typeDecimal(Fluent $column)
Создать определение столбца для типа decimal.
protected string typeBoolean(Fluent $column)
Создать определение столбца для булевого типа.
protected string typeEnum(Fluent $column)
Создать определение столбца для типа перечисления.
protected string typeJson(Fluent $column)
Создать определение столбца для типа json.
protected string typeJsonb(Fluent $column)
Создать определение столбца для типа jsonb.
protected string typeDate(Fluent $column)
Создать определение столбца для типа даты.
protected string typeDateTime(Fluent $column)
Создать определение столбца для типа даты и времени.
protected string typeDateTimeTz(Fluent $column)
Создать определение столбца для типа даты и времени (с часовым поясом).
protected string typeTime(Fluent $column)
Создать определение столбца для типа времени.
protected string typeTimeTz(Fluent $column)
Создать определение столбца для типа времени (с часовым поясом).
protected string typeTimestamp(Fluent $column)
Создать определение столбца для типа метки времени.
protected string typeTimestampTz(Fluent $column)
Создать определение столбца для типа метки времени (с часовым поясом).
protected string typeYear(Fluent $column)
Создать определение столбца для типа года.
protected string typeBinary(Fluent $column)
Создать определение столбца для двоичного типа.
protected string typeUuid(Fluent $column)
Создать определение столбца для типа uuid.
protected string typeIpAddress(Fluent $column)
Создать определение столбца для типа IP-адреса.
protected string typeMacAddress(Fluent $column)
Создать определение столбца для типа MAC-адреса.
protected string typeGeometry(Fluent $column)
Создать определение столбца для пространственного типа Geometry.
protected string typeGeography(Fluent $column)
Создать определение столбца для пространственного типа Geography.
protected string|null modifyCollate(Blueprint $blueprint, Fluent $column)
Получить SQL для модификатора столбца сортировки.
protected string|null modifyNullable(Blueprint $blueprint, Fluent $column)
Получить SQL для модификатора столбца допускающего NULL.
protected string|null modifyDefault(Blueprint $blueprint, Fluent $column)
Получить SQL для модификатора столбца по умолчанию.
protected string|null modifyIncrement(Blueprint $blueprint, Fluent $column)
Получить SQL для модификатора столбца с автоинкрементом.
protected string|null modifyPersisted(Blueprint $blueprint, Fluent $column)
Получить SQL для модификатора хранимого столбца, сгенерированного системой.
© Taylor Otwell
Licensed under the MIT License.
Laravel is a trademark of Taylor Otwell.
https://laravel.com/api/11.x/Illuminate/Database/Schema/Grammars/SqlServerGrammar.html