[發(fā)明專利]一種數(shù)據(jù)查詢方法、裝置及電子設(shè)備有效
| 申請(qǐng)?zhí)枺?/td> | 201810653080.9 | 申請(qǐng)日: | 2018-06-22 |
| 公開(公告)號(hào): | CN109062952B | 公開(公告)日: | 2022-06-03 |
| 發(fā)明(設(shè)計(jì))人: | 章敏杰 | 申請(qǐng)(專利權(quán))人: | 北京奇藝世紀(jì)科技有限公司 |
| 主分類號(hào): | G06F16/242 | 分類號(hào): | G06F16/242 |
| 代理公司: | 北京柏杉松知識(shí)產(chǎn)權(quán)代理事務(wù)所(普通合伙) 11413 | 代理人: | 馬敬;項(xiàng)京 |
| 地址: | 100080 北京市海淀區(qū)*** | 國省代碼: | 北京;11 |
| 權(quán)利要求書: | 查看更多 | 說明書: | 查看更多 |
| 摘要: | |||
| 搜索關(guān)鍵詞: | 一種 數(shù)據(jù) 查詢 方法 裝置 電子設(shè)備 | ||
本發(fā)明實(shí)施例提供了一種數(shù)據(jù)查詢方法、裝置及電子設(shè)備,可以根據(jù)DSL數(shù)據(jù)查詢請(qǐng)求,獲取目標(biāo)模型的標(biāo)識(shí)和待查詢屬性,根據(jù)目標(biāo)模型標(biāo)識(shí),從預(yù)先存儲(chǔ)的模型中獲得目標(biāo)模型,再根據(jù)待查詢屬性和目標(biāo)模型,獲得查詢模型,進(jìn)一步的,根據(jù)預(yù)設(shè)的模型屬性與字段之間的映射關(guān)系表,獲得所述待查詢屬性與對(duì)應(yīng)的待查詢字段之間的映射關(guān)系,按照SQL語句的語法,將所述查詢模型和所述待查詢屬性與對(duì)應(yīng)的待查詢字段之間的映射關(guān)系轉(zhuǎn)換為SQL語句,實(shí)現(xiàn)了SQL語句的自動(dòng)生成,從而有效地減少開發(fā)人員的工作量,提高了工作效率,并且,由于開發(fā)人員不需要直接將SQL語句寫入系統(tǒng),從而避免了SQL語句被注入了病毒等的風(fēng)險(xiǎn),提高了系統(tǒng)的安全性。
技術(shù)領(lǐng)域
本發(fā)明涉及查詢技術(shù)領(lǐng)域,特別是涉及一種數(shù)據(jù)查詢方法、裝置及電子設(shè)備。
背景技術(shù)
大型互聯(lián)網(wǎng)公司需要使用各種類型的中間件服務(wù)、底層服務(wù),滿足不同的用戶的需求,提供更加優(yōu)質(zhì)的服務(wù)。不管是中間件服務(wù),還是底層服務(wù)都有很多配置項(xiàng),可以使用CMDB(Configuration Management Database,配置管理數(shù)據(jù)庫)對(duì)配置進(jìn)行存儲(chǔ)及管理。存儲(chǔ)配置信息的方式為:開發(fā)人員在數(shù)據(jù)庫中建立模型屬性表,然后為模型的每一模型屬性分配字段,即定義模型屬性表中哪一列存儲(chǔ)模型的哪一種模型屬性,示例性的,定義列1存儲(chǔ)模型屬性A,即將字段列1分配給模型屬性A;再將模型實(shí)例化后的數(shù)據(jù)存儲(chǔ)至模型屬性表中,開發(fā)對(duì)應(yīng)的代碼。
CMDB對(duì)配置進(jìn)行管理包括對(duì)數(shù)據(jù)進(jìn)行查詢,用戶可以查詢配置數(shù)據(jù),而實(shí)現(xiàn)查詢功能的前提是:開發(fā)人員預(yù)先開發(fā)查詢配置數(shù)據(jù)的SQL(Structured Query Language,結(jié)構(gòu)化查詢語言)語句。具體的,針對(duì)不同的查詢請(qǐng)求,編寫不同的SQL語句。當(dāng)CMDB接收到查詢請(qǐng)求時(shí),會(huì)確定查詢請(qǐng)求對(duì)應(yīng)的SQL語句,并執(zhí)行所確定的SQL語句,獲得查詢結(jié)果。
然而,發(fā)明人在實(shí)現(xiàn)本發(fā)明的過程中發(fā)現(xiàn),現(xiàn)有技術(shù)至少存在如下問題:現(xiàn)有技術(shù)中由于查詢的SQL語句是開發(fā)人員預(yù)先開發(fā)的,因此,為了滿足用戶靈活多變的需求,就需要開發(fā)人員針對(duì)每一種潛在的查詢需求都開發(fā)相應(yīng)的SQL語句,導(dǎo)致存在開發(fā)效率不高的問題。
發(fā)明內(nèi)容
本發(fā)明實(shí)施例的目的在于提供一種數(shù)據(jù)查詢方法、裝置及電子設(shè)備,以實(shí)現(xiàn)查詢過程中自動(dòng)生成SQL語句,從而有效地減少開發(fā)人員的工作量,提高了工作效率。具體技術(shù)方案如下:
為了達(dá)到上述目的,第一方面,本發(fā)明實(shí)施例提供了一種應(yīng)用于終端設(shè)備的數(shù)據(jù)查詢方法,所述方法包括:
獲得數(shù)據(jù)查詢請(qǐng)求;所述查詢請(qǐng)求中包含目標(biāo)模型的標(biāo)識(shí)和所述目標(biāo)模型中的待查詢屬性;
根據(jù)目標(biāo)模型標(biāo)識(shí),從預(yù)先存儲(chǔ)的多個(gè)模型中獲得目標(biāo)模型;所述預(yù)先存儲(chǔ)的每個(gè)模型中分別包含多個(gè)不同的模型屬性;
根據(jù)待查詢屬性和目標(biāo)模型,獲得查詢模型;所述查詢模型中包含的模型屬性為:待查詢屬性;
從預(yù)設(shè)的模型屬性與字段之間的映射關(guān)系表中,獲得所述待查詢屬性與其對(duì)應(yīng)的待查詢字段之間的映射關(guān)系;
按照SQL語句的語法、查詢模型和所述待查詢屬性與對(duì)應(yīng)的待查詢字段之間的映射關(guān)系,將所述數(shù)據(jù)查詢請(qǐng)求轉(zhuǎn)換為針對(duì)所述待查詢字段的SQL語句;
執(zhí)行所述轉(zhuǎn)換成的SQL語句,獲得數(shù)據(jù)查詢結(jié)果。
可選的,所述數(shù)據(jù)查詢請(qǐng)求中包含多個(gè)目標(biāo)模型的標(biāo)識(shí)、每個(gè)目標(biāo)模型中的待查詢屬性和各個(gè)目標(biāo)模型之間的關(guān)系;
所述根據(jù)目標(biāo)模型標(biāo)識(shí),從預(yù)先存儲(chǔ)的多個(gè)模型中獲得目標(biāo)模型的步驟,包括:
根據(jù)每個(gè)目標(biāo)模型標(biāo)識(shí),從預(yù)先存儲(chǔ)的多個(gè)模型中獲得各個(gè)目標(biāo)模型;
所述根據(jù)待查詢屬性和目標(biāo)模型,獲得查詢模型的步驟,包括:根據(jù)每個(gè)目標(biāo)模型中的待查詢屬性和每個(gè)目標(biāo)模型,獲得與目標(biāo)模型數(shù)量相同的多個(gè)查詢模型和各個(gè)查詢模型之間的關(guān)系;
該專利技術(shù)資料僅供研究查看技術(shù)是否侵權(quán)等信息,商用須獲得專利權(quán)人授權(quán)。該專利全部權(quán)利屬于北京奇藝世紀(jì)科技有限公司,未經(jīng)北京奇藝世紀(jì)科技有限公司許可,擅自商用是侵權(quán)行為。如果您想購買此專利、獲得商業(yè)授權(quán)和技術(shù)合作,請(qǐng)聯(lián)系【客服】
本文鏈接:http://www.szxzyx.cn/pat/books/201810653080.9/2.html,轉(zhuǎn)載請(qǐng)聲明來源鉆瓜專利網(wǎng)。
- 數(shù)據(jù)顯示系統(tǒng)、數(shù)據(jù)中繼設(shè)備、數(shù)據(jù)中繼方法、數(shù)據(jù)系統(tǒng)、接收設(shè)備和數(shù)據(jù)讀取方法
- 數(shù)據(jù)記錄方法、數(shù)據(jù)記錄裝置、數(shù)據(jù)記錄媒體、數(shù)據(jù)重播方法和數(shù)據(jù)重播裝置
- 數(shù)據(jù)發(fā)送方法、數(shù)據(jù)發(fā)送系統(tǒng)、數(shù)據(jù)發(fā)送裝置以及數(shù)據(jù)結(jié)構(gòu)
- 數(shù)據(jù)顯示系統(tǒng)、數(shù)據(jù)中繼設(shè)備、數(shù)據(jù)中繼方法及數(shù)據(jù)系統(tǒng)
- 數(shù)據(jù)嵌入裝置、數(shù)據(jù)嵌入方法、數(shù)據(jù)提取裝置及數(shù)據(jù)提取方法
- 數(shù)據(jù)管理裝置、數(shù)據(jù)編輯裝置、數(shù)據(jù)閱覽裝置、數(shù)據(jù)管理方法、數(shù)據(jù)編輯方法以及數(shù)據(jù)閱覽方法
- 數(shù)據(jù)發(fā)送和數(shù)據(jù)接收設(shè)備、數(shù)據(jù)發(fā)送和數(shù)據(jù)接收方法
- 數(shù)據(jù)發(fā)送裝置、數(shù)據(jù)接收裝置、數(shù)據(jù)收發(fā)系統(tǒng)、數(shù)據(jù)發(fā)送方法、數(shù)據(jù)接收方法和數(shù)據(jù)收發(fā)方法
- 數(shù)據(jù)發(fā)送方法、數(shù)據(jù)再現(xiàn)方法、數(shù)據(jù)發(fā)送裝置及數(shù)據(jù)再現(xiàn)裝置
- 數(shù)據(jù)發(fā)送方法、數(shù)據(jù)再現(xiàn)方法、數(shù)據(jù)發(fā)送裝置及數(shù)據(jù)再現(xiàn)裝置
- 帶有前處理和后處理的數(shù)據(jù)庫復(fù)合查詢系統(tǒng)及方法
- 數(shù)據(jù)庫查詢的方法和系統(tǒng)
- 查詢系統(tǒng)、查詢終端以及查詢方法
- 交易信息查詢方法、查詢裝置及查詢系統(tǒng)
- 數(shù)據(jù)查詢與結(jié)果生成方法、裝置、設(shè)備及存儲(chǔ)介質(zhì)
- 在RDF數(shù)據(jù)集上進(jìn)行OPTIONAL查詢的方法及存儲(chǔ)介質(zhì)
- 一種多表關(guān)聯(lián)查詢方法、裝置及設(shè)備
- 一種基于Impala的查詢方法和裝置
- 從查詢生成子查詢
- 一種基于通用查詢語言的查詢方法及查詢系統(tǒng)
- 一種數(shù)據(jù)庫讀寫分離的方法和裝置
- 一種手機(jī)動(dòng)漫人物及背景創(chuàng)作方法
- 一種通訊綜合測試終端的測試方法
- 一種服裝用人體測量基準(zhǔn)點(diǎn)的獲取方法
- 系統(tǒng)升級(jí)方法及裝置
- 用于虛擬和接口方法調(diào)用的裝置和方法
- 線程狀態(tài)監(jiān)控方法、裝置、計(jì)算機(jī)設(shè)備和存儲(chǔ)介質(zhì)
- 一種JAVA智能卡及其虛擬機(jī)組件優(yōu)化方法
- 檢測程序中方法耗時(shí)的方法、裝置及存儲(chǔ)介質(zhì)
- 函數(shù)的執(zhí)行方法、裝置、設(shè)備及存儲(chǔ)介質(zhì)





