首頁 >資料庫 >mysql教程 >如何修復 MySQL 錯誤 1356:更新查詢中的無效表參考?

如何修復 MySQL 錯誤 1356:更新查詢中的無效表參考?

Linda Hamilton
Linda Hamilton原創
2024-11-27 11:02:10585瀏覽

How to Fix MySQL Error 1356: Invalid Table References in UPDATE Queries?

MySQL 錯誤1356:更新查詢中的表格引用無效

嘗試使用UPDATE 指令更新使用者權限可能會導致錯誤:

ERROR 1356 (HY000): View 'mysql.user' references invalid table(s) or column(s) or function(s) or definer/invoker of view lack rights to use them

理解錯誤

在MariaDB 10.4和更高一點,mysql.user是一個視圖,而不是一個表。因此,不再支援在此視圖上執行直接更新。

解決方案

要解決此錯誤,請使用以下建議做法:
  • 使用SET PASSWORD 或ALTER USER 進行身份驗證更改:
  • 使用SET PASSWORD 管理使用者驗證或ALTER USER 指令。
  • 避免操作現有使用者:
  • 修改現有使用者名稱的使用者/主機元件可能會導致不一致。相反,根據需要刪除並重新建立用戶。

示例

要向MariaDB 10.4 中的root 用戶授予遠程訪問權限,請使用以下命令:
ALTER USER 'root'@'%' IDENTIFIED BY 'new_password';

注意事項
  • 請務必參考官方文件以了解更多資訊有關MySQL 和MariaDB身份驗證機制的最新資訊。
  • 從過時的來源複製指令可能會導致錯誤和意外行為。

以上是如何修復 MySQL 錯誤 1356:更新查詢中的無效表參考?的詳細內容。更多資訊請關注PHP中文網其他相關文章!

陳述:
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn