CodeIgniter 數據庫元數據

2018-07-21 15:41 更新

數據庫元數據

表元數據

下面這些方法用于獲取表信息:

列出數據庫的所有表

$this->db->list_tables();

該方法返回一個包含你當前連接的數據庫的所有表名稱的數組。例如:

$tables = $this->db->list_tables();

foreach ($tables as $table)
{
    echo $table;
}

檢測表是否存在

$this->db->table_exists();

有時候,在對某個表執(zhí)行操作之前先判斷該表是否存在將是很有用的。 該函數返回一個布爾值:TRUE / FALSE。使用示例:

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

注解

使用你要查找的表名替換掉 table_name

字段元數據

列出表的所有列

$this->db->list_fields()

該方法返回一個包含字段名稱的數組。有兩種不同的調用方式:

  1. 將表名陳作為參數傳入 $this->db->list_fields():

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

有時候,在執(zhí)行一個操作之前先確定某個字段是否存在將會有很用。 該方法返回一個布爾值: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;
}

如果你已經執(zhí)行了一個查詢,你也可以在查詢結果對象上調用該方法獲取 返回結果中的所有字段的元數據:

$query = $this->db->query("YOUR QUERY");
$fields = $query->field_data();

如果你的數據庫支持,該函數獲取的字段信息將包括下面這些:

  • name - 列名稱
  • max_length - 列的最大長度
  • primary_key - 等于1的話表示此列是主鍵
  • type - 列的數據類型
以上內容是否對您有幫助:
在線筆記
App下載
App下載

掃描二維碼

下載編程獅App

公眾號
微信公眾號

編程獅公眾號