Вспомогательные функции запроса
Информация о выполненном запросе
$this->db->insert_id()
Вставка ID при выполнении записи в базу.
Примечание
Если использовать PDO драйвер с PostgreSQL или использовать Interbase драйвер, эта функция требует параметр $name, который определяет соответствующую последовательность для проверки вставляемого id.
$this->db->affected_rows()
Отображает число строк, затронутых при выполнении запроса типа “запись” (insert, update и тд.).
Примечание
В MySQL “DELETE FROM TABLE” возвращает 0 затронутых сток. Класс базы данных имеет небольшой хак, который позволяет вернуть правильное количество затронутых строк. По умолчанию этот хак включен, но его можно отключить в файле драйвера базы данных.
$this->db->last_query()
Возвращает последний запрос, который был выполнен (строку запроса, но не результат). Пример:
$str = $this->db->last_query();
// Производит: SELECT * FROM sometable....
Примечание
Отключение функции save_queries в настройках базы данных, сделают эту функцию бесполезной.
Информация о вашей базе данных
$this->db->count_all()
Позволяет определить количество строк в определенной таблице. Укажите имя таблицы в качестве первого параметра. Пример:
echo $this->db->count_all('my_table');
// Производит число, например 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'
Примечание
Значения экранируются автоматически, создавая безопасные запросы.