Spec-Zone.ru › Phalcon 2

Абстрактный класс Phalcon\Db\Adapter\Pdo

extends абстрактный класс Phalcon\Db\Adapter

implements Phalcon\Db\AdapterInterface, Phalcon\Events\EventsAwareInterface

Phalcon\Db\Adapter\Pdo — это Phalcon\Db, который использует PDO для подключения к базе данных.

$connection = new Phalcon\Db\Adapter\Pdo\Mysql(array(
    'host' => '192.168.0.11',
    'username' => 'sigma',
    'password' => 'secret',
    'dbname' => 'blog',
    'port' => '3306'
));

//or connect via unix socket
$connection = new Phalcon\Db\Adapter\Pdo\Mysql(array(
    'dsn' => 'mysql:unix_socket=/PATH/TO/SOCK_FILE;dbname=YOUR_DB_NAME;charset=utf8;',
    'username' => 'YOUR_USERNAME',
    'password' => 'YOUR_PASSWORD',
));

Методы

public __construct (array $descriptor)

Конструктор для Phalcon\Db\Adapter\Pdo

public boolean connect ([array $descriptor])

Этот метод автоматически вызывается в конструкторе Phalcon\Db\Adapter\Pdo. Вызывайте его, когда вам нужно восстановить подключение к базе данных.

//Make a connection
 $connection = new Phalcon\Db\Adapter\Pdo\Mysql(array(
  'host' => '192.168.0.11',
  'username' => 'sigma',
  'password' => 'secret',
  'dbname' => 'blog',
 ));

 //Reconnect
 $connection->connect();

public PDOStatement prepare (string $sqlStatement)

Возвращает подготовленное утверждение PDO для выполнения с ‘executePrepared’

$statement = $connection->prepare('SELECT * FROM robots WHERE name = :name');
 $pdoResult = $connection->executePrepared($statement, array('name' => 'Voltron'));

public PDOStatement executePrepared (PDOStatement $statement, array $placeholders, array $dataTypes)

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

$statement = $connection->prepare('SELECT * FROM robots WHERE name = :name');
 $pdoResult = $connection->executePrepared($statement, array('name' => 'Voltron'));

public Phalcon\Db\ResultInterface query (string $sqlStatement, [unknown $placeholders], [unknown $dataTypes])

Отправляет SQL-запросы на сервер базы данных, возвращая состояние успешности. Используйте этот метод только тогда, когда отправленный на сервер SQL-запрос возвращает строки.

//Querying data
$resultset = $connection->query("SELECT * FROM robots WHERE type='mechanical'");
$resultset = $connection->query("SELECT * FROM robots WHERE type=?", array("mechanical"));

public boolean execute (string $sqlStatement, [unknown $placeholders], [unknown $dataTypes])

Отправляет SQL-запросы на сервер базы данных, возвращая состояние успешности. Используйте этот метод только тогда, когда SQL-запрос на сервер не возвращает ни одной строки.

//Inserting data
$success = $connection->execute("INSERT INTO robots VALUES (1, 'Astro Boy')");
$success = $connection->execute("INSERT INTO robots VALUES (?, ?)", array(1, 'Astro Boy'));

public int affectedRows ()

Возвращает количество затронутых строк последним выполненным в системе базы данных запросом INSERT/UPDATE/DELETE.

$connection->execute("DELETE FROM robots");
echo $connection->affectedRows(), ' were deleted';

public boolean close ()

Закрывает активное подключение, возвращая успех. Phalcon автоматически закрывает и уничтожает активные подключения при завершении запроса.

public string escapeIdentifier (string $identifier)

Экранирует имя столбца/таблицы/схемы.

$escapedTable = $connection->escapeIdentifier('robots');
$escapedTable = $connection->escapeIdentifier(array('store', 'robots'));

public string escapeString (string $str)

Экранирует значение для предотвращения SQL-инъекций в соответствии с активной кодировкой символов в подключении.

