Spec-Zone.ru › CodeIgniter 3

Методы помощники запросов

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

$this->db->insert_id()

Номер идентификатора вставки при выполнении вставок в базу данных.

Примечание

При использовании драйвера PDO с PostgreSQL или драйвера Interbase эта функция требует параметр $name, который указывает соответствующую последовательность для проверки идентификатора вставки.

$this->db->affected_rows()

Отображает количество затронутых строк при выполнении запросов типа «запись» (вставка, обновление и т. д.).

Примечание

В MySQL «DELETE FROM TABLE» возвращает 0 затронутых строк. В классе базы данных есть небольшая уловка, которая позволяет возвращать правильное количество затронутых строк. По умолчанию эта уловка включена, но её можно отключить в файле драйвера базы данных.

$this->db->last_query()

Возвращает последний запрос, который был выполнен (строку запроса, а не результат). Пример:

$str = $this->db->last_query();

// Produces:  SELECT * FROM sometable....

Примечание

Отключение параметра save_queries в вашей конфигурации базы данных сделает эту функцию бесполезной.

Информация о вашей базе данных

$this->db->count_all()

Позволяет определить количество строк в определенной таблице. Передайте имя таблицы в первом параметре. Пример:

echo $this->db->count_all('my_table');

// Produces an integer, like 25

$this->db->platform()

Выводит платформу базы данных, на которой вы работаете (MySQL, MS SQL, Postgres и т. д.):

echo $this->db->platform();

$this->db->version()

Выводит версию базы данных, на которой вы работаете:

echo $this->db->version();

Упрощение ваших запросов

$this->db->insert_string()

Эта функция упрощает процесс записи запросов на вставку в базу данных. Она возвращает правильно отформатированную строку SQL вставки. Пример:

$data = array('name' => $name, 'email' => $email, 'url' => $url);

$str = $this->db->insert_string('table_name', $data);

Первый параметр — имя таблицы, второй — ассоциативный массив с данными для вставки. Вышеприведенный пример генерирует:

INSERT INTO table_name (name, email, url) VALUES ('Rick', 'rick@example.com', 'example.com')

Примечание

Значения автоматически экранируются, что обеспечивает более безопасные запросы.

$this->db->update_string()

Эта функция упрощает процесс записи запросов на обновление в базе данных. Она возвращает правильно отформатированную строку SQL обновления. Пример:

$data = array('name' => $name, 'email' => $email, 'url' => $url);

$where = "author_id = 1 AND status = 'active'";

$str = $this->db->update_string('table_name', $data, $where);

Первый параметр — имя таблицы, второй — ассоциативный массив с данными для обновления, а третий параметр — условие «where». Вышеприведенный пример генерирует:

UPDATE table_name SET name = 'Rick', email = 'rick@example.com', url = 'example.com' WHERE author_id = 1 AND status = 'active'

Примечание

Значения автоматически экранируются, что обеспечивает более безопасные запросы.

© 2014–2020 British Columbia Institute of Technology
Licensed under the MIT License.
https://codeigniter.com/userguide3/database/helpers.html

Spec-Zone.ru

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