Метаданные полей
$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()
С помощью этой функци можно получить следующие данные, если они подерживаются вашей базой данных:
- name - имя столбца
- max_length - максимальная длина столбца
- primary_key - 1, если столбец является первичным ключом
- type - тип столбца