本發(fā)明專(zhuān)利技術(shù)提供了一種數(shù)據(jù)庫(kù)查詢(xún)建模系統(tǒng),包括:界面生成單元,用于生成可視化圖形界面,所述可視化圖形界面上設(shè)置有可操作的功能菜單選項(xiàng);信息獲取單元,用于根據(jù)用戶(hù)的第一選擇操作,在所述功能菜單選項(xiàng)中進(jìn)行選擇,以確定需要查詢(xún)的表,并獲取該表的表名和字段名,以及根據(jù)用戶(hù)的第二選擇操作,在被選中的表中選擇需要查詢(xún)的字段信息;語(yǔ)句拼接單元,用于將所述表名和所述字段名作為SQL語(yǔ)句的FROM部分,將所述字段信息作為SQL語(yǔ)句的SELECT部分,拼接成對(duì)應(yīng)的SQL語(yǔ)句。本發(fā)明專(zhuān)利技術(shù)還提出了一種數(shù)據(jù)庫(kù)查詢(xún)建模方法。通過(guò)本發(fā)明專(zhuān)利技術(shù)的技術(shù)方案,可以通過(guò)圖形化設(shè)置,自動(dòng)生成標(biāo)準(zhǔn)SQL語(yǔ)句,降低了對(duì)SQL語(yǔ)句的編寫(xiě)難度。
【技術(shù)實(shí)現(xiàn)步驟摘要】
本專(zhuān)利技術(shù)涉及數(shù)據(jù)庫(kù)查詢(xún)
,具體而言,涉及一種數(shù)據(jù)庫(kù)查詢(xún)建模系統(tǒng)和一種數(shù)據(jù)庫(kù)查詢(xún)建模方法。
技術(shù)介紹
數(shù)據(jù)庫(kù)已成為一個(gè)成熟軟件系統(tǒng)中不可或缺的必要組成部分,而對(duì)數(shù)據(jù)庫(kù)的查詢(xún)操作,更是數(shù)據(jù)庫(kù)系統(tǒng)中,最簡(jiǎn)單,最常用的操作。但是隨著企業(yè)業(yè)務(wù)復(fù)雜度的不斷提高,對(duì)數(shù)據(jù)庫(kù)的查詢(xún)操作也變得越來(lái)越復(fù)雜,這就需要編寫(xiě)更加復(fù)雜的數(shù)據(jù)庫(kù)查詢(xún)語(yǔ)句,即SQL語(yǔ)句,來(lái)訪問(wèn)數(shù)據(jù)庫(kù)。比如,一個(gè)SQL語(yǔ)句中會(huì)嵌套多個(gè)子查詢(xún),或者多個(gè)表之間有多種連接關(guān)系,對(duì)查詢(xún)字段有特殊限制等。在編寫(xiě)這樣復(fù)雜的SQL語(yǔ)句時(shí),即使非常有經(jīng)驗(yàn)的數(shù)據(jù)庫(kù)管理人員,也難免會(huì)發(fā)生錯(cuò)誤,對(duì)于不太熟悉SQL語(yǔ)句的初級(jí)數(shù)據(jù)庫(kù)使用者來(lái)說(shuō),那更是一頭霧水了。因此,如何方便的生成復(fù)雜SQL語(yǔ)句,是訪問(wèn)數(shù)據(jù)庫(kù)需要解決的重要問(wèn)題。
技術(shù)實(shí)現(xiàn)思路
本專(zhuān)利技術(shù)正是基于上述問(wèn)題,提出了一種新的技術(shù)方案,可以將SQL語(yǔ)句的生成過(guò)程,以圖形化的方式來(lái)構(gòu)造,自動(dòng)生成,代替手寫(xiě)。不僅能避免手寫(xiě)SQL語(yǔ)句發(fā)生的錯(cuò)誤,同時(shí)也能提高SQL語(yǔ)句準(zhǔn)確性,也使得非數(shù)據(jù)庫(kù)管理人員也能方便上手,執(zhí)行數(shù)據(jù)庫(kù)的查詢(xún)操作。有鑒于此,本專(zhuān)利技術(shù)提出了一種數(shù)據(jù)庫(kù)查詢(xún)建模系統(tǒng),包括:界面生成單元,用于生成可視化圖形界面,所述可視化圖形界面上設(shè)置有可操作的功能菜單選項(xiàng);信息獲取單元,用于根據(jù)用戶(hù)的第一選擇操作,在所述功能菜單選項(xiàng)中進(jìn)行選擇,以確定需要查詢(xún)的表,并獲取該表的表名和字段名,以及根據(jù)用戶(hù)的第二選擇操作,在被選中的表中選擇需要查詢(xún)的字段信息;語(yǔ)句拼接單元,用于將所述表名和所述字段名作為SQL語(yǔ)句的FROM部分,將所述字段信息作為SQL語(yǔ)句的SELECT部分,拼接成對(duì)應(yīng)的SQL語(yǔ)句。在該技術(shù)方案中,通過(guò)生成可視化圖形界面,從而用戶(hù)僅需要對(duì)查詢(xún)對(duì)象等信息,便可以自動(dòng)生成標(biāo)準(zhǔn)的SQL語(yǔ)句,降低了用戶(hù)編寫(xiě)SQL語(yǔ)句的難度,提高了編寫(xiě)效率。在上述技術(shù)方案中,優(yōu)選地,所述信息獲取單元通過(guò)選擇數(shù)據(jù)庫(kù)中的物理表、選擇對(duì)表進(jìn)行描述的元數(shù)據(jù)或選擇已創(chuàng)建的查詢(xún)模型來(lái)確定需要查詢(xún)的表。在上述技術(shù)方案中,優(yōu)選地,還包括:關(guān)系定義單元,用于在被選中的表的個(gè)數(shù)為多個(gè)的情況下,定義多個(gè)被選中的表的連接關(guān)系;其中,所述語(yǔ)句拼接單元按照所述連接關(guān)系,將所述表名和所述字段名拼接至所述SQL語(yǔ)句的FROM部分。在該技術(shù)方案中,根據(jù)多個(gè)被選中的表的連接關(guān)系,可以確定多個(gè)表的字段等之間的引用等關(guān)聯(lián)關(guān)系,從而用于SQL語(yǔ)句的生成。在上述技術(shù)方案中,優(yōu)選地,還包括:條件定義單元,用于根據(jù)用戶(hù)的條件定義操作,定義相應(yīng)的限制條件;其中,所述語(yǔ)句拼接單元還將所述限制條件拼接至所述SQL語(yǔ)句的WHERE及之后的部分。在該技術(shù)方案中,還可以將限制條件添加至生成的SQL語(yǔ)句中。在上述技術(shù)方案中,優(yōu)選地,所述限制條件包括以下至少之一或其組合:排序方式、SQL函數(shù)、用于在查詢(xún)操作時(shí)由用戶(hù)輸入的自定義參數(shù)、用于在查詢(xún)操作時(shí)利用其中的值的宏變量。根據(jù)本專(zhuān)利技術(shù)的又一方面,還提出了一種數(shù)據(jù)庫(kù)查詢(xún)建模方法,包括:步驟201,生成可視化圖形界面,所述可視化圖形界面上設(shè)置有可操作的功能菜單選項(xiàng);步驟202,根據(jù)用戶(hù)的第一選擇操作,在所述功能菜單選項(xiàng)中進(jìn)行選擇,以確定需要查詢(xún)的表,并獲取該表的表名和字段名;步驟204,根據(jù)用戶(hù)的第二選擇操作,在被選中的表中選擇需要查詢(xún)的字段信息;步驟206,將所述表名和所述字段名作為SQL語(yǔ)句的FROM部分,將所述字段信息作為SQL語(yǔ)句的SELECT部分,拼接成對(duì)應(yīng)的SQL語(yǔ)句。在該技術(shù)方案中,通過(guò)生成可視化圖形界面,從而用戶(hù)僅需要對(duì)查詢(xún)對(duì)象等信息,便可以自動(dòng)生成標(biāo)準(zhǔn)的SQL語(yǔ)句,降低了用戶(hù)編寫(xiě)SQL語(yǔ)句的難度,提高了編寫(xiě)效率。在上述技術(shù)方案中,優(yōu)選地,所述確定需要查詢(xún)的表的步驟包括:選擇數(shù)據(jù)庫(kù)中的物理表、選擇對(duì)表進(jìn)行描述的元數(shù)據(jù)或選擇已創(chuàng)建的查詢(xún)模型。在上述技術(shù)方案中,優(yōu)選地,所述步驟204還包括:當(dāng)被選中的表的個(gè)數(shù)為多個(gè)時(shí),還定義多個(gè)被選中的表的連接關(guān)系;以及所述步驟206包括:按照所述連接關(guān)系,將所述表名和所述字段名拼接至所述SQL語(yǔ)句的FROM部分。在該技術(shù)方案中,根據(jù)多個(gè)被選中的表的連接關(guān)系,可以確定多個(gè)表的字段等之間的引用等關(guān)聯(lián)關(guān)系,從而用于SQL語(yǔ)句的生成。在上述技術(shù)方案中,優(yōu)選地,所述步驟204還包括:根據(jù)用戶(hù)的條件定義操作,定義相應(yīng)的限制條件;以及所述步驟206還包括:將所述限制條件拼接至所述SQL語(yǔ)句的WHERE及之后的部分。在該技術(shù)方案中,還可以將限制條件添加至生成的SQL語(yǔ)句中。在上述技術(shù)方案中,優(yōu)選地,所述限制條件包括以下至少之一或其組合:排序方式、SQL函數(shù)、用于在查詢(xún)操作時(shí)由用戶(hù)輸入的自定義參數(shù)、用于在查詢(xún)操作時(shí)利用其中的值的宏變量。通過(guò)以上技術(shù)方案,可以將SQL語(yǔ)句的生成過(guò)程,以圖形化的方式來(lái)構(gòu)造,自動(dòng)生成,代替手寫(xiě)。不僅能避免手寫(xiě)SQL語(yǔ)句發(fā)生的錯(cuò)誤,同時(shí)也能提高SQL語(yǔ)句準(zhǔn)確性,也使得非數(shù)據(jù)庫(kù)管理人員也能方便上手,執(zhí)行數(shù)據(jù)庫(kù)的查詢(xún)操作。附圖說(shuō)明圖1示出了根據(jù)本專(zhuān)利技術(shù)的實(shí)施例的數(shù)據(jù)庫(kù)查詢(xún)建模系統(tǒng)的框圖;圖2示出了根據(jù)本專(zhuān)利技術(shù)的實(shí)施例的數(shù)據(jù)庫(kù)查詢(xún)建模方法的流程圖;圖3示出了根據(jù)本專(zhuān)利技術(shù)的實(shí)施例的生成標(biāo)準(zhǔn)SQL語(yǔ)句的流程圖;圖4示出了根據(jù)本專(zhuān)利技術(shù)的實(shí)施例的生成標(biāo)準(zhǔn)SQL語(yǔ)句的功能模塊的結(jié)構(gòu)示意圖。具體實(shí)施例方式為了能夠更清楚地理解本專(zhuān)利技術(shù)的上述目的、特征和優(yōu)點(diǎn),下面結(jié)合附圖和具體實(shí)施方式對(duì)本專(zhuān)利技術(shù)進(jìn)行進(jìn)一步的詳細(xì)描述。需要說(shuō)明的是,在不沖突的情況下,本申請(qǐng)的實(shí)施例及實(shí)施例中的特征可以相互組合。在下面的描述中闡述了很多具體細(xì)節(jié)以便于充分理解本專(zhuān)利技術(shù),但是,本專(zhuān)利技術(shù)還可以采用其他不同于在此描述的其他方式來(lái)實(shí)施,因此,本專(zhuān)利技術(shù)的保護(hù)范圍并不受下面公開(kāi)的具體實(shí)施例的限制。圖1示出了根據(jù)本專(zhuān)利技術(shù)的實(shí)施例的數(shù)據(jù)庫(kù)查詢(xún)建模系統(tǒng)的框圖。如圖1所示,根據(jù)本專(zhuān)利技術(shù)的實(shí)施例的數(shù)據(jù)庫(kù)查詢(xún)建模系統(tǒng)100,包括:界面生成單元102,用于生成可視化圖形界面,所述可視化圖形界面上設(shè)置有可操作的功能菜單選項(xiàng);信息獲取單元104,用于根據(jù)用戶(hù)的第一選擇操作,在所述功能菜單選項(xiàng)中進(jìn)行選擇,以確定需要查詢(xún)的表,并獲取該表的表名和字段名,以及根據(jù)用戶(hù)的第二選擇操作,在被選中的表中選擇需要查詢(xún)的字段信息;語(yǔ)句拼接單元106,用于將所述表名和所述字段名作為SQL語(yǔ)句的FROM部分,將所述字段信息作為SQL語(yǔ)句的SELECT部分,拼接成對(duì)應(yīng)的SQL語(yǔ)句。在該技術(shù)方案中,通過(guò)生成可視化圖形界面,從而用戶(hù)僅需要對(duì)查詢(xún)對(duì)象等信息,便可以自動(dòng)生成標(biāo)準(zhǔn)的SQL語(yǔ)句,降低了用戶(hù)編寫(xiě)SQL語(yǔ)句的難度,提高了編寫(xiě)效率。在上述技術(shù)方案中,優(yōu)選地,所述信息獲取單元104通過(guò)選擇數(shù)據(jù)庫(kù)中的物理表、選擇對(duì)表進(jìn)行描述的元數(shù)據(jù)或選擇已創(chuàng)建的查詢(xún)模型來(lái)確定需要查詢(xún)的表。在上述技術(shù)方案中,優(yōu)選地,還包括:關(guān)系定義單元108,用于在被選中的表的個(gè)數(shù)為多個(gè)的情況下,定義多個(gè)被選中的表的連接關(guān)系;其中,所述語(yǔ)句拼接單元106按照所述連接關(guān)系,將所述表名和所述字段名拼接至所述SQL語(yǔ)句的FROM部分。在該技術(shù)方案中,根據(jù)多個(gè)被選中的表的連接關(guān)系,可以確定多個(gè)表的字段等之間的引用等關(guān)聯(lián)關(guān)系,從而用于SQL語(yǔ)句的生成。在上述技術(shù)方案中,優(yōu)選地,還包括:條件定義單元110,用于根據(jù)用戶(hù)的條件定義操作,定義相應(yīng)的限制條件;其中,所述語(yǔ)句拼接單本文檔來(lái)自技高網(wǎng)...
【技術(shù)保護(hù)點(diǎn)】
一種數(shù)據(jù)庫(kù)查詢(xún)建模系統(tǒng),其特征在于,包括:界面生成單元,用于生成可視化圖形界面,所述可視化圖形界面上設(shè)置有可操作的功能菜單選項(xiàng);信息獲取單元,用于根據(jù)用戶(hù)的第一選擇操作,在所述功能菜單選項(xiàng)中進(jìn)行選擇,以確定需要查詢(xún)的表,并獲取該表的表名和字段名,以及根據(jù)用戶(hù)的第二選擇操作,在被選中的表中選擇需要查詢(xún)的字段信息;語(yǔ)句拼接單元,用于將所述表名和所述字段名作為SQL語(yǔ)句的FROM部分,將所述字段信息作為SQL語(yǔ)句的SELECT部分,拼接成對(duì)應(yīng)的SQL語(yǔ)句。
【技術(shù)特征摘要】
1.一種數(shù)據(jù)庫(kù)查詢(xún)建模系統(tǒng),其特征在于,包括: 界面生成單元,用于生成可視化圖形界面,所述可視化圖形界面上設(shè)置有可操作的功能菜單選項(xiàng); 信息獲取單元,用于根據(jù)用戶(hù)的第一選擇操作,在所述功能菜單選項(xiàng)中進(jìn)行選擇,以確定需要查詢(xún)的表,并獲取該表的表名和字段名,以及根據(jù)用戶(hù)的第二選擇操作,在被選中的表中選擇需要查詢(xún)的字段信息; 語(yǔ)句拼接單元,用于將所述表名和所述字段名作為SQL語(yǔ)句的FROM部分,將所述字段信息作為SQL語(yǔ)句的SELECT部分,拼接成對(duì)應(yīng)的SQL語(yǔ)句。2.根據(jù)權(quán)利要求1所述的數(shù)據(jù)庫(kù)查詢(xún)建模系統(tǒng),其特征在于,所述信息獲取單元通過(guò)選擇數(shù)據(jù)庫(kù)中的物理表、選擇對(duì)表進(jìn)行描述的元數(shù)據(jù)或選擇已創(chuàng)建的查詢(xún)模型來(lái)確定需要查詢(xún)的表。3.根據(jù)權(quán)利要求1或2所述的數(shù)據(jù)庫(kù)查詢(xún)建模系統(tǒng),其特征在于,還包括: 關(guān)系定義單元,用于在被選中的表的個(gè)數(shù)為多個(gè)的情況下,定義多個(gè)被選中的表的連接關(guān)系; 其中,所述語(yǔ)句拼接單元按照所述連接關(guān)系,將所述表名和所述字段名拼接至所述SQL語(yǔ)句的FROM部分。4.根據(jù)權(quán)利要求1或2所述的數(shù)據(jù)庫(kù)查詢(xún)建模系統(tǒng),其特征在于,還包括: 條件定義單元,用于根據(jù)用戶(hù) 的條件定義操作,定義相應(yīng)的限制條件; 其中,所述語(yǔ)句拼接單元還將所述限制條件拼接至所述SQL語(yǔ)句的WHERE及之后的部分。5.根據(jù)權(quán)利要求4所述的數(shù)據(jù)庫(kù)查詢(xún)建模系統(tǒng),其特征在于,所述限制條件包括以下至少之一或其組合: 排序方式、SQL函數(shù)、用于在查詢(xún)操作時(shí)由用戶(hù)輸入的自定義參數(shù)、用于在查詢(xún)操作時(shí)利用其中的...
【專(zhuān)利技術(shù)屬性】
技術(shù)研發(fā)人員:張一桐,
申請(qǐng)(專(zhuān)利權(quán))人:用友軟件股份有限公司,
類(lèi)型:發(fā)明
國(guó)別省市:
還沒(méi)有人留言評(píng)論。發(fā)表了對(duì)其他瀏覽者有用的留言會(huì)獲得科技券。