2014-09-17 2 views
0

Я использую PostgreSQL 9.3. У меня есть две разделенные базы данных, у которых есть таблицы, которые мне нужны, присоединяйтесь к. Как известно, я могу использовать запрос dblink для доступа к удаленной базе данных.Каков потенциальный риск, если мы присоединяемся к двум таблицам, расположенным в разделенных базах данных.

select * 
from 
    customer 
    INNER JOIN 
    dblink('host=192.168.3.9 dbname=db2 user=postgres password=postgres', ' 
     SELECT 
      id 
     FROM campaign_customer 
     ') AS table2 (
      int id 
      date_added char(50) 
     ) ON customer.cust_id = table2.id 

Это выглядит немного странно. Означает ли такое решение потенциальный (я имею в виду join через dblink) риск? Если да, можете ли вы объяснить, какой именно этот риск? Я хотел бы посмотреть на любое другое возможное решение.

Меня особенно интересует выполнение такого запроса и как оно может повлиять на транзакцию на другую базу данных?

+0

Пожалуйста, добавьте тег для определенных RDBMS, которые вы используете. – Barmar

+0

@ Бармар Извините. Исправлена. – 2014-09-17 07:29:23

+0

С какими рисками вы беспокоитесь? Безопасность? Медленные запросы? Неверные запросы? Избыточное использование ресурсов? – harmic

ответ

0

Я бы сказал, что FOREIGN DATA WRAPPER - лучший способ, который может избежать воздействия на строку подключения.

Смежные вопросы