Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате
Форум программистов > СУБД, общие вопросы > Выгрузка из базы. Как?


Автор: Gunslinger 3.4.2009, 11:51
Привет! какой механизм выгрузки и из каких элементов состоит?
Как я представляю. Нужна выгрузка какой-то определенной информации. Пользователь задает условие, далее составляется запрос к таблицам с нужной инфой. Запрос отправляется в базу и возвращается результат. Тогда как данные формируются в нужный формат? Запрос для выгрузки пишется в какую-нибудь процедуру конвертации (вроде черного ящика, на вход - свой запрос и адрес с названием выгруженного файла), в результате процедура создает заданный файл с выгрузкой? Или эта процедура не вводится в базу (как хранимка), а выгрузка осуществляется сторонней программой (ADO или проч. коннекшн, компоненты выгрузки)?

Автор: Данкинг 3.4.2009, 12:06
Вручную пишешь процедуру конвертации в тот формат, в который нужен. К примеру, для экспорта из Access в Excel подключаешься через ADO к Access, создаёшь новую книгу Excel, и циклом проходишь по таблице, сохраняя данные в XLS. Конкретно для XML- не пробовал, но есть какие стандартные компоненты для этого.

Автор: Gunslinger 3.4.2009, 12:53
Цитата(Данкинг @  3.4.2009,  12:06 Найти цитируемый пост)
Вручную пишешь процедуру конвертации в тот формат, в который нужен.  К примеру, для экспорта из Access в Excel подключаешься через ADO к Access, создаёшь новую книгу Excel, и циклом проходишь по таблице, сохраняя данные в XLS. Конкретно для XML- не пробовал, но есть какие стандартные компоненты для этого. 

ты говоришь про хранимку или про процедуру во внешней проге? Про написание конвертера вообще не пойму, что это и как.

Автор: DimW 3.4.2009, 13:41
Цитата(Gunslinger @  3.4.2009,  11:51 Найти цитируемый пост)
какой механизм выгрузки и из каких элементов состоит?

собственно вопрос то вчем? как организавать механидм выгрузки данных в нужном формате из БД?

Автор: Данкинг 3.4.2009, 13:56
Про процедуру во внешней проге. Но знаю, что на Oracle есть какая-то функция-парсер XML, т.е.  её, видимо, можно использовать и в ХП.


Автор: Gunslinger 3.4.2009, 14:02
Добавлено @ 14:03
Цитата(Данкинг @  3.4.2009,  13:56 Найти цитируемый пост)
Про процедуру во внешней проге. Но знаю, что на Oracle есть какая-то функция-парсер XML, т.е.  её, видимо, можно использовать и в ХП

понял. 

Цитата(DimW @  3.4.2009,  13:41 Найти цитируемый пост)
собственно вопрос то вчем? как организавать механидм выгрузки данных в нужном формате из БД? 

точно. Каким образом сохранять полученные данные в формате xml, как выглядит "конвертирование"?

Автор: DimW 3.4.2009, 14:13
СУБД?

Автор: Gunslinger 3.4.2009, 14:25
Oracle, MsSql. И FoxPro, Postgres за компанию.

Автор: DimW 3.4.2009, 15:21
Цитата(Gunslinger @  3.4.2009,  14:25 Найти цитируемый пост)
Oracle, MsSql. И FoxPro, Postgres за компанию.

ни че так суп-набор...

по Oracle:
Цитата(Gunslinger @  3.4.2009,  11:51 Найти цитируемый пост)
Тогда как данные формируются в нужный формат?

Для начала определитесь с форматом.
В оракле есть средства позволяющие формировать данные в нужный формат xml запросом:
http://www.citforum.ru/database/oracle/xml-oracle/
инфы навалом. если возникнут вопросы милости просим в ветку оракл.

Цитата(Gunslinger @  3.4.2009,  11:51 Найти цитируемый пост)
 в результате процедура создает заданный файл с выгрузкой?

можно и по такому пути пойти:
http://download.oracle.com/docs/cd/B28359_01/appdev.111/b28419/u_file.htm

Цитата(Gunslinger @  3.4.2009,  11:51 Найти цитируемый пост)
а выгрузка осуществляется сторонней программой

ну это зависит от требований, можно и по почте юзеру сразу отправить.
http://it.toolbox.com/wiki/index.php/Send_email_from_Oracle_Database

Powered by Invision Power Board (http://www.invisionboard.com)
© Invision Power Services (http://www.invisionpower.com)