在线文档教程
Codeigniter 3

数据库元数据 | Database Metadata

数据库元数据

表元数据

这些函数允许您获取表信息。

列出数据库中的表

$this->db->list[医]表%28%29;

返回一个数组,该数组包含当前连接到的数据库中所有表的名称。例子:

$tables = $this->db->list_tables( foreach ($tables as $table) { echo $table; }

确定表是否存在

$this - > DB-> table_exists();

有时候在运行一个特定的表之前知道它是否有用。返回一个布尔值TRUE / FALSE。用法示例:

if ($this->db->table_exists('table_name')) { // some code... }

取代[医]名称与您要查找的名称

字段元数据

列出表中的字段

$this - > DB-> list_fields()

返回包含字段名的数组。这个查询可以被称为两种方式:

  • 您可以提供表名并从$this->db->对象调用它:$fields = $this->db->list_fields('table_name' foreach ($fields as $field) { echo $field; }

  • 您可以通过从查询结果对象调用函数来收集与您运行的任何查询关联的字段名称:

$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')) { // some code... }

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- 列的类型