PostgresGrammar
class PostgresGrammar extends Grammar (View source)
Свойства
| static protected array | $macros | Зарегистрированные строковые макросы. | from Macroable |
| protected string | $tablePrefix | Префикс таблицы грамматики. | from Grammar |
| protected bool | $transactions | Если эта грамматика поддерживает изменения схемы, заключённые в транзакцию. | |
| protected string[] | $fluentCommands | Команды, которые нужно выполнить вне команды create или alter. | |
| protected string[] | $modifiers | Возможные модификаторы столбцов. | |
| protected string[] | $serials | Столбцы, доступные в качестве serial. |
Свойства
| CompilesJsonPaths | |
| Macroable |
Методы
| static void | macro(string $name, object|callable $macro)
Зарегистрировать пользовательский макрос. | из Macroable |
| static void | mixin(object $mixin, bool $replace = true)
Смешать другой объект в класс. | из Macroable |
| static bool | hasMacro(string $name)
Проверяет, зарегистрирован ли макрос. | из Macroable |
| static void | flushMacros()
Очистить существующие макросы. | из Macroable |
| static mixed | __callStatic(string $method, array $parameters)
Динамически обработать вызовы класса. | из Macroable |
| mixed | __call(string $method, array $parameters)
Динамически обработать вызовы класса. | из Macroable |
| array | wrapArray(array $values)
Оборачивает массив значений. | из Grammar |
| string | wrapTable(Expression|string $table)
Оборачивает таблицу в идентификаторы ключевых слов. | из Grammar |
| string | wrap(Expression|string $value, bool $prefixAlias = false)
Оборачивает значение в идентификаторы ключевых слов. | из Grammar |
| string | wrapAliasedValue(string $value, bool $prefixAlias = false)
Оборачивает значение, имеющее псевдоним. | из Grammar |
| string | wrapSegments(array $segments)
Оборачивает заданные сегменты значений. | из Grammar |
| string | wrapValue(string $value)
Оборачивает одну строку в идентификаторы ключевых слов. | из Grammar |
| string | wrapJsonSelector(string $value)
Оборачивает заданный JSON-селектор. | из Grammar |
| bool | isJsonSelector(string $value)
Определяет, является ли заданная строка JSON-селектором. | из Grammar |
| string | columnize(array $columns)
Преобразует массив имен столбцов в строку с разделителями. | из Grammar |
| string | parameterize(array $values)
Создает заполнитель параметров запроса для массива. | из Grammar |
| string | parameter(mixed $value)
Получить соответствующий заполнитель параметра запроса для значения. | из Grammar |
| string | quoteString(string|array $value)
Процитировать заданную строковую литерал. | из Grammar |
| bool | isExpression(mixed $value)
Определить, является ли заданное значение выражением в сыром виде. | из Grammar |
| mixed | getValue(Expression $expression)
Получить значение выражения в сыром виде. | из Grammar |
| string | getDateFormat()
Получить формат для дат, хранящихся в базе данных. | из Grammar |
| string | getTablePrefix()
Получить префикс таблицы грамматики. | из Grammar |
| $this | setTablePrefix(string $prefix)
Установить префикс таблицы грамматики. | из Grammar |
| array | wrapJsonFieldAndPath(string $column)
Разделить заданный JSON-селектор на поле и необязательный путь и обернуть их по отдельности. | из CompilesJsonPaths |
| string | compileDropFullText(Blueprint $blueprint, Fluent $command)
Скомпилировать команду удаления полнотекстового индекса. | |
| string | compileForeign(Blueprint $blueprint, Fluent $command)
Скомпилировать команду для внешнего ключа. | |
| array | getColumns(Blueprint $blueprint)
Скомпилировать определения столбцов чертежа. | from Grammar |
| string | getType(Fluent $column)
Получить SQL для типа данных столбца. | from Grammar |
| void | typeComputed(Fluent $column)
Создать определение столбца для типа сгенерированного, вычисляемого столбца. | from Grammar |
| string | addModifiers(string $sql, Blueprint $blueprint, Fluent $column)
Добавить модификаторы столбца к определению. | from Grammar |
| Fluent|null | getCommandByName(Blueprint $blueprint, string $name)
Получить команду первичного ключа, если она существует в чертеже. | from Grammar |
| array | getCommandsByName(Blueprint $blueprint, string $name)
Получить все команды с заданным именем. | from Grammar |
| array | prefixArray(string $prefix, array $values)
Добавить префикс к массиву значений. | from Grammar |
| string | getDefaultValue(mixed $value)
Отформатировать значение для использования в предложениях «по умолчанию». | from Grammar |
| TableDiff | getDoctrineTableDiff(Blueprint $blueprint, AbstractSchemaManager $schema)
Создать пустой Doctrine DBAL TableDiff из чертежа. | from Grammar |
| array | getFluentCommands() | from Grammar |
| bool | supportsSchemaTransactions()
Проверить, поддерживает ли этот Grammar изменения схемы, заключенные в транзакцию. | from Grammar |
| string | compileTableExists()
Скомпилировать запрос для определения существования таблицы. | |
| string | compileColumnListing()
Скомпилировать запрос для определения списка столбцов. | |
| array | compileCreate(Blueprint $blueprint, Fluent $command)
Скомпилировать команду создания таблицы. | |
| string | compileAdd(Blueprint $blueprint, Fluent $command)
Скомпилировать команду добавления столбца. | |
| array | compileAutoIncrementStartingValues(Blueprint $blueprint)
Скомпилировать начальные значения автоинкрементирующего столбца. | |
| 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 | compileDrop(Blueprint $blueprint, Fluent $command)
Скомпилировать команду удаления таблицы. | |
| string | compileDropIfExists(Blueprint $blueprint, Fluent $command)
Скомпилировать команду удаления таблицы (если она существует). | |
| string | compileDropAllTables(array $tables)
Скомпилировать SQL для удаления всех таблиц. | |
| string | compileDropAllViews(array $views)
Скомпилировать SQL для удаления всех представлений. | |
| string | compileDropAllTypes(array $types)
Скомпилировать SQL для удаления всех типов. | |
| string | compileGetAllTables(string|array $searchPath)
Скомпилировать SQL для получения всех имён таблиц. | |
| string | compileGetAllViews(string|array $searchPath)
Скомпилировать SQL для получения всех имён представлений. | |
| string | compileGetAllTypes()
Скомпилировать SQL для получения всех имён типов. | |
| string | compileDropColumn(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 | compileDropForeign(Blueprint $blueprint, Fluent $command)
Компилировать команду удаления внешнего ключа. | |
| string | compileRename(Blueprint $blueprint, Fluent $command)
Компилировать команду переименования таблицы. | |
| string | compileRenameIndex(Blueprint $blueprint, Fluent $command)
Компилировать команду переименования индекса. | |
| string | compileEnableForeignKeyConstraints()
Компилировать команду включения ограничений внешнего ключа. | |
| string | compileDisableForeignKeyConstraints()
Компилировать команду отключения ограничений внешнего ключа. | |
| string | compileComment(Blueprint $blueprint, Fluent $command)
Компилировать команду добавления комментария. | |
| string | compileTableComment(Blueprint $blueprint, Fluent $command)
Компилировать команду добавления комментария к таблице. | |
| array | escapeNames(array $names)
Защита названий таблиц, представлений или типов. | |
| 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 | generatableColumn(string $type, Fluent $column)
Создание определения столбца для генерируемого столбца. | |
| string | typeFloat(Fluent $column)
Создание определения столбца типа float. | |
| string | typeDouble(Fluent $column)
Создание определения столбца типа double. | |
| string | typeReal(Fluent $column)
Создание определения столбца типа real. | |
| 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)
Создание определения столбца типа datetime. | |
| string | typeDateTimeTz(Fluent $column)
Создание определения столбца типа datetime с часовым поясом. | |
| string | typeTime(Fluent $column)
Создание определения столбца типа time. |
| string | typeTimeTz(Fluent $column)
Создать определение столбца для типа времени (с часовым поясом). | |
| string | typeTimestamp(Fluent $column)
Создать определение столбца для типа timestamp. | |
| string | typeTimestampTz(Fluent $column)
Создать определение столбца для типа timestamp (с часовым поясом). | |
| 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 | typePoint(Fluent $column)
Создать определение столбца для пространственного типа Point. | |
| string | typeLineString(Fluent $column)
Создать определение столбца для пространственного типа LineString. | |
| string | typePolygon(Fluent $column)
Создать определение столбца для пространственного типа Polygon. | |
| string | typeGeometryCollection(Fluent $column)
Создать определение столбца для пространственного типа GeometryCollection. | |
| string | typeMultiPoint(Fluent $column)
Создать определение столбца для пространственного типа MultiPoint. | |
| string | typeMultiLineString(Fluent $column)
Создать определение столбца для пространственного типа MultiLineString. | |
| string | typeMultiPolygon(Fluent $column)
Создать определение столбца для пространственного типа MultiPolygon. | |
| string | typeMultiPolygonZ(Fluent $column)
Создать определение столбца для пространственного типа MultiPolygonZ. | |
| string|null | modifyCollate(Blueprint $blueprint, Fluent $column)
Получить SQL для модификатора сортировки столбца. | |
| string|null | modifyNullable(Blueprint $blueprint, Fluent $column)
Получить SQL для модификатора nullable столбца. | |
| string|null | modifyDefault(Blueprint $blueprint, Fluent $column)
Получить SQL для модификатора значения по умолчанию столбца. | |
| string|null | modifyIncrement(Blueprint $blueprint, Fluent $column)
Получить SQL для модификатора автоинкремента столбца. | |
| string|null | modifyVirtualAs(Blueprint $blueprint, Fluent $column)
Получить SQL для модификатора сгенерированного виртуального столбца. | |
| string|null | modifyStoredAs(Blueprint $blueprint, Fluent $column)
Получить SQL для модификатора сгенерированного сохранённого столбца. |
Details
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, bool $prefixAlias = false)
Оборачивание значения с алиасом.
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)
Выделение заданной строковой лителальной.
bool isExpression(mixed $value)
Определение, является ли заданное значение сырым выражением.
mixed getValue(Expression $expression)
Получение значения сырого выражения.
string getDateFormat()
Получение формата для дат, хранящихся в базе данных.
string getTablePrefix()
Получение префикса таблицы синтаксического анализатора.
$this setTablePrefix(string $prefix)
Установка префикса таблицы синтаксического анализатора.
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)
Компилировать команду drop database if exists.
array|string compileRenameColumn(Blueprint $blueprint, Fluent $command, Connection $connection)
Компилировать команду переименования столбца.
array compileChange(Blueprint $blueprint, Fluent $command, Connection $connection)
Компилировать команду изменения столбца в набор SQL-запросов.
string compileFulltext(Blueprint $blueprint, Fluent $command)
Компилировать команду создания полнотекстового индекса.
string compileDropFullText(Blueprint $blueprint, Fluent $command)
Компилировать команду удаления полнотекстового индекса.
string compileForeign(Blueprint $blueprint, Fluent $command)
Компилировать команду создания внешнего ключа.
protected array getColumns(Blueprint $blueprint)
Компилировать определения столбцов из схемы.
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)
Получить все команды с заданным именем.
array prefixArray(string $prefix, array $values)
Добавить префикс к массиву значений.
protected string getDefaultValue(mixed $value)
Форматировать значение для использования в "default" конструкциях.
TableDiff getDoctrineTableDiff(Blueprint $blueprint, AbstractSchemaManager $schema)
Создать пустой Doctrine DBAL TableDiff из Blueprint.
Массив getFluentCommands()
Получить команды fluent для грамматики.
bool supportsSchemaTransactions()
Проверить, поддерживает ли эта грамматика изменения схемы, заключённые в транзакцию.
Строка compileTableExists()
Скомпилировать запрос для определения существования таблицы.
Строка compileColumnListing()
Скомпилировать запрос для определения списка столбцов.
Массив compileCreate(Blueprint $blueprint, Fluent $command)
Скомпилировать команду создания таблицы.
Массив compileAutoIncrementStartingValues(Blueprint $blueprint)
Скомпилировать начальные значения автоинкрементирующего столбца.
Строка compilePrimary(Blueprint $blueprint, Fluent $command)
Скомпилировать команду первичного ключа.
Строка compileUnique(Blueprint $blueprint, Fluent $command)
Скомпилировать команду уникального ключа.
Строка compileSpatialIndex(Blueprint $blueprint, Fluent $command)
Скомпилировать команду пространственного индекса.
Строка compileDropIfExists(Blueprint $blueprint, Fluent $command)
Скомпилировать команду удаления таблицы (если существует).
Строка compileDropAllTables(array $tables)
Скомпилировать SQL для удаления всех таблиц.
Строка compileDropAllViews(array $views)
Скомпилировать SQL для удаления всех представлений.
Строка compileDropAllTypes(array $types)
Скомпилировать SQL для удаления всех типов.
string compileGetAllTables(string|array $searchPath)
Компилирует SQL, необходимый для получения всех имён таблиц.
string compileGetAllViews(string|array $searchPath)
Компилирует SQL, необходимый для получения всех имён представлений.
string compileGetAllTypes()
Компилирует SQL, необходимый для получения всех имён типов.
string compileDropColumn(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 compileDropForeign(Blueprint $blueprint, Fluent $command)
Компилирует команду удаления внешнего ключа.
string compileRename(Blueprint $blueprint, Fluent $command)
Компилирует команду переименования таблицы.
string compileRenameIndex(Blueprint $blueprint, Fluent $command)
Компилирует команду переименования индекса.
string compileEnableForeignKeyConstraints()
Компилирует команду для включения ограничений внешних ключей.
string compileDisableForeignKeyConstraints()
Компилирует команду для отключения ограничений внешних ключей.
string compileTableComment(Blueprint $blueprint, Fluent $command)
Компилирует команду комментария таблицы.
array escapeNames(array $names)
Применяет цитирование к заданным таблицам, представлениям или типам.
protected string typeChar(Fluent $column)
Создать определение столбца для типа char.
protected string typeString(Fluent $column)
Создать определение столбца для типа string.
protected string typeTinyText(Fluent $column)
Создать определение столбца для типа tiny text.
protected string typeText(Fluent $column)
Создать определение столбца для типа text.
protected string typeMediumText(Fluent $column)
Создать определение столбца для типа medium text.
protected string typeLongText(Fluent $column)
Создать определение столбца для типа long text.
protected string typeInteger(Fluent $column)
Создать определение столбца для типа integer.
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 generatableColumn(string $type, Fluent $column)
Создать определение столбца для генерируемого столбца.
protected string typeFloat(Fluent $column)
Создать определение столбца для типа float.
protected string typeDouble(Fluent $column)
Создать определение столбца для типа double.
protected string typeReal(Fluent $column)
Создать определение столбца для типа real.
protected string typeDecimal(Fluent $column)
Создать определение столбца для типа decimal.
protected string typeBoolean(Fluent $column)
Создать определение столбца для типа boolean.
protected string typeEnum(Fluent $column)
Создать определение столбца для типа перечисления.
protected string typeJson(Fluent $column)
Создать определение столбца для типа json.
protected string typeJsonb(Fluent $column)
Создать определение столбца для типа jsonb.
protected string typeDate(Fluent $column)
Создать определение столбца для типа date.
protected string typeDateTime(Fluent $column)
Создать определение столбца для типа date-time.
protected string typeDateTimeTz(Fluent $column)
Создать определение столбца для типа date-time (с часовым поясом).
protected string typeTime(Fluent $column)
Создать определение столбца для типа time.
protected string typeTimeTz(Fluent $column)
Создать определение столбца для типа time (с часовым поясом).
protected string typeTimestamp(Fluent $column)
Создать определение столбца для типа timestamp.
protected string typeTimestampTz(Fluent $column)
Создать определение столбца для типа timestamp (с часовым поясом).
protected string typeYear(Fluent $column)
Создать определение столбца для типа year.
protected string typeBinary(Fluent $column)
Создать определение столбца для типа binary.
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 typePoint(Fluent $column)
Создать определение столбца для пространственного типа Point.
protected string typeLineString(Fluent $column)
Создать определение столбца для пространственного типа LineString.
protected string typePolygon(Fluent $column)
Создать определение столбца для пространственного типа Polygon.
protected string typeGeometryCollection(Fluent $column)
Создать определение столбца для пространственного типа GeometryCollection.
protected string typeMultiPoint(Fluent $column)
Создать определение столбца для пространственного типа MultiPoint.
string typeMultiLineString(Fluent $column)
Создать определение столбца для пространственного типа MultiLineString.
protected string typeMultiPolygon(Fluent $column)
Создать определение столбца для пространственного типа MultiPolygon.
protected string typeMultiPolygonZ(Fluent $column)
Создать определение столбца для пространственного типа MultiPolygonZ.
protected string|null modifyCollate(Blueprint $blueprint, Fluent $column)
Получить SQL для модификатора сортировки столбца.
protected string|null modifyNullable(Blueprint $blueprint, Fluent $column)
Получить SQL для модификатора nullable столбца.
protected string|null modifyDefault(Blueprint $blueprint, Fluent $column)
Получить SQL для модификатора значения по умолчанию столбца.
protected string|null modifyIncrement(Blueprint $blueprint, Fluent $column)
Получить SQL для модификатора автоинкремента столбца.
protected string|null modifyVirtualAs(Blueprint $blueprint, Fluent $column)
Получить SQL для модификатора сгенерированного виртуального столбца.
protected string|null modifyStoredAs(Blueprint $blueprint, Fluent $column)
Получить SQL для модификатора сгенерированного хранимого столбца.
© Taylor Otwell
Licensed under the MIT License.
Laravel is a trademark of Taylor Otwell.
https://laravel.com/api/9.x/Illuminate/Database/Schema/Grammars/PostgresGrammar.html