<rt id="bn8ez"></rt>
<label id="bn8ez"></label>

  • <span id="bn8ez"></span>

    <label id="bn8ez"><meter id="bn8ez"></meter></label>

    spark的自留地(ofbiz/eclipse rcp/shark/opentaps)

      BlogJava :: 首頁 :: 聯系 :: 聚合  :: 管理
      54 Posts :: 0 Stories :: 112 Comments :: 0 Trackbacks

    我的產品是被要求運行在多種常見數據庫平臺下(mysql/sqlserver/oracle)下,在開發中需要嚴格遵循相關的規范以確保能夠實現跨數據庫類型的要求.(相關的要點在我的"你的系統真的因為使用hibernate就可以適應各種數據庫嗎? "一文中已提及).在初始開發時有一個問題是比較困擾我的團隊的,我們開發的時候必定是基于某個特定的數據庫開發的(比如mysql),但在測試階段是需要在不同的數據庫平臺下進行兼容性測試,由于開發過程中數據庫結構與種子數據變化非常快,全部編寫sql方式非常浪費時間,如何能找到一種高效的數據庫相互遷移的工具,是我們當時所急需的解決方案.

    其實也沒啥選擇,比較常用的數據庫遷移工具就是Sqlserver自帶的DTS,這玩意在sql server數據庫間進行數據導入/導出時倒確實比較好用,在不同數據庫類型進行操作時,就會出多多問題,如:類型轉換需手工指定/導出字段有雙引號...

    所以最后的選擇就是自己做一個DTS好啦,思路如下:
    1、選擇源數據庫連接與目標數據庫連接
    2、根據源數據庫遍歷所有數據庫對象(表),做為基準
    3、刪除目標數據庫所有表外鍵及索引、刪除所有種字數據(根據約定)數據、字段均允許null
    4、遍歷源數據庫中所有表,為目標數據庫修改結構(如增刪字段,字段改類型、大小)
    5、將源數據庫中種子數據表數據拷貝至目標數據庫中
    6、根據源數據庫為目標數據庫中的表創建外鍵及索引、設置是否允許為null
    7、搞掂!

    完工后總代碼量不過兩千行(因為需考慮不同數據庫的SQL Dialet,否則應該更少)

    用戶界面基于Eclipse RCP技術開發,使用JFace Wizard向導(如果不是想用向導的話,你可以用SWT來做)對話框獲得源數據庫與目標數據庫的連接內容,并在用戶點擊完成按鈕后,在進度條中提示用戶執行情況.用了這個玩意以后,測試同事的數據庫兼容性測試就再也不用來煩我們開發組啦!真是爽呀!當然很多喜歡折騰的客戶(比如突然在哪里聽說oracle是大型數據庫,非讓你幫他弄過去)此類朝三暮四也就自然不在話下啦!


    數據庫遷移向導屏幕一

    數據庫遷移向導屏幕二

    數據庫遷移向導屏幕三

    本人原創文章,歡迎轉載,轉載請注明出處!
    posted on 2008-10-27 14:22 shanghai_spark 閱讀(1470) 評論(3)  編輯  收藏 所屬分類: eclipse rcp

    Feedback

    # re: DTS不好用?拿Eclipse RCP做個自己的數據庫遷移工具 2008-10-28 09:52 于翔
    呵呵 不錯!  回復  更多評論
      

    # re: DTS不好用?拿Eclipse RCP做個自己的數據庫遷移工具 2008-10-28 22:57 duxu
    代碼呢  回復  更多評論
      

    # re: DTS不好用?拿Eclipse RCP做個自己的數據庫遷移工具 2009-04-15 18:40 fykenny
    我是基于WIZARD寫的,但是,遇到了問題,就是要有進度條,而且插數據要后臺非UI線程,而且,操作什么表要在向導的最后那個頁面中的TEXTBOX中動態顯示出來? 遇到了UI線程與非UI線程的問題

    怎么辦?

      回復  更多評論
      

    主站蜘蛛池模板: 57pao一国产成视频永久免费| 丰满少妇作爱视频免费观看| 在线看片免费人成视久网| 亚洲女初尝黑人巨高清| 西西人体免费视频| 亚洲精品少妇30p| 久久国产乱子免费精品| 91精品国产亚洲爽啪在线观看| 国产在线观看免费视频软件| 国产V亚洲V天堂A无码| a级在线免费观看| 亚洲国产精品久久久久| 99精品免费观看| 亚洲人成在线播放| 好大好深好猛好爽视频免费| 国产精品亚洲专区无码WEB| 亚洲AV中文无码乱人伦在线视色| 九九综合VA免费看| 亚洲AV无码专区国产乱码4SE| 午夜理伦剧场免费| 亚洲av片不卡无码久久| 免费看大黄高清网站视频在线| 久久久久久久久无码精品亚洲日韩| 亚洲国产精品碰碰| 国产免费AV片在线观看| 亚洲国产中文在线视频| 日韩精品视频免费观看| av午夜福利一片免费看久久| 亚洲午夜精品久久久久久人妖| 成人性生活免费视频| 日本高清免费中文在线看| 亚洲av无码无在线观看红杏| 18禁免费无码无遮挡不卡网站| 看全免费的一级毛片| 婷婷精品国产亚洲AV麻豆不片 | 国产成人精品无码免费看| 亚洲黄色三级视频| 国产又粗又长又硬免费视频 | 日本免费网站视频www区| 亚洲爆乳成av人在线视菜奈实| 狠狠综合久久综合88亚洲|