Класс Sqlserver
Драйвер SQLServer.
- Cake\Database\Driver
-
Cake\Database\Driver\Sqlserver использует Cake\Database\Driver\PDODriverTrait, Cake\Database\Dialect\SqlserverDialectTrait
Подробное описание методов
connectsource public
connect( )
Устанавливает соединение с сервером базы данных
Возвращает
booleantrue при успехе
enabledsource public
enabled( )
Возвращает, может ли PHP использовать этот драйвер для подключения к базе данных
Возвращает
booleantrue, если этот драйвер можно использовать
preparesource public
prepare( string|Cake\Database\Query $query )
Подготавливает SQL-запрос для выполнения
Параметры
- string|
Cake\Database\Query$query - Запрос для подготовки.
Возвращает
Cake\Database\StatementInterface\Cake\Database\StatementInterface
supportsDynamicConstraintssource public
supportsDynamicConstraints( )
Возвращает, поддерживает ли драйвер добавление или удаление ограничений к уже созданным таблицам.
Возвращает
booleantrue, если драйвер поддерживает динамические ограничения
Методы, унаследованные от Cake\Database\Driver
__constructsource public
__construct( array $config [] )
Конструктор
Параметры
- array
$configнеобязательно [] - Настройка драйвера.
Исключения
InvalidArgumentExceptionInvalidArgumentException
__debugInfosource public
__debugInfo( )
Возвращает массив, который можно использовать для описания внутреннего состояния этого объекта.
Возвращает
arrayмассив
autoQuotingsource public
autoQuoting( boolean $enable null )
Возвращает, будет ли этот драйвер автоматически заключать идентификаторы в запросах
Если вызван с булевым аргументом, он переключит автоцитирование на переданное значение
Параметры
- boolean
$enableнеобязательно null - включить автоцитирование
Возвращает
booleanbool
beginTransactionsource abstract public
beginTransaction( )
Начинает транзакцию
Возвращает
booleantrue при успехе, иначе false
commitTransactionsource abstract public
commitTransaction( )
Подтверждает транзакцию
Возвращает
booleantrue при успехе, иначе false
compileQuerysource public
compileQuery( Cake\Database\Query $query , Cake\Database\ValueBinder $generator )
Преобразует переданный запрос в диалект этого драйвера и возвращает экземпляр преобразованного запроса и полную скомпилированную SQL-строку
Параметры
-
Cake\Database\Query$query - Запрос для компиляции.
- Cake\Database\ValueBinder
$generator - Используемый объект привязки значений.
Возвращает
arrayсодержащий 2 записи. Первая запись — преобразованный запрос, а вторая — скомпилированная SQL-строка
connectionsource abstract public
connection( null|PDO $connection null )
Возвращает правильный ресурс или объект соединения, который используется внутри. Если передан первый аргумент,
Параметры
- null|PDO
$connectionнеобязательно null - Объект подключения
disableForeignKeySQLsource abstract public
disableForeignKeySQL( )
Получить SQL для отключения внешних ключей
Возвращает
stringстрока
enableForeignKeySQLsource abstract public
enableForeignKeySQL( )
Получить SQL для включения внешних ключей
Возвращает
stringстрока
lastInsertIdsource public
lastInsertId( string $table null , string $column null )
Возвращает последний сгенерированный идентификатор для таблицы или последовательности в базе данных
Параметры
- string
$tableнеобязательно null - Имя таблицы или последовательности для получения последнего значения вставки
- string
$columnнеобязательно null - Имя столбца, представляющего первичный ключ
Возвращает
string|integerстрока|целое число
newCompilersource public
newCompiler( )
Возвращает экземпляр QueryCompiler
Возвращает
Cake\Database\QueryCompiler\Cake\Database\QueryCompiler
queryTranslatorsource abstract public
queryTranslator( string $type )
Возвращает вызываемый объект, который будет использоваться для преобразования переданного объекта Query. Эта функция, в свою очередь, вернёт экземпляр объекта Query, преобразованного для соответствия специфике используемого диалекта SQL.
Параметры
- string
$type - тип запроса, который необходимо преобразовать (select, insert, update, delete)
Возвращает
callableвызываемый объект
quotesource abstract public
quote( mixed $value , string $type )
Возвращает значение в безопасном представлении для использования в строке запроса
Параметры
- mixed
$value - Значение для цитирования.
- string
$type - Тип, используемый для определения типа цитирования
Возвращает
stringстрока
quoteIdentifiersource abstract public
quoteIdentifier( string $identifier )
Процитирует идентификатор базы данных (имя столбца, имя таблицы и т.д.) для безопасного использования в запросах, исключая риск использования зарезервированных слов
Параметры
- строка
$identifier - Выражение идентификатора, которое нужно процитировать.
Возвращает
stringстрока
releaseSavePointSQLsource abstract public
releaseSavePointSQL( string $name )
Получить SQL для освобождения точки сохранения.
Параметры
- строка
$name - Имя таблицы
Возвращает
stringстрока
rollbackSavePointSQLsource abstract public
rollbackSavePointSQL( string $name )
Получить SQL для отката точки сохранения.
Параметры
- строка
$name - Имя таблицы
Возвращает
stringстрока
rollbackTransactionsource abstract public
rollbackTransaction( )
Откатывает транзакцию
Возвращает
booleantrue в случае успеха, false в противном случае
savePointSQLsource abstract public
savePointSQL( string $name )
Получить SQL для создания точки сохранения.
Параметры
- строка
$name - Имя таблицы
Возвращает
stringстрока
schemaDialectsource abstract public
schemaDialect( )
Получить диалект схемы.
Используется пакетом Cake\Database\Schema для отражения схемы и генерации схемы.
Если все таблицы, использующие этот драйвер, указывают свои схемы, то это может вернуть null.
Возвращает
Cake\Database\Schema\BaseSchema\Cake\Database\Schema\BaseSchema
schemaValuesource public
schemaValue( mixed $value )
Экранирует значения для использования в определениях схемы.
Параметры
- смешанный
$value - Значение, которое нужно экранировать.
Возвращает
stringСтрока для использования в определениях схемы.
supportsQuotingsource public
supportsQuoting( )
Проверяет, поддерживает ли драйвер цитирование
Возвращает
booleanbool
supportsSavePointssource public
supportsSavePoints( )
Возвращает, поддерживает ли этот драйвер точки сохранения для вложенных транзакций
Возвращает
booleantrue, если точки сохранения поддерживаются, false в противном случае
Методы, используемые из Cake\Database\Driver\PDODriverTrait
_connectsource protected
_connect( string $dsn , array $config )
Устанавливает соединение с сервером базы данных
Параметры
- строка
$dsn - Драйвер-специфический PDO-DSN
- массив
$config - конфигурация, используемая для создания подключения
Возвращает
booleantrue в случае успеха
beginTransactionsource public
beginTransaction( )
Начинает транзакцию
Возвращает
booleantrue в случае успеха, false в противном случае
commitTransactionsource public
commitTransaction( )
Подтверждает транзакцию
Возвращает
booleantrue в случае успеха, false в противном случае
connectionsource public
connection( null|PDO $connection null )
Возвращает правильный ресурс или объект подключения, используемый внутри. Если первый аргумент передан, он установит внутренний объект подключения или результат до значения, переданного.
Параметры
- null|PDO
$connectionнеобязательно null - экземпляр подключения PDO.
Возвращает
PDOобъект подключения, используемый внутри
isConnectedsource public
isConnected( )
Проверяет, подключен ли драйвер.
Возвращает
booleanbool
Переопределяет
Cake\Database\Driver::isConnected() lastInsertIdsource public
lastInsertId( string|null $table null , string|null $column null )
Возвращает последний сгенерированный идентификатор для таблицы или последовательности в базе данных
Параметры
- строка|null
$tableнеобязательно null - Имя таблицы или последовательности, чтобы получить последнее значение вставки.
- строка|null
$columnнеобязательно null - Имя столбца, представляющего первичный ключ
Возвращает
string|integerстрока|целое число
Переопределяет
Cake\Database\Driver::lastInsertId() quotesource public
quote( mixed $value , string $type )
Возвращает значение в безопасном представлении для использования в строке запроса
Параметры
- смешанный
$value - Значение, которое нужно процитировать.
- строка
$type - Тип, используемый для определения вида цитирования.
Возвращает
stringстрока
rollbackTransactionsource public
rollbackTransaction( )
Откатывает транзакцию
Возвращает
booleantrue в случае успеха, false в противном случае
supportsQuotingsource public
supportsQuoting( )
Проверяет, поддерживает ли драйвер цитирование, так как PDO_ODBC его не поддерживает.
Возвращает
booleanbool
Переопределяет
Cake\Database\Driver::supportsQuoting() Методы, используемые из Cake\Database\Dialect\SqlserverDialectTrait
_expressionTranslatorssource protected
_expressionTranslators( )
Возвращает словарь выражений, которые нужно преобразовать при компиляции запроса в SQL. Ключи массива — имена методов, которые нужно вызывать в этом классе.
Возвращает
arrayмассив
_pagingSubquerysource protected
_pagingSubquery( Cake\Database\Query $original , integer $limit , integer $offset )
Генерирует подзапрос для постраничной навигации для старых версий SQLserver.
До SQLServer 2012 не было эквивалента LIMIT OFFSET, поэтому необходимо использовать подзапрос.
Параметры
-
Cake\Database\Query$original - Запрос, который нужно обернуть в подзапрос.
- целое число
$limit - Количество строк для извлечения.
- целое число
$offset - Количество строк для смещения.
Возвращает
Cake\Database\QueryИзменённый объект запроса.
_selectQueryTranslatorsource protected
_selectQueryTranslator( Cake\Database\Query $query )
Изменяет ограничение/смещение на TSQL.
Параметры
-
Cake\Database\Query$query - Запрос для перевода
Возвращает
Cake\Database\QueryИзменённый запрос
_transformDistinctsource protected
_transformDistinct( Cake\Database\Query $original )
Возвращает переданный запрос после переписывания условия DISTINCT, чтобы драйверы, которые не поддерживают часть "ON", могли предоставить фактический способ его выполнения.
Параметры
-
Cake\Database\Query$original - Запрос для преобразования
Возвращает
Cake\Database\QueryЗапрос
_transformFunctionExpressionsource protected
_transformFunctionExpression( Cake\Database\Driver\FunctionExpression $expression )
Принимает FunctionExpression и изменяет его так, чтобы он соответствовал данному диалекту SQL.
Параметры
- Cake\Database\Driver\FunctionExpression
$expression - Выражение функции для преобразования в TSQL.
_versionsource public
_version( )
Получает версию SQLserver, к которому мы подключены.
Возвращает
integerint
disableForeignKeySQLsource public
disableForeignKeySQL( )
enableForeignKeySQLsource public
enableForeignKeySQL( )
newCompilersource public
newCompiler( )
Возвращает
Cake\Database\SqlserverCompiler\Cake\Database\SqlserverCompiler
Переопределяет
Cake\Database\Driver::newCompiler() releaseSavePointSQLsource public
releaseSavePointSQL( string $name )
Возвращает фрагмент SQL для высвобождения ранее созданной точки сохранения
Параметры
- строка
$name - имя точки сохранения
Возвращает
stringстрока
rollbackSavePointSQLsource public
rollbackSavePointSQL( string $name )
Возвращает фрагмент SQL для отката ранее созданной точки сохранения
Параметры
- строка
$name - имя точки сохранения
Возвращает
stringстрока
savePointSQLsource public
savePointSQL( string $name )
Возвращает фрагмент SQL для создания новой точки сохранения транзакции
Параметры
- строка
$name - имя точки сохранения
Возвращает
stringстрока
schemaDialectsource public
schemaDialect( )
Получает диалект схемы.
Используется пакетом Cake\Schema для отражения схемы и генерации схемы.
Возвращает
Cake\Database\Schema\MysqlSchema\Cake\Database\Schema\MysqlSchema
Методы, используемые из Cake\Database\SqlDialectTrait
_deleteQueryTranslatorsource protected
_deleteQueryTranslator( Cake\Database\Query $query )
Применяет шаги перевода к запросам удаления.
Удаляет псевдонимы из условий запроса на удаление, так как большинство диалектов баз данных не поддерживают псевдонимы в запросах на удаление. Также удаляются псевдонимы в именах таблиц, так как они часто тоже не работают.
Мы намеренно не поддерживаем удаления с объединениями, так как они имеют ещё худшую поддержку.
Параметры
-
Cake\Database\Query$query - Запрос для перевода
Возвращает
Cake\Database\QueryИзменённый запрос
_insertQueryTranslatorsource protected
_insertQueryTranslator( Cake\Database\Query $query )
Применяет шаги перевода к запросам вставки.
Параметры
-
Cake\Database\Query$query - Запрос для перевода
Возвращает
Cake\Database\QueryИзменённый запрос
_updateQueryTranslatorsource protected
_updateQueryTranslator( Cake\Database\Query $query )
Применяет шаги перевода к запросам обновления.
Параметры
-
Cake\Database\Query$query - Запрос для перевода
Возвращает
Cake\Database\QueryИзменённый запрос
queryTranslatorsource public
queryTranslator( string $type )
Возвращает вызываемую функцию, которая будет использоваться для преобразования переданного объекта Query. Эта функция, в свою очередь, вернёт экземпляр объекта Query, который был преобразован для учёта особенностей используемого диалекта SQL.
Параметры
- строка
$type - тип запроса для преобразования (select, insert, update, delete)
Возвращает
callableвызываемая функция
quoteIdentifiersource public
quoteIdentifier( string $identifier )
Приводит имя базы данных идентификатор (имя столбца, имя таблицы и т. д.) к виду, который можно безопасно использовать в запросах, без риска использования зарезервированных слов
Параметры
- строка
$identifier - Идентификатор для приведения к виду.
Возвращает
stringстрока
Методы, используемые из Cake\Database\Dialect\TupleComparisonTranslatorTrait
_transformTupleComparisonsource protected
_transformTupleComparison( Cake\Database\Driver\TupleComparison $expression , Cake\Database\Query $query )
Принимает TupleExpression и изменяет его так, чтобы он соответствовал данному диалекту SQL.
Он преобразует выражения, похожие на '(a, b) IN ((c, d), (e, f)' в эквивалентное выражение вида '((a = c) AND (b = d)) OR ((a = e) AND (b = f))'.
Он также может преобразовывать выражения, где правая часть является запросом, выбирающим такое же количество столбцов, как элементы в левой части выражения:
(a, b) IN (SELECT c, d FROM a_table) преобразуется в
1 = (SELECT 1 FROM a_table WHERE (a = c) AND (b = d))
Параметры
- Cake\Database\Driver\TupleComparison
$expression - Выражение для преобразования
-
Cake\Database\Query$query - Запрос для обновления.
Резюме свойств
Свойства, унаследованные от Cake\Database\Driver
$_autoQuotingsource
protected boolean
Указывает, выполняет ли драйвер автоматическое заключение идентификаторов в кавычки для всех запросов
false Свойства, используемые из Cake\Database\Driver\PDODriverTrait
Свойства, используемые из Cake\Database\Dialect\SqlserverDialectTrait
$_endQuotesource
protected string
Строка, используемая для закрытия кавычек идентификатора базы данных для обеспечения безопасности
']' $_startQuotesource
protected string
Строка, используемая для начала кавычек идентификатора базы данных для обеспечения безопасности
'['
© 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.1/class-Cake.Database.Driver.Sqlserver.html