Класс Phalcon\Db\Adapter\Pdo\Sqlite

расширяет абстрактный класс Phalcon\Db\Adapter\Pdo

Реализует Phalcon\Db\AdapterInterface, Phalcon\Events\EventsAwareInterface

Source on GitHub

Специальные функции для системы баз данных Sqlite

<?php

use Phalcon\Db\Adapter\Pdo\Sqlite;

$connection = new Sqlite(
    [
        "dbname" => "/tmp/test.sqlite",
    ]
);

Методы

public connect ([array $descriptor])

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

public describeColumns (mixed $table, [mixed $schema])

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

<?php

print_r(
    $connection->describeColumns("posts")
);

public Phalcon\Db\IndexInterface describeIndexes (string $table, [string $schema])

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

<?php

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

public Phalcon\Db\ReferenceInterface describeReferences (string $table, [string $schema])

Списки табличных ссылок

public useExplicitIdValue ()

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

public getDefaultValue ()

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

<?php

// Вставка нового робота с допустимым значением по умолчанию для столбца 'year'
$success = $connection->insert(
    "robots",
    [
        "Astro Boy",
        $connection->getDefaultValue(),
    ],
    [
        "name",
        "year",
    ]
);

public __construct (array $descriptor) наследуется от Phalcon\Db\Adapter\Pdo

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

public prepare (mixed $sqlStatement) наследуется от Phalcon\Db\Adapter\Pdo

Возвращает подготовленный оператор PDO, который должен выполняться с помощью 'executePrepared'

<?php

use Phalcon\Db\Column;

$statement = $db->prepare(
    "SELECT * FROM robots WHERE name = :name"
);

$result = $connection->executePrepared(
    $statement,
    [
        "name" => "Voltron",
    ],
    [
        "name" => Column::BIND_PARAM_INT,
    ]
);

public PDOStatement executePrepared (PDOStatement $statement, array $placeholders, array $dataTypes) наследуется от Phalcon\Db\Adapter\Pdo

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

<?php

use Phalcon\Db\Column;

$statement = $db->prepare(
    "SELECT * FROM robots WHERE name = :name"
);

$result = $connection->executePrepared(
    $statement,
    [
        "name" => "Voltron",
    ],
    [
        "name" => Column::BIND_PARAM_INT,
    ]
);

public query (mixed $sqlStatement, [mixed $bindParams], [mixed $bindTypes]) наследуется от Phalcon\Db\Adapter\Pdo

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

<?php

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

$resultset = $connection->query(
    "SELECT * FROM robots WHERE type = ?",
    [
        "mechanical",
    ]
);

public execute (mixed $sqlStatement, [mixed $bindParams], [mixed $bindTypes]) наследуется от Phalcon\Db\Adapter\Pdo

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

<?php

// Вставка данных
$success = $connection->execute(
    "INSERT INTO robots VALUES (1, 'Astro Boy')"
);

$success = $connection->execute(
    "INSERT INTO robots VALUES (?, ?)",
    [
        1,
        "Astro Boy",
    ]
);

public affectedRows () наследуется от Phalcon\Db\Adapter\Pdo

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

<?php

$connection->execute(
    "DELETE FROM robots"
);

echo $connection->affectedRows(), " were deleted";

public close () наследуется от Phalcon\Db\Adapter\Pdo

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

public escapeString (mixed $str) наследуется от Phalcon\Db\Adapter\Pdo

Экранирует значение, чтобы избежать SQL-инъекций в соответствии с активной кодировкой в соединении

<?php

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

public convertBoundParams (mixed $sql, [array $params]) наследуется от Phalcon\Db\Adapter\Pdo

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

<?php

print_r(
    $connection->convertBoundParams(
        "SELECT * FROM robots WHERE name = :name:",
        [
            "Bender",
        ]
    )
);

public int | boolean lastInsertId ([string $sequenceName]) наследуется от Phalcon\Db\Adapter\Pdo

Возвращает insert id для столбца auto_increment/serial, вставленного в последнюю выполненную инструкцию SQL

<?php

// Вставка нового робота
$success = $connection->insert(
    "robots",
    [
        "Astro Boy",
        1952,
    ],
    [
        "name",
        "year",
    ]
);

// Получение сгенерированного id
$id = $connection->lastInsertId();

public begin ([mixed $nesting]) наследуется от Phalcon\Db\Adapter\Pdo

Запуск транзакции в соединении

public rollback ([mixed $nesting]) наследуется от Phalcon\Db\Adapter\Pdo

Откат активной транзакции в соединении

