我想从表中获取列名并显示它们,以便稍后对它们进行比较。 为了得到这些名字,我试过了:
$entry = mysqli_query($con, 'SHOW COLUMNS FROM table');
和
$entry = mysqli_query($con, "SELECT COLUMN_NAME FROM INFORMATION_SCHEMA.COLUMNS
WHERE TABLE_SCHEMA = '$db' AND TABLE_NAME = 'table'");
我不知道这是否正常运行,因为我在那里没有收到错误消息。 如果我尝试通过echo打印$ entry的内容,我会不断收到错误。 以前在我的代码中,我使用以下方式打印其他条目:
$test = mysqli_query($con, 'SELECT DISTINCT LK_Release FROM table');
while($row = mysqli_fetch_object($test))
{
echo "Releasename: " . "$row->LK_Release". "<br>";
... }
此输出适合我。 我试图输出列名:
while($row = mysqli_fetch_object($entry))
{
echo $row;
}
有什么想法吗?
答案 0 :(得分:1)
您的查询已经正确无误。但你缺乏一些东西:
while($row = mysqli_fetch_object($entry))
{
echo $row->Field . '<br/>';
// ^ access the objects properties
}
答案 1 :(得分:0)
以下SQL语句几乎相同:
SELECT COLUMN_NAME
FROM INFORMATION_SCHEMA.COLUMNS
WHERE table_name = 'tbl_name'
您可以使用DESCRIBE:
DESCRIBE my_table;
或者在较新版本中,您可以使用INFORMATION_SCHEMA:
SELECT COLUMN_NAME FROM INFORMATION_SCHEMA.COLUMNS WHERE TABLE_SCHEMA = 'my_database' AND TABLE_NAME = 'my_table';
或者您可以使用SHOW COLUMNS:
SHOW COLUMNS FROM my_table;