[發明專利]一種采用SQL標記替換法實現數據自取的方法及系統在審
| 申請號: | 201310410437.8 | 申請日: | 2013-09-10 |
| 公開(公告)號: | CN103473306A | 公開(公告)日: | 2013-12-25 |
| 發明(設計)人: | 胡照東 | 申請(專利權)人: | 北京思特奇信息技術股份有限公司 |
| 主分類號: | G06F17/30 | 分類號: | G06F17/30 |
| 代理公司: | 北京輕創知識產權代理有限公司 11212 | 代理人: | 楊立 |
| 地址: | 100086 北京市海淀*** | 國省代碼: | 北京;11 |
| 權利要求書: | 查看更多 | 說明書: | 查看更多 |
| 摘要: | |||
| 搜索關鍵詞: | 一種 采用 sql 標記 替換 實現 數據 自取 方法 系統 | ||
技術領域
本發明涉及計算機業務應用技術領域,特別是涉及一種采用SQL(Structured?Query?Language,結構化查詢語言)標記替換法實現數據自取的方法及系統。
背景技術
SQL是結構化查詢語言,其為一種數據庫查詢和程序設計語言,用于存取數據以查詢、更新和管理數據庫系統。
常規的后臺數據庫數據獲取方式是業務人員提交需求,委托技術人員通過數據庫客戶端進行數據導出,這種方式對于不熟悉SQL的相關人員較為麻煩。因此,現有數據庫系統在保證滿足用戶需求的前提下追求更高的易用性,需要將更多復雜的操作放在后臺程序中來分析處理,這就要求解析程序更加智能。目前很多SQL固化程序只支持簡單的單表SQL查詢語句,不支持或者極少支持部分數據庫函數,且多層嵌套的復雜SQL語句無法解析,對很多不同數據庫的函數也都無法識別。因此,現有SQL獲取后臺數據的方法在很大程度上無法滿足客戶實際生產和工作中需要,其大量使用的復雜SQL語句,并需對這些復雜的SQL語句進行繁瑣的解析,易造成功能短板,從而使后臺數據庫系統形同虛設。本發明的一種采用SQL標記替換法生成取數模板的方法及系統,即是為解決上述問題而提出的。
發明內容
本發明所要解決的技術問題是提供一種采用SQL標記替換法實現數據自取的方法及系統,用于解決現有技術中采用SQL獲取后臺數據存在局限性的問題。
本發明解決上述技術問題的技術方案如下:一種采用SQL標記替換法實現數據自取的方法,包括:
步驟1:對于任意復雜程度的SQL,當其需執行可視化取數時,標記該SQL中需要進行展示的字段和條件;
步驟2:解析標記后的SQL中的可選導出字段和可選導出條件,并根據解析出的數據從指定的數據庫系統表中獲取與字段和條件相對應的元數據信息;
步驟3:基于獲取的元數據信息,生成針對所標記的SQL的取數模板;
步驟4:提取數據時,輸入取數所需的SQL字段及條件,并采用生成的取數模板獲取與取數所需的SQL字段及條件匹配的元數據信息,并用獲取的元數據信息替換取數所需的字段及條件,再基于替換后的字段及條件導出可執行的SQL。
在上述技術方案的基礎上,本發明還可以做如下改進。
進一步,所述步驟2中解析標記后的SQL中的所有可選導出條件具體是指采用正則表達式解析出可選導出條件子語句。
進一步,所述步驟2中獲取元數據信息后將元數據信息保存至相應的應用系統數據庫中。
進一步,所述步驟2中解析標記后的SQL、所述步驟4中輸入SQL字段及條件和所述步驟4中導出SQL時,均需校驗SQL是否合法。
進一步,所述步驟4中在元數據信息替換取數所需的字段及條件的同時,剔除SQL中不需要提取的字段信息及條件信息,用于確保用戶最終僅收到需要的數據信息。
進一步,執行所述步驟4后還包括:在目標數據庫中執行導出的SQL,獲得所需數據,并向用戶輸出所需數據。
基于上述方法,本發明的技術方案還包括一種采用SQL結構化查詢語言標記替換法實現數據自取的系統,其包括標記模塊、解析模塊、模板生成模塊和替換模塊:
所述標記模塊,其用于在任意復雜程度的SQL需執行可視化取數時,標記該SQL中需要進行展示的字段和條件;
所述解析模塊,其連接所述標記模塊,用于解析標記后的SQL中的所有可選導出字段和可選導出條件,并根據解析出的數據從指定的數據庫系統表中獲取與字段和條件相對應的元數據信息;
所述模板生成模塊,其連接所述解析模塊,用于基于獲取的元數據信息生成針對所標記的SQL的取數模板;
所述替換模塊,其連接所述模板生成模塊,用于采用生成的取數模板獲取與輸入的取數所需的SQL字段及條件匹配的元數據信息,并用獲取的元數據信息替換取數所需的字段及條件,再基于替換后的字段及條件導出可執行的SQL。
進一步,所述解析模塊還連接有一個應用數據庫模塊,用于存儲獲取的元數據信息。
進一步,所述標記模塊及所述替換模塊各連接有一個SQL校驗模塊,用于在解析SQL、輸入SQL字段條件和導出SQL時,對SQL進行校驗,以確保SQL合法。
進一步,所述系統還包括一個剔除模塊,其連接所述模板生成模塊及所述替換模塊,用于在元數據信息替換取數所需的字段及條件的同時,剔除SQL中不需要提取的字段信息及條件信息。
該專利技術資料僅供研究查看技術是否侵權等信息,商用須獲得專利權人授權。該專利全部權利屬于北京思特奇信息技術股份有限公司,未經北京思特奇信息技術股份有限公司許可,擅自商用是侵權行為。如果您想購買此專利、獲得商業授權和技術合作,請聯系【客服】
本文鏈接:http://www.szxzyx.cn/pat/books/201310410437.8/2.html,轉載請聲明來源鉆瓜專利網。