$escapedStr = $connection->escapeString('some dangerous value');

public array convertBoundParams (unknown $sqlStatement, array $params)

Преобразует связанные параметры, такие как :name: или ?1, в параметры привязки PDO ?

print_r($connection->convertBoundParams('SELECT * FROM robots WHERE name = :name:', array('Bender')));

public int lastInsertId ([string $sequenceName])

Возвращает идентификатор вставки для столбца auto_increment/serial, вставленного в последнем выполненном SQL-запросе.

//Inserting a new robot
 $success = $connection->insert(
     "robots",
     array("Astro Boy", 1952),
     array("name", "year")
 );

 //Getting the generated id
 $id = $connection->lastInsertId();

public boolean begin ([boolean $nesting])

Инициализирует транзакцию в подключении.

public boolean rollback ([boolean $nesting])

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

public boolean commit ([boolean $nesting])

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

public int getTransactionLevel ()

Возвращает текущий уровень вложенности транзакции.

public boolean isUnderTransaction ()

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

$connection->begin();
var_dump($connection->isUnderTransaction()); //true

public PDO getInternalHandler ()

Возвращает внутренний обработчик PDO.

public setEventsManager (Phalcon\Events\ManagerInterface $eventsManager) унаследовано от Phalcon\Db\Adapter

Устанавливает менеджер событий.

public Phalcon\Events\ManagerInterface getEventsManager () унаследовано от Phalcon\Db\Adapter

Возвращает внутренний менеджер событий.

public setDialect (unknown $dialect) унаследовано от Phalcon\Db\Adapter

Устанавливает диалект, используемый для создания SQL.

public Phalcon\Db\DialectInterface getDialect () унаследовано от Phalcon\Db\Adapter

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

public array fetchOne (string $sqlQuery, [int $fetchMode], [unknown $placeholders]) унаследовано от Phalcon\Db\Adapter

Возвращает первую строку в результате SQL-запроса.

//Getting first robot
$robot = $connection->fetchOne("SELECT * FROM robots");
print_r($robot);

//Getting first robot with associative indexes only
$robot = $connection->fetchOne("SELECT * FROM robots", Phalcon\Db::FETCH_ASSOC);
print_r($robot);

public array fetchAll (string $sqlQuery, [int $fetchMode], [unknown $placeholders]) унаследовано от Phalcon\Db\Adapter

Выводит весь результат запроса в массив.

//Getting all robots with associative indexes only
$robots = $connection->fetchAll("SELECT * FROM robots", Phalcon\Db::FETCH_ASSOC);
foreach ($robots as $robot) {
    print_r($robot);
}

  //Getting all robots that contains word "robot" withing the name
  $robots = $connection->fetchAll("SELECT * FROM robots WHERE name LIKE :name",
    Phalcon\Db::FETCH_ASSOC,
    array('name' => '%robot%')
  );
foreach($robots as $robot){
    print_r($robot);
}

public boolean insert (string $table, array $values, [array $fields], [array $dataTypes]) унаследовано от Phalcon\Db\Adapter

Вставляет данные в таблицу, используя собственную синтаксическую конструкцию SQL RBDM.

//Inserting a new robot
 $success = $connection->insert(
     "robots",
     array("Astro Boy", 1952),
     array("name", "year")
 );

 //Next SQL sentence is sent to the database system
 INSERT INTO `robots` (`name`, `year`) VALUES ("Astro boy", 1952);

public boolean update (string $table, array $fields, array $values, [string $whereCondition], [array $dataTypes]) унаследовано от Phalcon\Db\Adapter

Обновляет данные в таблице, используя собственную синтаксическую конструкцию SQL RBDM.

//Updating existing robot
 $success = $connection->update(
     "robots",
     array("name"),
     array("New Astro Boy"),
     "id = 101"
 );

 //Next SQL sentence is sent to the database system
 UPDATE `robots` SET `name` = "Astro boy" WHERE id = 101

