Я пытаюсь получить пользовательские данные из 2 таблиц, одной локально и одной на связанном сервере, но при запросе к удаленному серверу получаю неправильные результаты.
Я сократил свой запрос до
select * from SQL2.USER.dbo.people where persId = 475785
для тестирования и обнаружил, что когда я запускаю его, я не получаю никаких результатов, хотя я знаю, что человек существует.
(persId - это целое число, db - это SQL Server 2000, а dbo.people - это, кстати, таблица)
Если я копирую / вставляю запрос и запускаю его на том же сервере, что и база данных, он работает.
Кажется, что это влияет только на определенные идентификаторы пользователей, например:
select * from SQL2.USER.dbo.people where persId = 475784
отлично работает для пользователя, прежде чем тот, который я хочу.
Странно, я обнаружил, что
select * from SQL2.USER.dbo.people where persId like '475785'
тоже работает, но
select * from SQL2.USER.dbo.people where persId > 475784
возвращает записи с именами persIds, начинающимися с 22519, а не с 475785, как я ожидал.
Надеюсь, что это имеет смысл для кого-то
Есть идеи?
UPDATE:
Из-за внутренних опасений по поводу внесения каких-либо изменений в живую таблицу пользователей я временно переместил свою базу данных, чтобы они оба находились на одном сервере, поэтому проблема со связанным сервером не возникает. Как только вся партия будет перенесена в отдельный кластер, я смогу провести надлежащее расследование. Я обновлю обновление, как только это произойдет, и я смогу пройтись по всем предложениям. Спасибо за вашу помощь.