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 все работает.
Вопрос такой: что делать?


just   (2004-07-20 17:59:00) [41]

В msdn.microsoft.com/library/default.asp?url=/library/en-us/indexsrv/html/ixqlang_6yer.asp:
AdoCommand.Properties("SQL Content Query Locale String") = "GE"

А AdoCommand вообще обязателен?


just   (2004-07-20 17:48:00) [42]

что же делать?


bushmen   (2004-07-20 17:46:00) [43]

> а разве не 1049?

Да, конечно, я просто скопировал.


just   (2004-07-20 17:46:00) [44]

что означает это свойство?


just   (2004-07-20 17:44:00) [45]

Попробуй так:
AdoConnection1.Properties.Item['Locale Identifier'].Value := 2047;

а разве не 1049?
Пробовала 1049 - не помогло, все то же самое


bushmen   (2004-07-20 17:40:00) [46]

> Что за синтаксис такой странный?

Так это же MSDN

Попробуй так:
AdoConnection1.Properties.Item['Locale Identifier'].Value := 2047;


just   (2004-07-20 17:36:00) [47]

Что за синтаксис такой странный?
AdoConnection.Properties("Locale Identifier") = 1033


Nikolay M.   (2004-07-20 17:26:00) [48]


> пробовала исправить, обратно возвращается 2047

http://msdn.microsoft.com/library/default.asp?url=/library/en-us/indexsrv/html/ixqlang_6yer.asp


just   (2004-07-20 17:14:00) [49]

Вставь строку  
messagedlg(ADOQuery1.SQL.GetText, mtInformation, [mbOK], 0);
и посмотри, что выдается


выдается нормальный sql-запрос, который нормально обрабатывается query analyser

1049
?


а что такого?
пробовала исправить, обратно возвращается 2047
Кстати, что он означает?


Nikolay M.   (2004-07-20 17:07:00) [50]


>  Locale identifier = 2057

1049
?


bushmen   (2004-07-20 16:52:00) [51]

Вставь строку  
messagedlg(ADOQuery1.SQL.GetText, mtInformation, [mbOK], 0);
и посмотри, что выдается


just   (2004-07-20 16:08:00) [52]

1) Таки неплохо бы посмотреть профайлером, какой запрос идет на сервер.
2) У ADOConnection в Data Liknk properties/All есть параметры Auto translate, Current language и
Locale identifier - чему они равны?


1) смотрела, не помогло
2) Auto translate = true
  Current language = ничего
  Locale identifier = 2057

Дело все в том, что запросы типа ' 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 '%АЛ%' ' - нет, т.е. ошибки не выдает, а результат запроса - пусто, понимаете?

Помогите кто-нибудь!


Nikolay M.   (2004-07-15 13:20:00) [53]

1) Таки неплохо бы посмотреть профайлером, какой запрос идет на сервер.
2) У ADOConnection в Data Liknk properties/All есть параметры Auto translate, Current language и Locale identifier - чему они равны?


NAlexey   (2004-07-15 12:28:00) [54]

>just   (15.07.04 12:12) [2]
А почему ты решила что в Query нет? Приведи текст запроса и примера. И то как ты решаешь что в Query нет.


just   (2004-07-15 12:12:00) [55]

>Ты профайлером смотрел какой в точности запрос идет на сервер?

Я загоняла запрос в Memo для проверки,
копировала этот запрос  в Query Analyser - все ОК.
ADOQuery - нет.

В чем дело?


NAlexey   (2004-07-15 11:50:00) [56]

>just   (15.07.04 11:47)  
Ты профайлером смотрел какой в точности запрос идет на сервер?


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

Наверх

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