Поиск:

Ответ в темуСоздание новой темы Создание опроса
> Проблема в одноврем-ой работе с 2-мя БД InterBase 
:(
    Опции темы
Delphist
  Дата 19.10.2005, 18:09 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Delphist Эксперт
****


Профиль
Группа: Завсегдатай
Сообщений: 2145
Регистрация: 3.2.2004
Где: всегда в сети

Репутация: 1
Всего: 3



Есть две БД под Firebird:db1.gdb и db2.gdb в db1.gdb есть табличка table1_db1
с полями field1_tbl1 и field2_tbl1. Нужно данные из этих полей загнать в db2.gdb
в таблицу table2_db2 в поля field1_tbl2 и field2_tbl2. Как это сделать.


--------------------
ProcessInfo 1-ая моя программа (аналог spyxx.exe с гораздо большим функц-ом - внедрение dll в адр. простр. процесса, перехват API-функций, разбор приложения на окна мн.др).
Когда-то давным-давно использовал это...
PM MAIL ICQ   Вверх
Alex
Дата 20.10.2005, 00:52 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
****


Профиль
Группа: Экс. модератор
Сообщений: 4147
Регистрация: 25.3.2002
Где: Москва

Репутация: 17
Всего: 162



Подключиться к одной и ко второй БД с помощью разных компонентов и перегнать данные


--------------------
Написать можно все - главное четко представлять, что ты хочешь получить в конце. 
PM Skype   Вверх
Delphist
  Дата 20.10.2005, 16:26 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Delphist Эксперт
****


Профиль
Группа: Завсегдатай
Сообщений: 2145
Регистрация: 3.2.2004
Где: всегда в сети

Репутация: 1
Всего: 3



Цитата(Alex @ 20.10.2005, 00:52)
Подключиться к одной и ко второй БД с помощью разных компонентов и перегнать данные

Пример не мог бы привести


--------------------
ProcessInfo 1-ая моя программа (аналог spyxx.exe с гораздо большим функц-ом - внедрение dll в адр. простр. процесса, перехват API-функций, разбор приложения на окна мн.др).
Когда-то давным-давно использовал это...
PM MAIL ICQ   Вверх
Alex
Дата 20.10.2005, 16:30 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
****


Профиль
Группа: Экс. модератор
Сообщений: 4147
Регистрация: 25.3.2002
Где: Москва

Репутация: 17
Всего: 162



Цитата(Delphist @ 20.10.2005, 17:26)
Пример не мог бы привести

Какие компоненты используешь для работы?
Добавлено @ 16:32
а еще лучше пришли два своих файла базы и напишу пример, что бы мне эти базы для теста сейчас не создавать


--------------------
Написать можно все - главное четко представлять, что ты хочешь получить в конце. 
PM Skype   Вверх
Delphist
Дата 20.10.2005, 16:51 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Delphist Эксперт
****


Профиль
Группа: Завсегдатай
Сообщений: 2145
Регистрация: 3.2.2004
Где: всегда в сети

Репутация: 1
Всего: 3



Цитата(Alex @ 20.10.2005, 16:30)

а еще лучше пришли два своих файла базы и напишу пример, что бы мне эти базы для теста сейчас не создавать

Использую FIBPlus. Файл с БД прилагаю (БД сделаны под FireBird 1.0 - т.е. без проблем должны работать на любой версии InterBase).

Это сообщение отредактировал(а) Delphist - 20.10.2005, 16:53

Присоединённый файл ( Кол-во скачиваний: 8 )
Присоединённый файл  DB.rar 53,13 Kb


--------------------
ProcessInfo 1-ая моя программа (аналог spyxx.exe с гораздо большим функц-ом - внедрение dll в адр. простр. процесса, перехват API-функций, разбор приложения на окна мн.др).
Когда-то давным-давно использовал это...
PM MAIL ICQ   Вверх
Alex
Дата 20.10.2005, 20:47 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
****


Профиль
Группа: Экс. модератор
Сообщений: 4147
Регистрация: 25.3.2002
Где: Москва

Репутация: 17
Всего: 162



Если что-то не понятно - спрашивай

Присоединённый файл ( Кол-во скачиваний: 5 )
Присоединённый файл  DB_Alex.rar 61,59 Kb


--------------------
Написать можно все - главное четко представлять, что ты хочешь получить в конце. 
PM Skype   Вверх
Delphist
  Дата 21.10.2005, 12:28 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Delphist Эксперт
****


Профиль
Группа: Завсегдатай
Сообщений: 2145
Регистрация: 3.2.2004
Где: всегда в сети

Репутация: 1
Всего: 3



Цитата(Alex @ 20.10.2005, 20:47)
Если что-то не понятно - спрашивай

У меня нет класса TpFIBDatabase и TpFIBTransaction есть только TFIBDatabase и TFIBTransaction
поделись своими. Они лучше обычного TFIBDatabase и TFIBTransaction?


--------------------
ProcessInfo 1-ая моя программа (аналог spyxx.exe с гораздо большим функц-ом - внедрение dll в адр. простр. процесса, перехват API-функций, разбор приложения на окна мн.др).
Когда-то давным-давно использовал это...
PM MAIL ICQ   Вверх
Alex
Дата 21.10.2005, 21:32 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
****


Профиль
Группа: Экс. модератор
Сообщений: 4147
Регистрация: 25.3.2002
Где: Москва

Репутация: 17
Всего: 162



Цитата(Delphist @ 21.10.2005, 13:28)
У меня нет класса TpFIBDatabase и TpFIBTransaction есть только TFIBDatabase и TFIBTransaction
поделись своими. Они лучше обычного TFIBDatabase и TFIBTransaction?

У меня версия 6.25 и это ее стандартные классы


--------------------
Написать можно все - главное четко представлять, что ты хочешь получить в конце. 
PM Skype   Вверх
Delphist
  Дата 25.10.2005, 17:47 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Delphist Эксперт
****


Профиль
Группа: Завсегдатай
Сообщений: 2145
Регистрация: 3.2.2004
Где: всегда в сети

Репутация: 1
Всего: 3



Цитата(Alex @ 21.10.2005, 21:32)
Цитата(Delphist @ 21.10.2005, 13:28)
У меня нет класса TpFIBDatabase и TpFIBTransaction есть только TFIBDatabase и TFIBTransaction
поделись своими. Они лучше обычного TFIBDatabase и TFIBTransaction?

У меня версия 6.25 и это ее стандартные классы

Поделись ими пожалуйста.

P.S. Кидай на мой e-mail: [email protected]


--------------------
ProcessInfo 1-ая моя программа (аналог spyxx.exe с гораздо большим функц-ом - внедрение dll в адр. простр. процесса, перехват API-функций, разбор приложения на окна мн.др).
Когда-то давным-давно использовал это...
PM MAIL ICQ   Вверх
Alex
Дата 25.10.2005, 19:00 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
****


Профиль
Группа: Экс. модератор
Сообщений: 4147
Регистрация: 25.3.2002
Где: Москва

Репутация: 17
Всего: 162



Цитата(Delphist @ 25.10.2005, 18:47)
Поделись ими пожалуйста.

P.S. Кидай на мой e-mail: [email protected]

Я конечно все понимаю, но библиотека вроде бы как платная я покупал лицензию на одного человека smile


--------------------
Написать можно все - главное четко представлять, что ты хочешь получить в конце. 
PM Skype   Вверх
YurikGL
Дата 25.10.2005, 20:05 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Бывалый
*


Профиль
Группа: Участник
Сообщений: 196
Регистрация: 5.7.2005
Где: Уфа

Репутация: нет
Всего: 2



Цитата
Есть две БД под Firebird:db1.gdb и db2.gdb в db1.gdb есть табличка table1_db1
с полями field1_tbl1 и field2_tbl1. Нужно данные из этих полей загнать в db2.gdb
в таблицу table2_db2 в поля field1_tbl2 и field2_tbl2. Как это сделать.



кидаешь на форму два коннекшена, две транзакции и два датасета.
Цепляешь первый к первому и второй ко второму транзакции к коннекшену и т.д. Первый коннекш настраиваешь на первую базу а датасет на table1_db1 вторую на вторую базу и таблицу соответсвенно

код пишу прямо здесь - за ошибки извиняйте если что напутал - исправить будет легко

самый тупой вариант
dataset1.first
repeat
dataset2.insert;
dataset2.fieldbaname('field1_tbl2').value:=dataset1.fieldbaname('field1_tbl1').value
dataset2.fieldbaname('field2_tbl2').value:=dataset1.fieldbaname('field2_tbl1').value
dataset2.post
dataset1.next
until dataset1.eof;

Вариант похитрее и ошибок у меня может быть больше:
Ко второму коннекшену цепляем IBSQL2 тогда

dataset1.first
repeat
IBSQL2.sql.text:='Insert into table2_db2 (field1_tbl2, field2_tbl2) values ('+dataset1.fieldbaname('field1_tbl1').asstring+','+dataset1.fieldbaname('field1_tbl1).asstring+')';
dataset1.next
until dataset1.eof;
Во втором случае, если значения полей в датасете1 строковые то нужно будет сделать типа


IBSQL2.sql.text:='Insert into table2_db2 (field1_tbl2, field2_tbl2) values ('+#39+dataset1.fieldbaname('field1_tbl1').asstring+#39+','+#39+dataset1.fieldbaname('field1_tbl2).asstring+#39+')';

Это сообщение отредактировал(а) YurikGL - 25.10.2005, 20:10
--------------------
 
PM MAIL WWW ICQ   Вверх
  
Ответ в темуСоздание новой темы Создание опроса
Правила форума "Delphi: Базы данных и репортинг"
Vit
Петрович

Запрещено:

1. Публиковать ссылки на вскрытые компоненты

2. Обсуждать взлом компонентов и делиться вскрытыми компонентами


Обязательно указание:

1. Базы данных (Paradox, Oracle и т.п.)

2. Способа доступа (ADO, BDE и т.д.)


  • Литературу по Дельфи обсуждаем здесь
  • Действия модераторов можно обсудить здесь
  • С просьбами о написании курсовой, реферата и т.п. обращаться сюда
  • Вопросы по реализации алгоритмов рассматриваются здесь
  • 90% ответов на свои вопросы можно найти в DRKB (Delphi Russian Knowledge Base) - крупнейшем в рунете сборнике материалов по Дельфи
  • Вопросы по SQL и вопросы по базам данных не связанные с Дельфи задавать здесь

FAQ раздела лежит здесь!


Если Вам помогли и атмосфера форума Вам понравилась, то заходите к нам чаще! С уважением, Vit, Петрович.

 
0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | Delphi: Базы данных и репортинг | Следующая тема »


 




[ Время генерации скрипта: 0.0575 ]   [ Использовано запросов: 22 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.