Spec-Zone.ru › CakePHP 3.6

Класс Connection

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

Cake\Database\Connection реализует Cake\Datasource\ConnectionInterface использует Cake\Database\TypeConverterTrait
Пространство имён: Cake\Database
Расположение: Database/Connection.php

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

  • $_config protected
    array
    Содержит параметры конфигурации для этого подключения.
  • $_driver protected
    Cake\Database\Driver

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

  • $_logQueries protected
    boolean
    Включает ли протоколирование запросов, генерируемых во время этого подключения.
  • $_logger protected
    Cake\Database\Log\QueryLogger|null
    Экземпляр объекта логгера.
  • $_schemaCollection protected
    Cake\Database\Schema\Collection|null
    Объект коллекции схем.
  • $_transactionLevel protected
    integer
    Содержит количество начатых вложенных транзакций.
  • $_transactionStarted protected
    boolean
    Активна ли транзакция в этом подключении.
  • $_useSavePoints protected
    boolean

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

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

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

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

  • __construct() public
    Конструктор.
  • __debugInfo() public

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

  • __destruct() public
    Деструктор
  • _newLogger() protected

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

  • begin() public
    Начинает новую транзакцию.
  • cacheMetadata() public
    Включает или отключает кеширование метаданных для этого соединения
  • commit() public
    Подтверждает текущую транзакцию.
  • compileQuery() public

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

  • config() public
    Получает данные конфигурации, используемые для создания соединения.
  • configName() public
    Получает имя конфигурации для этого соединения.
  • connect() public
    Подключается к конфигурированной базе данных.
  • createSavePoint() public
    Создаёт новую точку сохранения для вложенных транзакций.
  • delete() public
    Выполняет оператор DELETE для указанной таблицы.
  • disableConstraints() public
    Выполняет операцию с отключёнными ограничениями.
  • disableForeignKeys() public
    Выполняет драйвер-специфичный SQL для отключения проверок внешних ключей.
  • disconnect() public
    Отключается от сервера базы данных.
  • driver() public deprecated

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

  • enableForeignKeys() public
    Выполняет драйвер-специфичный SQL для включения проверок внешних ключей.
  • enableSavePoints() public
    Включает/выключает использование точек сохранения, включает только если это разрешено драйвером.
  • execute() public

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

  • getDisconnectRetry() public

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

  • getDriver() public
    Получает экземпляр драйвера.
  • getLogger() public
    Получает объект логгера
  • getSchemaCollection() public
    Получает объект Schema\Collection для этого соединения.
  • inTransaction() public
    Проверяет, выполняется ли транзакция.
  • insert() public
    Выполняет запрос INSERT для указанной таблицы.
  • isConnected() public
    Возвращает, установлено ли соединение с сервером базы данных.
  • isSavePointsEnabled() public
    Возвращает, использует ли это соединение точки сохранения для вложенных транзакций.
  • log() public
    Регистрирует строку запроса с использованием настроенного объекта логгера.
  • logQueries() public
    Включает или отключает регистрацию запросов для этого соединения.
  • logger() public deprecated

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

  • newQuery() public
    Создаёт новый экземпляр Query для этого соединения.
  • prepare() public
    Подготавливает оператор SQL для выполнения.
  • query() public
    Выполняет оператор SQL и возвращает объект Statement в качестве результата.
  • quote() public
    Выделяет значение для безопасного использования в запросе к базе данных.
  • quoteIdentifier() public

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

  • releaseSavePoint() public
    Освобождает точку сохранения по её имени.
  • rollback() public
    Откатывает текущую транзакцию.
  • rollbackSavepoint() public
    Откатывает точку сохранения по её имени.
  • run() public

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

  • schemaCollection() public deprecated
    Получает или задаёт объект Schema\Collection для этого соединения.
  • setDriver() public

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

  • setLogger() public
    Устанавливает логгер
  • setSchemaCollection() public
    Устанавливает объект Schema\Collection для этого соединения.
  • supportsDynamicConstraints() public

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

  • supportsQuoting() public
    Проверяет, поддерживает ли драйвер выделение.
  • transactional() public

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

  • update() public
    Выполняет оператор UPDATE для указанной таблицы.
  • useSavePoints() public deprecated

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

  • wasNestedTransactionRolledback() protected
    Возвращает, была ли уже отменена вложенная транзакция.

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

