2014-03-24 32 views
1

我在VS2012中設置了2個服務器連接,DEV & PROD。這2個連接是DB2/AS400。有沒有簡單的方法來從DEV查詢,然後運行一個INSERT到PROD?跨多臺服務器查詢的簡單方法?

我知道我可以創建一個程序來查詢DEV端,將結果存儲在一個DataGrid或ListView控件中,然後循環並插入到PROD中,但我想知道是否有一種簡單的方法可能通過SQL本身?

回答

5

DB2/400和VS2012沒有簡單的方法。使用VS2012,您必須將一臺服務器的數據(如您所述)存儲在一個對象中,並將其推送到另一臺服務器。

如果您正在運行v7r1技術刷新4,則可以利用遠程數據庫(關係數據庫目錄條目),然後執行insert into ... select from將數據從一個系統複製到另一個系統。此功能在此處描述:http://www.itjungle.com/fhg/fhg072512-story02.html和技術更新4的詳細信息在此處:http://db2fori.blogspot.com/2012/04/db2-wiki-refresher.html

雖然未經測試,但我建議 - 如果您安裝了SQL Server,則可以創建2個鏈接的服務器 - 一個用於Dev,一個用於Prod。然後,您可能能夠執行從SQL Server引用dev和prod的插入...查詢。

3

這取決於你所說的「簡單」。如果你有DB2 Connect Unlimited Edition for System i,它可以是「簡單」的。 (DB2 Connect for i有效地包含「聯合」功能。)

如果要編碼到SQL CLI APIs並使用服務器模式,它可能與ODBC「幾乎一樣簡單」(假設您以前使用過它並建立了一個程序庫;然後需要一些思考和練習,看看如何才能爲你想要的工作)。

您始終可以將本機I/O與遠程SQL結合使用。如果你有足夠少的行,你也可以連接到DEV並將它們全部放入一個數組中。然後斷開並連接到PROD,並從數組中插入block-INSERT。