Spec-Zone.ru › CakePHP 4.3

Класс Connection

Представляет соединение с сервером базы данных.

Пространство имен: Cake\Database

Краткое описание свойств

  • $_config protected
    array<string, mixed>

    Содержит параметры конфигурации для этого соединения.

  • $_driver protected
    Cake\Database\DriverInterface

    Объект драйвера, ответственный за создание реального соединения и предоставление конкретного диалекта SQL.

  • $_logQueries protected
    bool

    Включает ли протоколирование запросов, сгенерированных во время этого соединения.

  • $_logger protected
    Psr\Log\LoggerInterface|null

    Экземпляр объекта логгера.

  • $_schemaCollection protected
    Cake\Database\Schema\CollectionInterface|null

    Объект коллекции схем.

  • $_transactionLevel protected
    int

    Содержит количество вложенных транзакций, которые были начаты.

  • $_transactionStarted protected
    bool

    Активна ли транзакция в этом соединении.

  • $_useSavePoints protected
    bool

    Может ли и следует ли это соединение использовать сохраняемые точки для вложенных транзакций.

  • $cacher protected
    Psr\SimpleCache\CacheInterface|null

    Экземпляр объекта кэширования.

  • $nestedTransactionRollbackException protected
    Cake\Database\Exception\NestedTransactionRollbackException|null

    Объект NestedTransactionRollbackException, который будет сохранён, если метод rollback вызван в какой-либо вложенной транзакции.

Краткое описание методов

  • __construct()public

    Конструктор.

  • __debugInfo()public

    Возвращает массив, который можно использовать для описания внутреннего состояния этого объекта.

  • __destruct()public

    Деструктор

  • _newLogger()protected

    Возвращает новый объект запроса, который будет регистрировать действия для переданного исходного экземпляра запроса.

  • begin()public

    Начинает новую транзакцию.

  • cacheMetadata()public

    Включает или отключает кеширование метаданных для этого соединения

  • cast()public

    Преобразует заданное значение в подходящее значение базы данных на основе типа и возвращает соответствующий внутренний тип запроса.

  • commit()public

    Подтверждает текущую транзакцию.

  • compileQuery()public

    Компилирует объект запроса в строку SQL в соответствии с диалектом для драйвера этого соединения.

  • config()public

    Получает данные конфигурации, используемые для создания соединения.

  • configName()public

    Получает имя конфигурации для этого соединения.

  • connect()public

    Подключается к базе данных по конфигурации.

  • createSavePoint()public

    Создает новую точку сохранения для вложенных транзакций.

  • delete()public

    Выполняет операцию DELETE для указанной таблицы.

  • disableConstraints()public

    Выполняет операцию с отключенными ограничениями.

  • disableForeignKeys()public

    Выполняет драйвер-специфический SQL для отключения проверок внешних ключей.

  • disableQueryLogging()public

    Отключить протоколирование запросов

  • disableSavePoints()public

    Отключает использование точек сохранения.

  • disconnect()public

    Отключается от сервера базы данных.

  • enableForeignKeys()public

    Выполняет драйвер-специфический SQL для включения проверок внешних ключей.

  • enableQueryLogging()public

    Включить/отключить протоколирование запросов

  • enableSavePoints()public

    Включает/отключает использование точек сохранения, включает только если драйвер это позволяет.

  • execute()public

    Выполняет запрос, используя $params для интерполяции значений и $types как подсказку для каждого из этих параметров.

  • getCacher()public

    Получить кешер.

  • getDisconnectRetry()public

    Получить объект переподключения, который позволяет восстановить соединение с сервером после отключения во время выполнения определенных действий с базой данных, таких как выполнение запроса.

  • getDriver()public

    Получает экземпляр драйвера.

  • getLogger()public

    Получить объект регистратора.

  • getSchemaCollection()public

    Получает объект Schema\Collection для этого соединения.

  • inTransaction()public

    Проверяет, выполняется ли транзакция.

  • insert()public

    Выполняет запрос INSERT в указанной таблице.

  • isConnected()public

    Возвращает, было ли уже установлено соединение с сервером базы данных.

  • isQueryLoggingEnabled()public

    Проверить, включено ли протоколирование запросов.

  • isSavePointsEnabled()public

    Возвращает, использует ли это соединение точки сохранения для вложенных транзакций.

  • log()public

    Регистрирует строку запроса с использованием настроенного объекта регистратора.

  • matchTypes()public

    Сопоставляет столбцы соответствующим типам.

  • newQuery()public

    Создает новый экземпляр Query для этого соединения.

  • prepare()public

    Подготавливает SQL-запрос к выполнению.

  • query()public

    Выполняет SQL-запрос и возвращает объект Statement в качестве результата.

  • quote()public

    Приводит значение к виду, который безопасно использовать в запросах к базе данных.

  • quoteIdentifier()public

    Приводит идентификатор базы данных (имя столбца, имя таблицы и т. д.) к виду, который безопасно использовать в запросах без риска использования зарезервированных слов.

  • releaseSavePoint()public

    Освобождает точку сохранения по ее имени.

  • rollback()public

    Откатывает текущую транзакцию.

  • rollbackSavepoint()public

    Откатывает точку сохранения по ее имени.

  • run()public

    Выполняет предоставленный запрос после его компиляции для диалекта конкретного драйвера и возвращает объект Statement, который был выполнен.

  • setCacher()public

    Установить кешер.

  • setDriver()public

    Устанавливает экземпляр драйвера. Если переданная строка, она будет обработана как имя класса и будет проинициализирована.

  • setLogger()public

    Устанавливает регистратор

  • setSchemaCollection()public

    Устанавливает объект Schema\Collection для этого соединения.

  • supportsDynamicConstraints() public deprecated

    Возвращает, поддерживает ли драйвер добавление или удаление ограничений к уже созданным таблицам.

  • supportsQuoting() public

    Проверяет, поддерживается ли использование quote().

  • transactional() public

    Выполняет вызываемую функцию внутри транзакции. Если при выполнении переданной вызываемой функции произойдёт исключение, транзакция будет откачена. Если результат вызываемой функции равен false, транзакция также будет откачена. В противном случае транзакция будет подтверждена после выполнения обратного вызова.

  • update() public

    Выполняет оператор UPDATE для указанной таблицы.

  • wasNestedTransactionRolledback() protected

    Возвращает, была ли уже откачена вложенная транзакция.

