Tôi có hai Máy chủ SQL (đang chạy SQL Server 2008) có tên là DATA01
và DATA02
. DATA02
có định nghĩa máy chủ được liên kết LINK
, trỏ tại DATA01
, với thiết lập ánh xạ người dùng phù hợp. Trên DATA01
có một cơ sở dữ liệu MyDatabase
chứa hai bảng sau đây:Tại sao tôi nhận được lỗi "Loại dữ liệu Xml không được hỗ trợ trong truy vấn được phân phối" khi truy vấn máy chủ được liên kết cho dữ liệu không phải là xml?
CREATE TABLE T_A (
Id int
)
CREATE TABLE T_B (
Id int,
Stuff xml
)
Khi tôi chạy lệnh này từ DATA02
, tôi nhận được dữ liệu trả về như mong đợi:
SELECT Id FROM LINK.MyDatabase.dbo.T_A;
Tuy nhiên, khi tôi chạy lệnh này từ DATA02
, tôi nhận được một lỗi:
SELECT Id, Stuff FROM LINK.MyDatabase.dbo.T_B;
lỗi này là
Xml data type is not supported in distributed queries. Remote object 'DATA02.MyDatabase.dbo.T_B' has xml column(s).
Và kỳ lạ, lệnh này:
SELECT Id FROM LINK.MyDatabase.dbo.T_B;
cũng cung cấp cho các lỗi tương tự, mặc dù tôi không SELECT
ing cột xml! Điều gì đang xảy ra?
Bạn cũng có thể tạo thủ tục được lưu trữ trên DATA02 và gọi thủ tục được lưu trữ từ xa thay vì cố chạy truy vấn từ xa. –
khi tôi tạo chế độ xem trên DB cục bộ, từ id chọn của bảng DB từ xa, tôi nhận được cùng một lỗi ... SQL SERVER 2008 R2 tại đây – RMiranda
@RMiranda chế độ xem phải được tạo trên DB * từ xa, sau đó từ DB địa phương, bạn sẽ có thể truy vấn xem đó thông qua liên kết. – AakashM