Spec-Zone.ru › CakePHP 4.2

Класс Connection

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

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

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

  • $_config protected
    array

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

  • $_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

    Компилирует объект Query в строку 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

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

  • supportsQuoting() public

    Проверяет, поддерживает ли драйвер цитирование.

  • transactional() public

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

  • update() public

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

  • wasNestedTransactionRolledback() protected

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

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

__construct() public

__construct(array $config)

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

Доступные опции:

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

Параметры

array $config

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

__debugInfo() public

__debugInfo(): array

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

Возвращает

array

__destruct() public

__destruct()

Деструктор

Отключает драйвер для освобождения соединения.

_newLogger() protected

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

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

Параметры

Cake\Database\StatementInterface $statement

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

Возвращает

Cake\Database\Log\LoggingStatement

begin() public

begin(): void

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

Возвращает

void

cacheMetadata() public

cacheMetadata(bool|string $cache): void

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

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

Параметры

bool|string $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

Компилирует объект Query в строку 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 $types = []): Cake\Database\StatementInterface

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

Параметры

string $table

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

array $values

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

array $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(stringCake\Database\Query $query): Cake\Database\StatementInterface

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

Параметры

stringCake\Database\Query $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, string|intCake\Database\TypeInterface $type = 'string'): string

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

Параметры

mixed $value

Значение, которое нужно зациклить.

string|intCake\Database\TypeInterface $type optional

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

Возвращает

string

quoteIdentifier() public

quoteIdentifier(string $identifier): string

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

Параметры

string $identifier

Идентификатор для цитирования.

Возвращает

string

releaseSavePoint() public

releaseSavePoint(string|int $name): void

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

Параметры

string|int $name

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

Возвращает

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

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

Возвращает

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 $config = []): $this

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

Параметры

Cake\Database\DriverInterface|string $driver

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

array $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

Проверяет, поддерживает ли драйвер цитирование.

Возвращает

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

условия, которые должны быть установлены для оператора обновления

array $types optional

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

Возвращает

Cake\Database\StatementInterface

wasNestedTransactionRolledback() protected

wasNestedTransactionRolledback(): bool

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

Возвращает

bool

Подробности свойств

$_config protected

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

Тип

array

$_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.2/class-Cake.Database.Connection.html

Spec-Zone.ru

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