MySQL表名中的下划线会导致问题吗?

Cyb*_*kie 33 mysql

表名中的下划线是否会影响某些平台的性能或导致问题?

例如, user_profiles

使用它会更好userProfiles还是仅仅是个人偏好的问题?

Ben*_*Ben 44

不.下划线在表名中是完全合法的.

MySQL文档中的此页面告诉您允许哪些字符.

基本上:

不带引号的标识符中允许的字符:

ASCII:[0-9,az,AZ $ _]
扩展:U + 0080 .. U + FFFF

带引号的标识符中允许的字符:

ASCII:U + 0001 .. U + 007F
扩展:U + 0080 .. U + FFFF

就个人而言,我倾向于坚持使用小写az,偶尔的数字和下划线.但正如@Vince所说,这只是个人偏好.


小智 6

我看到的唯一问题是,当使用 mysqlshow 查看表的结构时,它似乎将下划线视为通配符,如果名称中有下划线,则仅返回匹配的表名称。

如果名称中有下划线,我将无法查看表的表结构。我今天早上才发现并证实了这一点。

我知道 MySQL 4.0.18 和 4.1.22 版本适用于旧版本,5.1.52 版本适用于较新版本。也许这在某处有记录(我还没有花时间去看),但这对其他人来说可能是一件令人困惑的事情,所以我决定在我自己寻找有关问题的信息时遇到这个问题时提及它。

  • 我很高兴你注意到了这一点,它也让我感到困惑。这里的进一步解释:http://kb.ucla.edu/articles/why-doesnt-mysqlshow-work-for-databases-or-tables-with-underscores-in-their-names (2认同)