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

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

ADOQuery в DBF


dima_kds ©   (2006-10-06 11:22:00) 

Здравствуйте.
Я делаю выборку из БД под Oracle
нужно результат записать в dbf-файл.
Я использую этот код:

ADOQuery1.SaveToFile('C:\bug\import.dbf', pfADTG);

но файл создается с непонятным форматом.

Подскажите пожалуйста, в чем может быть дело?


Elen   (2006-10-06 14:05:00) [1]


> dima_kds

В общем я расскажу свой способ (их много) :
Я тоже использую ADOQuery. Нормально получаю таблицу, но сохраняю не через ADO. В Фокспро создаю себе СОМ-обьект (пара пустяков), который как компонент внедряю в делфи и после получения данных в цикле передаю каждую запись этому компоненту. Далее даю команду "сохранить" компоненту и dbf готов.

Есть другой способ - порыть в сторону ADOConnect.command. или передать эти данные в другой ДатаСет типа скажем TTable


dima_kds   (2006-10-06 13:46:00) [2]

Это интересно..
Я так понял либо pfADTG, либо pfXML
эти форматы для dbf не подходят получается.
Есть ли другие форматы?


Elen   (2006-10-06 13:13:00) [3]


> dima_kds

В тупую из справки :

Сохраняет recordset к файлу.

процедура SaveToFile(Имя константы файла: Вереница = ''; Формат: TPersistFormat = pfADTG);

Описание

Обратитесь к SaveToFile, чтобы сохранить текущий recordset к файлу. Если выходной файл уже существует, это переписано.

Имя файла вереница содержит имя выходного файла. Этот файл остается открытым с самого начала звонят к SaveToFile, пока набор данных не закрыт. Этот файл могут читать другие приложения, в то время как это открыто, но они не могут написать файлу.

Формат конкретизирует формат файла для сохраненного recordset. По умолчанию, Формат - pfADTG (Формат авансированный Данные Tablegram).

Примечание: Microsoft рекомендует использование бокового для клиента курсора (набор данных открывается с CursorLocation имущественным значением clUseClient). Таким образом, если используемый поставщик не поддерживает сохранение recordset, клиентский курсор обеспечит необходимую функциональность.

Значения TPersistFormat указывают формат для сохраненного recordset.

Единица

ADOdb

напечатайте TPersistFormat = (pfADTG, pfXML);

Описание

Используйте значения TPersistFormat, чтобы конкретизировать формат, в каком recordsets сохраняются к файлу. Значение pfADTG указывает, что файл сохраняется в формате ADTG ( Авансированный Данные Tablegram). Значение pfXML сохраняет recordset в формате XML (требует ADO 2.1 и выше).

Константы, которые составляют тип TPersistFormat, соответствуют непосредственно ADO PersistFormatEnum константы adPersistADTG и adPersistXML. Константы PersistFormatEnum используются в PersistFormat параметре метода Сохранения объекта ADO Recordset. Для дополнительной информации относительно этих констант ADO и их эффектов, видят помощь Доступ к Данным Microsoft SDK войти тема для свойства Направления объекта ADO Parameter.


dima_kds   (2006-10-06 13:02:00) [4]

Вот так значит тут помогают на форуме..
Ладно, сам разберусь.


Sergey13   (2006-10-06 12:54:00) [5]

> [4] dima_kds   (06.10.06 12:07)
> если у тебя есть инфа по этому,
Есть. Я даже намекнул откуда.


dima_kds   (2006-10-06 12:07:00) [6]

pfADTG я нашел в одном из кодов в интернете, но справки относительного я не видел.
если у тебя есть инфа по этому, почему бы не поделиться..


Sergey13   (2006-10-06 11:58:00) [7]

> [2] dima_kds   (06.10.06 11:43)

Тогда, к сожалению, помогать тебе нет желания.

ЗЫ: Неужели ты методом подбора нашел комбинацию pfADTG? 8-)


dima_kds   (2006-10-06 11:43:00) [8]

К сожалению у меня справка отсутствует


Sergey13   (2006-10-06 11:28:00) [9]

А справку читал по SaveToFile? Что там про pfADTG написано?


Наверх

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