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

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

Upper и параметр [FB 1.0]


Sonia ©   (2008-02-15 16:34:00) 

Всем привет!
Такой вопрос. Есть код:
upper(lname) starting with (upper(:name COLLATE PXW_CYRL))

Он ищет строчки, в которых lname начинается с введенного значения, причем не зависимо от регистра.
Когда вместо :name стоит значение, то все работает, а когда параметр, то пишет ошибку: -804.

ЗЫ код из запроса (в процедуре бы все работало), у поля lname кодировка WIN1251 и коллейт стоит.

Подскажите, что можно сделать, чтобы код работал с параметром???

ЗАранее спасибо!


Правильный_Вася   (2008-02-18 12:44:00) [1]

так и это запрос нормально с параметром работает
не понимаю, зачем у апперу нужен collate


Sonia   (2008-02-18 12:00:00) [2]

Ладненько, спасибо, буду процедурку писать тогда. Она тип параметра нормально распознает.


Правильный_Вася   (2008-02-18 11:53:00) [3]


> Вот целиком:

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


Sonia   (2008-02-18 11:14:00) [4]

Вот целиком:

SELECT lid, lname FROM lib WHERE lconcept = 2186410 AND lid2 = :Lid2_4000
AND UPPER(lname) STARTING WITH (UPPER(:name))
ORDER BY 2


Правильный_Вася   (2008-02-15 17:43:00) [5]

запрос целиком где?


Sonia   (2008-02-15 17:17:00) [6]

Не помогает :(


Правильный_Вася   (2008-02-15 17:14:00) [7]

поменяь ему имя?


Sonia   (2008-02-15 16:57:00) [8]


> Правильный_Вася   (15.02.08 16:53) [6]

Ну допустим, что совпадает по умолчанию. А что с параметром то делать?


Правильный_Вася   (2008-02-15 16:53:00) [9]

у БД само собой, а у подключения к БД тоже указывать надо
желательно, чтоб по умолчанию совпадало с кдировкой БД, иначе везде придется писать коллейты


Sonia   (2008-02-15 16:51:00) [10]


> Правильный_Вася   (15.02.08 16:45) [4]

Неа, не работает :(

А что есть lc_ctype??
Я к БД подключаюсь через IBExpert и если вы имеете в виду кодировку, то она у БД стоит WIN1251


Sonia   (2008-02-15 16:45:00) [11]


> Sonia ©   (15.02.08 16:42) [2]

В справочнике написано, что эта ошибка связана с несоответствием в количестве аргументов или несоответствем числа переменных и числа столбцов


Правильный_Вася   (2008-02-15 16:45:00) [12]

cast(:name AS varchar(50))
?

в подключенни к БД lc_ctype корректный?


Sonia   (2008-02-15 16:42:00) [13]


> расшифровать не хочешь?

Хочу :)

An error was found in the application program input parameters for the SQL statement.
Dynamic SQL Error.
SQL error code = -804.
Data type unknown.


Правильный_Вася   (2008-02-15 16:40:00) [14]


> пишет ошибку: -804.

расшифровать не хочешь?


Наверх

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