Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2003.08.18;
Скачать: CL | DM;

Вниз

Работа с несколькими базами InterBase   Найти похожие ветки 

 
NewJack ©   (2003-07-23 16:54) [0]

Можно ли в Delphi сделать запрос к таблицам лежащим в разных базах? Скопировать таблицу из одной базы в другую (с идентичной структурой)? Есть ли какие нибудь специальные компоненты?


 
Reindeer Moss Eater   (2003-07-23 17:05) [1]

Все наследники TQuery умеют это


 
Magic&Wizard ©   (2003-07-24 01:07) [2]

А как это работает?
По подробнее если можно...


 
Reindeer Moss Eater   (2003-07-24 08:55) [3]

Что "это"?


 
kostik78ua   (2003-07-24 09:18) [4]

> Можно ли в Delphi сделать запрос к таблицам лежащим в разных базах?

Можно, например, через lookup-поля


 
Reindeer Moss Eater   (2003-07-24 09:23) [5]

Можно, например, через lookup-поля
Это не один запрос к разным базам, а два, как минимум.


 
FoxBox   (2003-07-24 09:30) [6]

Все зависит от того, на чем крутится база. Если это какой-либо SQL-сервер, то при нахождении нескольких баз на одном сервере
обращение к двум таблицам будет: <Имя Базы>.<Имя Владельца>.<Имя таблицы>

т.е.
(для MSSQL это будет)
insert into table1
(fiel1, fiel2, fiel3)
select myfiel1, myfiel2, myfiel3
( БД или директория) Все зависит от того, на чем крутится база. Если это какой-либо SQL-сервер, то при нахождении нескольких баз на одном сервере
обращение к двум таблицам будет: <Имя Базы>.<Имя Владельца>.<Имя таблицы>

т.е.
(для MSSQL это будет)
insert into table1
(fiel1, fiel2, fiel3)
select myfiel1, myfiel2, myfiel3
from mydatabase..table2

Информикс также поддерживает работу и с серверами, т.е.
<Имя Сервера>.<Имя Базы>.<Имя владельца>.<Имя Таблицы>

Если хочешь организовать копирование в пользовательском интерфейсе, создай 2 алиаса, указывающих на свою рабочую область (БД или директория), создай на форме 2 TDataBase, вешай на них по таблице/запросу и обычными Append и Post пишешь что нужно и куда нужно. Логика может быть любой.


 
Reindeer Moss Eater   (2003-07-24 09:32) [7]

Сказали же, что сервер = IB


 
FoxBox   (2003-07-24 09:37) [8]

А будет по-другому работать? Сомневаюсь, в худшем случае немного другой синтаксис, но это к докам


 
Reindeer Moss Eater   (2003-07-24 09:40) [9]

см. Reindeer Moss Eater (23.07.03 17:05)
а так же bde32.hlp + LocalSQL Guide + key word "heterogeneous joins"


 
Zacho ©   (2003-07-24 10:01) [10]

IB не поддерживает гетерогенные запросы. Поэтому единственный способ - делать это в приложении-клиенте. Как уже писал Reindeer Moss Eater в BDE есть такой механизм, более того есть утилита DataPump и компонент TBatchMove. C другими компонентами доступа (не BDE) можно сделать тоже самое "ручками". Принцип работы остается все равно один - данные из разных БД объединяются на клиенте, или "перегоняются" из одной БД в другую через клиента.
Кроме использования BDE или написания кода для таких действий можно использовать скрипты. Можно делать это и "в ручную" и "программно" с помощью соответствующих утилит. См., например, Extract Metadata, Script Executive и утилиты IBEExtract.exe и IBScript.exe в IBExpert.


 
Sandman25 ©   (2003-07-24 10:38) [11]

FoxBox (24.07.03 09:30)

Нет. В Informix обращение к БД идет через ":", а не через ".".
select * from another_database:table

PS. Sorry за оффтопик



Страницы: 1 вся ветка

Текущий архив: 2003.08.18;
Скачать: CL | DM;

Наверх




Память: 0.49 MB
Время: 0.009 c
14-58383
Miralex
2003-08-04 14:32
2003.08.18
как сохранить в файл тип Record


14-58400
dez
2003-08-04 11:56
2003.08.18
[help] выполнение действия при нажатой кнопке мыши


14-58404
Puke Zero
2002-12-14 16:35
2003.08.18
Font.FontStyle


14-58499
Micah
2003-08-04 14:42
2003.08.18
Как можно поймать Мьютекс??


14-58462
Spawn
2003-07-24 09:32
2003.08.18
Удаление ограничительных полей