【问题标题】:Uncaught PDOException: SQLSTATE[42000] - Try to Insert Data未捕获的 PDOException: SQLSTATE[42000] - 尝试插入数据
【发布时间】:2018-03-11 22:50:30
【问题描述】:

在过去的两个小时里,我阅读并努力运行我的代码。但是我在我的 sql 查询中遇到了语法错误,有人可以帮助我吗?

我的代码:

$query = "INSERT INTO `article` (`text`,`headline`,`date`,`author`,`active`) SET (?,?,?,?,?)";
$stmt = $pdo->prepare($query);
$stmt->bindValue(1, $text, PDO::PARAM_STR);
$stmt->bindValue(2, $headline, PDO::PARAM_STR);
$stmt->bindValue(3, $date, PDO::PARAM_STR);
$stmt->bindValue(4, $author, PDO::PARAM_STR);
$stmt->bindValue(5, $active, PDO::PARAM_INT);
if($stmt->execute()) {  //do something }

致命错误:

未捕获的 PDOException: SQLSTATE[42000]: 语法错误或访问冲突:1064 您的 SQL 语法有错误;查看与您的 MariaDB 服务器版本相对应的手册,了解在 'SET ('some text','test heading','2017-09-30','author123',1)' 附近使用的正确语法

顺便说一句,我如何使用 php 代码标签?

谢谢

【问题讨论】:

    标签: mysql pdo syntax insert fatal-error


    【解决方案1】:

    尝试将查询中的“SET”更改为“VALUES”,在这种情况下您对“SET”的使用不正确。

    【讨论】:

      【解决方案2】:

      您的语法不正确。检查 MySQL 文档: https://dev.mysql.com/doc/refman/5.7/en/insert.html

      使用插入查询时,您使用:

      INSERT INTO table_name (column1, column2, column3, ...) VALUES (value1, value2, value3, ...);
      

      【讨论】:

        猜你喜欢
        • 2014-03-18
        • 1970-01-01
        • 1970-01-01
        • 2021-07-25
        • 1970-01-01
        • 1970-01-01
        • 2017-06-12
        • 2017-11-24
        • 1970-01-01
        相关资源
        最近更新 更多