обновить взгляд на таблицу - PullRequest
1 голос
/ 14 февраля 2011

Доброе утро всем,

У нас есть среды test1 и test2. В обеих средах есть 2 таблицы контактов и таблица пользователей.

T.Contact T.User
T1.User

Контакт является справочной таблицей и должен обновлять идентификатор пользовательской таблицы. Сейчас мы делаем следующие шаги, чтобы обновить идентификатор пользователя T.Contact:

.
  1. найти фамилию в идентификаторе T.User в соответствии с идентификаторами пользователя в T.Contact
  2. найти идентификаторы в T1.User для обновленного идентификатора
  3. изменение идентификаторов пользователя в T.Contact

Нам интересно, существуют ли лучшие пути или нет.

Если бы у нас была одна и та же БД, мы могли бы использовать вот так: предположения.

UPDATE T.Contact
SET USER_ID IN (
    SELECT USER_ID 
    FROM T.User A, T.Contact B , T1.User C
    WHERE A.LNAME = C.LNAME 
      AND A.FNAME = C.FNAME 
      AND A.USER_ID = B.USER_ID
)

Можно ли вызывать разные среды БД?

Спасибо

Добавление примечаний:

Мы должны сказать разные схемы вместо окружения.

Ответы [ 2 ]

0 голосов
/ 16 февраля 2011

Вы имеете дело с двумя отдельными базами данных или только с двумя схемами в одной базе данных?

0 голосов
/ 15 февраля 2011

Похоже, вы ищете ссылки на базу данных .

Вы можете создать ссылку из одной базы данных в другую следующим образом:

CREATE DATABASE LINK otherdb CONNECT TO schema IDENTIFIED BY password USING 'service_name';

Затем вы можете использовать его в таких запросах:

select ...
from tablename@otherdb;
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...