Spec-Zone.ru › CakePHP 3.4

Класс 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

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

  • _newLogger() protected

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

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

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

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

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

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

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

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

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

  • 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
    Получает или устанавливает объект Schema\Collection для этого соединения.
  • setDriver() public

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

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

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

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

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

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

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

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

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

__construct()source public

__construct( array $config )

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

Параметры

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

__debugInfo()source public

__debugInfo( )

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

Возвращает

массив

_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

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

commit()source public

commit( )

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

Возвращает

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

compileQuery()source public

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

Компилирует объект запроса в строку 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 необязательно []
условия для оператора удаления
array $types необязательно []
список ассоциативных массивов, содержащих типы, которые будут использоваться для приведения типов

Возвращает

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

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

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

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

Устарело

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

Параметры

Cake\Database\Driver|string|null $driver необязательно null
Экземпляр драйвера для использования.
array $config необязательно []
Конфигурация для нового драйвера или 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 необязательно []
список или ассоциативный массив параметров, которые будут интерполированы в $query как значения
array $types необязательно []
список или ассоциативный массив типов, которые будут использоваться для приведения значений в запросе

Возвращает

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

getDriver()source public

getDriver( )

Возвращает экземпляр драйвера.

Возвращает

Cake\Database\Driver

getLogger()source public

getLogger( )

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

Возвращает

object
экземпляр регистратора

getSchemaCollection()source public

getSchemaCollection( )

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

Возвращает

Cake\Database\Schema\Collection
END_OF_DOCUMENT_MARKER

inTransaction()source public

inTransaction( )

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

Возвращает

boolean
True, если транзакция выполняется, иначе false.

insert()source public

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

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

Параметры

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

Возвращает

Cake\Database\StatementInterface

isConnected()source public

isConnected( )

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

Возвращает

boolean

isSavePointsEnabled()source public

isSavePointsEnabled( )

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

Возвращает

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

log()source public

log( string $sql )

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

Параметры

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

logQueries()source public

logQueries( boolean|null $enable null )

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

Параметры

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

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

Возвращает

boolean

Реализация

Cake\Datasource\ConnectionInterface::logQueries()

logger()source public

logger( object|null $instance null )

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

Устарело

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

Параметры

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

Возвращает

object
экземпляр логгера

Реализация

Cake\Datasource\ConnectionInterface::logger()

newQuery()source public

newQuery( )

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

Возвращает

Cake\Database\Query

prepare()source public

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

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

Параметры

string|Cake\Database\Query $sql
SQL-запрос, который необходимо преобразовать в подготовленное утверждение.

Возвращает

Cake\Database\StatementInterface

query()source public

query( string $sql )

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

Параметры

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

Возвращает

Cake\Database\StatementInterface

quote()source public

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

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

Параметры

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

Возвращает

string
Приведенное к цитатному виду значение

quoteIdentifier()source public

quoteIdentifier( string $identifier )

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

Параметры

string $identifier
Идентификатор для приведения к цитатному виду.

Возвращает

string

releaseSavePoint()source public

releaseSavePoint( string $name )

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

Параметры

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

rollback()source public

rollback( boolean|null $toBeginning null )

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

Параметры

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

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

Возвращает

boolean

rollbackSavepoint()source public

rollbackSavepoint( string $name )

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

Параметры

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

run()source public

run( Cake\Database\Query $query )

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

Параметры

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

Возвращает

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

schemaCollection()source public

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

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

Устарело

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

Параметры

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

Возвращает

Cake\Database\Schema\Collection

setDriver()source public

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

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

Параметры

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

Возвращает


$this

Выбрасывает

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

setLogger()source public

setLogger( object $logger )

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

Параметры

object $logger
Объект логгера

Возвращает


$this

setSchemaCollection()source public

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

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

Параметры

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

Возвращает


$this
END_OF_DOCUMENT_MARKER

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 необязательно []
условия для оператора обновления
array $types необязательно []
список ассоциативных массивов, содержащих типы для преобразования

Возвращаемое значение

Cake\Database\StatementInterface

useSavePoints()source public

useSavePoints( boolean|null $enable null )

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

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

Пример:

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

Устарело

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

Параметры

boolean|null $enable необязательно 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(), lastInsertId(), newQuery(), prepare(), quote(), schemaCollection(), 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

$nestedTransactionRollbackExceptionsource

protected Cake\Database\Exception\NestedTransactionRollbackException|null

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

© 2005–2017 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.4/class-Cake.Database.Connection.html

Spec-Zone.ru

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