mysql检查列?

时间:2012-07-05 02:00:37

标签: php mysql pdo

有没有办法检查mysql语法中有哪些列?

例如,

$dbh = $db->query("SELECT * FROM table");
while($row = $dbh->fetchAll(PDO::FETCH_ASSOC))
{
$row['somecolumn'];
}

例如,如果有某些列,我想知道是否有一种方法可以在table

以后这种方式,我将能够检查是否可以使用$row['fr']$row['food']

由于

3 个答案:

答案 0 :(得分:0)

您只需检查$row是否包含您需要的密钥。

PHP函数array_key_exists将告诉您$row是否包含您想要的密钥。例如,如果array_key_exists("fr", $row)包含$row密钥,fr将返回true。

如果您想查看所有密钥(即所有列),只需使用array_keys;例如:array_keys($row)会在$row中为您提供所有密钥。

或者,如果你不介意另一个SQL调用,你可以使用SELECT column_name FROM information_schema.columns WHERE table_name='your_table'作为xdazz的答案提及。

答案 1 :(得分:0)

您可以使用INFORMATION_SCHEMA执行此操作,或DESCRIBE

查看information_schema columns文档,或查看describe语法。

答案 2 :(得分:0)

您可以使用下面的sql为一个表选择列名。

SELECT 
    column_name 
FROM 
    information_schema.columns 
WHERE 
    table_name='your_table';
相关问题