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

Insert с Select'ом

Добавлено: 22 мар 2005, 16:26
Murzil
Добрые и мудрые! Помогите начинающему.
Нашел в Langref такой пример:
INSERT INTO PROJECTS
SELECT * FROM NEW_PROJECTS
WHERE NEW_PROJECTS.START_DATE > ’6-JUN-1994’;
Подскажите, пожалуйста, как в параметрах запроса указать,
что Select производится из таблицы одной БД, а Insert - в таблицу
другой БД? Структура таблиц обеих баз одинаковый.
В Paradox, например, можно указать полный путь к таблице.
Как решить эту задачу для Interbase?
Заранее благодарен!

Добавлено: 22 мар 2005, 16:53
Геннадий
Только если запускать этот запрос из DBDesktop с указанеим алиасов
как в Paradox.

Добавлено: 22 мар 2005, 17:08
Dnico
Почитать как сделать - можно тут http://www.ibase.ru/devinfo/bde.htm

Добавлено: 23 мар 2005, 10:26
Murzil
Геннадий писал(а):Только если запускать этот запрос из DBDesktop с указанеим алиасов
как в Paradox.
Запрос нужно запускать из приложения.

Добавлено: 23 мар 2005, 10:40
Геннадий
Murzil писал(а):
Геннадий писал(а):Только если запускать этот запрос из DBDesktop с указанеим алиасов
как в Paradox.
Запрос нужно запускать из приложения.
Через BDE можно и из приложения.

Добавлено: 23 мар 2005, 16:46
Murzil
Суть задачи такая:
из одной БД нужно делать выборку данных по к.-л. условию и вставлять их в одинаковую по структуре другую БД.
СУБД - Interbase.
Подскажите, как это лучше сделать программно ,без BDE, при помощи IBX(?) ?
Думал, что проще всего sql-запросом select-insert, но разобраться с работой с двумя БД пока не могу.
Спасибо заранее!

Добавлено: 23 мар 2005, 18:08
kdv
select из одной, insert в другую. данные читать через IBX.IBSQL, писать через IBSQL или IBQuery с оператором insert.
еще лучше прочитать www.ibase.ru/devinfo/testiu.htm

Добавлено: 24 мар 2005, 14:42
Murzil
kdv писал(а):select из одной, insert в другую. данные читать через IBX.IBSQL, писать через IBSQL или IBQuery с оператором insert.
еще лучше прочитать www.ibase.ru/devinfo/testiu.htm
Если не затруднит, чуть поподробнее.

Статью прочитал, но не понял, что такое Т в запросе
"UPDATE T_INTERNAL T SET... "
Спасибо!

Добавлено: 24 мар 2005, 14:50
Murzil
kdv писал(а):select из одной, insert в другую. данные читать через IBX.IBSQL, писать через IBSQL или IBQuery с оператором insert.
еще лучше прочитать www.ibase.ru/devinfo/testiu.htm
Если не затруднит, чуть поподробнее.
Куда выбирает данные IBSQL?
Статью прочитал, но не понял, что такое Т в запросе
"UPDATE T_INTERNAL T SET... "
Спасибо!

Добавлено: 24 мар 2005, 17:54
kdv
T - это алиас. если впервые слышишь, то учи SQL.
Куда выбирает данные IBSQL
никуда. тебе не надо их буферизировать. я специально про IBSQL написал, чтобы ты не использовал IBQuery, который ЗАКЭШИРУЕТ В ПРИЛОЖЕНИИ ВСЕ ВЫБРАННЫЕ ЗАПИСИ! Тебе тормозов и сожранной памяти на клиенте хочется?