MySQL 更新语句:未知 'table' 'field list'

MySQL Update Statement: Unknown 'table' in 'field list'

当我尝试使用 UPDATE 时,我一点击 GO 就出现以下错误:

1109 - Unkown table 'user' in 'field list'

既然我知道这个 table 名字不是最好的和唯一的,我试着用我的声明更具体一点:

UPDATE
    MyDatabase.user
SET
    MyDatabase.user.registeredAt = NOW()
WHERE
    MyDatabase.user.id = 3;

还是一样的错误。我尝试在 table 周围加上 ` 或使用 phpmyadmin 为您构建的语句一键按下但仍然相同。 由于更改名称不是一个选项,即使我知道这很糟糕,也没有其他选择,只能试图让他找到 table.

我错过了什么?

关于php和mySql的信息:


编辑 当 mySQL 没有正确安装时,我读到了一个错误,这个错误经常发生。因为我已经用 XAMPP 安装了整个包,所以不可能有这个错误,不是吗?

首先,请确保您有一个 table 命名为:

select * from information_schema.tables where table_schema = 'MyDatabase' and table_name = 'user';

`user´ 是保留关键字,因此您需要用反引号将您的 table 名称引起来。

UPDATE
    MyDatabase.`user`
SET
    MyDatabase.`user`.registeredAt = NOW()
WHERE
    MyDatabase.`user`.id = 3;

当您的数据库名称也需要引用时,不要同时包含数据库名称和 table 名称。

这是错误的:

`databasename.tablename`

这是对的:

`databasename`.`tablename`