MySQL更新语句:“字段列表”中的未知“表”

时间:2018-10-16 18:41:19

标签: mysql phpmyadmin xampp

当我尝试使用UPDATE时,一旦我按GO,就会出现以下错误:

  

1109-“字段列表”中未知的表“用户”

现在,由于我知道此表名并不是使用过的最好的唯一表,因此我尝试通过以下语句更加具体:

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

仍然是相同的错误。我在桌子周围用`或用phpmyadmin在一次按钮上为您构建的语句进行了尝试,但仍然相同。 由于更改名称不是一个选择,即使我知道这很糟糕,也没有其他选择,只能尝试让他找到该表。

我想念什么?

有关php和mySql的信息:

  • PHP版本:5.6.38
  • 数据库客户端版本:libmysql-mysqlnd 5.0.11
  • 服务器版本:10.1.36-MariaDB

编辑 我已经读过有关未正确安装mySQL的错误,该错误更常发生。因为我已经用XAMPP安装了整个软件包,所以不可能出现这个错误,不是吗?

1 个答案:

答案 0 :(得分:0)

首先,请确保您有一个这样的表:

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

`user´是保留的关键字,因此您需要在表名两端加上反引号。

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

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

这是错误的:

`databasename.tablename`

这是正确的:

`databasename`.`tablename`