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

Форум MySQL

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

 

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

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

тема: Регистрозависимый поиск
 
 автор: sl1p   (28.11.2009 в 19:29)   письмо автору
 
 

Гдето видел об этом на форуме но не могу найти..

Как заставить базу учитывать регистр?

Тоесть запрос
SELECT * FROM `tbl` WHERE `field` = "XXX"
должен отличаться от
SELECT * FROM `tbl` WHERE `field` = "xxx"

  Ответить  
 
 автор: ....   (28.11.2009 в 20:30)
 
   для: sl1p   (28.11.2009 в 19:29)
 

просто применяют TINYBLOB, BLOB, MEDIUMBLOB и LONGBLOB
, вместо TINYTEXT, TEXT, MEDIUMTEXT и LONGTEXT
Или объявляя тип создаваемого столбца добавляют слово BINARY
, например VARCHAR BINARY

а можно просто попробовать BINARY в запросе
SELECT "a" = "A";
-> 1
SELECT BINARY "a" = "A";
-> 0
обычно результаты сравнения типа = или LIKE регистрозависимы
, если один из операндов бинарные данные

  Ответить  
 
 автор: sl1p   (29.11.2009 в 02:05)   письмо автору
 
   для: ....   (28.11.2009 в 20:30)
 

хм, спасибо!
А почему при blob либо при text binary
изменилась сортировка?..

тоесть теперь както не понятно, числа вперёд, потом идёт верхний регистр даже если значение начинается последней буквой алфавита... а потом уже нормальная сортировка среди нижнего регистра.

  Ответить  
 
 автор: Trianon   (29.11.2009 в 15:37)   письмо автору
 
   для: sl1p   (29.11.2009 в 02:05)
 

потому что благодаря веселому совету анонима Вы перестали работать с текстом, и начали работать с байтами.
На самом же деле кодовую страницу нужно было оставить. А изменять имело смысл только сопоставление - с ..._general_ci на ..._general_cs

  Ответить  
 
 автор: sl1p   (29.11.2009 в 16:49)   письмо автору
 
   для: Trianon   (29.11.2009 в 15:37)
 

а что юзнуть для utf8?

utf8_general_cs не видно что-то :(

  Ответить  
 
 автор: sl1p   (30.11.2009 в 01:42)   письмо автору
 
   для: Trianon   (29.11.2009 в 15:37)
 

сир Трианон, спасайте:)

  Ответить  
 
 автор: Trianon   (30.11.2009 в 02:00)   письмо автору
 
   для: sl1p   (30.11.2009 в 01:42)
 

У Вас наверное денвер, с обкусанным набором файлов.
В полном комплекте есть utf8_unicode_cs utf8_general_cs
В Вас наверное есть utf8_bin

В принципе можно добавить.

  Ответить  
 
 автор: sl1p   (30.11.2009 в 02:59)   письмо автору
 
   для: Trianon   (30.11.2009 в 02:00)
 

хм, нет не денвер..

а куда и как добавить?

зы. и многие ли хостинги поддерживают utf8_general_cs в базе?

  Ответить  
 
 автор: cheops   (30.11.2009 в 12:29)   письмо автору
 
   для: Trianon   (30.11.2009 в 02:00)
 

>utf8_general_cs
Кстати говоря, что-то не видел такого сопоставления и в полном варианте... у меня такое ощущение, что никто не озаботился его созданием, в силу объема работы - языков-то очень много - это один перелопатить не сложно.

  Ответить  
 
 автор: serjinio   (30.11.2009 в 22:43)   письмо автору
 
   для: sl1p   (28.11.2009 в 19:29)
 

utf8_bin
cp1251_general_cs

  Ответить  
 
 автор: sl1p   (03.12.2009 в 11:47)   письмо автору
 
   для: serjinio   (30.11.2009 в 22:43)
 

utf8_bin это и есть байты

а цп мне не подходит.

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

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