Если у меня есть имена столбцов, называемые category_id
и category_id
, они разные?
И если у меня есть таблица под названием category
и category
, они разные?
Если у меня есть имена столбцов, называемые category_id
и category_id
, они разные?
И если у меня есть таблица под названием category
и category
, они разные?
В Unix имена таблиц чувствительны к регистру. В Windows это не так. Весело, не так ли? Собственно, как их соответствующие файловые системы. Считаете ли вы это совпадением?
Другими словами, если вы планируете развертывание на Linux-машине, лучше протестируйте свой SQL на базе Linux на базе Linux или будьте готовы к таинственным ошибкам "таблицы не найденные" в prod time. В наши дни ВМ дешево.
Имена полей не зависят от регистра.
EDIT: мы говорим об операционной системе на сервере MySQL, а не о клиенте.
Из документации MySQL :
базы данных и имена таблиц не чувствительны к регистру в Windows, а случай чувствительный в большинстве разновидностей Unix. Одним из примечательных исключений является Mac OS X, который основан на Unix, но использует тип файловой системы по умолчанию (HFS +), который не чувствителен к регистру.
и
Имена столбцов и индексов нечувствительны к регистру на любой платформе, а также псевдонимы столбцов.
Для имен базы данных и таблиц это зависит от базовой операционной системы. См. 8.2.2. Чувствительность регистра идентификатора
Вы можете найти этот, который необходимо прочитать. В MySQL можно установить чувствительность к регистру, но это действительно проблема только при работе в нескольких средах.
Как ни странно, он кажется чувствительным к регистру в MySQL Workbench даже в Windows.
Мы просто попытались изменить результаты инструкции SELECT, но Workbench не позволил нам, жалуясь, что наш запрос не содержит первичный ключ таблицы (который он сделал, но в нижнем регистре), поэтому результат был прочитан, только. Выполнение того же запроса с использованием первичного ключа в правильном случае (ID вместо id) позволит нам редактировать результаты, как ожидалось.
Нет, имена таблиц и строк не чувствительны к регистру, и даже инструкции SQL не являются.
Итак, имена, которые вы указали в качестве примера, идентичны
Edit:
Это зависит от сортировки сервера. Поэтому вы должны проверить настройки. Не относится к ОС.