【技術實現步驟摘要】
本專利技術屬于異構數據庫平臺遷移技術,特別是。
技術介紹
隨著人們信息化意識的逐步提高,越來越多的企業、組織和個人采用信息系統對其業務、數據和流程進行管理和控制。在信息系統的構建過程中,一直沿用著“應用程序+數據庫平臺”的模式,其中數據庫平臺扮演著極為關鍵和核心的角色,幾乎所有的應用程序都依賴數據庫平臺數據的獲取、傳輸、組織、存儲、查詢和展示來構建。數據庫平臺的成功應用與否,關系到整個信息系統的成敗。信息系統的廣泛應用,在提升工作效率和社會生產力的同時,也帶來了相應的問題隨著時間的推移,舊的數據庫平臺越來越不能適應應用系統日益增長的性能和安全性的苛刻要求,大量信息系統迫切需要遷移到安全性更高、數據處理能力更強的數據庫平臺,具體表現在以下三個方面一、安全性。目前在我國,電信、銀行、電力等關系到國計民生的重大領域和國防軍事等核心機密系統的大量應用都基于ORACLE數據庫平臺來開發,由于ORACLE數據庫平臺的核心技術和版權被國外商業公司所掌握,再加上ORACLE數據庫平臺的不安全性,使得采用國產數據庫平臺替代國外數據庫平臺的呼聲越來越強烈。國內諸多研究機構和院校也構建了數個與ORACLE數據庫平臺兼容性較強的數據庫平臺,其性能與ORACLE數據庫平臺能達到同樣數量級,這就為ORACLE數據庫平臺的可替換性提供了保證;二、性能。在一些信息化實施較早的行業與組織,其數據庫平臺多采用老式數據庫平臺,例如Access, Foxpro等,或是新式數據庫平臺的較低版本。這些老式和低版本的數據庫平臺在數據量和用戶量不大的場景下,尚能發揮較好作用,但在應用程序數據規??焖偬?span style='display:none'>升的今天,數據規模已由原來的MB級、GB級提升到目前的TB級、PB級,原有的數據庫平臺已無法負荷龐大的數據量和用戶量,因此迫切需要升級到處理能力更強、處理速度更快的數據庫平臺;三、平臺的融合。隨著信息化的逐步推進,為了使信息系統發揮更大的效用,多個獨立的信息系統之間,同一信息系統的不同子系統之間,都亟待數據交換和數據融合,原有的多個獨立數據庫平臺需要融合成一個統一的數據庫平臺。但是,異構數據庫平臺遷移的昂貴代價卻成為信息系統升級和融合的阻礙一方面是數據遷移的高代價。異構數據庫平臺之間數據類型的存在差異,需要手動定制各個異構數據庫平臺之間的數據類型映射。不過幸運的是,各個商用數據庫平臺提供了相應的導入導出工具輔助配合數據庫平臺的遷移,最大程度上減輕了數據遷移的代價;另一方面是應用程序遷移的高代價。數據庫平臺的變更,導致應用程序需要進行相應的更改,否則應用程序無法正常工作,這部分的代價十分高昂,某些場合甚至到了無法容忍的程度,體現在(I)需要耗費大量的人力、物力和財力修改應用程序的源代碼,隨著應用程序業務系統規模的增大,這部分成本甚至會以指數級增長,在源代碼無人維護或者開發方更換的情況下尤其明顯;(2)大量應用程序甚至無法獲得源代碼,使得對應用程序的修改根本無法進行。另一方面,隨著數據庫技術和數據訪問技術的發展,數據訪問模型也朝著統一的趨勢發展。在Windows平臺下,微軟先后提出了 ODBC、OLE DB、ADO等多個通用數據訪問模型,這些模型封裝了數據庫平臺的異構性,使得數據訪問方式變得統一和通用。現在,AD0+0LE DB已經成為Windows平臺下數據庫訪問方式的事實標準,如附圖2所示。
技術實現思路
本專利技術的目的在于提供,該方法適用所有Windows平臺下使用AD0+0LE DB方式訪問數據庫平臺的應用程序,具有很好的普遍性和適用性。實現本專利技術目的的技術解決方案為,該方法的體系結構包括服務器端和客戶端,所述的服務器端為兩個兼容的異構數據庫平臺,分別叫做原數據庫平臺和新數據庫平臺,數據庫平臺兼容性包括數據類型和SQL語句;所述的客戶端由應用程序和應用程序加載器組成,該應用程序使用“AD0+0LE DB”的方式訪問數據庫平臺,使用“AD0+0LEDB”連接字符串連接數據庫平臺;應用程序加載器啟動應用程序,在內存中搜索并替換應用程序的數據庫連接字符串,并關閉應用程序的運行。本專利技術與現有技術相比,其顯著優點(1)由于本專利技術無需獲得應用程序的源代碼,也無需修改應用程序的源代碼,應用程序無需進行任何修改,即可在兩個數據庫平臺之間無縫遷移與切換,大大減少了應用程序遷移的工作量,節省了人力、物力和財力。(2)適用的數據庫平臺為任意兩個兼容的數據庫平臺,具有很好的普遍性和適用性。(3)適用的應用程序運行在Windows操作系統下使用AD0+0LE DB方式訪問數據庫平臺;適用的數據庫平臺為任意兩個兼容的異構數據庫平臺,數據庫平臺的兼容性包括數據類型、SQL語句等。下面結合附圖對本專利技術作進一步詳細描述。附圖說明圖1是本專利技術的整體結構圖。圖2是微軟通用數據訪問方式示意圖。圖3是實施本專利技術方法前的函數調用流程圖。圖4是實施本專利技術方法后的函數調用流程圖。具體實施例方式應用程序與數據庫平臺交互操作分為兩類一是應用程序與數據庫平臺建立數據庫連接;二是應用程序對數據庫平臺執行數據查詢、數據維護等數據庫操作。如果要達到數據庫平臺遷移后不修改應用程序,而應用程序仍然可以正確執行的目標,那么就必須保證應用程序與數據庫平臺的兩類操作都正確執行。對于第二類操作,由于AD0+0LE DB提供了標準化的操作方式,屏蔽了數據庫平臺的實現細節,因此使用AD0+0LE DB的應用程序對所有數據庫平臺的調用方式都是一樣的,異構數據庫平臺的兼容性(數據類型、SQL語句)由數據庫平臺廠商提供。針對第一類操作,由于AD0+0LE DB使用數據庫連接字符串對數據庫平臺進行連接,因此,只需修改應用程序中所有的數據庫連接字符串,由指向遷移前的數據庫平臺改為指向遷移后的數據庫平臺。本專利技術異構數據庫平臺下應用程序零修改遷移的方法的體系結構包括服務器端和客戶端。其中服務器端為兩個兼容的異構數據庫平臺,分別叫做原數據庫平臺(遷移前的數據庫平臺)和新數據庫平臺(遷移后的數據庫平臺),這兩個數據庫平臺可以運行于同一臺主機,也可運行于不同的主機。如前所述,兩個異構數據庫平臺的兼容性由數據庫平臺廠商保證,包括數據類型和SQL語句的兼容性??蛻舳擞蓱贸绦蚝蛻贸绦蚣虞d器組成??蛻舳说牟僮飨到y平臺為Microsoft Windows系列。原數據庫平臺的內容遷移到新數據庫平臺的技術不屬于本專利技術的要解決的技術問題。數據庫平臺本身的內容遷移不屬于本專利技術的內容。在原數據庫平臺的內容未遷移到新數據庫平臺之前,應用程序的執行步驟如下步驟101,啟動應用程序;步驟102,應用程序中的連接字符串指向原數據庫平臺,應用程序連接上原數據庫平臺;步驟103,應用程序對原數據庫平臺執行數據查詢、數據維護等各種數據庫操作;步驟104,退出應用程序,應用程序斷開對原數據庫平臺的連接。本專利技術的核心部分為應用程序加載器。應用程序加載器為一個Windows程序,與應用程序運行在同一臺主機之上,其功能有I,啟動應用程序;2,在內存中搜索并替換應用程序的數據庫連接字符串;3,關閉應用程序的運行。在原數據庫平臺的內容遷移到新數據庫平臺之后,應用程序執行步驟如下步驟201,啟動應用程序加載器;步驟202,在應用程序加載器中選擇并啟動應用程序;步驟203,應用程序本文檔來自技高網...
【技術保護點】
一種異構數據庫平臺下應用程序零修改遷移的方法,其特征在于:該方法的體系結構包括服務器端和客戶端,所述的服務器端為兩個兼容的異構數據庫平臺,分別叫做原數據庫平臺和新數據庫平臺,數據庫平臺兼容性包括數據類型和SQL語句;所述的客戶端由應用程序和應用程序加載器組成,該應用程序使用“ADO+OLE?DB”的方式訪問數據庫平臺,使用“ADO+OLE?DB”連接字符串連接數據庫平臺;應用程序加載器啟動應用程序,在內存中搜索并替換應用程序的數據庫連接字符串,并關閉應用程序的運行。
【技術特征摘要】
1.一種異構數據庫平臺下應用程序零修改遷移的方法,其特征在于該方法的體系結構包括服務器端和客戶端,所述的服務器端為兩個兼容的異構數據庫平臺,分別叫做原數據庫平臺和新數據庫平臺,數據庫平臺兼容性包括數據類型和SQL語句;所述的客戶端由應用程序和應用程序加載器組成,該應用程序使用“ADO+OLE DB”的方式訪問數據庫平臺,使用“ADO+OLE DB”連接字符串連接數據庫平臺;應用程序加載器啟動應用程序,在內存中搜索并替換應用程序的數據庫連接字符串,并關閉應用程序的運行。2.根據權利要求1所述的異構數據庫平臺下應用程序零修改遷移的方法,其特征在于客戶端的操作系統平臺為Microsoft Windows系列。3.根據權利要求1所述的異構數據庫平臺下應用程序零修改遷移的方法,其特征在于在原數據庫平臺的內容未遷移到新數據庫平臺之前,客戶端的應用程序執行步驟如下 步驟101,啟動應用程序; 步驟102,應用程序中的連接字符串指向原數據庫平臺,應用程序連接上原數據庫平臺; 步驟103,應用程序對原數據庫平臺執行數據查詢、數據維護等各種數據庫操作; 步驟104,退出應用程序,應用程序斷開對原數據庫平臺的連接。4.根據權利要求1所述的異構數據庫平臺下應用程序零修改遷移的方法,其特征在于在原數據庫平臺的內容遷移到新數據庫平臺之后,客戶端的應用程序執行步驟如下 步驟201,啟動應用程序加載器; 步驟202,在應用程序加載器中選擇并啟動應用程序; 步驟203,應用程序加載器將應用程序中的連接字符串指向新數據庫平臺,應用程序連接上新數據庫平臺; 步驟204,應用程序對新數據庫平臺執行數據查詢、數據維護等各種數據庫操作; 步驟205,退出應用程序,應用程序斷開對新數據庫平臺的連接; 步驟206,退出應用程序加載器。5.根據權利要求1所述的異構數據庫平臺下應用程序零修改遷移的方法,其特征在于在原數據庫平臺的內容遷移到新數據庫平臺之后,客戶端的應...
【專利技術屬性】
技術研發人員:張濤,袁志堅,趙敏,陳融,王金雙,陳萍,于晗,
申請(專利權)人:中國人民解放軍理工大學,
類型:發明
國別省市:
還沒有人留言評論。發表了對其他瀏覽者有用的留言會獲得科技券。