![]() |
|
|
![]()
|
|
| CTapMex |
|
||||||
|
Шустрый ![]() Профиль Группа: Участник Сообщений: 55 Регистрация: 20.2.2007 Репутация: нет Всего: нет |
Добрый день.
столкнулся тут с проблемой взаимодействия ODAC и Oracle. исходные - odac 6.25 , oracle 9 , delphi 7 или 2007 (одинаково работает) добавляю на форму компонент TOraQuery - QcolVek. sql запрос
num это строка . далее делаю следующее
в идеале form1.Caption должен стать '1', но он равен '0'. тогда делаю по другому
tempVarArray[lb1+i,lb2+1] в данном случае как раз равна 'КТ-800-2000825-К'. после запуска выдает верный ответ '1'. Что не так делаю? в чем проблема? |
||||||
|
|||||||
| Vas |
|
|||
![]() Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 830 Регистрация: 29.6.2005 Где: Stavropol region Репутация: 23 Всего: 28 |
Попробуй так:
-------------------- И опыт, сын ошибок трудных, И гений, парадоксов друг, И случай, бог изобретатель. ... (А.С. Пушкин) |
|||
|
||||
| CTapMex |
|
|||
|
Шустрый ![]() Профиль Группа: Участник Сообщений: 55 Регистрация: 20.2.2007 Репутация: нет Всего: нет |
Vas - нет это не работает
но я разобрался. решение такое DMmain.QcolVek.Params.ParamByName('num').AsString:='КТ-800-2000825-К'+'%'; select count(*) as cvi from veksels where veksel_number like :num |
|||
|
||||
| Vas |
|
|||
![]() Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 830 Регистрация: 29.6.2005 Где: Stavropol region Репутация: 23 Всего: 28 |
Значит у тебя в поле таблицы не такое значение, а что-то еще дописано там, может даже просто пробелы. в моем варианте все работает если значение параметра полностью совпадает со значениями поля. -------------------- И опыт, сын ошибок трудных, И гений, парадоксов друг, И случай, бог изобретатель. ... (А.С. Пушкин) |
|||
|
||||
| CTapMex |
|
|||
|
Шустрый ![]() Профиль Группа: Участник Сообщений: 55 Регистрация: 20.2.2007 Репутация: нет Всего: нет |
счас проверил - строка без пробелов, без лишних символов.
да и кстати в sql navigator запрос
выдает верный ответ 1. а может быть дело в том что VEKSEL_NUMBER имеет тип CHAR(30) ? еще кстати интересено. свойство debug, установленное в true , срабатывпет только при открытии проекта. а когда запускаешь программу окно не появляется. |
|||
|
||||
| Vas |
|
|||
![]() Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 830 Регистрация: 29.6.2005 Где: Stavropol region Репутация: 23 Всего: 28 |
Скорее всего в оракле обычно для таких строк используют Varchar или varchar2. Char рекомендуется использовать для строк из одного символа. Поставь точку останова на нужной строке и все тебе появится -------------------- И опыт, сын ошибок трудных, И гений, парадоксов друг, И случай, бог изобретатель. ... (А.С. Пушкин) |
|||
|
||||
| CTapMex |
|
|||
|
Шустрый ![]() Профиль Группа: Участник Сообщений: 55 Регистрация: 20.2.2007 Репутация: нет Всего: нет |
почитал на сиквелру и попробовал использовать trim. помогло.
потом прочитал твой ответ и нашел вот такую цитатку
так что тип данных играет не малую роль |
|||
|
||||
![]()
|
| Правила форума "Delphi: Базы данных и репортинг" | |
|
|
Запрещено: 1. Публиковать ссылки на вскрытые компоненты 2. Обсуждать взлом компонентов и делиться вскрытыми компонентами Обязательно указание: 1. Базы данных (Paradox, Oracle и т.п.) 2. Способа доступа (ADO, BDE и т.д.)
FAQ раздела лежит здесь! Если Вам помогли и атмосфера форума Вам понравилась, то заходите к нам чаще! С уважением, Vit, Петрович. |
| 0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей) | |
| 0 Пользователей: | |
| « Предыдущая тема | Delphi: Базы данных и репортинг | Следующая тема » |
|
|
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности Powered by Invision Power Board(R) 1.3 © 2003 IPS, Inc. |