2010-10-05 35 views
10

CẬP NHẬT: Vấn đề là col1 là loại hiereachyid và thậm chí là một công việc không được chọn cho nó.Nhận lỗi khi chèn dữ liệu khi sử dụng Truy vấn máy chủ được liên kết

Hi all,

Tôi nhận được lỗi này -

Đối tượng tiếp xúc với các loại cột CLR không được phép vào các truy vấn phân tán. Vui lòng sử dụng truy vấn chuyển tiếp để truy cập đối tượng từ xa '"RemoteDb". "Dbo". "RemoteTable"'.

tôi có đã thiết lập máy chủ liên kết [RemoteServer.dev.com] .Tôi đã cố gắng để thực hiện một số lượng lớn chèn từ một bảng điều khiển từ xa vào một cái gì đó bảng hiện tại như thế này -

INSERT INTO [CurrentDb].[dbo].[Mytable] 
    (
     col1, 
     col2 
    ) 
SELECT 
    col1,col2 
FROM [RemoteServer.dev.com].[RemoteDb].[dbo].[RemoteTable] 

bất cứ ai có thể vui lòng giúp tôi ra .. cảm ơn.

Trả lời

16

Khi lỗi cho biết, bạn cần một truy vấn chuyển tiếp ở đây vì các kiểu dữ liệu. Hãy thử điều này:

INSERT INTO [CurrentDb].[dbo].[Mytable] 
    (
     col1, 
     col2 
    ) 
    SELECT col1, col2 
     FROM OPENQUERY([RemoteServer.dev.com], 'SELECT col1, col2 FROM [RemoteDb].[dbo].[RemoteTable]') 
+0

Hey cảm ơn vì bạn trả lời .... vấn đề là với kiểu id phân cấp tôi đã có trên một trong những lĩnh vực – Vishal

+0

@Misnomer: Có phải câu trả lời này giải quyết vấn đề của bạn hoặc bạn đã sử dụng kỹ thuật khác? –

+0

Ya Tôi đã sử dụng OpenQuery để chèn dữ liệu cho bảng có cấu trúc phân cấp ... phần còn lại của chúng hoạt động mà không cần openquery .. – Vishal

Các vấn đề liên quan