__construct()source public

__construct( array $config )

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

Параметры

массив $config
конфигурация для подключения к базе данных

__debugInfo()source public

__debugInfo( )

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

Возвращает

array

__destruct()source public

__destruct( )

Деструктор

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

_newLogger()source protected

_newLogger( Cake\Database\StatementInterface $statement )

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

Параметры

Cake\Database\StatementInterface $statement
экземпляр для обработки

Возвращает

Cake\Database\Log\LoggingStatement

begin()source public

begin( )

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

cacheMetadata()source public

cacheMetadata( boolean|string $cache )

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

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

Параметры

boolean|string $cache

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

commit()source public

commit( )

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

Возвращает

boolean
true при успехе, false в противном случае

compileQuery()source public

compileQuery( Cake\Database\Query $query , Cake\Database\ValueBinder $generator )

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

Параметры

Cake\Database\Query $query
Запрос для компиляции
Cake\Database\ValueBinder $generator
Генератор плейсхолдеров для использования

Возвращает

string

config()source public

config( )

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

Возвращает

array

Реализация

Cake\Datasource\ConnectionInterface::config()

configName()source public

configName( )

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

Возвращает

string

Реализация

Cake\Datasource\ConnectionInterface::configName()

connect()source public

connect( )

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

Возвращает

boolean
true, если соединение уже установлено или попытка была успешной.

Выбрасывает

Cake\Database\Exception\MissingConnectionException
если учетные данные неверны.

createSavePoint()source public

createSavePoint( string $name )

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

Параметры

string $name
Имя точки сохранения.

delete()source public

delete( string $table , array $conditions = [] , array $types = [] )

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

Параметры

string $table
таблица, из которой удаляются строки
array $conditions optional []
условия для оператора DELETE
array $types optional []
список ассоциативных массивов, содержащих типы, которые будут использоваться для приведения типов

Возвращает

Cake\Database\StatementInterface

disableConstraints()source public

disableConstraints( callable $callback )

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

Пример:

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

Параметры

callable $callback
$operation Обработчик для выполнения внутри транзакции.

Возвращает

mixed
Значение, возвращаемое обработчиком.

Выбрасывает

Exception

Перебросит любое исключение, поднятое в $callback, после отката транзакции.


Реализация

Cake\Datasource\ConnectionInterface::disableConstraints()

disableForeignKeys()source public

disableForeignKeys( )

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

disconnect()source public

disconnect( )

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

driver()source public deprecated

driver( Cake\Database\Driver|string|null $driver = null , array $config = [] )

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

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

Устарело

3.4.0 Используйте setDriver()/getDriver() вместо этого.

Параметры

Cake\Database\Driver|string|null $driver optional null
Экземпляр драйвера для использования.
array $config optional []
либо конфигурация для нового драйвера, либо null.

Возвращает

Cake\Database\Driver

Выбрасывает

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

enableForeignKeys()source public

enableForeignKeys( )

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

enableSavePoints()source public

enableSavePoints( boolean $enable )

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

Если вы пытаетесь включить эту функцию, убедитесь, что вы проверили возвращаемое значение этой функции, чтобы убедиться, что она была включена успешно.

Пример:

$connection->enableSavePoints(true) Возвращает true, если драйвер поддерживает точки сохранения, иначе false $connection->enableSavePoints(false) Отключает использование точек сохранения и возвращает false

Параметры

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

Возвращает


$this

execute()source public

execute( string $query , array $params = [] , array $types = [] )

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

Параметры

