這是一篇介紹本軟體使用的文章,軟體結構介紹篇:http://dragonpro.cnblogs.com/archive/2006/04/09/370889.html
在我看來Oracle和SQLServer資料庫之間如果要複製資料和結構,好像還是個麻煩事,當然肯定會有相似或更好的工具,但由於我天生懶惰不想去找,索性自己寫了個工具,可以在SQLServer和Oracle之間進行任意組合的資料轉換。目前這個工具建立在Microsoft Enterprise Library之上的,屏蔽了不同資料庫之間的資料操作,使得在建立這個工具的時候只需要考慮業務問題,也算是DAAB模組的小小執行個體吧。
軟體:
【配置】:
在使用前需要先配置兩個.config檔案,分別是DataConfiguration.config和appsettings.config這兩個檔案的作用分別是設定資料庫串連和欄位對應關係。
DataConfiguration.config:
此配置即是用Entlib模組產生的,相信熟悉DAAB模組的朋友能很容易的配置成功,裡面使用了leftDatabase和rightDatabase的概念,也就是對應中的左資料庫和右資料庫了,在此需要分別配置左和右資料庫,比如左資料庫可以是SQLServer的而右資料庫可以是Oracle的,當然也可以反之,還可以都是相同類型的資料庫,本執行個體就是串連的SQLServer預設的Northwind資料庫,在啟動軟體之前記得建立一個空的名為Northwind2的資料庫作為測試的目的資料庫。如果不熟悉本配置的可以參考Entlib的相關說明。
appsettings.config:
此設定檔為資料庫欄位的映射關係,比如SQLServer中的varchar映射為Oracle中的varchar2,這些在設定檔裡都有說明,一般都能看懂。
【操作】:
配置完成後就可以運行程式了(當然您也可以使用我的預設配置直接運行,只是在運行之前需要建立我配置的預設的Northwind2這樣的空資料庫作為目的資料庫)。軟體介面如所示:
- 首先點擊上部的【串連資料庫】按鈕,在此時程式自動根據配置串連左和右資料庫,資料庫裡的相應表會列在下面的左右列表筐裡。下拉筐裡會顯示資料庫連接字串,防止導資料的時候不確定或忘記了配置情況。
- 如果我想從左資料庫匯入右資料庫,選擇左列表筐裡的相應表名,注意一定要在對應的表名前面打上對勾程式才會認為要導此表。
- 勾選右下腳的匯入選項
- 點擊向右的箭頭,程式確定提示後就開始導資料了,同時在下面的狀態提示可以很直觀的看出當前置入進度和匯入的條數,以及日誌情況等等。
- 匯入完成後程式提示,結束運行
【說明】:
使用本程式我成功從上百個表的SQLServer資料庫中匯入到Oracle資料庫中。
本程式還不是很完美,比如在SQLServer匯入到SQLServer資料庫中時,不能建立主鍵索引,只能建立一般索引,考慮到一般使用此工具都是為了異構資料庫的資料交換,所以也就沒深入下去了。
程式完全開源,並且沒有版本限制,大家可以任意拷貝和使用。
【點擊下載】
【我的其他開源項目】