public commit ([mixed $nesting]) наследуется от Phalcon\Db\Adapter\Pdo

Запись активной транзакцию в соединение

public getTransactionLevel () наследуется от Phalcon\Db\Adapter\Pdo

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

public isUnderTransaction () наследуется от Phalcon\Db\Adapter\Pdo

Проверяет, связано ли соединение с транзакцией

<?php

$connection->begin();

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

public getInternalHandler () наследуется от Phalcon\Db\Adapter\Pdo

Возврат внутреннего обработчика PDO

public array getErrorInfo () наследуется от Phalcon\Db\Adapter\Pdo

Возврат информации об ошибке, если таковая имеется

public getDialectType () наследуется от Phalcon\Db\Adapter

Имя используемого диалекта

public getType () наследуется от Phalcon\Db\Adapter

Тип системы базы данных адаптер используется для

public getSqlVariables () наследуется от Phalcon\Db\Adapter

Активные переменные параметра привязки SQL

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

Устанавливает диспетчер событий

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

Возвращает внутренний диспетчер событий

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

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

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

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

public fetchOne (mixed $sqlQuery, [mixed $fetchMode], [mixed $bindParams], [mixed $bindTypes]) наследуется от Phalcon\Db\Adapter

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

<?php

// Получение первого робота
$robot = $connection->fetchOne("SELECT * FROM robots");
print_r($robot);

// Только первый робот с ассоциативными индексами
$robot = $connection->fetchOne("SELECT * FROM robots", \Phalcon\Db::FETCH_ASSOC);
print_r($robot);

 

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

Сбрасывает полный результат запроса в массив

<?php

// Получение всех роботов только с ассоциативными индексами
$robots = $connection->fetchAll(
    "SELECT * FROM robots",
    \Phalcon\Db::FETCH_ASSOC
);

foreach ($robots as $robot) {
    print_r($robot);
}

 // Получение всех роботов, содержащих слово "robot" с именем
$robots = $connection->fetchAll(
    "SELECT * FROM robots WHERE name LIKE :name",
    \Phalcon\Db::FETCH_ASSOC,
    [
        "name" => "%robot%",
    ]
);
foreach($robots as $robot) {
    print_r($robot);
}

public string | fetchColumn* (string $sqlQuery, [array $placeholders], [int | string* $column]) наследуется от Phalcon\Db\Adapter

Возвращает n-я область первой строки в результате SQL-запроса

<?php

// Получение количества роботов
$robotsCount = $connection->fetchColumn("SELECT count(*) FROM robots");
print_r($robotsCount);

// Получение имени последнего измененного робота
$robot = $connection->fetchColumn(
    "SELECT id, name FROM robots order by modified desc",
    1
);
print_r($robot);

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

Вставляет данные в таблицу с использованием специального синтаксиса SQL RDBMS

<?php

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

// Следующее предложение SQL отправляется в систему базы данных
// INSERT INTO `robots` (`name`, `year`) VALUES ("Astro boy", 1952);

public boolean insertAsDict (string $table, array $data, [array $dataTypes]) наследуется от Phalcon\Db\Adapter

Вставляет данные в таблицу с использованием пользовательского синтаксиса RBDM SQL

<?php

// Вставка нового робота
$success = $connection->insertAsDict(
    "robots",
    [
        "name" => "Astro Boy",
        "year" => 1952,
    ]
);

// Следующее предложение SQL отправляется в систему базы данных
// INSERT INTO `robots` (`name`, `year`) VALUES ("Astro boy", 1952);

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

Обновляет данные в таблице с использованием пользовательского синтаксиса RBDM SQL

<?php

// Обновление существующего робота
$success = $connection->update(
    "robots",
    ["name"],
    ["New Astro Boy"],
    "id = 101"
);

// Следующее предложение SQL отправляется в систему базы данных
// UPDATE `robots` SET `name` = "Astro boy" WHERE id = 101

// Обновление существующего робота с условием массива и $dataTypes
$success = $connection->update(
    "robots",
    ["name"],
    ["New Astro Boy"],
    [
        "conditions" => "id = ?",
        "bind"       => [$some_unsafe_id],
        "bindTypes"  => [PDO::PARAM_INT], // use only if you use $dataTypes param
    ],
    [
        PDO::PARAM_STR
    ]
);

Внимание! Если $whereCondition является строкой, она не экранируется.

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

Обновление данных в таблице с помощью пользовательского синтаксиса RBDM SQL другой, более удобный синтаксис

<?php

