欄位資訊
$this->db->list_fields()
底下有兩種方式可以取得資料表欄位陣列資訊:
1. 你可以利用 $this->db-> 物件提供資料表名稱取得欄位資訊:
$fields = $this->db->list_fields('table_name');
foreach ($fields as $field)
{
echo $field;
}
2. 你可以利用執行 SQL 後所得到的物件來取得該資料表欄位資訊:
$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()
回傳該欄位資訊陣列資訊.
它幫助您取得欄位名稱或者是其他資訊,例如 type 和 max length...等。
注意: 並非所有資料庫都提供這些 meta-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;
}
假如您已經有執行過 SQL 語法,可以利用它回傳的物件來取的資料,這樣就取代輸入資料表名稱:
$query = $this->db->query("YOUR QUERY");
$fields = $query->field_data();
假如資料庫有支援,底下欄位資料就可以任意取得:
- name - 欄位名稱
- max_length - 欄位長度
- primary_key - 判斷是否為主鍵(primary key)
- type - 欄位 Type