文件首頁
MySQL 8.4 參考手冊
相關文件 下載本手冊
PDF (美式信紙) - 39.9Mb
PDF (A4) - 40.0Mb
Man Pages (TGZ) - 258.5Kb
Man Pages (Zip) - 365.5Kb
Info (Gzip) - 4.0Mb
Info (Zip) - 4.0Mb


MySQL 8.4 參考手冊  /  ...  /  INFORMATION_SCHEMA USER_ATTRIBUTES 資料表

28.3.45 INFORMATION_SCHEMA USER_ATTRIBUTES 資料表

USER_ATTRIBUTES 資料表提供使用者註解與使用者屬性的相關資訊。它從 mysql.user 系統資料表取得其值。

USER_ATTRIBUTES 資料表有這些欄位

  • USER

    套用 ATTRIBUTE 欄位值的帳戶的使用者名稱部分。

  • HOST

    套用 ATTRIBUTE 欄位值的帳戶的主機名稱部分。

  • ATTRIBUTE

    屬於 USERHOST 欄位所指定帳戶的使用者註解、使用者屬性,或兩者皆有。該值為 JSON 物件表示法。屬性會完全依照使用 CREATE USERALTER USER 陳述式搭配 ATTRIBUTECOMMENT 選項設定的方式顯示。註解會顯示為具有 comment 作為鍵的鍵值對。如需其他資訊與範例,請參閱 CREATE USER 註解與屬性選項

注意事項

  • USER_ATTRIBUTES 是非標準 INFORMATION_SCHEMA 資料表。

  • 若要只取得指定使用者的使用者註解作為未加上引號的字串,您可以使用如下的查詢

    mysql> SELECT ATTRIBUTE->>"$.comment" AS Comment
        ->     FROM INFORMATION_SCHEMA.USER_ATTRIBUTES
        ->     WHERE USER='bill' AND HOST='localhost';
    +-----------+
    | Comment   |
    +-----------+
    | A comment |
    +-----------+

    同樣地,您可以使用其鍵來取得指定使用者屬性的未加上引號的值。

  • USER_ATTRIBUTES 內容可透過以下方式存取

    • 如果符合下列情況,則可存取所有列

      • 目前執行緒是複本執行緒。

      • 存取控制系統尚未初始化 (例如,伺服器使用 --skip-grant-tables 選項啟動)。

      • 目前經過驗證的帳戶具有 mysql.user 系統資料表的 UPDATESELECT 權限。

      • 目前經過驗證的帳戶具有 CREATE USERSYSTEM_USER 權限。

    • 否則,目前經過驗證的帳戶可以看見該帳戶的列。此外,如果帳戶具有 CREATE USER 權限但沒有 SYSTEM_USER 權限,它可以看見所有其他沒有 SYSTEM_USER 權限的帳戶的列。

如需有關指定帳戶註解與屬性的詳細資訊,請參閱第 15.7.1.3 節,「CREATE USER 陳述式」