[發明專利]一種數據庫sql查詢語句自動生成的裝置有效
| 申請號: | 201810087204.1 | 申請日: | 2018-01-30 |
| 公開(公告)號: | CN108388589B | 公開(公告)日: | 2022-09-16 |
| 發明(設計)人: | 吳游穎;林蔭峰;蔡世平;方超 | 申請(專利權)人: | 福建星瑞格軟件有限公司 |
| 主分類號: | G06F16/242 | 分類號: | G06F16/242;G06F11/36 |
| 代理公司: | 福州市鼓樓區京華專利事務所(普通合伙) 35212 | 代理人: | 王美花 |
| 地址: | 350000 福建省福州市鼓樓*** | 國省代碼: | 福建;35 |
| 權利要求書: | 查看更多 | 說明書: | 查看更多 |
| 摘要: | |||
| 搜索關鍵詞: | 一種 數據庫 sql 查詢 語句 自動 生成 裝置 | ||
本發明提供一種數據庫sql查詢語句自動生成的裝置,包括表和函數處理模塊,用于從數據庫中獲取要查詢的表的表結構信息以及所有支持的內置函數的函數信息,對表結構信息和函數信息進行類型匹配,且將類型相同的表結構信息和函數信息進行保存;query總生成模塊,用于利用隨機算法從保存的表結構信息和函數信息中隨機選取列和函數生成各需要的查詢語句,且將各需要的查詢語句嵌套拼接成一條完整的sql查詢語句;可執行文本生成模塊,用于將完整的sql查詢語句輸出并生成一個可執行腳本文件,且在數據庫中執行生成的可執行腳本文件。通過本發明裝置可實現批量的sql查詢語句自動生成,可極大的提高sql可執行腳本的制造效率,并降低人力成本。
技術領域
本發明涉及數據庫領域,特別涉及一數據庫sql查詢語句自動生成的裝置。
背景技術
數據庫(Database)是按照數據結構來組織、存儲和管理數據的倉庫,它產生于距今六十多年前,隨著信息技術和市場的發展,特別是二十世紀九十年代以后,數據管理已不再僅僅是存儲和管理數據,且已轉變成用戶所需要的各種數據管理的方式。
近幾年來,隨著大數據的發展,數據庫的類型變得越來越多,sql語法和使用方法也不同,對功能和性能的要求也越來越高,因此,對數據庫進行功能和性能測試是必不可少的一個環節。現有技術在進行數據庫功能和性能的測試時,很多還是需要由開發者和測試者自己編寫sql查詢語句進行測試,而采用人工編寫不僅無法包含所有的sql查詢語句和case,而且測試效率極低,還很容易出現語法錯誤,根本無法滿足對大數據的測試需求。當然,現有技術中也存在有一些sql查詢語句自動生成工具,但是,現有的sql查詢語句自動生成工具其所生成的sql語句都只有簡單的主查詢語句,簡單的sql語句是無法包含所有的sql查詢函數和OLAP語句的,因此,也很容易造成測試case的遺漏。
發明內容
本發明要解決的技術問題,在于提供一種數據庫sql查詢語句自動生成的裝置,可實現批量的sql查詢語句自動生成,可極大的提高sql可執行腳本的制造效率,并降低人力成本。
本發明是這樣實現的:一種數據庫sql查詢語句自動生成的裝置,所述裝置包括表和函數處理模塊、query總生成模塊以及可執行文本生成模塊;
所述表和函數處理模塊,用于從數據庫中獲取要查詢的表的表結構信息以及所有支持的內置函數的函數信息,對表結構信息和函數信息進行類型匹配,且將類型相同的表結構信息和函數信息進行保存;
所述query總生成模塊,用于利用隨機算法從保存的表結構信息和函數信息中隨機選取列和函數生成各需要的查詢語句,且將各需要的查詢語句嵌套拼接成一條完整的sql查詢語句;
所述可執行文本生成模塊,用于將完整的sql查詢語句輸出并生成一個可執行腳本文件,且在數據庫中執行生成的可執行腳本文件。
進一步地,在所述表和函數處理模塊中,所述從數據庫中獲取要查詢的表的表結構信息以及所有支持的內置函數的函數信息具體為:
從數據庫中獲取要查詢的表的列名以及表中各個列的類型信息,且將獲取的表結構信息編輯成第一文本文件;從數據庫中獲取所有支持的內置函數的函數名稱、函數返回值類型、函數包含的參數個數以及各個參數的類型信息,且將獲取的函數信息編輯成第二文本文件;所述所有支持的內置函數包括操作符、聚合函數、OLTP函數或者OLAP函數。
進一步地,所述對表結構信息和函數信息進行類型匹配,且將類型相同的表結構信息和函數信息進行保存具體為:
該專利技術資料僅供研究查看技術是否侵權等信息,商用須獲得專利權人授權。該專利全部權利屬于福建星瑞格軟件有限公司,未經福建星瑞格軟件有限公司許可,擅自商用是侵權行為。如果您想購買此專利、獲得商業授權和技術合作,請聯系【客服】
本文鏈接:http://www.szxzyx.cn/pat/books/201810087204.1/2.html,轉載請聲明來源鉆瓜專利網。





