Top.Mail.Ru
Мастера DELPHI, Delphi programming community Титульная страница Поиск, карта сайта Написать письмо 
| Новости | Поиск | FAQ | Статьи | Книги | Новости VCL |
| Форумы ЧАТ | Орешник | KOL и MCK |
Форумы -» Основная («Начинающим»)/ Базы / WinAPI / Компоненты / Сети / Media / Игры / Corba и COM / KOL / FreePascal / .Net / Прочее / RSDN.ORG

« предыдущая ветвь | форум | следующая ветвь »

MS SQL + ADO [D7]


Страницы:   1 2 3

just ©   (2004-07-15 11:47:00) 

Программно создается sql-запрос, где присутствуют русские буквы,
например: LIKE '%про%', ADOQuery на это не реагирует, понимает только латинский алфавит.
В Query Analyser все работает.
Вопрос такой: что делать?


sniknik   (2004-07-21 15:17:00) [21]

> я так и делаю!!!!!!
что?????
нам то дай убедится, приведи пример вместе с искомыми данными по описаной в [33] технологии. или непонятно спросил?


Ega23   (2004-07-21 15:16:00) [22]

я так и делаю!!!!!!

Ты выполнила ИМЕННО ЭТОТ ЗАПРОС:

Select * from computer where comp_name LIKE '%АЛ%'
?

На клиенте и в QA?

И каков результат?


just   (2004-07-21 15:10:00) [23]

>ega32 и sniknik

я так и делаю!!!!!!


sniknik   (2004-07-21 15:06:00) [24]

> не работает даже в QA
значит его там нет.
найди руками что там должно быть по твоему и скопируй сюда, только по технологии пасте/копи(!!!!) а не набором прям сдесь (потому как это будет твоя догадка а не реальность).


Ega23   (2004-07-21 15:06:00) [25]

just   (21.07.04 14:56) [30]

Блин, объясняю на пальцах:
1.
в твой AdoQuery.Sql введи текст:
Select * from computer where comp_name LIKE '%АЛ%'
Потом настрой грид на этот Query и запусти программу.

2.
Этот же запрос выполни в QA

3. Сравни результаты запросов.


just   (2004-07-21 14:58:00) [26]

>LIKE '%'+convert(varchar(2), 0xC0CB)+'%'
обязано сработать (для 'АЛ')

не работает даже в QA


just   (2004-07-21 14:56:00) [27]

>Т.е. вот такой запрос  Select * from computer where comp_name LIKE '%АЛ%'  из на клиенте, и в QA проходит ОДИНАКОВО, ты это хочешь сказать?

Откуда мне знать, какой запрос приходит в QA?

Я просто копирую его туда


Ega23   (2004-07-21 14:54:00) [28]

Т.е. вот такой запрос  Select * from computer where comp_name LIKE '%АЛ%'  из на клиенте, и в QA проходит ОДИНАКОВО, ты это хочешь сказать?


sniknik   (2004-07-21 14:42:00) [29]

> есть, конечно
тогда
LIKE '%'+convert(varchar(2), 0xC0CB)+'%'
обязано сработать (для 'АЛ')


just   (2004-07-21 14:40:00) [30]

>Что выдаёт в QA и из-под клиента?

выдает нужную выборку

>А поле в таблице не юникодное?

тип поля varchar

>И все-таки сделай что-нибудь, чтобы Locale identifier стало правильным.

я делаю  это программно (оно устанавливается в 1049 - теперь я знаю что это), но хоть бы хны


just   (2004-07-21 14:35:00) [31]

>а код до этого? он же тебе готовый кусок для провекри дал. а ты из него значит кусок вырвал и говориш не помогает и не может. да?

использовала веськод

>настройки в системе на русский лучше сделай, чтобы вопросиков не было.

настройки и так русские
в builder же все ок


Nikolay M.   (2004-07-21 14:34:00) [32]

А поле в таблице не юникодное?

И все-таки сделай что-нибудь, чтобы Locale identifier стало правильным.


Ega23   (2004-07-21 14:34:00) [33]

Select * from computer where comp_name LIKE '%АЛ%'

Что выдаёт в QA и из-под клиента?


just   (2004-07-21 14:31:00) [34]

>Так может просто в БД таких записей нету, а?  :о)

есть, конечно


Ega23   (2004-07-21 14:27:00) [35]

' SELECT DISTINCT otdel.id_otd,otdel.otd_name,computer.id_comp,
computer.comp_name FROM otdel FULL OUTER JOIN computer ON otdel.id_otd = computer.id_otd WHERE
computer.comp_name LIKE '%AL%' ' нормально воспринимается ADOQuery,

'SELECT DISTINCT otdel.id_otd,otdel.otd_name,computer.id_comp,
computer.comp_name FROM otdel FULL OUTER JOIN computer ON otdel.id_otd = computer.id_otd WHERE
computer.comp_name LIKE '%АЛ%' ' - нет, т.е. ошибки не выдает, а результат запроса - пусто, понимаете?

Так может просто в БД таких записей нету, а?  :о)


sniknik   (2004-07-21 14:22:00) [36]

> Это не помогло и не поможет, т.к. дело не в Sql, а в delphi
странно, у меня в дельфи все в порядке...

> select A from @t where A like '%'+convert(varchar(200),0xF0F3F1F1)+'%'

а код до этого? он же тебе готовый кусок для провекри дал. а ты из него значит кусок вырвал и говориш не помогает и не может. да?

> Переустановка delphi 7 не помогла
настройки в системе на русский лучше сделай, чтобы вопросиков не было.


just   (2004-07-21 14:09:00) [37]

причем в c++ Builder 5 Locale Identifier = 2047


just   (2004-07-21 14:08:00) [38]

select A from @t where A like '%'+convert(varchar(200),0xF0F3F1F1)+'%'

Это не помогло и не поможет, т.к. дело не в Sql, а в delphi
в c++ Builder 5 - все нормально
в delphi - tools | translation tools options
вместо названий шрифтов (поле language) - вопросы (пр. - '?????')
Переустановка delphi 7 не помогла
В чем может быть проблема?


ZrenBy   (2004-07-20 18:29:00) [39]


declare @t table (A varchar(200))

insert into @t values('русский')
insert into @t values('qweqweq')

select A from @t where A like '%'+convert(varchar(200),0xF0F3F1F1)+'%'


just   (2004-07-20 18:13:00) [40]

AdoCommand1.Properties.Item['SQL Content Query Locale String']:= 'GE';
strLocale := Request.ServerVariable('HTTP_ACCEPT_LANGUAGE');
AdoCommand1.Properties.Item['SQL Content Query Locale String'] = strLocale;

1 и 3 строки - read-only properties, а во 2 строке он Request
не распознает, кстати что это?


Страницы:   1 2 3

Наверх

Титульная страница Поиск, карта сайта Написать письмо