Данные полей
$this->db->list_fields()
Возвращает массив, содержащий имена полей. Этот запрос может быть вызван в двух случаях:
1. Если вы передали имя таблицы, и вызываете его из объекта $this->db->:
$fields = $this->db->list_fields('table_name');
foreach ($fields as $field)
{
echo $field;
}
2. Вы можете собирать имена полей, ассоциированных в любом запросе, с помощью вызова функции, из объекта результата:
$query = $this->db->query('SELECT * FROM some_table');
foreach ($query->list_fields() as $field)
{
echo $field;
}
$this->db->field_exists()
Иногда полезно знать, существует ли конкретное поле, перед тем, как делать запрос. Возвращает TRUE или FALSE. Пример использования:
if ($this->db->field_exists('field_name', 'table_name'))
{
// какой-то код...
}
Примечание: Замените field_name на имя столбца, который вы ищете, и замените table_name на имя таблицы.
$this->db->field_data()
Возвращает массив объектов, содержащий информацию о полях.
Иногда может быть полезным собрать имена полей или другие матаданные, такие как тип столбца, максимально возможную длину значения и так далее.
Примечание: Не все базы данных предоставляют метаданные.
Пример использования:
$fields = $this->db->field_data('table_name');
foreach ($fields as $field)
{
echo $field->name;
echo $field->type;
echo $field->max_length;
echo $field->primary_key;
}
Если же вы выполняли запросы, то можете использовать объект результата вместо того, чтобы передавать имя таблицы:
$query = $this->db->query("YOUR QUERY");
$fields = $query->field_data();
Следующие данные доступны из этой функции, если поддерживается движком БД:
- name - имя столбца;
- max_length - максимальная длина;
- primary_key - 1, если столбец является первичным ключом;
- type - тип столбца.