PHP 代码返回未知列错误

标签 php mysql

我想知道是否有 PHP/MySQL 专家可以帮助我。我已经编写了一段 PHP 代码,我希望它将新列添加到数据库中的表中。以下是代码:

     <?php

              // All the database connection codes here

      $retro = mysqli_real_escape_string($con, $_POST['retro']);
      $moon = mysqli_real_escape_string($con, $_POST['moon']);
      $astronomicalunit = mysqli_real_escape_string($con, $_POST['astronomicalunit']);

      $sql = "ALTER TABLE Planets
      ADD (COLUMN 'RetrogradePrograde' VARCHAR(45),
      COLUMN 'NumberOfMoons' VARCHAR(45),
      COLUMN 'DistanceFromSun' SMALLINT(5));";

      $sql = "UPDATE Planets
      SET   RetrogradePrograde = '$retro',
      NumberOfMoons = '$moon',
      DistanceFromSun = '$astronomicalunit';";

      // all the mysqli connection failure notification here

      // close mysqli connection

      ?>

但是当我尝试在浏览器上运行该程序时,收到消息“错误:‘字段列表’中存在未知列‘RetrogradePrograde’”当我刚刚创建它时,怎么会有一个未知列?请帮忙。

最佳答案

ALTER TABLE 命令中列名称周围的引号类型错误。它们应该是反引号,而不是单引号。或者您可以完全省略它们,因为您的列都不是保留字。另外,可选单词COLUMN 应位于括号之外。

$sql = "ALTER TABLE Planets
    ADD COLUMN (
        `RetrogradePrograde` VARCHAR(45),
        `NumberOfMoons` VARCHAR(45),
        `DistanceFromSun` SMALLINT(5));";

请参阅 documentation 中的语法.

关于PHP 代码返回未知列错误,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/25215390/

相关文章:

mysql - 使用交叉联接和 Hversine 公式在 MySQL 地理搜索中删除重复记录

c# - 处理选择不存在的记录以避免空异常错误的更奇特的方法

php - Google 日历 API V3 更新事件

php - 优化我的sql查询

mysql - 比较 hsqldb 和 mysql

mysql - SQL查询仅返回重复项的最大值[duplicate]

javascript - 在这种情况下,如何将数据从 html 传输到 php

php - 如何在不使用 PHP 目录的情况下创建 URL 路径?

php - MySQL 检查 3 个或更多连续条目

php - 使用自定义对象创建接口(interface)函数