Mysql 阻止用户使用连字符创建表和/或数据库
MySQL中是否有方法阻止某人使用连字符创建表和/或数据库?(除从用户中剥离权限外。) 例如,如果有用户IamADummy想要这样做Mysql 阻止用户使用连字符创建表和/或数据库,mysql,Mysql,MySQL中是否有方法阻止某人使用连字符创建表和/或数据库?(除从用户中剥离权限外。) 例如,如果有用户IamADummy想要这样做 CREATE TABLE `I-am-a-bad-table-name`; 或 是否存在阻止用户这样做的设置 谢谢 我不是专家,但看起来不像: 礼貌地告诉IAMADummy使用下划线,如果他继续使用hypens(减号),“剥夺用户的权限”,或者每小时运行一个脚本,用连字符删除表中的所有权限。当我成年人打电话时,告诉他这是一项新功能。我不这么认为。正如mySQL
CREATE TABLE `I-am-a-bad-table-name`;
或
是否存在阻止用户这样做的设置
谢谢 我不是专家,但看起来不像:
礼貌地告诉IAMADummy使用下划线,如果他继续使用hypens(减号),“剥夺用户的权限”,或者每小时运行一个脚本,用连字符删除表中的所有权限。当我成年人打电话时,告诉他这是一项新功能。我不这么认为。正如mySQL手册中的章节所指出的,连字符是数据库或表名的有效部分 一些头脑风暴要点:
- 仅在桌面上工作
- 我不认为有任何钩子可以在创建数据库/表之前执行存储过程——当然,如果我错了,请纠正我
- 据我所知,没有办法使用权限阻止创建具有特定命名模式的表/数据库
- 任何标识符都不能包含ASCII NUL(0x00)或值为255的字节
- 数据库、表和列名不应以空格字符结尾
- 数据库和表名不能包含“/”、“\”、“.”或文件名中不允许的字符
为了有任何其他限制,您必须在运行查询之前检查系统中的查询,并对其进行适当调整。如果您使用的是PHP,则可以使用PHP函数来减少输入 如果您使用的是MySQL“直截了当”,也许您或您认识的人可以编写一个小程序,作为用户和MySQL之间的代理。重命名MySQL程序并调用代理(假设windows),不管MySQL程序最初的名称是什么
代理应该获取登录信息和查询,并将其传递给MySQL客户端。+1,以避免告诉IamADummy他是一个哑巴。是的,这就是我的想法。谢谢+1的功能-当然,如果我可以添加+2我会。尼斯:)
CREATE DATABASE `Bad-Idea`;