CodeIgniter, руководство пользователя к версии 1.6.1


Метаданные полей

$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 (boolean). Пример использования:

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()

С помощью этой функци можно получить следующие данные, если они подерживаются вашей базой данных: