Обновить только одно поле из резервной копии - PullRequest
0 голосов
/ 27 апреля 2010

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

Похоже, что-то должно быть довольно близко к:

update users set idUserCompany = 
   (select idUserCompany from .myBackup.dbo.users uT) 
where uT.idUser = idUser

Примечание. Резервное копирование используется здесь в общем смысле. Дело в том, что у меня есть хорошие данные в базе данных с именем .myBackup, и мне нужно вытащить один файл в мою производственную базу данных, где существует соответствие в поле idUser между резервным копированием и производством.

Как выглядит объединение в операторе обновления?

Ответы [ 2 ]

0 голосов
/ 28 апреля 2010

Спасибо за указатель на JOIN:

update Users set users.idUserCompany = backup.idUserCompany
 from Users inner join .myBackup.dbo.users as old 
on users.idUser = old.idUser
0 голосов
/ 28 апреля 2010

AFAIK это не то, как BACKUP предназначен для работы, даже не близко.

Что мне нужно было сделать, это RESTORE в новую базу данных, затем выполнить UPDATE через JOIN для соответствующего ключа.

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