“ @”在此位置无效输入MySQL

时间:2018-07-24 09:31:17

标签: mysql mysql-workbench

我正在学习dev.mysql的教程,并且尝试为先前创建的每个帐户将默认值设置为所有分配的角色,因此我尝试使用此语句: https://dev.mysql.com/doc/refman/8.0/en/roles.html

SET DEFAULT ROLE ALL TO
  'dev1'@'localhost',
  'read_user1'@'localhost',
  'read_user2'@'localhost',
  'rw_user1'@'localhost';

但是由于这个错误,我无法执行此操作,因为“ @”在此服务器版本的此位置无效,期望为';'

我正在使用Workbench 8.0

1 个答案:

答案 0 :(得分:1)

这是MySQL Workbench使用的MySQL语法中的错误。参见the code on Github。这里的相关规则是:

role:
    roleIdentifierOrText (AT_SYMBOL textOrIdentifier)?
;

AT_SYMBOL实际上应该是AT_SIGN_SYMBOL。我会解决这个问题。