![]() |
| ||
|
|
Новости |
Поиск |
FAQ |
Статьи |
Книги |
Новости VCL
| | Форумы ЧАТ |
Орешник |
|
| |||
| |||
« предыдущая ветвь | форум | следующая ветвь »
использование UPPER в SQL-запросах [D6, Paradox]
Siberia © (2002-03-11 17:43:00)пишу что-то типа:
str:="select * from table where UPPER(table_field) LIKE "%"+AnsiUpperCase(Edit1.Text)+"%";
DM.Query.SQL.Clear;
DM.Query.SQL.Add(str);
DM.Query.Open;
работает со всеми нужными полями, а вот с полями типа MEMO - не работает не фига ...
Подскажите - есть ли другие способы добиться того чего надо, или че вообще делать-та ...
плизззз ...))))
Siberia (2002-03-14 10:21:00) [1]> TYuri © (12.03.02 19:53)
Это работает с одной таблицей, а если с двумя - то конструкция типа:
str:="select N.*,Upper(N1.*) from name N, name1 N1 where ...."
уже не работает ... ((
TYuri (2002-03-12 19:53:00) [2]Напиши вот так все должно заработать
str:="select UPPER(table_field) from table where table_field LIKE "%"+AnsiUpperCase(Edit1.Text)+"%";
data (2002-03-12 17:17:00) [3]2 Johnmen © (12.03.02 13:21)
Collate заради Upper"a. А что, это так сложно? ;-)
Johnmen (2002-03-12 13:21:00) [4]>data ©
>В ИБ для текстовых полей работает. Только при создании таблицы >для текстовых полей нужно указывать COLLATE PXW_CYRL и на >всякий случай CHARACTER SET WIN1251 (если вдруг он в целом для >всей БД не указан).
И все это заради UPPER"а ?
data (2002-03-12 13:14:00) [5]2 Johnmen © (12.03.02 13:06)
>Думаю, что UPPER для национальной кодировки не работает
>(так же, как и в IB) - надо извращаться...
В ИБ для текстовых полей работает. Только при создании таблицы для текстовых полей нужно указывать COLLATE PXW_CYRL и на всякий случай CHARACTER SET WIN1251 (если вдруг он в целом для всей БД не указан).
Johnmen (2002-03-12 13:06:00) [6]Думаю, что UPPER для национальной кодировки не работает
(так же, как и в IB) - надо извращаться...
kserg@ukr.net (2002-03-12 12:45:00) [7]Когда то и я с этим сталкивался - оказалось, что UPPER(MEMO) не работает.
Пришлось извращаться типа
...where MemoField LIKE "%АЛЕНА%" OR MemoField LIKE "%Алена%"
OR MemoField LIKE "%алена%"
Более красивого решения не нашел.
Siberia (2002-03-12 10:07:00) [8]Хммммм ... А почему же у меня реагирует на регистр ...
Если запись, допустим, "Алена", то "але" - он уже при помощи LIKE не находит ... Может это настраивается как-то ... Или чета я в парадоксе ему не сказала?
JibSkeart (2002-03-11 18:56:00) [9]Хммм на скольео мне известно
помойму ему не важен регист
так как я обычно делаю даже так
ну простой пример в SQL
select * from table where field="test"
а запись у меня тама "TEST" !!
или еше
select * from table where field like "%test%"
тоже самое !!
находит