public boolean delete (string $table, [string $whereCondition], [array $placeholders], [array $dataTypes]) унаследовано от Phalcon\Db\Adapter

Удаляет данные из таблицы, используя собственную синтаксическую конструкцию SQL RBDM.

//Deleting existing robot
 $success = $connection->delete(
     "robots",
     "id = 101"
 );

 //Next SQL sentence is generated
 DELETE FROM `robots` WHERE `id` = 101

public string getColumnList (array $columnList) унаследовано от Phalcon\Db\Adapter

Возвращает список столбцов.

public string limit (string $sqlQuery, int $number) унаследовано от Phalcon\Db\Adapter

Добавляет в SQL-запрос $sqlQuery ограничение LIMIT.

echo $connection->limit("SELECT * FROM robots", 5);

public string tableExists (string $tableName, [string $schemaName]) унаследовано от Phalcon\Db\Adapter

Генерирует SQL, проверяющий существование схемы.таблицы.

var_dump($connection->tableExists("blog", "posts"));

public string viewExists (string $viewName, [string $schemaName]) унаследовано от Phalcon\Db\Adapter

Генерирует SQL, проверяющий существование схемы.представления.

var_dump($connection->viewExists("active_users", "posts"));

public string forUpdate (string $sqlQuery) унаследовано от Phalcon\Db\Adapter

Возвращает модифицированный SQL с клаузой FOR UPDATE.

public string sharedLock (string $sqlQuery) унаследовано от Phalcon\Db\Adapter

Возвращает SQL, модифицированный с клаузой LOCK IN SHARE MODE.

public boolean createTable (string $tableName, string $schemaName, array $definition) унаследовано от Phalcon\Db\Adapter

Создаёт таблицу.

public boolean dropTable (string $tableName, [string $schemaName], [boolean $ifExists]) унаследовано от Phalcon\Db\Adapter

Удаляет таблицу из схемы/базы данных.

public boolean createView (unknown $viewName, array $definition, [string $schemaName]) унаследовано от Phalcon\Db\Adapter

Создаёт представление.

public boolean dropView (string $viewName, [string $schemaName], [boolean $ifExists]) унаследовано от Phalcon\Db\Adapter

Удаляет представление.

public boolean addColumn (string $tableName, string $schemaName, Phalcon\Db\ColumnInterface $column) унаследовано от Phalcon\Db\Adapter

Добавляет столбец в таблицу.

public boolean modifyColumn (string $tableName, string $schemaName, Phalcon\Db\ColumnInterface $column) унаследовано от Phalcon\Db\Adapter

Модифицирует столбец таблицы на основе определения.

public boolean dropColumn (string $tableName, string $schemaName, string $columnName) унаследовано от Phalcon\Db\Adapter

Удаляет столбец из таблицы.

public boolean addIndex (string $tableName, string $schemaName, Phalcon\Db\IndexInterface $index) унаследовано от Phalcon\Db\Adapter

Добавляет индекс в таблицу.

public boolean dropIndex (string $tableName, string $schemaName, string $indexName) inherited from Phalcon\Db\Adapter

Удалить индекс из таблицы

public boolean addPrimaryKey (string $tableName, string $schemaName, Phalcon\Db\IndexInterface $index) inherited from Phalcon\Db\Adapter

Добавить первичный ключ в таблицу

public boolean dropPrimaryKey (string $tableName, string $schemaName) inherited from Phalcon\Db\Adapter

Удалить первичный ключ таблицы

public boolean true addForeignKey (string $tableName, string $schemaName, Phalcon\Db\ReferenceInterface $reference) inherited from Phalcon\Db\Adapter

Добавить внешний ключ к таблице

public boolean true dropForeignKey (string $tableName, string $schemaName, string $referenceName) inherited from Phalcon\Db\Adapter

