Могу ли я надежно полагаться на регистр имен столбцов в mysql?

Я хочу назвать имена столбцов таблицы mysql, используя случай верблюда, и создать классы php из этих таблиц mysql с одинаковыми именами верблюдов. Я буду генерировать эти php-классы автоматически. Мне интересно, могу ли я полагаться на регистр имен столбцов независимо от того, на какой платформе я запускаю свое приложение. Так, например, если я назову одно имя столбца «FirstName», я когда-нибудь столкнусь с временем, когда чтение имени столбца из базы данных будет «первым именем» продукта или что-то в этом роде?

Solutions Collecting From Web of "Могу ли я надежно полагаться на регистр имен столбцов в mysql?"

Короткий ответ – нет.

Длительный ответ заключается в том, что чувствительность к регистру для некоторых вещей в MySQL зависит от базовой операционной системы. (Unix является чувствительным)

Вот ссылка на проблему в документации MySQL.

Следовательно, чувствительность к регистру базовой операционной системы играет роль в чувствительности к регистру базы данных и таблиц. Это означает, что имена баз данных и таблиц не чувствительны к регистру в Windows и чувствительны к регистру в большинстве разновидностей Unix. Одним из примечательных исключений является Mac OS X, который основан на Unix, но использует тип файловой системы по умолчанию (HFS +), который не чувствителен к регистру.

Также из документации по именам столбцов:

Имена столбцов, индексов и хранимых подпрограмм не чувствительны к регистру на любой платформе, а также псевдонимы столбцов. Имена триггеров чувствительны к регистру, что отличается от стандартного SQL.

MySQL чувствителен к регистру в именах таблиц и столбцов, а ключевые слова, чувствительные к регистру.

Но учтите, что Windows – это сохранение только случаев, а имена файлов – это имена таблиц. (Если вы работаете над таблицей «SalesAccounts», когда вы имели в виду «Salesaccounts», тогда он будет читать «ОК» в Windows и отказываться от Linux.

Вы должны быть в порядке с тем, что хотите, но 1) Тест в Linux, 2) Проверьте используемые инструменты.