Форум: Форум PHPФорум ApacheФорум Регулярные ВыраженияФорум MySQLHTML+CSS+JavaScriptФорум FlashРазное
Новые темы: 0000000
Самоучитель MySQL 5. Авторы: Кузнецов М.В., Симдянов И.В. Программирование. Ступени успешной карьеры. Авторы: Кузнецов М.В., Симдянов И.В. PHP на примерах (2 издание). Авторы: Кузнецов М.В., Симдянов И.В. Самоучитель PHP 5 / 6 (3 издание). Авторы: Кузнецов М.В., Симдянов И.В. PHP 5. На примерах. Авторы: Кузнецов М.В., Симдянов И.В., Голышев С.В.
ВСЕ НАШИ КНИГИ
Консультационный центр SoftTime

Форум MySQL

Выбрать другой форум

 

Здравствуйте, Посетитель!

вид форума:
Линейный форум Структурный форум

тема: Чувствительность имен таблиц к регистру
 
 автор: Sfinks   (03.11.2012 в 23:05)   письмо автору
 
 

Столкнулся с тем, что в 1 месте опечатался в имени таблицы написав 1 букву не в том регистре.
На локале все работало (Win32), закинул на хост, все перестало работать.
Ошибку искал долго, но нашел.
Стал искать где включена регистрозависимость.
Нигде! Везде utf8_general_ci.
Написал в поддержку, ответили так:

-Unix системы чувствительны к регистру поэтому в данном случае Вам необходимо либо корректно указывать имена таблиц, либо привести все таблицы к нижнему регистру.

Это действительно так? Нигде нельзя настроить регистроНезависимость имен таблиц???

  Ответить  
 
 автор: cheops   (04.11.2012 в 10:05)   письмо автору
 
   для: Sfinks   (03.11.2012 в 23:05)
 

Да, это действительно так. В Unix нет, нельзя... имя таблицы берется из имени её файла, который присутствует даже для InnoDB-таблиц, данные которых хранятся в едином табличном пространстве. В Unix нельзя включить режим независимости имен файлов от регистра, как в Windows невозможно включить их регистрозависимость - это уровень операционной системы.

  Ответить  
 
 автор: Sfinks   (04.11.2012 в 15:10)   письмо автору
 
   для: cheops   (04.11.2012 в 10:05)
 

> это уровень операционной системы.
Ну да... Что-то я даже не сопоставил, что имена таблиц - это имена файлов этих таблиц.
Странно, что за столько времени я первый раз с этим столкнулся =/

  Ответить  
 
 автор: cheops   (04.11.2012 в 15:34)   письмо автору
 
   для: Sfinks   (04.11.2012 в 15:10)
 

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

  Ответить  
 
 автор: Sfinks   (04.11.2012 в 23:27)   письмо автору
 
   для: cheops   (04.11.2012 в 15:34)
 

Здрасьте.
Так его хостеры вечно дописывают. Все базы у меня везде называются login_imyabasy.
А в чем геморрой?

  Ответить  
Rambler's Top100
вверх

Rambler's Top100 Яндекс.Метрика Яндекс цитирования