在MYSQL中使用中间点命名表?

在MYSQL中使用中间点命名表?,mysql,database,Mysql,Database,使用中间点命名表格是否会导致问题,如: tbl_prod·prov; 规则解释如下: 标识符在内部转换为Unicode。它们可能包含以下字符: 非引号标识符中允许的字符: ASCII:[0-9,a-z,a-z$389;](基本拉丁字母,数字0-9,美元,下划线) 扩展:U+0080。。U+FFFF 带引号的标识符中允许的字符包括完整的Unicode基本多语言平面(BMP),U+0000除外: ASCII:U+0001。。U+007F 扩展:U+0080。。U+FFFF 带引号或不带引号

使用中间点命名表格是否会导致问题,如:

tbl_prod·prov;

规则解释如下:

标识符在内部转换为Unicode。它们可能包含以下字符:

  • 非引号标识符中允许的字符:

    • ASCII:[0-9,a-z,a-z$389;](基本拉丁字母,数字0-9,美元,下划线)

    • 扩展:U+0080。。U+FFFF

  • 带引号的标识符中允许的字符包括完整的Unicode基本多语言平面(BMP),U+0000除外:

    • ASCII:U+0001。。U+007F

    • 扩展:U+0080。。U+FFFF

  • 带引号或不带引号的标识符中不允许使用ASCII NUL(U+0000)和补充字符(U+10000及以上)

  • 标识符可以以数字开头,但除非引用,否则不能仅由数字组成
  • 数据库、表和列名不能以空格字符结尾
·
字符非常适合扩展的带引号标识符的定义

尽管如此,我可以想到两个潜在的问题:

  • 对象名有时需要映射到文件系统对象。我们可以推测MySQL在所有受支持的平台上都做得不错,但这让我感到不安

  • 如果碰巧在未正确配置的客户端/连接中运行SQL查询,或者从剪贴板粘贴查询,则可能使用错误的字符


当你这样尝试时发生了什么?:)是的,可以。如果将来有人查看您的数据库/代码,可能会损害您作为开发人员的声誉。(现在也是抛弃早已过时的命名惯例的时候了。)原则上,什么都没有。@ceejayoz,这是一种非常傲慢和主观的观点,我认为这也不能被认为是好的做法。据我所知,不是每个人都严格遵守相同的约定,而是以他们认为最合适的方式来适应它们,对吧?无论如何,谢谢你;)我对代码的标准是,它应该尽可能少地生成“他妈的是什么?”。看到在表名中使用middot肯定会增加计数<表名中的code>tbl与其说是“WTF”,不如说是“谢谢你”,阿尔瓦罗·冈萨雷斯。非常有用的信息:)