2017-02-22 106 views
1

我设置一个MySQL数据库作为一个权限:我的SQL设置权限

GRANT SELECT ON 'Whats-uav-u-100176'.* to "wvico-zag-u-100787" 

但我得到这个错误:

‍‍#1064 - You have an error in your SQL syntax; check the manual that corresponds to your MariaDB server version for the right syntax to use near ''Whats-uav-u-100176'.* to "wvico-zag-u-100787"' at line 1

如何解决这个问题呢?

+0

您的意思是'GRANT ALL'而不是'GRANT SELECT'试试? – zed

+0

不,我不希望这个用户做任何编辑,只需选择 –

+0

要查看被授予用户'SELECT FROM common_schema.sql_show_grants其中user =“应用” sql_grants;' – zed

回答

0

使用SELECT选项GRANT我认为你需要指明列列表

GRANT SELECT (column_list) ON 'Whats-uav-u-100176'.* to "wvico-zag-u-100787" 
+0

都能跟得上我的主机发送这是SQL查询你需要运行:GRANT SELECT,INSERT,UPDATE,DELETE ON'DATABASE'。*到“USERNAME”,但我不希望这个用户更新等。 –

0
GRANT SELECT ON Whats-uav-u-100176.* TO [email protected]'%' IDENTIFIED BY 'password'; 

如果你想要一个以上的接入。

GRANT SELECT, INSERT, DELETE ON Whats-uav-u-100176.* TO [email protected]'%' IDENTIFIED BY 'password'; 
0

语法正常,但如果SQL_MODE在您的服务器上设置为ANSI_QUOTES。

ANSI_QUOTES

Treat " as an identifier quote character (like the ` quote character) and not as a string quote character. You can still use ` to quote identifiers with this mode enabled. With ANSI_QUOTES enabled, you cannot use double quotation marks to quote literal strings, because it is interpreted as an identifier.

用单引号

GRANT SELECT ON 'Whats-uav-u-100176'.* to 'wvico-zag-u-100787'