Trong SQL Server 2008, bạn có thể viết kịch bản cho bảng Goo.Goo của mình trong SQL Server Mgmt studio và yêu cầu nó cũng tạo một tập lệnh để chèn tất cả dữ liệu bằng cách sử dụng T-SQL INSERT
các câu lệnh. Đi tới Trình khám phá đối tượng, nhấp chuột phải vào cơ sở dữ liệu, chọn "Nhiệm vụ> Tạo tập lệnh", chọn bảng bạn muốn tạo câu lệnh chèn dữ liệu và đảm bảo sử dụng tùy chọn này tại đây:
Sau đó, chúng có thể được chạy trên máy chủ khác để chèn nội dung bảng. Tuy nhiên, trong trường hợp này, bạn phải tự xử lý việc chèn các hàng hiện có.
Mặt khác, nếu cả hai máy chủ nằm trên cùng một mạng, bạn chỉ có thể sử dụng tính năng "Máy chủ được liên kết" và liên kết máy chủ nguồn với máy chủ đích rồi sử dụng câu lệnh SQL Server 2008 MERGE để nhập tất cả dữ liệu từ nguồn. bảng của srever vào máy chủ đích.
Trong Trình khám phá đối tượng, đi tới "Đối tượng máy chủ", sau đó "Máy chủ được liên kết", nhấp chuột phải và "Thêm máy chủ được liên kết mới" để thiết lập kết nối giữa hai máy chủ:
Sau khi các máy chủ được liên kết, một câu lệnh MERGE đơn giản (mới trong SQL Server 2008) sẽ cho phép bạn hợp nhất dữ liệu từ hai bảng đó:
MERGE
INTO Goo.Goo as Target
USING Foo.Foo.dbo.Foo as Source
ON Source.ID = Target.ID
WHEN NOT MATCHED THEN
INSERT (field1, field2, field3)
VALUES (source.field1, source.field2, source.field3)
WHEN MATCHED THEN
-- do nothing
;
Đọc thêm về tuyên bố MERGE mới tại đây:
- http://www.builderau.com.au/program/sqlserver/soa/Using-SQL-Server-2008-s-MERGE-statement/0,339028455,339283059,00.htm
- http://www.sqlservercentral.com/articles/Advanced+Querying / 3122 /
hoặc trong SQL Server 2008 Sách trực tuyến.
Marc