string $query
SQL запрос, который будет выполнен и интерполирован с $params
array $params optional []
список или ассоциативный массив параметров, которые будут интерполированы в $query как значения
array $types optional []
список или ассоциативный массив типов, которые будут использоваться для приведения типов значений в запросе

Возвращает

Cake\Database\StatementInterface
выполненный запрос

getDisconnectRetry()source public

getDisconnectRetry( )

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

Возвращает

Cake\Core\Retry\CommandRetry
Объект повторных попыток

getDriver()source public

getDriver( )

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

Возвращает

Cake\Database\Driver

getLogger()source public

getLogger( )

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

Возвращает

Cake\Database\Log\QueryLogger
экземпляр логгера

getSchemaCollection()source public

getSchemaCollection( )

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

Возвращает

Cake\Database\Schema\Collection

inTransaction()source public

inTransaction( )

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

Возвращает

boolean
True, если транзакция запущена, иначе false.

insert()source public

insert( string $table , array $data , array $types = [] )

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

Параметры

строка $table
таблица для вставки значений
массив $data
значения для вставки
массив $types необязательно []
список ассоциативных массивов, содержащих типы для преобразования

Возвращает

Cake\Database\StatementInterface

isConnected()source public

isConnected( )

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

Возвращает

boolean

isSavePointsEnabled()source public

isSavePointsEnabled( )

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

Возвращает

boolean
true, если включено, иначе false

log()source public

log( string $sql )

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

Параметры

строка $sql
строка для записи

logQueries()source public

logQueries( boolean|null $enable = null )

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

Параметры

boolean|null $enable необязательно null

включить или отключить протоколирование. Использовать null для чтения текущего значения.

Возвращает

boolean

Реализация

Cake\Datasource\ConnectionInterface::logQueries()

logger()source public deprecated

logger( object|null $instance = null )

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

Устарело

3.5.0 Используйте getLogger() и setLogger() вместо этого.

Параметры

объект|null $instance необязательно null
экземпляр объекта логгера

Возвращает

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

Реализация

Cake\Datasource\ConnectionInterface::logger()

newQuery()source public

newQuery( )

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

Возвращает

Cake\Database\Query

prepare()source public

prepare( string|Cake\Database\Query $sql )

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

Параметры

строка|Cake\Database\Query $sql
SQL-запрос для преобразования в подготовленный запрос.

Возвращает

Cake\Database\StatementInterface

query()source public

query( string $sql )

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

Параметры

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

Возвращает

Cake\Database\StatementInterface

quote()source public

quote( mixed $value , string|null $type = null )

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

Параметры

смешанный $value
Значение для приведения к виду, безопасному для использования в запросах к базе данных.
строка|null $type необязательно null
Тип для определения типа приведения

Возвращает

строка
Приведённое значение

quoteIdentifier()source public

quoteIdentifier( string $identifier )

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

Параметры

строка $identifier
Идентификатор для приведения к виду, безопасному для использования в запросах.

Возвращает

строка

releaseSavePoint()source public

releaseSavePoint( string $name )

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

Параметры

строка $name
Имя сохраняемой точки.

rollback()source public

rollback( boolean|null $toBeginning = null )

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

Параметры

boolean|null $toBeginning необязательно null

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

Возвращает

boolean

rollbackSavepoint()source public

rollbackSavepoint( string $name )

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

Параметры

строка $name
Имя сохраняемой точки.

run()source public

run( Cake\Database\Query $query )

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

Параметры

Cake\Database\Query $query
Запрос для выполнения

Возвращает

Cake\Database\StatementInterface
исполненный запрос

schemaCollection()source public deprecated

schemaCollection( Cake\Database\Schema\Collection $collection = null )

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

Устарело

3.4.0 Используйте setSchemaCollection()/getSchemaCollection()

Параметры

Cake\Database\Schema\Collection $collection необязательно null
объект коллекции схемы

Возвращает

Cake\Database\Schema\Collection
END_OF_DOCUMENT_MARKER

setDriver()source public

