Spec-Zone.ru › CakePHP 3.3

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

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

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

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

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

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

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

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

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

  • newQuery() public
    Создание нового экземпляра запроса для этого подключения.
  • 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

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

Методы

__construct()source public

__construct( array $config )

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

Параметры

массив $config
настройки подключения к базе данных

__debugInfo()source public

__debugInfo( )

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

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

массив

__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_ или имя конфигурации кэша для использования.

END_OF_DOCUMENT_MARKER

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

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

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

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

Параметры

Cake\Database\Driver|string|null $driver необязательно null
Экземпляр драйвера для использования.
массив $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 в качестве подсказки для каждого из этих параметров.

Параметры

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

Возвращает

Cake\Database\StatementInterface
выполненное утверждение

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

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

logger( object|null $instance null )

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

Параметры

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

Возвращает

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

Реализация

Cake\Datasource\ConnectionInterface::logger()

newQuery()source public

newQuery( )

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

Возвращает

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( )

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

Возвращает

логическое

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

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

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

Параметры

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

Возвращает

Cake\Database\Schema\Collection

supportsDynamicConstraints()source public

supportsDynamicConstraints( )

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

Возвращает

логическое
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

useSavePoints( boolean|null $enable null )

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

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

Пример:

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

Параметры

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

Возвращает

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

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

END_OF_DOCUMENT_MARKER

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

Spec-Zone.ru

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