Вспомогательные функции запроса 

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

    $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'
    

    Примечание

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