![]() |
| ||
|
|
Новости |
Поиск |
FAQ |
Статьи |
Книги |
Новости VCL
| | Форумы ЧАТ |
Орешник |
|
| |||
| |||
« предыдущая ветвь | форум | следующая ветвь »
Backup заданных таблиц [D6, D7, IB6.x]
Piarte © (2004-03-29 14:59:00)Как произвести Backup только заданных таблиц БД Firebird.
Johnmen (2004-03-30 09:26:00) [1]>Piarte
Я бы скопировал файл ЦБД на СД и перенес на целевой комп.
Там бы запустил написанную программу, которая реализует логику
синхроницации баз данных. После чего проапдейченную ЦБД обратно на СД и на исходный комп.
Deniz (2004-03-30 07:13:00) [2]> Piarte (29.03.04 19:33) [14]
> Johnmen можеш описать в двух словах как бы ты реализовал данный механиз
А можно я опишу?
В ЦБД:
TClientDataSet1.SaveToFile('Table1.xml', dfXML);
TClientDataSet2.SaveToFile('Table2.xml', dfXML);
TClientDataSet3.SaveToFile('Table3.xml', dfXML);
...
В БД:
TClientDataSet1.LoadFromFile('Table1.xml');
TClientDataSet2.LoadFromFile('Table2.xml');
TClientDataSet3.LoadFromFile('Table3.xml');
...
Piarte (2004-03-29 19:33:00) [3]Johnmen можеш описать в двух словах как бы ты реализовал данный механиз, какие компоненты использовал и в каком формате записывал бы данные для переноса между компами.
Johnmen (2004-03-29 18:53:00) [4]Так в чём же всё-таки проблема ? В незнании языков программирования ? В незнании стандартных средств ? В чём-то другом ?
Piarte (2004-03-29 18:36:00) [5]Мне и надо написать базу данных, которая бы реализовала выше описанный механизм. Я хочу выяснить существуют ли стандартные средства (или есть дополнительные) в Delphi / InterBase / Firebird. Может кто сталкивался с такой проблемой. И решил ее.
Johnmen (2004-03-29 18:21:00) [6]Я бы посоветовал написать программу. С использованием стандартных средств.
(Серьёзно)
Piarte (2004-03-29 18:18:00) [7]>А как узнать что ID из таблицы 2, в разных базах данных не >пересекуться ?
>Такие вещи обычно делают односторонне.
ID не пересекутся так, как для каждой БД задан свой диапазон, за пределы которого выйти невозможно. Компы несвязанны сеткой и поэтому данные необходимо будет переносить на дискете. Я привел пример из двух таблиц только для простоты формулирования задачи на самом деле там намного больше таблиц которые надо копировать.
Piarte (2004-03-29 18:08:00) [8]Задание необходимо сделать мне для заказчика. Вот я и ищу совета как это все реализовать.
Johnmen (2004-03-29 17:35:00) [9]>Уточню задание :
Кому задание ?
>Необходимо программно реализовать данный механизм.
Кому необходимо ?
Domkrat (2004-03-29 17:19:00) [10]>Поле Таблица2.ID уникально в пределах всех БД
А как узнать что ID из таблицы 2, в разных базах данных не пересекуться ?
Такие вещи обычно делают односторонне.
И я думаю никакие BackUp-Restore Вам не нужны, ради 2 таблиц.
2 Database, 2 Transaction и пишите транслятор.
Piarte (2004-03-29 17:01:00) [11]Уточню задание :
Центральная база данных ЦБД
Таблица 1 Справочник национальностей
ID – Primary Key
Naz – Национальности
Таблица 2 Люди
ID - Primary Key
NazID – Foreign key(Таблица1.ID)
Name – Имя человека
Prikaz – blob поле содержащая какую-то информацию
В ЦБД заполняется Таблица 1. Значение ее полей необходимо скопировать в другую такую же базу данных БД, за исключением того, что в этой БД можно только брать значение из этой таблицы, но не редактировать или добавлять.
После копирования Таблицы 1 в БД, можно будет заполнять Таблицу 2 БД. После заполнения этой таблицы необходимо скопировать данные (не обязательно все) в из Таблицы 2 БД в Таблицу 2 ЦБД.
Поле Таблица2.ID уникально в пределах всех БД. Кроме того в ЦБД и БД содержаться еще таблицы которые копировать не надо
Необходимо программно реализовать данный механизм.
Domkrat (2004-03-29 16:16:00) [12]IBX этот механиз поддерживает. В Help-е есть хороший пример.
Piarte (2004-03-29 16:05:00) [13]Да забыл сказать, этот механизм надо встроить в программу напмсанную на Delphi.
Domkrat (2004-03-29 15:41:00) [14]Back->Restore, и удалить все ненужное.
Piarte (2004-03-29 15:35:00) [15]Хорошо.
Поставлена такая задача : есть база данных, необходимо перенести все данные из заданных таблиц в другую аналогичную базу данных, находящуюся на другом компьютере (не в сети). При этом в переносимых таблицах содержится поле типа Bloob. Можно ли и как реализовать данный механизм стандартными средствами. А если нет, то посоветуйте как реализовать данный механизм.
Johnmen (2004-03-29 15:10:00) [16]Backup понятие "базоводанное", а не "табличное"
:)