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

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

Некорректное заполнение поля даты в DBF, как обойти? [D7, dBase, FoxPro]


Слава-АБС ©   (2005-09-29 09:41:00) 

Уважаемые мастера! Уже несколько дней маюсь с такой проблемой, а именно, есть куча DBF файлов, который нужно обработать, но в некоторых файлах, где указан тип поля DATE, внесены значения, к дате отношения совсем не имеющие. В связи с этим и начинаются проблемы: с определением количества записей в базе и при обращении непосредственно к самой записи, выдается сообщение Поставщик данных или другая служба вернули состояние E_FAIL. Учитывая тот факт, что мне это поле с датой не требуется, как можно получить значения остальных полей из этой записи?


Anatoly Podgoretsky   (2005-09-29 19:09:00) [1]

Слава-АБС ©   (29.09.05 09:41)  
Учитывая тот факт, что мне это поле с датой не требуется

Выполни по пунктам
1. БДЕ Админ Ctrl+Del на не требуемом поле.
2. Разработчику по зубам.
3. Больше к системе его не допускать.


ANB   (2005-09-29 10:26:00) [2]


> stone ©   (29.09.05 10:14) [4]

Ессно. 1 байт. Кстати, его можно исправить на C и все будет хоккей.


stone   (2005-09-29 10:14:00) [3]


> ANB ©   (29.09.05 10:06) [3]

Я исхожу из:
> но в некоторых файлах, где указан тип поля DATE

я так понял, то тип поля указан непосредственно в файле, откуда строка?


ANB   (2005-09-29 10:06:00) [4]


> stone ©   (29.09.05 09:57) [2]
>
> > но в некоторых файлах, где указан тип поля DATE, внесены
>
> > значения, к дате отношения совсем не имеющие.
>
> Это как?

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


stone   (2005-09-29 09:57:00) [5]


> но в некоторых файлах, где указан тип поля DATE, внесены
> значения, к дате отношения совсем не имеющие.

Это как?

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

select <fields list> from <table name>


ANB   (2005-09-29 09:49:00) [6]

Имхо.
1. Воспользоваться SQL и указывать в запросах только те поля, которые тебе нужны.
2. Попробовать ручками переключить тип поля на ftString (не пробовал)
3. Самое надежное - читать файл напрямую. Структуры известны, могу выслать или запостить пример модуля (расчитан на DBF фокса). Тогда сможешь сам обработать некорректные даты, так как в DBF они лежат строкой (как и числа)


Наверх

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