Удалить внешний ключ из таблицы

public string getColumnDefinition (Phalcon\Db\ColumnInterface $column) inherited from Phalcon\Db\Adapter

Возвращает определение столбца SQL из столбца

public array listTables ([string $schemaName]) inherited from Phalcon\Db\Adapter

Список всех таблиц в базе данных

print_r($connection->listTables("blog"));

public array listViews ([string $schemaName]) inherited from Phalcon\Db\Adapter

Список всех представлений в базе данных

<?php

print_r($connection->listViews("blog")); ?>

public Phalcon\Db\Index [] describeIndexes (string $table, [string $schema]) inherited from Phalcon\Db\Adapter

Список индексов таблицы

print_r($connection->describeIndexes('robots_parts'));

public Phalcon\Db\Reference [] describeReferences (string $table, [string $schema]) inherited from Phalcon\Db\Adapter

Список ссылок таблицы

print_r($connection->describeReferences('robots_parts'));

public array tableOptions (string $tableName, [string $schemaName]) inherited from Phalcon\Db\Adapter

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

print_r($connection->tableOptions('robots'));

public boolean createSavepoint (string $name) inherited from Phalcon\Db\Adapter

Создать новый контрольный пункт

public boolean releaseSavepoint (string $name) inherited from Phalcon\Db\Adapter

Освободить заданный контрольный пункт

public boolean rollbackSavepoint (string $name) inherited from Phalcon\Db\Adapter

Отменить заданный контрольный пункт

public Phalcon\Db\AdapterInterface setNestedTransactionsWithSavepoints (boolean $nestedTransactionsWithSavepoints) inherited from Phalcon\Db\Adapter

Установить, должны ли вложенные транзакции использовать контрольные пункты

public boolean isNestedTransactionsWithSavepoints () inherited from Phalcon\Db\Adapter

Возвращает, должны ли вложенные транзакции использовать контрольные пункты

public string getNestedTransactionSavepointName () inherited from Phalcon\Db\Adapter

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

public Phalcon\Db\RawValue getDefaultIdValue () inherited from Phalcon\Db\Adapter

Возвращает значение по умолчанию для вставки в столбец идентификатора

//Inserting a new robot with a valid default value for the column 'id'
 $success = $connection->insert(
     "robots",
     array($connection->getDefaultIdValue(), "Astro Boy", 1952),
     array("id", "name", "year")
 );

public boolean supportSequences () inherited from Phalcon\Db\Adapter

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

public boolean useExplicitIdValue () inherited from Phalcon\Db\Adapter

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

public array getDescriptor () inherited from Phalcon\Db\Adapter

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

public string getConnectionId () inherited from Phalcon\Db\Adapter

Получает уникальный идентификатор активного подключения

public string getSQLStatement () inherited from Phalcon\Db\Adapter

Актуальное SQL-утверждение в объекте

public string getRealSQLStatement () inherited from Phalcon\Db\Adapter

Актуальное SQL-утверждение в объекте без замены связанных параметров

public array getSQLVariables () inherited from Phalcon\Db\Adapter

Актуальное SQL-утверждение в объекте

public array getSQLBindTypes () inherited from Phalcon\Db\Adapter

Актуальное SQL-утверждение в объекте

public string getType () inherited from Phalcon\Db\Adapter

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

public string getDialectType () inherited from Phalcon\Db\Adapter

Возвращает имя используемого диалекта

abstract public Phalcon\Db\ColumnInterface [] describeColumns (string $table, [string $schema]) inherited from Phalcon\Db\AdapterInterface

Возвращает массив объектов Phalcon\Db\Column, описывающих таблицу

© 2011–2016 Phalcon Framework Team
Licensed under the Creative Commons Attribution License 3.0.
https://docs.phalconphp.com/en/2.0.0/api/Phalcon_Db_Adapter_Pdo.html

Spec-Zone.ru

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