Я получил следующее сообщение об ошибке, касающееся SQL-запроса, который я выполняю в программе. SQL Server 2005 T-SQL.
Гетерогенные запросы требуют
ANSI_NULLS
иANSI_WARNINGS
опции , которые нужно установить для подключения. Это обеспечивает согласованную семантику запроса. Включите эти параметры, а затем повторите запрос. (серьезность 16)
Исправить это легко, установить ANSI_NULLS
и ANSI_WARNINGS
ON
, но я хотел знать, что такое гетерогенный запрос. Поиск в Google выводит десятки результатов, подсказывающих мне установить, ANSI_NULLS
и ANSI_WARNINGS
ничего не объясняющих, что означает этот термин. Запрос:
UPDATE SRV.DB.DBO.TABLE SET Column=
(SELECT Column
FROM SRV1.DB.DBO.TABLE)
Я думаю, что это связано с подключением к нескольким механизмам баз данных в одном запросе, поскольку я никогда не получал эту ошибку в противном случае.
Означает ли «Гетерогенный» запрос двух разных механизмов баз данных в этом контексте?
источник
Гетерогенный просто означает другое. Таким образом, гетерогенный запрос находится в одной базе данных и запрашивает РАЗНУЮ базу данных. Поскольку базы данных разные, возникает возможность того, что настройки будут другими, что может привести к результатам, отличным от запланированных.
источник