gpt4 book ai didi

php - SQL 更新后,字段设置为 0 [PHP/MySQL]

转载 作者:行者123 更新时间:2023-11-29 07:05:36 26 4
gpt4 key购买 nike

好吧,我现在生病了,所以也许答案就在我面前,但过去 4 个小时我一直坐在这里试图弄清楚为什么会这样。

基本上我有一个脚本应该更新数据库中的一行。我要更新的字段是“名称”,它看起来像这样:

// Updating the database with the new name
$name = $this->db->slashes( $this->friends[$row->key] );
$sql = "UPDATE `friends` SET `name` = '" . $name . "' AND `status` = 'updated' WHERE `key` = " . $row->key . " LIMIT 1";
echo '-- Query: ' . $sql . '<br />';
$result2 = $this->db->query( $sql );

if( !$result2 )
echo mysql_error();

输出变成这样(一个例子):

-- Query: UPDATE `friends` SET `name` = 'Andrew Johnsson' AND `status` = 'updated' WHERE `key` = 7823583 LIMIT 1

它没有生成任何 mysql_error 所以查询似乎已经正确地进行了,从查询的外观来看,它应该只是更新了数据库中的一行,其中键是一个数字并将新名称设置为 Andrew Johnsson以及将状态设置为已更新。

但是!在此更新后查看数据库后,此行的名称设置为“0”。它到底为什么要这么做?

关于为什么会发生这种情况的任何想法?另外,如果您需要更多信息来帮助我,请告诉我,我会很乐意提供!

最佳答案

您的 UPDATE 语法不正确。应该是 SET name = 'string', status = 'updated' WHERE key...

目前,您实际上是在要求它评估 AND 以确定名称列应该更新的内容,这就是您得到 0 的原因。

关于php - SQL 更新后,字段设置为 0 [PHP/MySQL],我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7375356/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com