Forum Webscript.Ru

Общие => Базы данных => Тема начата: gad от 15 Декабря 2002, 08:51:29

Название: SELECT distinct не работает или версию менять?
Отправлено: gad от 15 Декабря 2002, 08:51:29
$result = mysql_query(SELECT distinct company FROM phone;);
так вот не работает.
версия MySQL 3.23.53a
Есть еще траблы с поиском:
- ищу запись в базе по маске символов, заведомо существующую, но ничего не находит (видимо проблемы с кодировкой, но почему тогда отображается нормально?) или в запросе like \'%маска%\' возвращает не только %маска%. Может порекомендуете более стабильную версию, или где настройки крутить?
Название: SELECT distinct не работает или версию менять?
Отправлено: Metaller от 15 Декабря 2002, 10:10:44
Цитировать
к вот не работает.

А что именно не работает?
Название: SELECT distinct не работает или версию менять?
Отправлено: gad от 15 Декабря 2002, 10:25:36
$result = mysql_query("SELECT distinct company FROM phone;");
так прошло - забал кавычки, прошу прощения

однако проблема с масками осталась - не ищет like \'маска%\'

спасибо
Название: SELECT distinct не работает или версию менять?
Отправлено: Metaller от 15 Декабря 2002, 10:28:44
Поставь у поля, по которому ищешь аттрибут BINARY.
Название: SELECT distinct не работает или версию менять?
Отправлено: gad от 15 Декабря 2002, 12:34:24
не помогло
причем маленькая х и ф по мнению компа одно и то-же в like \'%маска%\'
Название: SELECT distinct не работает или версию менять?
Отправлено: fidget от 15 Декабря 2002, 20:50:10
в какой кодировке данные?
какая кодировка на сервере?

> Поставь у поля, по которому ищешь аттрибут BINARY.

если данные в koi8, то это не поможет ..
Название: SELECT distinct не работает или версию менять?
Отправлено: gad от 16 Декабря 2002, 06:54:46
кодировка данных win1221
Сервер unix-овый : кодировка koi-8r.  Я могу ошибатся но mysql НЕ ДОЛЖЕН  обращать внимания на кодировку данных. По крайней мере так должно быть.  Видимо это и есть один из траблов бесплатного софта.
Название: SELECT distinct не работает или версию менять?
Отправлено: fidget от 16 Декабря 2002, 12:21:00
> но mysql НЕ ДОЛЖЕН обращать внимания на кодировку данных.
что значит не должен обращать внимания??!!
А как он по твоему будет сортировать данные? проводить поиск?
MySQL не трогает сами данные, которые у тебя в базе лежат, но он должен знать как ему интерпретировать данные, для этого и нужно устанавливать кодировку.
Название: SELECT distinct не работает или версию менять?
Отправлено: Ленивый гость от 16 Декабря 2002, 12:59:51
Задача: в таблице А данные в koi-8 в таблице Б данные в win1251 в таблице С- китайский язык.
как будет происходить индексация?
Я думаю он сам должен распознавать кодировку
Название: SELECT distinct не работает или версию менять?
Отправлено: fidget от 16 Декабря 2002, 18:03:46
> Я думаю он сам должен распознавать кодировку
серверу абсолютно пофиг в какой кодировке ты запихиваешь туда данные. Ты туда запихиваешь не какой-нить читабенльный текст, а просто данные и все. Которые в одной кодировке интерпретируются как буковки "а", "б" или чего-то там еще а в других кодировках какие-нить там зюки будут. Какая у тебя кодировка установлена для сервера, так он и будет производить индексацию.