Conceda aos usuários acesso ao mysql com um traço no nome do banco de dados

7

Infelizmente, tenho um nome de banco de dados com um traço nele. Como faço para conceder acesso a esse banco de dados como o mysql relata um erro de sintaxe.

por exemplo,

GRANT SELECT,INSERT,UPDATE,DELETE ON astpp.* TO 'portal'@'localhost'
IDENTIFIED BY 'Ab7g12Xh35' WITH GRANT OPTION;

funciona, mas

GRANT SELECT,INSERT,UPDATE,DELETE ON astpp-eth01.* TO 'portal'@'localhost'
IDENTIFIED BY 'Ab7g12Xh35' WITH GRANT OPTION;

Não.

Nem:

GRANT SELECT,INSERT,UPDATE,DELETE ON 'astpp-eth01'.* TO 'portal'@'localhost'
IDENTIFIED BY 'Ab7g12Xh35' WITH GRANT OPTION;
    
por Matt 07.05.2010 / 03:27

1 resposta

19

No mysql, você evita os nomes das colunas do banco de dados com o caractere de backtick, a menos que você tenha ANSI_QUOTES ativado. Consulte o link .

Tente usar um comando como este.

grant select,insert,update,delete on 'astpp-eth01'.* to 'portal'@'localhost' identified by 'Ab7g12Xh35' with grant option;
    
por 07.05.2010 / 03:34