基于設(shè)置的表單數(shù)據(jù)查詢方法
【專利摘要】本發(fā)明提出了基于設(shè)置的表單數(shù)據(jù)查詢方法,該方法包括以下步驟:S1.預(yù)先設(shè)置數(shù)據(jù)庫中表的信息以及表對應(yīng)的參數(shù);S2.客戶端發(fā)送包含參數(shù)的查詢訪問請求;S3.客戶端根據(jù)數(shù)據(jù)庫返回的請求結(jié)果,初始化表單查詢界面;S4.客戶端響應(yīng)用戶對表單的查詢過濾操作事件并向數(shù)據(jù)庫發(fā)送數(shù)據(jù)訪問請求;S5.數(shù)據(jù)庫執(zhí)行查詢語句,返回符合條件的數(shù)據(jù)查詢結(jié)果;S6.表單查詢界面顯示數(shù)據(jù)查詢結(jié)果。本發(fā)明采用預(yù)先設(shè)置的方式,將數(shù)據(jù)庫表的信息與參數(shù)關(guān)聯(lián),初始化查詢界面后即可實現(xiàn)對數(shù)據(jù)庫表的條件查詢,且對同一個或一組目標(biāo)表可實現(xiàn)不同條件的查詢,滿足用戶數(shù)據(jù)查詢多樣化的需求;同時,無需編寫大量的不同形式的表單查詢顯示界面代碼,提高編程人員的工作效率。
【專利說明】基于設(shè)置的表單數(shù)據(jù)查詢方法
【技術(shù)領(lǐng)域】
[0001]本發(fā)明涉及數(shù)據(jù)處理【技術(shù)領(lǐng)域】,特別涉及基于設(shè)置的表單數(shù)據(jù)查詢方法。
【背景技術(shù)】
[0002]數(shù)據(jù)作為信息的載體在科技快速發(fā)展的當(dāng)下發(fā)揮著越來越重要的作用,無論是組織還是個人對數(shù)據(jù)的依賴性越來越強,他們使用的大量應(yīng)用系統(tǒng)要用到對數(shù)據(jù)庫表的查詢功能。現(xiàn)有的查詢方式主要有以下幾種:
[0003]I)通過編寫查詢語句獲取查詢結(jié)果
[0004]這種查詢方式可以按照查詢條件獲得有效查詢結(jié)果,但只有專業(yè)的編程人員才能實現(xiàn),普通用戶不具有豐富的計算機(jī)編程知識,無法采用該方式;對于每次查詢操作編程人員都需要通過編寫代碼來實現(xiàn),效率低,且容易出錯。
[0005]2)用戶通過輸入框或者下拉框等多種方式,按照查詢目的組織查詢條件
[0006]這種查詢方式通過讀取轉(zhuǎn)換后的查詢過濾條件在數(shù)據(jù)庫匹配到合適的結(jié)果,然后返回至客戶端。相對于語句查詢,該方法更適合普通用戶,但是采用該方法也存在一定的問題,查詢界面初始化顯示內(nèi)容固定,后臺代碼是固定的,對于數(shù)據(jù)庫表數(shù)量少的情況下適用。在數(shù)據(jù)庫多個表的情況下,開發(fā)人員要針對不同的表寫大量的查詢界面,即使這樣仍有可能遺漏某些可查詢的內(nèi)容,耗時又不靈活。
【發(fā)明內(nèi)容】
[0007]針對現(xiàn)有表單數(shù)據(jù)查詢中存在的問題,本發(fā)明提出了基于設(shè)置的表單數(shù)據(jù)查詢方法,預(yù)先設(shè)置數(shù)據(jù)庫表的信息及表對應(yīng)的參數(shù),客戶端向數(shù)據(jù)庫發(fā)送包含參數(shù)的查詢訪問請求,獲得初始化表單查詢界面,用戶在查詢界面執(zhí)行對表單的查詢過濾操作事件,客戶端向數(shù)據(jù)庫發(fā)送數(shù)據(jù)訪問請求,客戶端獲得數(shù)據(jù)查詢結(jié)果并顯示。為實現(xiàn)上述
【發(fā)明內(nèi)容】
,本發(fā)明采用了如下技術(shù)方案,該方案包括以下步驟:
[0008]S1.預(yù)先設(shè)置數(shù)據(jù)庫中表的信息以及表對應(yīng)的參數(shù);
[0009]S2.客戶端發(fā)送包含參數(shù)的查詢訪問請求;
[0010]S3.客戶端根據(jù)數(shù)據(jù)庫返回的請求結(jié)果,初始化表單查詢界面;
[0011]S4.客戶端響應(yīng)用戶對表單的查詢過濾操作事件并向數(shù)據(jù)庫發(fā)送數(shù)據(jù)訪問請求;
[0012]S5.數(shù)據(jù)庫執(zhí)行查詢語句,返回符合條件的數(shù)據(jù)查詢結(jié)果;
[0013]S6.表單查詢界面顯示數(shù)據(jù)查詢結(jié)果。
[0014]進(jìn)一步,步驟SI的預(yù)先設(shè)置包括:
[0015]設(shè)置表的主要信息,包括表的名稱、表對應(yīng)的參數(shù);
[0016]設(shè)置表的字段信息,包括字段名、字段類型。
[0017]進(jìn)一步,表的字段名包括按照數(shù)據(jù)庫對象命名規(guī)則命名的字段名稱和其對應(yīng)的實際字段名稱。
[0018]進(jìn)一步,表對應(yīng)的參數(shù)是指按照一定規(guī)則生成的用于關(guān)聯(lián)到數(shù)據(jù)庫相關(guān)表的數(shù)據(jù)信息。
[0019]進(jìn)一步,步驟S4中數(shù)據(jù)訪問請求包含在客戶端生成的可執(zhí)行查詢語句;或者
[0020]步驟S4中數(shù)據(jù)訪問請求包含客戶端組織的最終查詢條件,服務(wù)器在接收該查詢條件后需轉(zhuǎn)換成可執(zhí)行查詢語句。
[0021 ] 進(jìn)一步,客戶端可響應(yīng)用戶對表單的一次或多次查詢過濾操作事件。
[0022]本發(fā)明采用預(yù)先設(shè)置的方式,將數(shù)據(jù)庫表的信息與參數(shù)關(guān)聯(lián),初始化查詢界面后即可實現(xiàn)對數(shù)據(jù)庫表的條件查詢,且對同一個或一組目標(biāo)表可實現(xiàn)不同條件的查詢,滿足用戶數(shù)據(jù)查詢多樣化的需求;同時,無需編寫大量的不同形式的表單查詢顯示界面代碼,提高編程人員的工作效率。
【專利附圖】
【附圖說明】
[0023]圖1為本發(fā)明實施例提供的基于設(shè)置的表單數(shù)據(jù)查詢方法的流程圖;
[0024]圖2為本發(fā)明實施例提供的基于設(shè)置的表單數(shù)據(jù)查詢方法實施例一的流程圖;
[0025]圖3為本發(fā)明實施例提供的基于設(shè)置的表單數(shù)據(jù)查詢方法實施例二的流程圖;
[0026]圖4為本發(fā)明實施例提供的基于設(shè)置的表單數(shù)據(jù)查詢方法實施例三的流程圖。
【具體實施方式】
[0027]為了使本發(fā)明所提到的基于設(shè)置的表單數(shù)據(jù)查詢方法及其優(yōu)點更加清楚明確,以下參照附圖對本發(fā)明進(jìn)行更進(jìn)一步的詳細(xì)說明。
[0028]圖1為本發(fā)明實施例提供的基于設(shè)置的表單數(shù)據(jù)查詢方法的流程圖,如圖所示,該方法包括以下步驟:
[0029]步驟101,預(yù)先設(shè)置數(shù)據(jù)庫中表的信息以及表對應(yīng)的參數(shù)。
[0030]設(shè)置的信息包括表的名稱、字段名、字段類型,以及表對應(yīng)的參數(shù)。其中,參數(shù)可以是ID,也可以是對應(yīng)的表的名稱或者ID,或者是其他數(shù)據(jù)類型,根據(jù)實際情況進(jìn)行設(shè)置。
[0031]步驟102,客戶端發(fā)送包含參數(shù)的查詢訪問請求。
[0032]客戶端可以采用B/S模式的,通過瀏覽器向服務(wù)器發(fā)送訪問請求;客戶端也可以采用C/S模式的,安裝客戶端程序,然后向服務(wù)器發(fā)送訪問請求;某些情況下,客戶端可直接訪問數(shù)據(jù)庫。
[0033]服務(wù)器可以是用戶局域網(wǎng)內(nèi)的服務(wù)器,可以是分布在不同地域范圍內(nèi)的服務(wù)器,也可以是通過互聯(lián)網(wǎng)訪問的云端服務(wù)器。
[0034]步驟103,客戶端根據(jù)數(shù)據(jù)庫返回的請求結(jié)果,初始化表單查詢界面。
[0035]服務(wù)器根據(jù)數(shù)據(jù)訪問請求,執(zhí)行相應(yīng)的程序,相應(yīng)程序在數(shù)據(jù)庫中進(jìn)行操作,數(shù)據(jù)庫把符合條件的數(shù)據(jù)結(jié)果返回至服務(wù)器,服務(wù)器再將結(jié)果返回給客戶端,客戶端接收到查詢訪問結(jié)果后初始化表單查詢界面。
[0036]或者,數(shù)據(jù)庫根據(jù)客戶端的數(shù)據(jù)訪問請求,執(zhí)行相應(yīng)的程序,把符合條件的數(shù)據(jù)結(jié)果返回至客戶端,客戶端接收到查詢訪問結(jié)果后初始化表單查詢界面。
[0037]步驟104,客戶端響應(yīng)用戶對表單的查詢過濾操作事件并向數(shù)據(jù)庫發(fā)送數(shù)據(jù)訪問請求。
[0038]初始化后,利用表的欄位和相關(guān)運算符,用戶在表單查詢界面進(jìn)行查詢條件的選擇或輸入??蛻舳隧憫?yīng)用戶的操作事件,并將查詢過濾條件發(fā)送至服務(wù)器,有兩種情況,一種是情況是客戶端發(fā)送的過濾條件是可執(zhí)行查詢語句;一種是根據(jù)用戶操作客戶端組織查詢條件,服務(wù)器在接收后需要轉(zhuǎn)換成可執(zhí)行的查詢語句。
[0039]步驟105,數(shù)據(jù)庫執(zhí)行查詢語句,返回符合條件的數(shù)據(jù)查詢結(jié)果。
[0040]步驟106,表單查詢界面顯示數(shù)據(jù)查詢結(jié)果。
[0041]客戶端可響應(yīng)用戶在同一查詢界面的至少一次的查詢操作事件,表單查詢界面在不同的查詢過濾條件下顯示不同的查詢結(jié)果。
[0042]圖2為本發(fā)明實施例提供的基于設(shè)置的表單數(shù)據(jù)查詢方法實施例一的流程圖,如圖所示,該實施例包括以下步驟:
[0043]步驟201,預(yù)先設(shè)置數(shù)據(jù)庫中表的信息以及表對應(yīng)的參數(shù)。
[0044]步驟202,客戶端向服務(wù)器發(fā)送包含參數(shù)的查詢訪問請求。
[0045]步驟203,服務(wù)器根據(jù)查詢請求在數(shù)據(jù)庫獲取查詢結(jié)果并返回至客戶端。
[0046]步驟204,客戶端根據(jù)返回的請求結(jié)果,初始化表單查詢界面。
[0047]其中,初始化后的表單查詢界面包含表字段的欄位名稱。
[0048]步驟205,客戶端響應(yīng)用戶對表單的查詢過濾操作事件并向服務(wù)器發(fā)送包含SQL查詢語句的查詢訪問請求。
[0049]響應(yīng)用戶對表單的查詢過濾操作事件直接產(chǎn)生SQL查詢語句或者客戶端需要將查詢過濾條件表達(dá)式轉(zhuǎn)換成SQL查詢語句。其中,表達(dá)式類型可為文字表達(dá)式、數(shù)字表達(dá)式、符號表達(dá)式等。
[0050]步驟206,數(shù)據(jù)庫執(zhí)行SQL查詢語句,返回符合條件的數(shù)據(jù)查詢結(jié)果。
[0051]數(shù)據(jù)庫執(zhí)行SQL查詢語句,查找到符合查詢條件的數(shù)據(jù)結(jié)果并將其返回至客戶端。
[0052]步驟207,表單查詢界面顯示數(shù)據(jù)查詢結(jié)果。
[0053]圖3為本發(fā)明實施例提供的基于設(shè)置的表單數(shù)據(jù)查詢方法實施例二的流程圖,如圖所示,該實施例包括以下步驟:
[0054]步驟301,預(yù)先設(shè)置數(shù)據(jù)庫中表的信息以及表對應(yīng)的參數(shù)。
[0055]步驟302,客戶端向服務(wù)器發(fā)送包含參數(shù)的查詢訪問請求。
[0056]步驟303,服務(wù)器根據(jù)查詢請求在數(shù)據(jù)庫獲取查詢結(jié)果并返回至客戶端。
[0057]步驟304,客戶端根據(jù)返回的請求結(jié)果,初始化表單查詢界面。
[0058]步驟305,客戶端響應(yīng)用戶對表單的查詢過濾操作事件并向服務(wù)器發(fā)送包含可執(zhí)行查詢語句的查詢訪問請求。
[0059]其中,可執(zhí)行查詢語句可以是SQL查詢語句,也可以是HQL查詢語句,或者其他類型的查詢語句。
[0060]步驟306,服務(wù)器檢測可執(zhí)行查詢語句是否為SQL語句。
[0061]服務(wù)器對接收到的可執(zhí)行查詢語句進(jìn)行檢測,看是否為數(shù)據(jù)庫可執(zhí)行的SQL語句。如果是SQL語句,則轉(zhuǎn)到步驟308,否則,執(zhí)行步驟307。
[0062]步驟307,服務(wù)器進(jìn)行查詢語句轉(zhuǎn)換。
[0063]服務(wù)器將步驟306的非SQL語句轉(zhuǎn)換成SQL語句。
[0064]步驟308,數(shù)據(jù)庫執(zhí)行查詢語句,返回符合條件的數(shù)據(jù)查詢結(jié)果。
[0065]數(shù)據(jù)庫執(zhí)行SQL查詢語句,查找到符合查詢條件的數(shù)據(jù)結(jié)果并將其返回至客戶端。
[0066]步驟309,表單查詢界面顯示數(shù)據(jù)查詢結(jié)果。
[0067]圖4為本發(fā)明實施例提供的基于設(shè)置的表單數(shù)據(jù)查詢方法實施例三的流程圖,如圖所示,該實施例包括以下步驟:
[0068]步驟401,預(yù)先設(shè)置數(shù)據(jù)庫中表的信息以及表對應(yīng)的參數(shù)。
[0069]步驟402,客戶端向服務(wù)器發(fā)送包含參數(shù)的查詢訪問請求。
[0070]步驟403,服務(wù)器根據(jù)查詢請求在數(shù)據(jù)庫獲取查詢結(jié)果并返回至客戶端。
[0071 ] 步驟404,客戶端根據(jù)返回的請求結(jié)果,初始化表單查詢界面。
[0072]步驟405,客戶端響應(yīng)用戶對表單的查詢過濾操作事件并向服務(wù)器發(fā)送包含客戶端組織的最終查詢條件的訪問請求。
[0073]步驟406,服務(wù)器將查詢條件轉(zhuǎn)換成SQL查詢語句。
[0074]服務(wù)器將最終查詢條件轉(zhuǎn)換成數(shù)據(jù)庫可執(zhí)行的SQL查詢語句。
[0075]步驟407,數(shù)據(jù)庫執(zhí)行查詢語句,返回符合條件的數(shù)據(jù)查詢結(jié)果。
[0076]數(shù)據(jù)庫執(zhí)行SQL查詢語句,查找到符合查詢條件的數(shù)據(jù)結(jié)果并將其返回至客戶端。
[0077]步驟408,表單查詢界面顯示數(shù)據(jù)查詢結(jié)果。
[0078]客戶端可響應(yīng)用戶在同一查詢界面的至少一次的查詢操作事件,表單查詢界面在不同的查詢過濾條件下顯示不同的查詢結(jié)果。
[0079]以上所述是對本發(fā)明的較佳的【具體實施方式】,本【技術(shù)領(lǐng)域】人員應(yīng)當(dāng)理解,所述實施方式并非限定本發(fā)明的保護(hù)范圍。在不脫離本發(fā)明的精神實質(zhì)和原則下,在細(xì)節(jié)方面可以進(jìn)行變化或者修改,均應(yīng)涵蓋在本發(fā)明的權(quán)利要求范圍之內(nèi)。
【權(quán)利要求】
1.基于設(shè)置的表單數(shù)據(jù)查詢方法,其特征在于,該方法包括以下步驟: 51.預(yù)先設(shè)置數(shù)據(jù)庫中表的信息以及表對應(yīng)的參數(shù); 52.客戶端發(fā)送包含參數(shù)的查詢訪問請求; 53.客戶端根據(jù)數(shù)據(jù)庫返回的請求結(jié)果,初始化表單查詢界面; 54.客戶端響應(yīng)用戶對表單的查詢過濾操作事件并向數(shù)據(jù)庫發(fā)送數(shù)據(jù)訪問請求; 55.數(shù)據(jù)庫執(zhí)行查詢語句,返回符合條件的數(shù)據(jù)查詢結(jié)果; 56.表單查詢界面顯示數(shù)據(jù)查詢結(jié)果。
2.如權(quán)利要求1所述的基于設(shè)置的表單數(shù)據(jù)查詢方法,其特征在于,步驟SI的預(yù)先設(shè)置包括: 設(shè)置表的主要信息,包括表的名稱、表對應(yīng)的參數(shù); 設(shè)置表的字段信息,包括字段名、字段類型。
3.如權(quán)利要求2所述的基于設(shè)置的表單數(shù)據(jù)查詢方法,其特征在于,所述表的字段名包括按照數(shù)據(jù)庫對象命名規(guī)則命名的字段名稱和其對應(yīng)的實際字段名稱。
4.如權(quán)利要求1或2所述的基于設(shè)置的表單數(shù)據(jù)查詢方法,其特征在于,所述表對應(yīng)的參數(shù)是指按照一定規(guī)則生成的用于關(guān)聯(lián)到數(shù)據(jù)庫相關(guān)表的數(shù)據(jù)信息。
5.如權(quán)利要求1所述的基于設(shè)置的表單數(shù)據(jù)查詢方法,其特征在于,步驟S4中數(shù)據(jù)訪問請求包含在客戶端生成的可執(zhí)行查詢語句;或者 步驟S4中數(shù)據(jù)訪問請求包含客戶端組織的最終查詢條件,服務(wù)器在接收該查詢條件后需轉(zhuǎn)換成可執(zhí)行查詢語句。
6.如權(quán)利要求1所述的基于設(shè)置的表單數(shù)據(jù)查詢方法,其特征在于,所述客戶端可響應(yīng)用戶對表單的一次或多次查詢過濾操作事件。
【文檔編號】G06F17/30GK104239368SQ201310253404
【公開日】2014年12月24日 申請日期:2013年6月21日 優(yōu)先權(quán)日:2013年6月21日
【發(fā)明者】牟春林 申請人:蘇州精易會信息技術(shù)有限公司