Подробное описание методов

__construct() public

__construct(array<string, mixed> $config)

Конструктор.

Доступные параметры:

  • driver Имя сортировки или полное имя класса драйвера.
  • log Логический параметр, указывающий использовать ли логирование запросов.
  • name Имя подключения.
  • cacheMetaData Логический параметр, указывающий, нужно ли кэшировать метаданные (схемы источников данных). Если установлено строковое значение, оно будет использоваться как имя конфигурации кэша.
  • cacheKeyPrefix Пользовательский префикс, используемый при генерации ключей кэша. По умолчанию совпадает с именем подключения.

Параметры

array<string, mixed> $config

Массив конфигурации.

__debugInfo() public

__debugInfo(): array<string, mixed>

Возвращает массив, который можно использовать для описания внутреннего состояния этого объекта.

Возвращает

array<string, mixed>

__destruct() public

__destruct()

Деструктор

Отключает драйвер, чтобы освободить подключение.

_newLogger() protected

_newLogger(Cake\Database\StatementInterface $statement): Cake\Database\Log\LoggingStatement

Возвращает новый объект оператора, который будет регистрировать активность для переданного исходного экземпляра оператора.

Параметры

Cake\Database\StatementInterface $statement

экземпляр, который нужно декорировать

Возвращает

Cake\Database\Log\LoggingStatement

begin() public

begin(): void

Начинает новую транзакцию.

Возвращает

void

cacheMetadata() public

cacheMetadata(string|bool $cache): void

Включает или отключает кэширование метаданных для этого подключения

Изменение этого параметра не повлияет на существующие объекты коллекций схем.

Параметры

string|bool $cache

Логическое значение false для отключения кэширования метаданных или true для использования _cake_model_ или имя используемой конфигурации кэша.

Возвращает

void

cast() public

cast(mixed $value, Cake\Database\TypeInterface|string|int $type = 'string'): array

Преобразует данное значение в подходящее значение базы данных на основе типа и возвращает соответствующий внутренний тип оператора.

Параметры

mixed $value

Значение для преобразования.

Cake\Database\TypeInterface|string|int $type optional

Имя типа или экземпляр типа для использования.

Возвращает

array

commit() public

commit(): bool

Подтверждает текущую транзакцию.

Возвращает

bool

compileQuery() public

compileQuery(Cake\Database\Query $query, Cake\Database\ValueBinder $binder): string