// Обновление существующего робота
$success = $connection->updateAsDict(
    "robots",
    [
        "name" => "New Astro Boy",
    ],
    "id = 101"
);

// Следующее предложение SQL отправляется в систему баз данных
// UPDATE `robots` SET `name` = "Astro boy" WHERE id = 101

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

Удаляет данные из таблицы с помощью пользовательского синтаксиса RBDM SQL

<?php

// Удаление существующего робота
$success = $connection->delete(
    "robots",
    "id = 101"
);

// Следующее предложение SQL генерируется
// DELETE FROM `robots` WHERE `id` = 101

public escapeIdentifier (array | string $identifier) наследуется от Phalcon\Db\Adapter

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

<?php

$escapedTable = $connection->escapeIdentifier(
    "robots"
);

$escapedTable = $connection->escapeIdentifier(
    [
        "store",
        "robots",
    ]
);

 

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

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

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

Добавляет предложение LIMIT к аргументу $sqlQuery

<?php

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

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

Генерирует проверку SQL на существование schema.table

<?php

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

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

Генерирует проверку SQL на существование schema.view

<?php

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

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

Возвращает SQL, измененный предложением FOR UPDATE

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

Возвращает SQL, измененный с помощью предложения LOCK IN SHARE MODE

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

Создать таблицу

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

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

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

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

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

Отбрасывает представление

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

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

public modifyColumn (mixed $tableName, mixed $schemaName, Phalcon\Db\ColumnInterface $column, [Phalcon\Db\ColumnInterface $currentColumn]) наследуется от Phalcon\Db\Adapter

Изменяет столбец таблицы на основе определения

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

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

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

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

public dropIndex (mixed $tableName, mixed $schemaName, mixed $indexName) наследуется от Phalcon\Db\Adapter

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

public addPrimaryKey (mixed $tableName, mixed $schemaName, Phalcon\Db\IndexInterface $index) наследуется от Phalcon\Db\Adapter

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

public dropPrimaryKey (mixed $tableName, mixed $schemaName) наследуется от Phalcon\Db\Adapter

Удаление первичного ключа из таблицы

public addForeignKey (mixed $tableName, mixed $schemaName, Phalcon\Db\ReferenceInterface $reference) наследуется от Phalcon\Db\Adapter

Добавление внешнего ключа в таблицу

public dropForeignKey (mixed $tableName, mixed $schemaName, mixed $referenceName) наследуется от Phalcon\Db\Adapter

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

public getColumnDefinition (Phalcon\Db\ColumnInterface $column) наследуется от Phalcon\Db\Adapter

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

public listTables ([mixed $schemaName]) наследуется от Phalcon\Db\Adapter

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

<?php

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

public listViews ([mixed $schemaName]) наследуется от Phalcon\Db\Adapter

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

<?php

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

public tableOptions (mixed $tableName, [mixed $schemaName]) наследуется от Phalcon\Db\Adapter

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

<?php

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

public createSavepoint (mixed $name) наследуется от Phalcon\Db\Adapter

Создает новую точку сохранения

public releaseSavepoint (mixed $name) наследуется от Phalcon\Db\Adapter

Релизы с учетом точки сохранения

public rollbackSavepoint (mixed $name) наследуется от Phalcon\Db\Adapter

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

public setNestedTransactionsWithSavepoints (mixed $nestedTransactionsWithSavepoints) наследуется от Phalcon\Db\Adapter

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

public isNestedTransactionsWithSavepoints () наследуется от Phalcon\Db\Adapter

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

public getNestedTransactionSavepointName () наследуется от Phalcon\Db\Adapter

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

public getDefaultIdValue () наследуется от Phalcon\Db\Adapter

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

<?php

// Вставка нового робота с допустимым значением по умолчанию для столбца "id"
$success = $connection->insert(
    "robots",
    [
        $connection->getDefaultIdValue(),
        "Astro Boy",
        1952,
    ],
    [
        "id",
        "name",
        "year",
    ]
);

public supportSequences () наследуется от Phalcon\Db\Adapter

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

public getDescriptor () наследуется от Phalcon\Db\Adapter

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

public string getConnectionId () наследуется от Phalcon\Db\Adapter

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

public getSQLStatement () наследуется от Phalcon\Db\Adapter

Активная инструкция SQL в объекте

public getRealSQLStatement () наследуется от Phalcon\Db\Adapter

Активная инструкция SQL в объекте без замены связанных параметров

public array getSQLBindTypes () наследуется от Phalcon\Db\Adapter

Активная инструкция SQL в объекте