powered by simpleCommunicator - 2.0.53     © 2025 Programmizd 02
Форумы / IBM DB2, WebSphere, IMS, U2 [игнор отключен] [закрыт для гостей] / Type name is invalid
16 сообщений из 16, страница 1 из 1
Type name is invalid
    #32657787
AlexSVR
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Имеется таблица с полем messagedate типа DATE
при попытке выполнить параметризированный запрос типа

insert into mytable (messagedate) values (:d)

происходит ошибка "Type name is invalid"

значение параматра присваивается так:

ADOQuery1.Parameters.ParamByName('d') := Now;
ADOQuery1.ExecSQL; //здесь происходит ошибка

Провайдер IBM OLEDB Provider for DB2
в чем дело не могу разобраться
аналогичные действия на MS SQL и Oracle проходят без проблем

Прошу совета!
...
Рейтинг: 0 / 0
Type name is invalid
    #32657894
Victor Metelitsa
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
DATE в DB2 содержит только дату, но не время. Дата+время = TIMESTAMP
...
Рейтинг: 0 / 0
Type name is invalid
    #32657902
AlexSVR
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Victor MetelitsaDATE в DB2 содержит только дату, но не время. Дата+время = TIMESTAMP

да понял разницу
только создал поле типа TimeStamp
а ошибка та же самая
...
Рейтинг: 0 / 0
Type name is invalid
    #32658120
Фотография Alexey Popov
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Тип параметра указал?
ADOQuery1.Parameters.ParamByName('d'):= ftDateTime; ADOQuery1.Parameters.ParamByName('d') := Now;
ADOQuery1.ExecSQL;
...
Рейтинг: 0 / 0
Type name is invalid
    #32658221
AlexSVR
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
[quot Alexey Popov]Тип параметра указал?


да тип параметра указан как ftDateTime
...
Рейтинг: 0 / 0
Type name is invalid
    #32661547
Pahan1978
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
date('yyyy-mm-dd')
...
Рейтинг: 0 / 0
Type name is invalid
    #32672281
AlexSVR
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Pahan1978date('yyyy-mm-dd')

так что через параметризированный запрос с параметром типа Date работать не получится?
...
Рейтинг: 0 / 0
Type name is invalid
    #32672328
Victor Metelitsa
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Ладно, не хотел я себе ставить Delphi, несколько лет уже как имею счастье к ним не прикасаться, но... на днях посмотрю. Наверняка какой-нибудь пустяк... или широкоизвестная и давно пофиксенная бага Delphi или клиентской части DB2. У меня где-то Delphi 7 валялся, посмотрим, как будет работать с DB2 8.1.6. Я уверен на 99%, что работать будет. Если же не заработает, то наверняка это будет означать необходимость патча на Delphi, коего у меня нет и я вряд ли буду его качать.
...
Рейтинг: 0 / 0
Type name is invalid
    #32672380
golsa
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
С датой вообще лучше работать как с символьной строкой. Тогда будешь гарантировано не зависить от настроек локализации как сервера, так и клиента. А то у меня был случай, когда число и месяц местами менялись (на клиенте) - программма перестала работать 13 числа - чуть суеверным не стал.
...
Рейтинг: 0 / 0
Type name is invalid
    #32672578
Victor Metelitsa
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
1. Извините, но именно строка и зависит от locale (хотя, к счастью, DB2 достаточно умна, чтобы распознать ISO-формат), соответствующая же ODBC/CLI-структура - нет. Можно также вспомнить про DB2-шную duration (decimal-число соответствующего вида).

2. Речь на самом деле шла не о дате, а о таймштампе (мы ведь в DB2-шной ветке форума, а не ораклячьей).
...
Рейтинг: 0 / 0
Type name is invalid
    #32674372
Victor Metelitsa
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Да, очень тяжелый случай

http://groups.google.com/groups?hl=ru&lr=&ie=UTF-8&threadm=3f52715c%40newsgroups.borland.com&rnum=8&prev=/groups%3Fq%3Dado%2520%2522type%2520name%2520is%2520invalid%2522%26hl%3Dru%26lr%3D%26ie%3DUTF-8%26sa%3DN%26tab%3Dwg


Еще немного покопаюсь, но пока для меня все выглядит так, что в Дельфах через ADO придется работать строками (или числами). Даже микрософтовский провайдер в сочетании с iBM-овским ODBC глючит.
...
Рейтинг: 0 / 0
Type name is invalid
    #32674441
golsa
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
При переводе даты в строку и обратно - всегда можно управлять форматом - как в Delphi так и в DB2.
...
Рейтинг: 0 / 0
Type name is invalid
    #32674739
Victor Metelitsa
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Да, похоже на чрезвычайно запущенный случай, придется работать строкой - YYYY-MM-DD-HH.MM.SS.XXXXXX или YYYYMMDDHHMMSS. Даже не думаю, что в DB2 8.2 это исправлено. В APAR'ах (ftp://ftp.software.ibm.com/ps/products/db2/fixes/english-us/aparlist/db2_v82/FP7/APARLIST.TXT) я этого не вижу, разве что

JR19575 ADDITION OF PATCH2=64

может относиться к этому? http://www-1.ibm.com/support/search.wss?q=JR19575&tc=SSEPGG&rs=71 - IBM Passport Advantage Software Maintenance Agreement required - шиш почитаешь.


Не по теме:
JR19891 PATCH2=57 ADDED TO ALLOW DELPHI APPLICATIONS TO HANDLE NULL VALUES WHEN CALLING STORED PROCEDURES (AS HAPPENED IN V7)
...
Рейтинг: 0 / 0
Type name is invalid
    #32679538
AlexSVR
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Victor MetelitsaДа, похоже на чрезвычайно запущенный случай, придется работать строкой - YYYY-MM-DD-HH.MM.SS.XXXXXX или YYYYMMDDHHMMSS.

Печально :(
но все равно спасибо!
...
Рейтинг: 0 / 0
Type name is invalid
    #32684237
Victor Metelitsa
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
на стингере то же самое
...
Рейтинг: 0 / 0
Type name is invalid
    #32885224
poiuytr
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
INSERT INTO mytable (timestamp_pole) VALUES (TIMESTAMP('01.01.2000', '22:22:22'))

Вот так у меня прокатывает. Без параметризированного запроса.
...
Рейтинг: 0 / 0
16 сообщений из 16, страница 1 из 1
Форумы / IBM DB2, WebSphere, IMS, U2 [игнор отключен] [закрыт для гостей] / Type name is invalid
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]