php - DB 错误,无法列出表 MySQL 错误

标签 php mysql

我的 php 应用程序有问题。它在 pp 5.2 和 mysql 5.6 上运行

当我尝试运行这个

    <?php
$dbname ='LAA-dbname';

if (!mysql_connect('mysq123.php.server', 'LAAuser', 'mypwd')) {
    echo 'Could not connect to mysql';
    exit;
}

$sql = "SHOW TABLES FROM $dbname";
$result = mysql_query($sql);

if (!$result) {
    echo "DB Error, could not list tables\n";
    echo 'MySQL Error: ' . mysql_error();
    exit;
}

while ($row = mysql_fetch_row($result)) {
    echo "Table: {$row[0]}\n";
}

mysql_free_result($result);
?>

我收到此错误

数据库错误,无法列出表 MySQL 错误:您的 SQL 语法有错误;检查与您的 MySQL 服务器版本相对应的手册,了解在第 1 行“-dbname”附近使用的正确语法

可能是什么原因? 谢谢

最佳答案

试试这个

  $sql = "SHOW TABLES FROM `$dbname`";

你必须使用反引号让mysql知道该表是LAA-dbname,否则它将被理解为负号。

关于php - DB 错误,无法列出表 MySQL 错误,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17197998/

相关文章:

PHP - mPDF 设置分辨率

java - MySQL 将预定义列值返回为 Int

php - 如何使用mysql检索最后插入的id?

html - 从喜欢 mysql 中特定产品的人中查找最喜欢的产品

MYSQL - 8.0.13 - 来自 information_schema.VIEWS 的 VIEW_DEFINITION 列上的​​值,仅显示给 View 创建者

mysql从结果中随机选择

php - 保护远程服务器上的下载

PHP Echo 将 HTML 转换为文本

PHP Regex 在任意数量的单词和 1-3 位数字之后正确语法 preg_split

php - 在 PHP 和 Wordpress 中调试