此问题在此处已有答案:
Sql syntax error using UPDATE database query [closed](2个答案)
六年前就关门了。
我正在尝试使用PDO更新MySQL中的数据。
我已经设置了下面的代码,但得到错误
数据库状态[42000]:语法错误或访问冲突:1064 1064您的SQL语法有错误;查看与您的MySQL服务器版本对应的手册〉以获取使用near '(h1,text)值(第1行的' blah blah')的正确语法
if (isset($_POST['Submit']))://if admin wants to edit category
$h1 = $_POST['h1'];
$text = $_POST['text'];
$servername = "localhost";
$username = "user";
$password = "password";
$dbname = "dbname";
try {
$conn = new PDO("mysql:host=$servername;dbname=$dbname", $username, $password);
// set the PDO error mode to exception
$conn->setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION);
// Prepare statement
$stmt = $conn->prepare('UPDATE sections (h1, text) values (:h1, :text) WHERE id=1');
$stmt->bindParam(':h1', $h1);
$stmt->bindParam(':text', $text);
// execute the query
$stmt->execute();
// echo a message to say the UPDATE succeeded
echo $stmt->rowCount() . " records UPDATED successfully";
}
catch(PDOException $e)
{
echo $sql . "<br>" . $e->getMessage();
}
$conn = null;
2条答案
按热度按时间nafvub8i1#
更新语法应为:
您的查询应该是:
请参阅Update query syntax
gev0vcfq2#
文本是mysql中的reserved word。
按以下方式编写查询:-