[發明專利]關系型數據庫查詢方法、裝置、設備及存儲介質有效
| 申請號: | 201811515122.9 | 申請日: | 2018-12-12 |
| 公開(公告)號: | CN109710220B | 公開(公告)日: | 2023-08-22 |
| 發明(設計)人: | 邢方山 | 申請(專利權)人: | 平安科技(深圳)有限公司 |
| 主分類號: | G06F8/20 | 分類號: | G06F8/20;G06F16/28;G06F16/242;G06F16/21 |
| 代理公司: | 深圳市世紀恒程知識產權代理事務所 44287 | 代理人: | 胡海國 |
| 地址: | 518000 廣東省深圳市福田區福*** | 國省代碼: | 廣東;44 |
| 權利要求書: | 查看更多 | 說明書: | 查看更多 |
| 摘要: | |||
| 搜索關鍵詞: | 關系 數據庫 查詢 方法 裝置 設備 存儲 介質 | ||
1.一種關系型數據庫查詢方法,其特征在于,所述關系型數據庫查詢方法包括:
在檢測到當前項目與數據庫連接成功時,調用數據庫管理系統功能來獲取所述數據庫的原始數據結果集;
從所述原始數據結果集中讀取所述數據庫的元數據,基于所述元數據并通過所述數據庫管理系統功能生成元數據模型;
基于所述元數據模型創建構造查詢函數;
調用所述構造查詢函數對所述數據庫進行查詢;
其中,所述在檢測到當前項目與數據庫連接成功時,調用數據庫管理系統功能來獲取所述數據庫的原始數據結果集的步驟,包括:
在檢測到當前項目與數據庫連接成功時,獲取數據讀取器SqlDataReader;
調用所述數據讀取器SqlDataReader來讀取所述數據庫的原始數據結果集,所述原始數據結果集包含不同數據表的行數據;
其中,所述在檢測到當前項目與數據庫連接成功時,獲取數據讀取器SqlDataReader的步驟,包括;
在檢測到當前項目與數據庫連接成功時,獲取數據讀取器SqlDataReader和數據集對象類DataSet;
所述從所述原始數據結果集中讀取所述數據庫的元數據,基于所述元數據并通過所述數據庫管理系統功能生成元數據模型的步驟,包括:
對所述數據集對象類DataSet進行實例化,得到數據集容器;
從所述原始數據結果集中讀取所述數據庫的元數據;
將所述元數據填充至所述數據集容器中,以形成基類數據表;
所述基于所述元數據模型創建構造查詢函數的步驟,包括:
基于所述數據集容器中的元數據生成構造查詢函數,所述構造查詢函數用于對所述基類數據表進行查詢;
其中,所述原始數據結果集包含不同數據表的行數據,其中,每條行數據具有不同的列屬性,所述列屬性至少包括原始標識名稱、數據類型以及數據值;所述基類數據表的列屬性至少包括鍵值對標識、數據類型和數據值,其中,所述鍵值對標識與所述數據庫的原始標識名稱和原始數據表相關聯;
其中,所述調用所述構造查詢函數對所述數據庫進行查詢的步驟,包括:
在所述數據庫的結構發生變化時,調用所述構造查詢函數對所述基類數據表進行查詢,以實現對所述數據庫進行查詢;
其中,所述在檢測到當前項目與數據庫連接成功時,獲取數據讀取器SqlDataReader和數據集對象類DataSet的步驟,包括:
在檢測到當前項目與數據庫連接成功時,獲取數據讀取器SqlDataReader和數據集對象類DataSet,并從所述當前項目的源代碼中的讀取原始Sql查詢語句;
所述調用所述構造查詢函數對所述基類數據表進行查詢,以實現對所述數據庫進行查詢的步驟,包括:
通過所述原始Sql查詢語句對所述數據庫進行查詢,若返回的查詢結果中包括預設錯誤提示,則判定所述數據庫的結構發生變化,并對所述Sql查詢語句進行解析,提取查詢目標關鍵字;
調用所述構造查詢函數從所述基類數據表中對與所述查詢目標關鍵字相關的數據進行查找。
2.如權利要求1所述的方法,其特征在于,所述調用所述構造查詢函數從所述基類數據表中對與所述查詢目標關鍵字相關的數據進行查找的步驟之后,包括;
對所述基類數據表中與所述查詢目標關鍵字相關的數據對應的數據表進行展示。
該專利技術資料僅供研究查看技術是否侵權等信息,商用須獲得專利權人授權。該專利全部權利屬于平安科技(深圳)有限公司,未經平安科技(深圳)有限公司許可,擅自商用是侵權行為。如果您想購買此專利、獲得商業授權和技術合作,請聯系【客服】
本文鏈接:http://www.szxzyx.cn/pat/books/201811515122.9/1.html,轉載請聲明來源鉆瓜專利網。





