7

我可以获取表的列名,但有没有办法检索每列的默认数据值?

这是我用来获取表格列名的内容:

$q = $dbh->query("DESCRIBE tablename"); 
$table_fields = $q->fetchAll(PDO::FETCH_COLUMN);

print_r($table_fields);

这会打印一个列名数组,但我也在尝试获取每个列名的默认数据值。

4

3 回答 3

12

另一种选择是转到数据字典并在Information_Schema.Columns. 这允许您将结果限制为单个列。

$query = <<< endsql
 SELECT Column_Default
  FROM Information_Schema.Columns
  WHERE Table_Schema = '$yourSchema'
    AND Table_Name = '$yourTableName'
    AND Column_Name = '$yourColumnName'
endsql;
于 2013-04-10T02:05:03.063 回答
7

尝试这个:

$query = "SHOW FULL COLUMNS FROM tableName";
// ...

Default

我希望我有所帮助。

于 2013-04-10T01:53:49.947 回答
-1

只需在您的 FETCH_COLUMN 之后给出一个索引。我没有尝试您的代码,但根据DESCRIBE 手册,它将返回 6 个描述列。因此,如果您已阅读本文,您可能会得到解决方案。我已经阅读了它们,我认为只需在您的代码中添加第 4 个索引,如下所示即可。

$table_fields = $q->fetchAll(PDO::FETCH_COLUMN,4);
于 2013-04-10T01:54:26.443 回答