我尝试使用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安装了整个软件包,所以不可能出现这个错误,不是吗?
最佳答案
首先,确保您有一个像这样的表:
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`
关于mysql - MySQL更新语句:“字段列表”中未知的“表”,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/52842026/