正如您在 Table name show a syntax error in MySQL 中看到的那样问题你可以定义一些特定的表名(attn-cse-a[3-1][mpms][10-8-2013]
)。
评论建议只使用字母数字字符作为好的 表名,但这真的是一个明智的选择吗? “-”和“_”呢?
MySQL 对表、列、索引等的命名是否有任何严肃的风格指南?
我说 MySQL 是因为 SQL 服务器的 DB 语法规则之间大差异,但当然可以作为通用的 SQL 命名风格指南!
最佳答案
MySQL 引用手册对允许的内容有很好的描述:
http://dev.mysql.com/doc/refman/5.5/en/identifiers.html
我个人使用允许字符的一个子集作为不带引号的标识符,手册对其进行了如下描述:
- Permitted characters in unquoted identifiers:
- ASCII: [0-9,a-z,A-Z$_] (basic Latin letters, digits 0-9, dollar, underscore)
- Extended: U+0080 .. U+FFFF
进一步限制该列表,我不会在表/列名称或其他标识符中使用以下任何内容:
- 美元符号 ($)
- 扩展字符
- reserved words
所以基本上这会留下字母数字字符和下划线,但要避免使用保留字。
关于mysql - 是否有任何严肃的 MySQL 命名风格指南?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18152558/