setDriver( Cake\Database\Driver|string $driver , array $config = [] )

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

Параметры

Cake\Database\Driver|string $driver
Экземпляр драйвера для использования.
array $config optional []
Настройка нового драйвера.

Возвращает


$this

Выбрасывает

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

setLogger()source public

setLogger( Cake\Database\Log\QueryLogger $logger )

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

Параметры

Cake\Database\Log\QueryLogger $logger
Объект логгера

Возвращает


$this

setSchemaCollection()source public

setSchemaCollection( Cake\Database\Schema\Collection $collection )

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

Параметры

Cake\Database\Schema\Collection $collection
Объект схемы коллекции

Возвращает


$this

supportsDynamicConstraints()source public

supportsDynamicConstraints( )

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

Возвращает

boolean
true, если драйвер поддерживает динамические ограничения

supportsQuoting()source public

supportsQuoting( )

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

Возвращает

boolean

transactional()source public

transactional( callable $callback )

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

Пример:

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

Параметры

callable $callback
$transaction Обратный вызов для выполнения внутри транзакции.

Возвращает

mixed
Возвращаемое значение обратного вызова.

Выбрасывает

Exception

Перебросит любое исключение, возникшее в $callback, после отката транзакции.


Реализация

Cake\Datasource\ConnectionInterface::transactional()

update()source public

update( string $table , array $data , array $conditions = [] , array $types = [] )

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

Параметры

string $table
таблица, из которой обновляются строки
array $data
значения для обновления
array $conditions optional []
условия для оператора UPDATE
array $types optional []
список ассоциативных массивов, содержащих типы для преобразования

Возвращает

Cake\Database\StatementInterface

useSavePoints()source public deprecated

useSavePoints( boolean|null $enable = null )

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

Если вы пытаетесь включить эту функцию, убедитесь, что проверяете возвращаемое значение этой функции, чтобы убедиться, что она была успешно включена.

Пример:

$connection->useSavePoints(true) Возвращает true, если драйвер поддерживает точки сохранения, иначе false $connection->useSavePoints(false) Отключает использование точек сохранения и возвращает false $connection->useSavePoints() Возвращает текущий статус

Deprecated

3.4.0 Используйте enableSavePoints()/isSavePointsEnabled() вместо этого.

Параметры

boolean|null $enable optional null
Использовать ли точки сохранения.

Возвращает

boolean
true, если включено, иначе false

wasNestedTransactionRolledback()source protected

wasNestedTransactionRolledback( )

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

Возвращает

boolean

Методы, используемые из Cake\Database\TypeConverterTrait

cast()source public

cast( mixed $value , Cake\Database\Type|string $type )

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

Параметры

mixed $value
Значение для преобразования
Cake\Database\Type|string $type
Имя типа или экземпляр типа для использования.

Возвращает

array
Список, содержащий преобразованное значение и внутренний тип

matchTypes()source public

matchTypes( array $columns , array $types )

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

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

Параметры

array $columns
список или ассоциативный массив столбцов и параметров, которые нужно связать с типами
array $types
список или ассоциативный массив типов

Возвращает

array

Магические методы унаследованные от Cake\Datasource\ConnectionInterface

execute(), getLogger(), getSchemaCollection(), newQuery(), prepare(), quote(), supportsDynamicConstraints()

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

$_configsource

protected array

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

$_driversource

protected Cake\Database\Driver

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

$_logQueriessource

protected boolean

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

false

$_loggersource

protected Cake\Database\Log\QueryLogger|null

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

$_schemaCollectionsource

protected Cake\Database\Schema\Collection|null

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

$_transactionLevelsource

protected integer

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

$_transactionStartedsource

protected boolean

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

false

$_useSavePointssource

protected boolean

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

false
END_OF_DOCUMENT_MARKER

$nestedTransactionRollbackExceptionsource

protected Cake\Database\Exception\NestedTransactionRollbackException|null

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

© 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/3.6/class-Cake.Database.Connection.html

Spec-Zone.ru

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