本發明專利技術涉及一種程序編譯實現數據庫打印的方法,具體包括以下步驟:步驟1:預編譯操作數據庫程序,將操作數據庫程序編譯生成C語言文件;步驟2:將前一步驟中生成的C語言文件中追加結構化查詢打印函數,組成新的C語言文件;步驟3:將包含結構化查詢打印函數的C語言文件編譯生成對象文件,然后將對象文件鏈接成可執行文件。本發明專利技術所述方法可使程序中涉及到增刪改查數據庫的地方,都可以記錄到程序日志中,極大便利調試PROC程序和定位PROC程序中出現的問題,減少追蹤SQL操作日志的工作量。
【技術實現步驟摘要】
本專利技術涉及,屬于IT
技術介紹
PROC程序指的是C語言中嵌入SQL語言(結構化查詢語言structuredquerylanguage;SQL—種對關系數據庫中的數據進行定義和操作的句法,為大多數關系數據庫管理系統所支持的工業標準),既能擁有C語言完備的過程處理能力,又能使用SQL語言方便的操作數據庫,本方法中的操作系統是UNIX/LINUX系統(UNIX,是 一個強大的多用戶、多任務操作系統,支持多種處理器架構,按照操作系統的分類,屬于分時操作系統;Linux是一種自由和開放源碼的類Unix操作系統,存在著許多不同的Linux版本,但它們都使用了Linux內核。Linux可安裝在各種計算機硬件設備中,比如手機、平板電腦、路由器、視頻游戲控制臺、臺式計算機、大型機和超級計算機),數據庫是ORACLE數據庫。PROC程序編譯成.C文件使用的是ORACLE自帶的PROC編譯器。從一個PROC程序最終編譯鏈接成一個可執行程序,過程如圖I所示PROC文件------>PR0C標準編譯生成的.C文件------>.O文件------> 可執行文件。PROC程序大部分操作都在于對數據庫表的增刪改查操作。但通常情況下,在程序開發階段的調試過程中,或者是程序上線以后報錯問題的處理過程中,會經常性查看程序中的SQL語句是否執行正確。按一般的處理方式,需要逐行代碼的檢查,記錄宿主變量值,然后手工的把變量值代入程序中的語句,如此操作既繁雜又難免不準確。. c文件c語言源文件;. ο文件是對象文件,里面包含的內容就是01這樣的機器可執行的執令,當你程序要執行時還需要進行鏈接(link).就是把多個.ο文件鏈成一個可執行文件。Oracle (Oracle Database,又名Oracle RDBMS)是甲骨文公司的一款關系數據庫管理系統。ORACLE數據庫系統是美國ORACLE公司(甲骨文)提供的以分布式數據庫為核心的一組軟件產品,是目前最流行的客戶/服務器(CLIENT/SERVER)或B/S體系結構的數據庫之一。
技術實現思路
本專利技術所要解決的技術問題是,針對現有技術繁雜又不準確的缺點,提供一種凡程序中涉及到增刪改查數據庫的地方,都可以記錄到程序日志中的將PROC程序轉換為可執行程序的方法。本專利技術解決上述技術問題的技術方案如下,具體包括以下步驟步驟I :預編譯操作數據庫程序,將操作數據庫程序編譯生成C語言文件;步驟2 :將前一步驟中生成的C語言文件中追加結構化查詢打印函數,組成新的C語目文件;步驟3 :將包含結構化查詢打印函數的C語言文件編譯生成對象文件,然后將對象文件鏈接成可執行文件。本專利技術的有益效果是本專利技術所述方法可使程序中涉及到增刪改查數據庫的地方,都可以記錄到程序日志中,極大便利調試PROC程序和定位PROC程序中出現的問題,減少追蹤SQL操作日志的工作量。在上述技術方案的基礎上,本專利技術還可以做如下改進。進一步,所述步驟2具體包括以下步驟步驟2. I :修改makefile自動化編譯文件,將具有打印結構化查詢功能的封裝函數,添加到標準C語言文件中;步驟2. 2 :修改makefile自動化編譯文件,將調用數據庫變量信息數據庫變量信息函數的地方,替換成具有打印結構化查詢功能的封裝函數。其中數據庫變量信息函數采用sqlcxt函數,封裝函數采用mysqlcxt函數。makefile自動化編譯文件文件一個工程中的源文件不計數,其按類型、功能、模塊分別放在若干個目錄中,makefile自動化編譯文件定義了一系列的規則來指定,哪些文件需要先編譯,哪些文件需要后編譯,哪些文件需要重新編譯,甚至于進行更復雜的功能操作,因為makefile自動化編譯文件就像一個Shell腳本一樣,其中也可以執行操作系統的命令。進一步,所述步驟3具體包括以下步驟步驟3. I :將追加打印結構化查詢功能的C語言文件編譯生成對象文件;步驟3. 2 :將步驟3. I中的對象文件鏈接成可執行文件。所述對象文件為.O文件。封裝函數mysqlcxt的開發如下權利要求1.,其特征在于,具體包括以下步驟 步驟I:預編譯操作數據庫程序,將操作數據庫程序編譯生成C語言文件; 步驟2 :將前一步驟中生成的C語言文件中追加結構化查詢打印函數,組成新的C語言文件; 步驟3 :將包含結構化查詢打印函數的C語言文件編譯生成對象文件,然后將對象文件鏈接成可執行文件。2.根據權利要求I所述,其特征在于,所述步驟2具體包括以下步驟 步驟2. I :修改C語言文件中的makefile自動化編譯文件,將具有打印結構化查詢功能的封裝函數,添加到標準C語言文件中; 步驟2. 2 :修改makefile自動化編譯文件,將調用數據庫變量信息函數函數的地方,替換成具有打印結構化查詢功能的封裝函數。3.根據權利要求2所述,其特征在于,所述步驟3具體包括以下步驟 步驟3. I :將追加打印結構化查詢功能的C語言文件編譯生成對象文件; 步驟3. 2 :將步驟3. I中的對象文件鏈接成可執行文件。全文摘要本專利技術涉及,具體包括以下步驟步驟1預編譯操作數據庫程序,將操作數據庫程序編譯生成C語言文件;步驟2將前一步驟中生成的C語言文件中追加結構化查詢打印函數,組成新的C語言文件;步驟3將包含結構化查詢打印函數的C語言文件編譯生成對象文件,然后將對象文件鏈接成可執行文件。本專利技術所述方法可使程序中涉及到增刪改查數據庫的地方,都可以記錄到程序日志中,極大便利調試PROC程序和定位PROC程序中出現的問題,減少追蹤SQL操作日志的工作量。文檔編號G06F9/45GK102968329SQ20121047294公開日2013年3月13日 申請日期2012年11月20日 優先權日2012年11月20日專利技術者尹永興, 鹿林安, 檀敬庭 申請人:北京思特奇信息技術股份有限公司本文檔來自技高網...
【技術保護點】
一種程序編譯實現數據庫打印的方法,其特征在于,具體包括以下步驟:步驟1:預編譯操作數據庫程序,將操作數據庫程序編譯生成C語言文件;步驟2:將前一步驟中生成的C語言文件中追加結構化查詢打印函數,組成新的C語言文件;步驟3:將包含結構化查詢打印函數的C語言文件編譯生成對象文件,然后將對象文件鏈接成可執行文件。
【技術特征摘要】
【專利技術屬性】
技術研發人員:尹永興,鹿林安,檀敬庭,
申請(專利權)人:北京思特奇信息技術股份有限公司,
類型:發明
國別省市:
還沒有人留言評論。發表了對其他瀏覽者有用的留言會獲得科技券。