mysql - 向名为“Grant”的用户授予权限?
问题描述
CREATE USER 'Grant'@'localhost' IDENTIFIED BY 'bestpasswordever';
如何向名为“Grant”的用户授予权限?它抛出一个错误。
GRANT INSERT, DELETE
ON table
TO Grant@localhost;
错误:“授予”在此位置无效。期待一个标识符。
解决方案
当使用保留关键字或带有其他非法字符的标识符作为标识符时,您必须使用反引号
GRANT INSERT, DELETE
ON table
TO `Grant`@localhost;
根据文档,撇号或双引号也可以:
使用反引号 (`)、单引号 (') 或双引号 (") 将用户名和主机名作为标识符或字符串引用。有关字符串引用和标识符引用指南,请参阅第 9.1.1 节, “字符串文字”和第 9.2 节,“模式对象名称”。
...但我是一个纯粹主义者,并且总是在 MySQL 中使用反引号作为标识符。
推荐阅读
- php - 如何根据 PHP 中的引用赋值
- go - 在我的 Mac 上使用 Delve 调试 GO:“combining dwarf failed: Unknown load command 0x32”
- javascript - React Router v4:自定义 PrivateRoute 组件不断重新加载
- fullcalendar - FullCalendar 事件表没有外键?
- c# - 从网络将 JSON 转换为 c#
- javascript - HTML 响应式 css 不适用于随机图像
- histogram - Grafana:x轴文本在系列模式下重叠
- firebase - 跟踪用户活动以获取日志和定价
- javascript - 如何每 X 次删除数组中的项目,直到数组长度等于 1
- python - pygame.mixer.music,只要 while 循环正在运行,我就想播放曲目