Компилирует объект запроса в строку SQL в соответствии с диалектом для драйвера этого подключения.

Параметры

Cake\Database\Query $query

Запрос для компиляции.

Cake\Database\ValueBinder $binder

Связыватель значений.

Возвращает

string

config() public

config(): array

Получает данные конфигурации, используемые для создания подключения.

Возвращает

array

configName() public

configName(): string

Получает имя конфигурации для этого подключения.

Возвращает

string

connect() public

connect(): bool

Подключается к базе данных с заданными параметрами.

Возвращает

bool

Вызывает исключение

Cake\Database\Exception\MissingConnectionException
При невозможности установить подключение к базе данных.

createSavePoint() public

createSavePoint(string|int $name): void

Создаёт новую точку сохранения для вложенных транзакций.

Параметры

string|int $name

Имя или идентификатор точки сохранения.

Возвращает

void

delete() public

delete(string $table, array $conditions = [], array $types = []): Cake\Database\StatementInterface

Выполняет оператор DELETE для указанной таблицы.

Параметры

string $table

Таблица, из которой необходимо удалить строки.

array $conditions optional

Условия для оператора DELETE.

array $types optional

Список ассоциативных массивов, содержащих типы, которые следует использовать для преобразования.

Возвращает

Cake\Database\StatementInterface

disableConstraints() public

disableConstraints(callable $callback): mixed

Выполняет операцию с отключёнными ограничениями.

Ограничения должны быть снова включены после успешного/неуспешного выполнения обратного вызова.

Пример:

$connection->disableConstraints(function ($connection) {
  $connection->newQuery()->delete('users')->execute();
});

Параметры

callable $callback

Возвращает

mixed

disableForeignKeys() public

disableForeignKeys(): void

Выполняет специфичный для драйвера SQL для отключения проверок внешних ключей.

Возвращает

void

disableQueryLogging() public

disableQueryLogging(): $this

Отключает логирование запросов

Возвращает

$this

disableSavePoints() public

disableSavePoints(): $this

Отключает использование точек сохранения.

Возвращает

$this

disconnect() public

disconnect(): void

Отключается от сервера базы данных.

Возвращает

void

enableForeignKeys() public

enableForeignKeys(): void

Выполняет специфичный для драйвера SQL для включения проверок внешних ключей.

Возвращает

void

enableQueryLogging() public

enableQueryLogging(bool $enable = true): $this

Включает/выключает логирование запросов

Параметры

bool $enable optional

Включить/выключить логирование запросов.

Возвращает

$this

enableSavePoints() public

enableSavePoints(bool $enable = true): $this

Включает/отключает использование точек сохранения, включает только если это поддерживает драйвер.

Если вы пытаетесь включить эту функцию, убедитесь, что проверили isSavePointsEnabled() чтобы убедиться, что точки сохранения были успешно включены.

Параметры

bool $enable optional

Использовать ли точки сохранения.

Возвращает

$this

execute() public

execute(string $sql, array $params = [], array $types = []): Cake\Database\StatementInterface

Выполняет запрос, используя $params для интерполяции значений и $types как подсказку для каждого из этих параметров.

Параметры

string $sql

SQL-запрос для выполнения и интерполяции с $params.

array $params optional

Список или ассоциативный массив параметров для интерполяции в $sql как значений.

array $types optional

Список или ассоциативный массив типов, которые следует использовать для преобразования значений в запросе.

Возвращает

Cake\Database\StatementInterface

getCacher() public

getCacher(): Psr\SimpleCache\CacheInterface

Получить кэшер.

Возвращает

Psr\SimpleCache\CacheInterface

getDisconnectRetry() public

getDisconnectRetry(): Cake\Core\Retry\CommandRetry

Получить объект обработки повторных попыток подключения, который позволяет восстанавливаться после разрыва соединения с сервером при выполнении определённых действий с базой данных, таких как выполнение запроса.

Возвращает

Cake\Core\Retry\CommandRetry

getDriver() public

getDriver(): Cake\Database\DriverInterface

Получить экземпляр драйвера.

Возвращает

Cake\Database\DriverInterface

getLogger() public

getLogger(): Psr\Log\LoggerInterface

Получить объект логгера.

Возвращает

Psr\Log\LoggerInterface

getSchemaCollection() public

getSchemaCollection(): Cake\Database\Schema\CollectionInterface

