2008-09-17 102 views
2

我有一個特殊的系統在網絡上,我們需要維護一個培訓安裝。該系統使用SQL Server 2000作爲其數據庫引擎,我需要建立一個系統,定期用生產數據庫中的數據刷新培訓數據庫中的數據。如何使用生產數據庫中的數據刷新培訓數據庫?

我想使用SSIS,因爲我們有SQL 2005服務器我可以運行該過程。我有相當一部分SQL經驗,但對於SSIS來說並不多。我一直在試圖用「傳輸數據庫任務」來做到這一點,但沒有多少運氣,因爲它總是會引發錯誤。

如果我們忽略了使用的配置項等,並假裝所有的數據庫名稱等等都是硬編碼的,我有以下幾點: 的單SSIS「傳輸數據庫任務」具有以下屬性:

  • 目的地覆蓋:真
  • 操作:複製
  • 方法:DatabaseOnline

我收到的錯誤是:

Error: The Execute method on the task returned error code 0x80131500 (ERROR : errorCode=-1073548784 description=Executing the query "EXEC dbo.sp_addrole @rolename = N'XXXXX' " failed with the following error: "The role 'XXXXX' already exists in the current database.". Possible failure reasons: Problems with the query, "ResultSet" property not set correctly, parameters not set correctly, or connection not established correctly. helpFile= helpContext=0 idofInterfaceWithError={8BDFE893-E9D8-4D23-9739-DA807BCDC2AC}). The Execute method must succeed, and indicate the result using an "out" parameter.

我敢肯定,這裏有一些明顯的事情發生,但如果任務設置爲覆蓋角色的預存在應該沒有關係?有誰知道我需要做些什麼才能做到這一點?

回答

2

顯然這應該在SQLServer 2005 SP2中修復see here。看起來像你需要確保修補客戶機,如果你正在Visual Studio中運行SSIS包。

+0

感謝馬特 - 我會介紹我的基礎設施人員關於測試SP2。 – Dr8k 2008-09-17 23:16:16