Spec-Zone.ru › CakePHP 3.2

Класс 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
    Экземпляр объекта логгера.
  • $_schemaCollection protected
    Cake\Database\Schema\Collection
    Объект коллекции схем.
  • $_transactionLevel protected
    integer
    Содержит количество вложенных транзакций, которые были начаты.
  • $_transactionStarted protected
    boolean
    Указывает, активна ли транзакция в этом соединении.
  • $_useSavePoints protected
    boolean

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

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

  • __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

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

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

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

  • inTransaction() public
    Проверяет, выполняется ли транзакция.
  • insert() public
    Выполняет запрос INSERT для указанной таблицы.
  • isConnected() 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 для этого соединения.
  • supportsDynamicConstraints() public

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

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

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

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

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

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

__construct()source public

__construct( array $config )

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

Параметры

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

__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

Либо значение 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 в случае успеха или false, если подключение уже установлено.

Выбрасывает

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 [] )

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

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

Параметры

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 для включения проверок внешних ключей.

execute()source public

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

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

Параметры

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

Возвращает

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

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

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 )

Устанавливает объект логгера. Без аргументов возвращает текущий объект логгера.

Параметры

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

rollbackSavepoint()source public

rollbackSavepoint( string $name )

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

Параметры

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

run()source public

run( Cake\Database\Query $query )

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

Параметры

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

Возвращает

Cake\Database\StatementInterface
объект выполненного запроса

schemaCollection()source public

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

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

Параметры

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

Возвращает

Cake\Database\Schema\Collection

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

Возвращает

Cake\Database\StatementInterface

useSavePoints()source public

useSavePoints( boolean|null $enable null )

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

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

Пример:

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

Параметры

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

Возвращает

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

Методы, используемые из 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

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

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

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

$_transactionLevelsource

protected integer

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

$_transactionStartedsource

protected boolean

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

false

$_useSavePointssource

protected boolean

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

false

© 2005–2016 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.
http://api.cakephp.org/3.2/class-Cake.Database.Connection.html

Spec-Zone.ru

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