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

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

Все ли впорядке с IBDataSet в Ве или просто я такой? Объясните!!!


Balan S. ©   (2003-08-01 14:29:00) 

Проблема:
прописываю в SelectSQL: select vremja from MyProc(:MyParam)
в UpdateSQL: update MyTable
set vremja=:vremja
( не сервера)

Проблема:
прописываю в SelectSQL: select vremja from MyProc(:MyParam)
в UpdateSQL: update MyTable
set vremja=:vremja
where code=:code

Как в таблице, так и в процедуре есть поле "vremja" одного типа
и того же типа TIME. Хранимая процедура MyProc выбирает данные из таблицы MyTable. Так вот, все это прекрасно работает со всеми типами данный окромя типа ТIME - выдает ошибку и сообщение компилятора(не сервера) что не может привести типы данных, например "0.3600000" is not valid timestamp. Пытался менять имя поля в процедуре на другое - не получается.
Может кто подскажет что делать - то?
Заранее благодарен.


Balan S.   (2003-08-06 15:57:00) [1]

Спасибо всем, я нашел выход: я написал ХП для изменения данных и
теперь в UpdateSQL пишу чего-то вроде:
execute procedure MYProcedure(:code,:myfld_1,..,:myfld_n,:vremja)
Вроде проглатывает.

2Жук: Данные одинаковые, одного типа - это точно, а новое значение получается из компонента DBEdit

2stud: работаю напрямую, без бде испольжую только IBX компоненты.

Самое интересное, что если я в компоненте пишу к примеру так
update MyTable
set vremja="01:00:50"
where code=:old_code
то он все это проглатывает, но не формировать же запрос каждый раз, когда хочу изменить данные.

Да, кстати, я хочу поправиться: в IBDataSet свойство UpdateSQL называется ModifySQL


FoxBox   (2003-08-05 13:00:00) [2]

Если данные затаскиваешь в пользовательский интерфейс,
попробуй передать для Update`а в качестве строки и перед
update MyTable
set vremja=:new_vremja
where code=:old_code
преобразуй в TIME

может и поможет


stud   (2003-08-05 09:17:00) [3]

ты напрямую с interbase работаеш или через bde?


Жук   (2003-08-05 08:16:00) [4]

1) Может типы данных действительно разные ? Неплохо бы посмотреть метаданные для ХП и таблицы.
2) Каким образом получается новое значение поля vrewja ?


Balan S.   (2003-08-04 20:28:00) [5]

2Жук:
Исключение срабатывает после метода ApplyUpdates
А предложение в п2. я уже пробовал и в том-то и дело, что это тоже не работает, этот компонент как-то нетак работает с типом TIME,


Жук   (2003-08-01 14:41:00) [6]

1) Когда срабатывает исключение ?
2) UpdateSQL: update MyTable
set vremja=:new_vremja
where code=:old_code


Наверх

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