Хранимая процедура Multi-db в SQL Server 2008: не удалось связать идентификатор из нескольких частей - PullRequest
0 голосов
/ 09 мая 2011

Я пытаюсь написать хранимую процедуру для SQL Server 2008. Она предназначена для инструмента миграции, который переносит данные из одной базы данных в другую.

Я хочу получить все записи из старой базы данных, которых еще нет в новой базе данных.Для этого я использую хранимую процедуру ниже.Но я получаю сообщение об ошибке

Не удалось связать идентификатор из нескольких частей

при выполнении хранимой процедуры.Что я могу сделать, чтобы сделать эту работу?

Вот ИП:

SELECT *
FROM Measurement_device
WHERE Measurement_device.Department_Code = '99'
  AND mir.dbo.Gages.Gage_code != Device_Number

1 Ответ

0 голосов
/ 09 мая 2011

Это потому, что у вас есть условие mir.dbo.Gages.Gage_code, когда на эту таблицу нет ссылки в предложении FROM. Попробуйте что-то вроде этого:

SELECT m.*
FROM Measurement_device m
    LEFT JOIN mir.dbo.Gages g ON g.Gage_code = m.Device_Number
WHERE m.Department_Code = '99'
    AND g.Gage_code IS NULL -- where the gage_code/device_number does not already exist in mir database
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...