Страница 1 из 1

Как превратить данные в набор Insert_ов ?

Добавлено: 23 июн 2005, 10:34
Spa_2002
Привет ! Для репликации части данных между базами нужно на основе определенных выборок создать файл *.sql который содержит набор команд INSERT чтобы эти данные вставить в другую базу путем запуска этого самого файла -скрипта.
Известен ли какой-то способ это сделать кроме как вручную прописать формирование файла - скрипта на основе выборок по таблицам?

Re: Как превратить данные в набор Insert_ов ?

Добавлено: 06 июл 2005, 09:40
wolverin
Spa_2002 писал(а):Для репликации части данных между базами нужно на основе определенных выборок создать файл *.sql который содержит набор команд INSERT чтобы эти данные вставить в другую базу путем запуска этого самого файла -скрипта.
Например, в редакторе скриптов IBExpert

Код: Выделить всё

OUTPUT 'c:\table.sql' ASINSERT INTO "table";
 SELECT * FROM table;
 OUTPUT;

Добавлено: 06 июл 2005, 09:59
kdv
а что, программно перебрать записи и сформировать insert-ы - офигенно сложно?

Добавлено: 07 июл 2005, 07:09
Spa_2002
to kdv: Не сложно . Но нудно .(зато все под контролем:))
Думал есть уже какие-то проторенные дорожки решения этой задачи.

to wolverin: IBExpert отпадает , т.к. все выборки должны выполняться в клиентской программе и условия выборки задаются клиентом во время работы.

Добавлено: 07 июл 2005, 12:10
kdv
проторенная дорожка - это конвертация чисел в строки. Программы вообще сами по себе нудные, ибо только и занимаются обработкой чисел и конвертацией данных.

Добавлено: 07 июл 2005, 12:20
Spa_2002
Ok. Будем прописывать все ручками , другого выхода нет.
Насчет нудности программ - отдельная тема . Мы все стремимся использовать какие -то средства автоматизации , компоненты , которые хотя бы немного уменьшают рутинную работу по наколачиванию однообразного кода.

Re: Как превратить данные в набор Insert_ов ?

Добавлено: 07 июл 2005, 12:54
OX
Spa_2002 писал(а):Привет ! Для репликации части данных между базами нужно на основе определенных выборок создать файл *.sql который содержит набор команд INSERT чтобы эти данные вставить в другую базу путем запуска этого самого файла -скрипта.
Известен ли какой-то способ это сделать кроме как вручную прописать формирование файла - скрипта на основе выборок по таблицам?
Если у тебя нет блобов и есть FIBPlus :), можешь почитать:
- TpFIBQuery. Экспорт и импорт данных в бинарном формате.
- TpFIBQuery. Экспорт в бинарном формате.
- TpFIBQuery. Импорт в бинарном формате.
- TpFIBQuery. Экспорт и импорт данных в текстовом формате.
- События OnBatching и OnBatchError компонента TpFIBQuery.
- TpFIBDataSet. Экспорт и импорт данных в бинарном и текстовом форматах.
- Использование метода BatchToQuery компонента TpFIBQuery.
- Использование методов BatchRecordToQuery и BatchAllRecordsToQuery компонента TpFIBDataSet.
http://www.devrace.com/ru/fibplus/news/index.php

Добавлено: 07 июл 2005, 13:59
Spa_2002
Хорошая штука FIBPlus......
к сожалению проект мой не на Delphi.
Пока работаю на VB6 через ADO и IBProvider
Может, со временем перееду на Delphi
Спасибо за совет.