Получить объект Schema\Collection для этого соединения.

Возвращает

Cake\Database\Schema\CollectionInterface

inTransaction() public

inTransaction(): bool

Проверить, выполняется ли транзакция.

Возвращает

bool

insert() public

insert(string $table, array $values, array<string, string> $types = []): Cake\Database\StatementInterface

Выполняет запрос INSERT для указанной таблицы.

Параметры

string $table

таблица, в которую нужно вставить значения

array $values

значения, которые нужно вставить

array<string, string> $types optional

список ассоциативных массивов, содержащий типы, которые нужно использовать для преобразования

Возвращает

Cake\Database\StatementInterface

isConnected() public

isConnected(): bool

Возвращает, установлено ли соединение с сервером базы данных.

Возвращает

bool

isQueryLoggingEnabled() public

isQueryLoggingEnabled(): bool

Проверить, включено ли ведение журнала запросов.

Возвращает

bool

isSavePointsEnabled() public

isSavePointsEnabled(): bool

Возвращает, использует ли это соединение сохраняемые точки для вложенных транзакций.

Возвращает

bool

log() public

log(string $sql): void

Записывает строку запроса с использованием настроенного объекта логгера.

Параметры

string $sql

строка, подлежащая записи в журнал

Возвращает

void

matchTypes() public

matchTypes(array $columns, array $types): array

Сопоставляет столбцы соответствующим типам.

И $columns, и $types должны быть основаны на числах или строковых ключах одновременно.

Параметры

array $columns

список или ассоциативный массив столбцов и параметров, которые необходимо связать с типами

array $types

список или ассоциативный массив типов

Возвращает

array

newQuery() public

newQuery(): Cake\Database\Query

Создать новый экземпляр Query для этого соединения.

Возвращает

Cake\Database\Query

prepare() public

prepare(Cake\Database\Query|string $query): Cake\Database\StatementInterface

Подготавливает SQL-запрос к выполнению.

Параметры

Cake\Database\Query|string $query

SQL-запрос, который нужно преобразовать в подготовленный запрос.

Возвращает

Cake\Database\StatementInterface

query() public

query(string $sql): Cake\Database\StatementInterface

Выполняет SQL-запрос и возвращает объект Statement в качестве результата.

Параметры

string $sql

SQL-запрос, который нужно выполнить.

Возвращает

Cake\Database\StatementInterface

quote() public

quote(mixed $value, Cake\Database\TypeInterface|string|int $type = 'string'): string

Приводит значение к цитируемому виду для безопасного использования в запросе к базе данных.

Использует PDO::quote() и требует supportsQuoting() для работы.

Параметры

mixed $value

Значение, которое нужно привести к цитируемому виду.

Cake\Database\TypeInterface|string|int $type optional

Тип, используемый для определения вида цитирования.

Возвращает

string

quoteIdentifier() public

quoteIdentifier(string $identifier): string

Приводит идентификатор базы данных (имя столбца, имя таблицы и т. д.) к цитируемому виду для безопасного использования в запросах без риска использования зарезервированных слов.

Не требует supportsQuoting() для работы.

Параметры

string $identifier

Идентификатор, который нужно привести к цитируемому виду.

Возвращает

string

releaseSavePoint() public

releaseSavePoint(string|int $name): void

Освобождает сохраняемую точку по её имени.

Параметры

string|int $name

Имя или идентификатор сохраняемой точки

Возвращает

void

rollback() public

rollback(bool|null $toBeginning = null): bool

Откатить текущую транзакцию.

Параметры

bool|null $toBeginning optional

Возвращает, должна ли транзакция быть откачена до её начала. По умолчанию false, если используются сохраняемые точки, или true, если нет.

Возвращает

bool

rollbackSavepoint() public

rollbackSavepoint(string|int $name): void

Откатить сохраняемую точку по её имени.

Параметры

string|int $name

Имя или идентификатор сохраняемой точки

Возвращает

void

run() public

run(Cake\Database\Query $query): Cake\Database\StatementInterface

Выполняет предоставленный запрос после его компиляции для конкретного диалекта драйвера и возвращает объект Statement, который был выполнен.

Параметры

Cake\Database\Query $query

запрос, который нужно выполнить

Возвращает

Cake\Database\StatementInterface

setCacher() public

setCacher(Psr\SimpleCache\CacheInterface $cacher): $this

Установить кэшер.

Параметры

Psr\SimpleCache\CacheInterface $cacher

