你好我是新来的,甚至不知道stackoverflow是否是这个问题的正确的板,但我无法弄清楚我的问题..
我在phpmyadmin中有很多数据库,还有许多特定于数据库的用户,他们拥有自己数据库的所有权限,可以阅读其他数据库。
现在我的用户abc拥有以名称开头的所有数据库的权限:
abc_%
喜欢abc_development
,abc_production
...
但是,如果我创建一个新的数据库abc-def
,旧用户获得了它的所有权利,abc_
和abc-
之间没有区别
非常感谢,抱歉英语不好
答案 0 :(得分:1)
下划线(_
)在SQL中具有特定含义,类似于%
....而%
是用于匹配任意数量字符的通配符,{{1} }是用于匹配单个字符的通配符。
如果您需要在查询中使用文字下划线,那么您需要将其转义,就像您需要转义文字_
所以
%
答案 1 :(得分:0)
在sql中,有两个通配符
" _"匹配一个字符。
"%"匹配0个或更多字符。
您的查询应该说' abc \ _%'以你期望的方式工作。