Вниз
Скачать: CL | DM;

Некорректное заполнение поля даты в DBF, как обойти?   Найти похожие ветки 

← →
Слава-АБС ©   (2005-09-29 09:41) [0]

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


← →
ANB ©   (2005-09-29 09:49) [1]

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


← →
stone ©   (2005-09-29 09:57) [2]


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

Это как?

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

select <fields list> from <table name>


← →
ANB ©   (2005-09-29 10:06) [3]


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

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


← →
stone ©   (2005-09-29 10:14) [4]


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

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

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


← →
ANB ©   (2005-09-29 10:26) [5]


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

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


← →
Anatoly Podgoretsky ©   (2005-09-29 19:09) [6]

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

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



Страницы: 1 вся ветка

Скачать: CL | DM;



Память: 0.46 MB
Время: 0.027 c
11-1111063036
Ал
2005-03-17 15:37
2005.11.13
Как использовать TSmoothDIB


1-1129577801
Rianon
2005-10-17 23:36
2005.11.13
DLL и немодальный формы в них


6-1122621029
vajo
2005-07-29 11:10
2005.11.13
Загрузка файла из Интернета, а не с прокси


2-1129550865
Yurij-7
2005-10-17 16:07
2005.11.13
Query и вызов соотвествующей записи


4-1126206927
Gray2
2005-09-08 23:15
2005.11.13
Обработка сообщений




   Наверх