我想使用驼峰式大小写命名我的mysql表列名称,并使用相同的驼峰式大小写名称从这些mysql表创建php类。我将自动生成这些php类。我想知道,无论我在什么平台上运行我的应用程序,我是否可以依赖列名大小写。例如,如果我将一个列名命名为"FirstName",我会遇到从数据库中读取列名时会产生"firstname“之类的结果吗?
发布于 2012-08-21 06:01:24
简短的回答是否定的。
长篇大论的答案是,MySQL中某些内容的区分大小写取决于底层操作系统。(Unix是敏感的一种)
以下是MySQL documentation.中对该问题的引用
因此,底层操作系统的区分大小写对数据库和表名的区分大小写起到了一定作用。这意味着数据库和表名在Windows中不区分大小写,而在大多数Unix变种中区分大小写。一个值得注意的例外是Mac,它基于Unix,但使用不区分大小写的默认文件系统类型(HFS+)。
也可以从关于列名的文档中特别了解:
在任何平台上,
列、索引和存储的例程名称都不区分大小写,列别名也不区分大小写。触发器名称区分大小写,这与标准的SQL.
不同
发布于 2012-08-21 06:17:49
MySQL在表名和列名中区分大小写,在关键字中区分大小写。
但请注意,Windows只保留大小写,文件名是表名。(如果您在表"SalesAccounts“上工作,而您的意思是"Salesaccounts”,那么它在Windows上将显示为OK,而在Linux上将失败。
你应该可以做你想做的事情,但是1)在Linux上测试,2)测试你正在使用的工具。
https://stackoverflow.com/questions/12045806
复制相似问题