Monday, September 23, 2019

Are table names in MySQL case sensitive?



Are table names in MySQL case sensitive?




On my Windows dev machine the code I have is able to query my tables which appear to be all lowercase. When I deploy to the test server in our datacenter the table names appear to start with an uppercase letter.



The servers we use are all on Ubuntu.


Answer



In General:



Database and table names are not case sensitive in Windows, and case sensitive in most varieties of Unix.





In MySQL, databases correspond to directories within the data
directory. Each table within a database corresponds to at least one
file within the database directory. Consequently, the case sensitivity of the
underlying operating system plays a part in the case sensitivity of
database and table names.




One can configure how tables names are stored on the disk using the system variable lower_case_table_names. (in my.cnf configuration under [mysqld])



Read the section: 10.2.2 Identifier Case Sensitivity for more information.



No comments:

Post a Comment

hard drive - Leaving bad sectors in unformatted partition?

Laptop was acting really weird, and copy and seek times were really slow, so I decided to scan the hard drive surface. I have a couple hundr...