Как из БД Oracle получить дату 12.05.0003

НуждающийсяВСовете
Дата: 20.09.2004 17:13:45
По ошибке в базу забили дату = 12.05.0003, вместо 2003.
Теперь VB6+АДО не показывают это значение.
при попытке получения значения поля - ругается.

Как все-таки получить это значение (чтобы потом исправить)?

Причем спец утилиты (SQL Navigator и т.п.) отображают эту дату нормально.

Система: Win2000Pro+VB6+ADO 2.5+Oracle 9
Andrew Campball
Дата: 20.09.2004 17:17:06
update table
  set date_field = to_date('12.05.2003','dd.mm.yyyy')
  where date_field = to_date('12.05.0003','dd.mm.yyyy');
Vadim_Maximov
Дата: 20.09.2004 17:19:04
sqlplus
conn user/password@db

update table set datefield = TO_DATE('12/05/2003', 'DD/MM/YYYY')
where datefield = TO_DATE('12/05/0003', 'DD/MM/YYYY')
commit;
exit;
НуждающийсяВ Совете
Дата: 20.09.2004 17:21:33
Как изменить значения понятно.
Непонятно - как увидеть в своей проге это неправильное значение.
Прога на VB6+ADO2.5.
При попытке чтений значения из поля возникает ошибка.
aars
Дата: 20.09.2004 17:40:15
Так проблема не в значении даты (03-й год ничуть не хуже 2003-го, для БД),
а в проге.
Баг это проги твоей.
НуждающийсяВ Совете
Дата: 21.09.2004 06:27:00
Я так понял что это глюк в ADO.
оно выдает ошибку при попытке чтения значения.
Пример:
strTmp=rs.Fields(i).value ' <-В этом поле лежит дата = 12.05.0003,
'и ADO на нее ругается

Выдает ошибку:
Run-time error '-2147217887 (80040e21)'
Произошли ошибки во время выполнения многошаговой операции.
Проверьте значения всех состояний.

Я не могу получить(увидеть) значение.
Может где-то в ADO надо выставить настройки чтобы такие даты читать из БД?
НуждающийсяВ Совете
Дата: 23.09.2004 09:09:33
Вариант приведения to_char...
не прошел.
Результат тотже.
Т.е. отстутствует решение.
Gluk (Kazan)
Дата: 23.09.2004 13:38:14
Позвольте Вам не поверить, если вы преобразуете дату в запросе к TO_CHAR, то ADO просто обязано будет это прочитать как строку, т.е. как есть. На клиенте может быть ошибка с преобразованием обратно в дату, но это совсем другая история.
НуждающийсяВ Совете
Дата: 08.10.2004 11:41:36
Понимаю что ADO ДОЛЖНО прочитать как текст, но факты упрямая фещь.
То что "to_char" не прошло это факт.
Пришлось обновить все записи <"01.01.1900"