如同先前的訊息,在 db2_columns 的最後一個參數傳遞 null 將不會返回任何結果。傳遞 '%' 則可以正常運作。文件真的需要更新以修正這個錯誤,因為它非常誤導,而且 8 年前就有人回報錯誤了!(PECL ibm_db2 >= 1.0.0)
db2_columns — 傳回一個結果集,列出表格的欄位和相關聯的詮釋資料
$connection,$qualifier = null,$schema = null,$table_name = null,$column_name = null傳回一個結果集,列出表格的欄位和相關聯的詮釋資料。
傳回一個陳述式資源,其結果集包含描述符合指定參數的欄位的列。這些列由以下欄位組成:
| 欄位名稱 | 說明 |
|---|---|
| TABLE_CAT | 目錄的名稱。如果此表格沒有目錄,則值為 NULL。 |
| TABLE_SCHEM | 綱要的名稱。 |
| TABLE_NAME | 表格或檢視的名稱。 |
| COLUMN_NAME | 欄位的名稱。 |
| DATA_TYPE | 以整數值表示的欄位 SQL 資料類型。 |
| TYPE_NAME | 表示欄位資料類型的字串。 |
| COLUMN_SIZE | 表示欄位大小的整數值。 |
| BUFFER_LENGTH | 儲存此欄位資料所需的最大位元組數。 |
| DECIMAL_DIGITS | 欄位的位數,或在不適用位數的情況下為 null。 |
| NUM_PREC_RADIX | 整數值,可以是 10(表示精確數值資料類型)、2(表示近似數值資料類型)或 null(表示不適用基數的資料類型)。 |
| NULLABLE | 表示欄位是否可為 Null 的整數值。 |
| REMARKS | 欄位的描述。 |
| COLUMN_DEF | 欄位的預設值。 |
| SQL_DATA_TYPE | 表示欄位大小的整數值。 |
| SQL_DATETIME_SUB | 傳回一個整數值,表示日期時間子類型代碼,或對於不適用的 SQL 資料類型,則為 null。 |
| CHAR_OCTET_LENGTH | 字元資料類型欄位的最大八位元組長度,與單一位元組字元集資料的 COLUMN_SIZE 相符,或對於非字元資料類型,則為 null。 |
| ORDINAL_POSITION | 欄位在表格中的 1 基索引位置。 |
| IS_NULLABLE | 一個字串值,其中「YES」表示該欄位可為空值,「NO」表示該欄位不可為空值。 |
如同先前的訊息,在 db2_columns 的最後一個參數傳遞 null 將不會返回任何結果。傳遞 '%' 則可以正常運作。文件真的需要更新以修正這個錯誤,因為它非常誤導,而且 8 年前就有人回報錯誤了!必須是
db2_columns($conn, '', '%', $table, '%');
別忘了表格名稱是大寫。這讓我相當頭痛。