Возвращает

$this

setDriver() public

setDriver(Cake\Database\DriverInterface|string $driver, array<string, mixed> $config = []): $this

Устанавливает экземпляр драйвера. Если передана строка, она будет обработана как имя класса и будет создана.

Параметры

Cake\Database\DriverInterface|string $driver

экземпляр драйвера для использования.

array<string, mixed> $config optional

Настройка для нового драйвера.

Возвращает

$this

Исключения

Cake\Database\Exception\MissingDriverException
При отсутствии класса драйвера.
Cake\Database\Exception\MissingExtensionException
При отсутствии PHP-расширения драйвера.

setLogger() public

setLogger(Psr\Log\LoggerInterface $logger): $this

Устанавливает логгер.

Параметры

Psr\Log\LoggerInterface $logger

Объект логгера

Возвращает

$this

setSchemaCollection() public

setSchemaCollection(Cake\Database\Schema\CollectionInterface $collection): $this

Устанавливает объект Schema\Collection для этого соединения.

Параметры

Cake\Database\Schema\CollectionInterface $collection

Объект схемы коллекции

Возвращает

$this

supportsDynamicConstraints() public

supportsDynamicConstraints(): bool

Возвращает, поддерживает ли драйвер добавление или удаление ограничений к уже созданным таблицам.

Возвращает

bool

supportsQuoting() public

supportsQuoting(): bool

Проверяет, поддерживается ли использование quote().

Это не обязательно для использования quoteIdentifier().

Возвращает

bool

transactional() public

transactional(callable $callback): mixed

Выполняет функцию вызова внутри транзакции. Если при выполнении переданной функции возникает исключение, транзакция будет откатана. Если результат функции вызова — false, транзакция также будет откатана. В противном случае транзакция подтверждается после выполнения обратного вызова.

Обратный вызов получит экземпляр соединения в качестве своего первого аргумента.

Пример:

$connection->transactional(function ($connection) {
  $connection->newQuery()->delete('users')->execute();
});

Параметры

callable $callback

Возвращает

mixed

update() public

update(string $table, array $values, array $conditions = [], array $types = []): Cake\Database\StatementInterface

Выполняет оператор UPDATE для указанной таблицы.

Параметры

string $table

таблица, для которой нужно обновить строки

array $values

значения, которые нужно обновить

array $conditions optional

условия для оператора update

array $types optional

список ассоциативных массивов, содержащих типы для преобразования

Возвращает

Cake\Database\StatementInterface

wasNestedTransactionRolledback() protected

wasNestedTransactionRolledback(): bool

Возвращает, была ли откатана какая-либо вложенная транзакция.

Возвращает

bool

Подробное описание свойств

$_config protected

Содержит параметры конфигурации для этого соединения.

Тип

array<string, mixed>

$_driver protected

Объект драйвера, ответственный за создание реального соединения и предоставление специфического диалекта SQL.

Тип

Cake\Database\DriverInterface

$_logQueries protected

Выполнять ли логирование запросов, сгенерированных во время этого соединения.

Тип

bool

$_logger protected

Экземпляр объекта логгера.

Тип

Psr\Log\LoggerInterface|null

$_schemaCollection protected

Объект коллекции схем

Тип

Cake\Database\Schema\CollectionInterface|null

$_transactionLevel protected

Содержит количество запущенных вложенных транзакций.

Тип

int

$_transactionStarted protected

Активна ли транзакция в этом соединении.

Тип

bool

$_useSavePoints protected

Может ли и должно ли это соединение использовать сохраняемые точки для вложенных транзакций.

Тип

bool

$cacher protected

Экземпляр объекта кэширования.

Тип

Psr\SimpleCache\CacheInterface|null

$nestedTransactionRollbackException protected

Экземпляр объекта NestedTransactionRollbackException, будет сохранен, если метод rollback вызван в какой-либо вложенной транзакции.

Тип

Cake\Database\Exception\NestedTransactionRollbackException|null

© 2005–present The Cake Software Foundation, Inc.
Licensed under the MIT License.
CakePHP is a registered trademark of Cake Software Foundation, Inc.
We are not endorsed by or affiliated with CakePHP.
https://api.cakephp.org/4.3/class-Cake.Database.Connection.html

Spec-Zone.ru

Настройки Оффлайн Что нового Помощь О нас
Spec-Zone .ru
спецификации, руководства, описания, API