新四季網

一種生成sql語句的方法和裝置製造方法

2023-05-04 22:17:16

一種生成sql語句的方法和裝置製造方法
【專利摘要】本發明公開了一種生成SQL語句的方法和裝置,以解決現有技術的SQL語句查詢方法生成的SQL語句包括大量子查詢,導致語句複雜度很高和損耗很大的技術問題。在本發明一些可行的實施方式中,方法包括:查找報表中每個欄位的來源,找出包括所述欄位的獨立視圖,找出的所有獨立視圖組成獨立視圖集合;查找所述獨立視圖集合中任意兩個獨立視圖之間的最短關係路徑,並將所述最短關係路徑上的其它獨立視圖添加到所述獨立視圖集合中,以及記錄任意兩個獨立視圖之間的關係表達式;根據所述獨立視圖集合及其中任意兩個獨立視圖之間的關係表達式,生成SQL語句。
【專利說明】—種生成SQL語句的方法和裝置

【技術領域】
[0001]本發明涉及計算機【技術領域】,具體涉及一種生成SQL語句的方法和裝置。

【背景技術】
[0002]商業智能(Business Intelligence,BI)描述了一系列的概念和方法,通過應用基於事實的支持系統來輔助商業決策的制定。商業智能技術提供使企業迅速分析數據的技術和方法。企業中會有很多各種各樣的數據,通常會將這些數據存放在資料庫中統一管理。並且,為了有效區分這些數據,將這些數據放在資料庫的不同數據表中。資料庫中還存在視圖的概念,視圖是原始資料庫數據的一種變換,是查看數據表中數據的另外一種方式。視圖一般是虛表,是從一個或幾個基本的數據表(或視圖)中導出的表,在資料庫中僅存放視圖的定義,不存放視圖對應的數據,對應的數據仍然存放在所引用的數據表中。當然,資料庫中最基本的數據表也可認為是視圖。
[0003]通常採用結構化查詢語言(Structured Query Language, SQL)語句進行資料庫查詢,查詢結果也可認為是一種視圖。可根據查詢結果構建報表,報表是按一定的格式生成的數據只讀表,用於呈現給用戶查閱。
[0004]SQL的查詢語句包括有select〈欄位列表>from〈表名>where〈條件表達式 > 語句。其中,如果略去條件表達式where,且select查詢所有欄位,則查詢結果就是from〈表名 > 中多個報表的笛卡爾積。笛卡爾積是指包含兩個集合中任意取出兩個元素構成的組合的集合。例如,集合A表示某學校學生的集合,集合B表示該學校所有課程的集合,則A與B的笛卡爾積就是任一個學生和任一種課程的組合的集合,可用於表示所有可能的選課情況。
[0005]但是,在數據表之間存在關聯關係的情況下,笛卡爾積中的某些組合就是錯誤或者無用的數據,即,查詢結果不能是笛卡爾積,此時,必須利用where〈條件表達式 > 對查詢結果進行限制,篩選出有用的信息。例如,集合A表示學生的集合,集合B表示所有學生的成績的集合,當查詢學生的成績時,查詢結果就不能是集合A與集合B的笛卡爾積。
[0006]舉例說明:假設資料庫中已存在「產品線表、產品類型表、產品表、產品銷量表」這四張報表,另外,用戶設備中還有一張「產品信息表」,產品信息表的欄位由產品類型表和產品表的欄位通過頁面拖拽生成,且產品信息表是邏輯視圖,在資料庫中不存在。其中,假設用戶沒有預先建立產品線表與其它報表的邏輯關係。需要注意,各個報表之間的邏輯關係不存在於資料庫中。則,構建包括「產品線名稱,產品類型名稱,產品名稱,銷量」這四個欄位的報表,生成SQL語句的過程如下:
[0007]由於產品線名稱欄位來源於產品線表,產品類型名稱和產品名稱來源於產品信息表,銷量來源於產品銷量表,產品信息表的欄位由產品類型表、產品表欄位通過頁面拖拽組成,則,因為從邏輯上,產品線表和產品銷量表之間沒有關係,邏輯上顯示笛卡爾積是正確的。但是,從業務語義上面看來,實際上產品線表和產品信息表、產品銷量表都是有關係的,數據不能是笛卡爾積。
[0008]為了解決該問題,現有的技術中,最接近的查詢技術是,手工直接建立產品線表和產品信息表的關係,這樣查詢時就可以加上限制條件,以此避免出現笛卡爾積。此時,生成的SQL語句如下:
[0009]「select產品線名稱,產品類型名稱,產品名稱,銷量
[0010]from
[0011](select產品類型名稱,產品名稱from產品類型表產品表where產品類型表.標識=產品表.產品類型標識)產品信息表產品線表產品銷量表
[0012]where產品線表.標識=產品信息表.產品線標識and產品信息表.標識=產品銷量表.產品信息表標識」
[0013]可見,from字句中有一個子查詢。但事實上,from字句的子查詢在此次構建的報表中是不需要出現的,手工直接建立產品線表和產品信息表的關係也是多餘的。
[0014]理論上,性能最優最簡單的SQL語句應該是:
[0015]「 seIect產品線名稱,產品類型名稱,產品名稱,銷量
[0016]from產品線表產品類型表產品表產品銷量表
[0017]where產品線表.標識=產品類型表.產品線標識
[0018]and產品類型表.標識=產品表.產品類型表標識
[0019]and產品表.標識=產品銷量表.產品標識」
[0020]上述數據還是很簡單的情況,若存在多級邏輯表,即A表由B、C表欄位拖拽組成,B由B1、B2、B3拖拽組成,C由C1、C2、C3拖拽組成,BI又由B11、B12拖拽組成,Cl由C11、C12、C13組成等等,那最後報表的SQL語句中將存在大量的子查詢,那就非常損耗性能,而且SQL語句複雜度也指數增長。可見,現有的SQL語句查詢方法中,生成的SQL語句包括大量子查詢,導致語句複雜度很高,損耗很大。


【發明內容】

[0021]本發明實施例提供一種生成SQL語句的方法和裝置,以解決現有技術的SQL語句包括大量子查詢,導致語句複雜度很高和損耗很大的技術問題。
[0022]本發明第一方面提供一種生成SQL語句的方法,包括:
[0023]查找報表中每個欄位的來源,找出包括所述欄位的獨立視圖,找出的所有獨立視圖組成獨立視圖集合;查找所述獨立視圖集合中任意兩個獨立視圖之間的最短關係路徑,並將所述最短關係路徑上的其它獨立視圖添加到所述獨立視圖集合中,以及記錄任意兩個獨立視圖之間的關係表達式;根據所述獨立視圖集合及其中任意兩個獨立視圖之間的關係表達式,生成SQL語句。
[0024]在第一種可能的實現方式中,所述查找報表中每個欄位的來源,找出包括所述欄位的獨立視圖包括:分析報表中每個欄位的表達式,以查找每個欄位的來源視圖;判斷查找到的來源視圖是否是獨立視圖;如果查找到的來源視圖是獨立視圖,則將查找到的獨立視圖添加到獨立視圖集合中;如果查找到的來源視圖不是獨立視圖,則分析查找到的來源視圖中的所述欄位的表達式,繼續遞歸查找所述欄位的來源視圖,直到查找到的來源視圖是獨立視圖為止。
[0025]結合第一方面或者第一方面的第一種可能的實現方式,在第二種可能的實現方式中,所述判斷查找到的來源視圖是否是獨立視圖包括:如果查找到的來源視圖是資料庫導入的視圖,則判斷查找到的來源視圖是獨立視圖;如果查找到的來源視圖是新建的視圖,貝U,判斷所述新建的視圖是否與其它視圖有直接關係,若有,則判斷所述新建的視圖是獨立視圖;或者,判斷所述新建的視圖中是否有新的聚合方式,若有,則判斷所述新建的視圖是獨立視圖。
[0026]結合第一方面或者第一方面的第一種或第二種可能的實現方式,在第三種可能的實現方式中,所述查找所述獨立視圖集合中任意兩個獨立視圖之間的最短關係路徑包括:判斷第一獨立視圖和第二獨立視圖之間是否有直接關係,若沒有,則查找所述第一獨立視圖和第二獨立視圖之間的間接關係;從查找到的所有關係路徑中,找出所述第一獨立視圖和第二獨立視圖之間的最短關係路徑;其中,所述第一獨立視圖和第二獨立視圖是所述獨立視圖集合中的任意兩個獨立視圖。
[0027]結合第一方面或者第一方面的第一種至第三種可能的實現方式中的任一種,在第四種可能的實現方式中,針對多個指定欄位新建獨立視圖,所述新建的獨立視圖包括:從所述多個指定欄位的直接來源視圖中複製來的所述指定欄位,以及所述指定欄位在所述直接來源視圖中與其它視圖的直接關係。
[0028]結合第一方面的第四種可能的實現方式中的任一種,在第五種可能的實現方式中,所述針對多個指定欄位新建獨立視圖包括:查找每個指定欄位的直接來源視圖;查找與找出的直接來源視圖存在直接關係的其它視圖;從找出的直接來源視圖中,複製所述指定欄位以及所述指定欄位與其它視圖的所有直接關係到新建的獨立視圖中。
[0029]本發明第二方面提供一種生成SQL語句的裝置,包括:
[0030]視圖查找模塊,用於查找報表中每個欄位的來源,找出包括所述欄位的獨立視圖,找出的所有獨立視圖組成獨立視圖集合;關係查找模塊,用於查找所述獨立視圖集合中任意兩個獨立視圖之間的最短關係路徑,並將所述最短關係路徑上的其它獨立視圖添加到所述獨立視圖集合中,以及記錄任意兩個獨立視圖之間的關係表達式;語句生成模塊,用於根據所述獨立視圖集合及其中任意兩個獨立視圖之間的關係表達式,生成SQL語句。
[0031]在第一種可能的實現方式中,所述視圖查找模塊包括:分析查找單元,用於分析報表中每個欄位的表達式,以查找每個欄位的來源視圖;視圖判斷單元,用於判斷查找到的來源視圖是否是獨立視圖;記錄處理單元,用於如果所述視圖判斷單元判斷查找到的來源視圖是獨立視圖,則將查找到的獨立視圖添加到獨立視圖集合中;所述分析查找單元,還用於如果所述視圖判斷單元判斷查找到的來源視圖不是獨立視圖,則分析查找到的來源視圖中所述欄位的表達式,繼續遞歸查找所述欄位的來源視圖,直到所述視圖判斷單元判斷查找到的來源視圖是獨立視圖為止。
[0032]結合第二方面或者第二方面的第一種可能的實現方式,在第二種可能的實現方式中,所述視圖判斷單元,具體用於如果所述分析查找單元查找到的來源視圖是資料庫導入的視圖,則判斷查找到的來源視圖是獨立視圖;如果所述分析查找單元查找到的來源視圖是新建的視圖,則,判斷所述新建的視圖是否與其它視圖有直接關係,若有,則判斷所述新建的視圖是獨立視圖;或者,判斷所述新建的視圖中是否有新的聚合方式,若有,則判斷所述新建的視圖是獨立視圖。
[0033]結合第二方面或者第二方面的第一種或第二種可能的實現方式,在第三種可能的實現方式中,所述關係查找模塊包括:關係判斷單元,用於判斷第一獨立視圖和第二獨立視圖之間是否有直接關係,其中,所述第一獨立視圖和第二獨立視圖是所述獨立視圖集合中的任意兩個獨立視圖;關係查找單元,用於若所述關係判斷單元判斷為沒有直接關係,則查找所述第一獨立視圖和第二獨立視圖之間的間接關係;並從查找到的所有關係路徑中,找出所述第一獨立視圖和第二獨立視圖之間的最短關係路徑。
[0034]結合第二方面或者第二方面的第一種至第三種可能的實現方式中的任一種,在第四種可能的實現方式中,所述裝置還包括:視圖創建模塊,用於針對多個指定欄位新建獨立視圖,所述新建的獨立視圖包括:從所述多個指定欄位的直接來源視圖中複製來的所述指定欄位,以及所述指定欄位在所述直接來源視圖中與其它視圖的直接關係。
[0035]結合第二方面的第四種可能的實現方式中的任一種,在第五種可能的實現方式中,所述視圖創建模塊包括:查找單元,用於查找每個指定欄位的直接來源視圖;以及,查找與找出的直接來源視圖存在直接關係的其它視圖;複製單元,用於從找出的直接來源視圖中,複製所述指定欄位以及所述指定欄位與其它視圖的所有直接關係到新建的獨立視圖中。
[0036]由上可見,本發明實施例採用生成SQL語句時,查找每個欄位來源的獨立視圖,並查找任意兩個獨立視圖之間的最短關係路徑,進而根據查找到的獨立視圖集合及其中任意兩個獨立視圖之間的關係表達式,來生成SQL語句的技術方案,所生成的SQL語句相對於現有技術被大幅度簡化,不僅減少了 select語句中包含的子查詢的數量,還降低了 Where語句中關係表達式的複雜度,從而,可以生成最優或接近最優的SQL語句,提升查詢性能和查詢效率,節省資料庫系統的計算和連接資源,並降低損耗,以及簡化業務操作步驟,提升開發效率。

【專利附圖】

【附圖說明】
[0037]為了更清楚地說明本發明實施例技術方案,下面將對實施例和現有技術描述中所需要使用的附圖作簡單地介紹,顯而易見地,下面描述中的附圖僅僅是本發明的一些實施例,對於本領域普通技術人員來講,在不付出創造性勞動的前提下,還可以根據這些附圖獲得其它的附圖。
[0038]圖1是本發明實施例提供的一種生成SQL語句的方法的示意圖;
[0039]圖2a是本發明一個場景例提供的一種生成SQL語句的方法的示意圖;
[0040]圖2b是本發明一個場景例中多個視圖以及相互關係的不意圖;
[0041]圖3是本發明實施例提供的一種生成SQL語句的裝置的示意圖;
[0042]圖4是本發明實施例提供的另一種生成SQL語句的裝置的示意圖;
[0043]圖5是本發明實施例提供的一種計算機設備的示意圖。

【具體實施方式】
[0044]本發明實施例提供一種生成SQL語句的方法和裝置,以解決現有技術的SQL語句包括大量子查詢,導致語句複雜度很高和損耗很大的技術問題。
[0045]為了使本【技術領域】的人員更好地理解本發明方案,下面將結合本發明實施例中的附圖,對本發明實施例中的技術方案進行清楚、完整地描述,顯然,所描述的實施例僅僅是本發明一部分的實施例,而不是全部的實施例。基於本發明中的實施例,本領域普通技術人員在沒有做出創造性勞動前提下所獲得的所有其他實施例,都應當屬於本發明保護的範圍。
[0046]下面通過具體實施例,分別進行詳細的說明。
[0047]首先對本發明技術方案涉及的資料庫系統做簡單介紹。所說的資料庫系統實質是一個計算機系統,包括構成計算機的硬體和運行在硬體上的作業系統以及運行在作業系統上的應用軟體,還包括存儲在計算機內的資料庫,以及運行在計算機硬體之上的資料庫管理系統等。
[0048]所說的硬體可包括處理器(例如CPU)和存儲器(例如內存),還可以包括輸入/輸出(1/0,Input/Output)裝置,及具有特定處理功能的其它裝置,如輸入輸出內存管理單元(IOMMU, Input/Output Memory Management Unit)等,上述各裝置通過通信總線連接。
[0049]所說的資料庫是指存儲在計算機內的,有組織,可共享的數據的集合。資料庫中的數據按一定的數學模型組織、描述和存儲,具有較小的冗餘,較高的數據獨立性和易擴展性,並可為各種用戶共享。資料庫中數據的基本存儲形式一般是數據表。不同類型的數據一般存放在不同的數據表中。資料庫中還存在視圖的概念,視圖是原始資料庫數據的一種變換,是查看數據表中數據的另外一種方式。視圖一般是虛表,是從一個或幾個基本的數據表(或視圖)中導出的表,在資料庫中僅存放視圖的定義,不存放視圖對應的數據,對應的數據仍然存放在所引用的數據表中。當然,資料庫中最基本的數據表也可認為是視圖。資料庫中的數據表和視圖的定義等所有數據都存儲在計算機的存儲器中。
[0050]所說的資料庫管理系統是資料庫系統的核心,對資料庫的一切操作,如原始數據的裝入、檢索、更新、再組織等等,都是在資料庫管理系統的調度下進行;資料庫管理系統是用戶與物理資料庫之間的橋梁,根據用戶的命令對資料庫執行必要的操作。本發明實施例技術方案可具體由資料庫管理系統實施。
[0051]請參考圖1,本發明實施例提供一種生成SQL語句的方法,可包括:
[0052]110、查找報表中每個欄位的來源,找出包括所述欄位的獨立視圖,找出的所有獨立視圖組成獨立視圖集合。
[0053]資料庫管理系統創建報表或者執行其它業務需要進行資料庫查詢時,首先需要從資料庫中查找需要查詢的每個欄位的來源視圖。
[0054]現有技術中,是查找到每個欄位的直接來源視圖後,就停止查找,後續根據查找到的直接來源視圖生成SQL語句。該種查詢方式中,查找到的多個視圖多是虛表,每個虛表一般都是從多個視圖導出的表,而且,虛表相互之間可能沒有邏輯關係。這就導致生成的SQL語句中會包含很多子查詢,語句複雜,損耗很大。
[0055]本發明實施例中,則是查找報表中每個欄位的來源,找出包括所述欄位的獨立視圖,而不是在查找到直接來源視圖後就停止查找,具體可包括:分析報表中每個欄位的表達式,以查找每個欄位的來源視圖;判斷查找到的來源視圖是否是獨立視圖;如果查找到的來源視圖是獨立視圖,則將查找到的獨立視圖添加到獨立視圖集合中,同時,可記錄查找到的獨立視圖與欄位的對應關係;如果查找到的來源視圖不是獨立視圖,則分析查找到的來源視圖中所述欄位的表達式,繼續遞歸查找所述欄位的來源視圖,直到找到的來源視圖是獨立視圖為止。最後,查找到的所有獨立視圖組成獨立視圖集合。
[0056]其中,本發明實施例中所說的獨立視圖可以是指以下的幾種視圖:資料庫導入的視圖,例如,資料庫中存在的基本的數據表;或者,新建的視圖,且新建的視圖與其它至少一個視圖建立有直接關係,則,該新建的視圖也可以視為是獨立視圖;又或者,新建的視圖,且新建的視圖中有新的聚合方式,例如,增加了求和或其它計算,則,該新建的視圖也可以視為是獨立視圖。
[0057]相應的,上述判斷查找到的來源視圖是否是獨立視圖可包括:如果查找到的來源視圖是資料庫導入的視圖,則判斷查找到的來源視圖是獨立視圖;如果查找到的來源視圖是新建的視圖,則,判斷新建的視圖是否與其它視圖有直接關係,若有,則判斷新建的視圖是獨立視圖;或者,判斷新建的視圖中是否有新的聚合方式,若有,則判斷新建的視圖是獨立視圖。
[0058]容易理解,每個欄位來源的獨立視圖,相對於其直接來源視圖,與資料庫中的數據表的層級更接近,或者說更基本,則,根據查找到的獨立視圖生成SQL語句,可以減少很多子查詢。
[0059]120、查找所述獨立視圖集合中任意兩個獨立視圖之間的最短關係路徑,並將所述最短關係路徑上的其它獨立視圖添加到所述獨立視圖集合中,以及記錄任意兩個獨立視圖之間的關係表達式。
[0060]獨立視圖集合中的各個獨立視圖之間,在語義上通常都是有關係的,即便某些情況下,在邏輯上是沒有關係的,但實際上仍有關係。為了避免查詢結果出現笛卡爾積,則生成SQL語句之前,必須找出查找到的各個獨立視圖之間的關係,以便在Where語句中加入限制條件。
[0061]本發明實施中,由於查找到的視圖是獨立視圖,與數據表的層級更接近,因此,更容易找出各個獨立視圖之間的關係。任意兩個獨立視圖之間,往往可能存在多條關係路徑,例如,視圖A和B之間,可能有直接關係,也可能通過視圖C有間接關係,還可能通過視圖D和E有間接關係。為了降低where語句中條件表達式的複雜度,本發明實施例中,查找所述獨立視圖集合中任意兩個獨立視圖之間的最短關係路徑,並記錄對應的關係表達式,利用最短關係路徑的關係表達式來降低where語句中條件表達式的複雜度。
[0062]其中,任意兩個獨立視圖的最短關係路徑上可能存在其它視圖,S卩,兩個獨立視圖通過其它視圖存在間接關係,而該最短關係路徑上的其它視圖有可能並不存在於上一步驟找出的獨立視圖集合中,這時候,就必須把最短關係路徑上、不存在於獨立視圖集合中的其它視圖也作為獨立視圖,添加到獨立視圖集合中,只有這樣,才能找出各個獨立視圖之間全部的關聯關係,生成正確的SQL語句,得出正確的查詢結果。
[0063]本發明一些實施例中,上述查找獨立視圖集合中任意兩個獨立視圖之間的最短關係路徑可包括:判斷第一獨立視圖和第二獨立視圖之間是否有直接關係,若沒有,則查找所述第一獨立視圖和第二獨立視圖之間的間接關係;從查找到的所有關係路徑中,找出所述第一獨立視圖和第二獨立視圖之間的最短關係路徑;其中,所述第一獨立視圖和第二獨立視圖是所述獨立視圖集合中的任意兩個獨立視圖。
[0064]130、根據所述獨立視圖集合及其中任意兩個獨立視圖之間的關係表達式,生成SQL語句。
[0065]在查找出的獨立視圖集合和所有關係表達式的基礎上,即可根據常規的查詢規貝U,針對所有需要查詢的欄位,生成相應的SQL語句,利用生成的SQL語句從資料庫中查詢出所需要的欄位,查詢結果也可以視為一種視圖。對於技術人員,生成SQL語句,得出查詢視圖就可以結束了 ;但是,對於企業管理人員,還需要根據查詢視圖構建出報表或者構建出其他的表示方式,以方便審閱,供企業管理人員進行管理和決策。
[0066]本發明一些實施例中,根據用戶需求或報表需要,在進行SQL查詢的過程中,或者在SQL查詢之前,還需要新建一個或多個獨立視圖。則本發明實施例方法還可包括:針對多個指定欄位新建獨立視圖,所述新建的獨立視圖包括:從所述多個指定欄位的直接來源視圖中複製來的所述指定欄位,以及所述指定欄位在所述直接來源視圖中與其它視圖的直接關係。該步驟可以在110之前或者130之前執行。
[0067]本發明實施例中,新建的獨立視圖,與現有技術相比不同之處在於,不僅包括從所述多個指定欄位的直接來源視圖中複製來的所述指定欄位,還包括:直接來源視圖中的所述指定欄位與其它視圖的直接關係。通過將前述的直接關係也複製到新建的獨立視圖中,可以保證視圖之間的關係不會丟失,在步驟120中一定會被查詢到,而且,可以降低查詢難度,縮短關係路徑,進而,降低Where語句中關係表達式的複雜度。
[0068]本發明一些實施例中,所述針對多個指定欄位新建獨立視圖可包括:查找每個指定欄位的直接來源視圖;查找與找出的直接來源視圖存在直接關係的其它視圖;從找出的直接來源視圖中,複製所述指定欄位以及所述指定欄位與其它視圖的所有直接關係到新建的獨立視圖中。
[0069]以上,本發明實施例公開了一種生成SQL語句的方法,該方法可在資料庫設備或者與資料庫設備通信的用戶設備上實施。
[0070]本發明實施例方法採用生成SQL語句時,查找每個欄位來源的獨立視圖,並查找任意兩個獨立視圖之間的最短關係路徑,進而根據查找到的獨立視圖集合及其中任意兩個獨立視圖之間的關係表達式,來生成SQL語句的技術方案,所生成的SQL語句相對於現有技術被大幅度簡化,不僅減少了 select語句中包含的子查詢的數量,還降低了 Where語句中關係表達式的複雜度,從而,可以生成最優或接近最優的SQL語句,提升查詢性能和查詢效率,節省資料庫系統的計算和連接資源,並降低損耗,以及簡化業務操作步驟,提升開發效率。
[0071]為便於更好的理解本發明實施例提供的技術方案,下面通過一個具體場景下的實施方式為例進行介紹。
[0072]請參考圖2a,本發明實施例的另一種生成SQL語句的方法。本場景例方法可包括:
[0073]201、分析報表中所有欄位的表達式,然後遍歷每個表達式,找出每個欄位的來源視圖;
[0074]202、判斷每個欄位的來源視圖是否是獨立視圖,如果不是,繼續遞歸追溯報表欄位的來源;
[0075]203、如果找出的來源視圖是獨立視圖,則,記錄報表欄位與找出的獨立視圖的對應關係,添加該獨立視圖至獨立視圖集合;
[0076]其中,所說的獨立視圖是指:資料庫導入的視圖,例如,資料庫中存在的基本的數據表;或者,新建的視圖,且新建的視圖與其它至少一個視圖建立有直接關係;又或者,新建的視圖,且新建的視圖中有新的聚合方式。
[0077]204、遍歷獨立視圖集合,查找任意兩個獨立視圖之間的最短關係路徑;具體可包括:分析所有視圖兩兩之間的直接關係,記錄關係表達式,若沒有直接關係,則分析間接關係,優選找出最短的間接關係路徑;
[0078]205、判斷找出的最短關係路徑上的其它視圖是否在獨立視圖集合中,若不在,則添加至獨立視圖集合中;
[0079]206、記錄獨立視圖集合中任意兩個獨立視圖之間的關係表達式;
[0080]207、對於報表中的欄位,根據找出的獨立視圖集合以及找出的所有關係表達式,構建SQL語句。
[0081 ] 下面以一個具體實例進一步詳細說明。
[0082]假設需要創建一個報表,該報表由產品名稱、產品線名稱、銷量以及銷售員名稱這幾個欄位組成。其中,產品線名稱欄位來源於產品線表,產品類型名稱和產品名稱來源於產品信息表,銷量來源於銷量信息表,銷售員名稱來源於銷售員信息表;並且,產品信息表的欄位由產品類型表、產品表欄位通過頁面拖拽組成;銷售信息表由銷售表頭和銷售事實表組成,即,所有欄位來源於銷售表頭和銷售事實表;新建邏輯關係如圖2b所示。圖中,帶箭頭的連接線段表示建立有直接關係,字符I和η表示是I對多的關係。其中,銷售方式表和銷售信息表建立有一對多的關係,銷售員信息表和銷售表頭建立有一對多的關係。銷售事實表與產品表或產品信息表等有直接或間接關係。
[0083]則構建SQL語句的過程如下:
[0084]1、分析報表所有欄位,找出每個欄位來源的獨立視圖,組建獨立視圖集合。
[0085]報表中的產品名稱欄位,來源於產品信息表,該產品信息表不是獨立視圖,此時需要在組成產品信息表的產品表和產品類型表查找產品類型名稱,找到產品表中存在該欄位,發現產品表是資料庫中的數據表,是獨立視圖,此次查找結束,記錄欄位和視圖名稱的對應關係。
[0086]產品線名稱欄位的查找是類似過程,找出產品線表是來源的獨立視圖。
[0087]銷售欄位,來源於銷售信息表,該視圖和銷售方式表建立了多對一的關係,因此銷售信息表為獨立視圖,直接記錄該欄位名稱和視圖名稱的對應關係。
[0088]銷售員名稱欄位,來源於銷售員信息表,該表是從資料庫直接導入的,所以是獨立視圖,接記錄該欄位名稱和視圖名稱的對應關係。
[0089]最終找到的獨立視圖集合包括:產品表、產品線表、銷售信息表、銷售員信息表。報表的各個欄位分別存在於各自對應的獨立視圖中,或者說,各個欄位在各自對應的獨立視圖中中有映射欄位。
[0090]2、尋找獨立視圖集合中任意兩個獨立視圖之間的最短關係路徑。
[0091]例如基於上述獨立視圖集合,需要尋找這些獨立視圖間的直接或間接關係,直接關係尋找相對簡單,這裡重要的是間接關係的尋找。例如,產品線表和產品表,二者間沒有直接的關係,此時需要查找所有和產品線表關聯的表,發現有產品類型表,再遞歸查找產品類型表和產品表的關聯關係,發現存在關係,則獨立視圖集合中添加視圖產品類型表,並記錄廣品線表和廣品類型表的關係表達式、廣品類型表和廣品表的關係表達式至關係集合中。其它任意兩個獨立視圖之間的關係的查找類似,此處不再一一列舉。
[0092]3、根據最終查找出的獨立視圖集合以及所有關係表達式,構建SQL語句。
[0093]一些應用場景中,假設銷售信息表是新建的邏輯視圖,且是獨立視圖,該視圖中的部分欄位的直接來源是銷售表頭,本發明中,需要複製銷售表頭的直接關係至銷售信息表上,例如銷售表頭與銷售員信息表的直接關係到銷售信息表上。則,新建的銷售信息表與銷售員信息表建立起直接關係。
[0094]由上可見,本應用場景例中,以創建報表為例,通過分析報表中每個欄位隱藏的表達式,遞歸尋找欄位的來源,直至找到存在報表欄位映射的獨立視圖,記錄欄位和獨立視圖名稱;遞歸路由查找獨立視圖間直接或間接關係,記錄途徑的所有獨立視圖以及獨立視圖之間的關係表達式,最後拼接最優或接近最優的SQL語句。其中,新建獨立視圖時從新建的獨立視圖所有欄位的直接來源視圖中,複製所有需要的欄位以及直接來源視圖的直接關係至新建的獨立視圖。最終生成的SQL語句相對於現有技術可被大幅度簡化,不僅減少了select語句中包含的子查詢的數量,還降低了 Where語句中關係表達式的複雜度,從而,可以生成最優或接近最優的SQL語句,提升查詢性能和查詢效率,節省資料庫系統的計算和連接資源,並降低損耗,以及簡化業務操作步驟,提升開發效率。
[0095]為了更好的實施本發明實施例的上述方案,下面還提供用於配合實施上述方案的相關裝置。
[0096]請參考圖3,本發明實施例提供一種生成SQL語句的裝置300,可包括:
[0097]視圖查找模塊310,用於查找報表中每個欄位的來源,找出包括所述欄位的獨立視圖,找出的所有獨立視圖組成獨立視圖集合;
[0098]關係查找模塊320,用於查找所述獨立視圖集合中任意兩個獨立視圖之間的最短關係路徑,並將所述最短關係路徑上的其它獨立視圖添加到所述獨立視圖集合中,以及記錄任意兩個獨立視圖之間的關係表達式;
[0099]語句生成模塊330,用於根據所述獨立視圖集合及其中任意兩個獨立視圖之間的關係表達式,生成SQL語句。
[0100]在本發明的一些實施例中,所述視圖查找模塊310可包括:
[0101]分析查找單元,用於分析報表中每個欄位的表達式,以查找每個欄位的來源視圖;
[0102]視圖判斷單元,用於判斷查找到的來源視圖是否是獨立視圖;
[0103]記錄處理單元,用於如果所述視圖判斷單元判斷查找到的來源視圖是獨立視圖,則將查找到的獨立視圖添加到獨立視圖集合中;
[0104]所述分析查找單元,還用於如果所述視圖判斷單元判斷查找到的來源視圖不是獨立視圖,則分析查找到的來源視圖中所述欄位的表達式,繼續遞歸查找所述欄位的來源視圖,直到所述視圖判斷單元判斷查找到的來源視圖是獨立視圖為止。
[0105]在本發明的一些實施例中,所述視圖判斷單元,具體用於如果所述分析查找單元查找到的來源視圖是資料庫導入的視圖,則判斷查找到的來源視圖是獨立視圖;如果所述分析查找單元查找到的來源視圖是新建的視圖,則,判斷新建的視圖是否與其它視圖有直接關係,若有,則判斷新建的視圖是獨立視圖;或者,判斷新建的視圖中是否有新的聚合方式,若有,則判斷新建的視圖是獨立視圖。
[0106]在本發明的一些實施例中,所述關係查找模塊320可包括:
[0107]關係判斷單元,用於判斷第一獨立視圖和第二獨立視圖之間是否有直接關係,其中,所述第一獨立視圖和第二獨立視圖是所述獨立視圖集合中的任意兩個獨立視圖;
[0108]關係查找單元,用於若所述關係判斷單元判斷為沒有直接關係,則查找所述第一獨立視圖和第二獨立視圖之間的間接關係;並從查找到的所有關係路徑中,找出所述第一獨立視圖和第二獨立視圖之間的最短關係路徑。
[0109]請參考圖4,在本發明的一些實施例中,所述裝置還可以包括:
[0110]視圖創建模塊340,用於針對多個指定欄位新建獨立視圖,所述新建的獨立視圖包括:從所述多個指定欄位的直接來源視圖中複製來的所述指定欄位,以及所述指定欄位在所述直接來源視圖中與其它視圖的直接關係。
[0111]在本發明的一些實施例中,所述視圖創建模塊340可包括:
[0112]查找單元,用於查找每個指定欄位的直接來源視圖;以及,查找與找出的直接來源視圖存在直接關係的其它視圖;
[0113]複製單元,用於從找出的直接來源視圖中,複製所述指定欄位以及所述指定欄位與其它視圖的所有直接關係到新建的獨立視圖中。
[0114]本發明實施例生成SQL語句的裝置例如可以是計算機設備如資料庫系統。本發明實施例生成SQL語句的裝置,具體可對應於資料庫系統中的資料庫管理系統,換言之,所述生成SQL語句的裝置可部署在資料庫管理系統中。
[0115]可以理解,本發明實施例裝置的各個功能模塊的功能可根據上述方法實施例中的方法具體實現,其具體實現過程可參照上述方法實施例中的相關描述,此處不再贅述。
[0116]由上可見,在本發明的一些可行的實施方式中,採用生成SQL語句時,查找每個欄位來源的獨立視圖,並查找任意兩個獨立視圖之間的最短關係路徑,進而根據查找到的獨立視圖集合及其中任意兩個獨立視圖之間的關係表達式,來生成SQL語句的技術方案,所生成的SQL語句相對於現有技術被大幅度簡化,不僅減少了 select語句中包含的子查詢的數量,還降低了 Where語句中關係表達式的複雜度,從而,可以生成最優或接近最優的SQL語句,提升查詢性能和查詢效率,節省資料庫系統的計算和連接資源,並降低損耗,以及簡化業務操作步驟,提升開發效率。
[0117]本發明實施例還提供一種計算機存儲介質,該計算機存儲介質可存儲有程序,該程序執行時包括上述方法實施例中記載的生成SQL語句的方法的部分或全部步驟。
[0118]請參考圖5,本發明實施例還提供一種計算機設備500,可包括:
[0119]處理器510,存儲器520,通信接口 530,總線540 ;所述處理器510,存儲器520,通信接口 530通過所述總線540相互的通信;所述通信接口 530,用於接收和發送數據;所述存儲器520用於存儲數據和程序;所述處理器510用於執行所述存儲器中的所述程序。所述存儲器520中具體存儲有資料庫,或者說,資料庫中的數據表等所有數據存儲在存儲器520中,供處理器510調用。處理器510執行存儲器520中存儲的程序時,所述計算機500執行如圖1實施例所示的生成SQL語句的方法。
[0120]具體的,處理器510執行如下步驟:
[0121]查找報表中每個欄位的來源,找出包括所述欄位的獨立視圖,找出的所有獨立視圖組成獨立視圖集合;查找所述獨立視圖集合中任意兩個獨立視圖之間的最短關係路徑,並將所述最短關係路徑上的其它獨立視圖添加到所述獨立視圖集合中,以及記錄任意兩個獨立視圖之間的關係表達式;根據所述獨立視圖集合及其中任意兩個獨立視圖之間的關係表達式,生成SQL語句。
[0122]在本發明的一些實施例中,處理器510查找報表中每個欄位的來源,找出包括所述欄位的獨立視圖包括:分析報表中每個欄位的表達式,以查找每個欄位的來源視圖;判斷查找到的來源視圖是否是獨立視圖;如果查找到的來源視圖是獨立視圖,則將查找到的獨立視圖添加到獨立視圖集合中;如果查找到的來源視圖不是獨立視圖,則分析查找到的來源視圖中的所述欄位的表達式,繼續遞歸查找所述欄位的來源視圖,直到找到的來源視圖是獨立視圖為止。
[0123]在本發明的一些實施例中,處理器510判斷查找到的來源視圖是否是獨立視圖包括:如果查找到的來源視圖是資料庫導入的視圖,則判斷查找到的來源視圖是獨立視圖;如果查找到的來源視圖是新建的視圖,則,判斷新建的視圖是否與其它視圖有直接關係,若有,則判斷新建的視圖是獨立視圖;或者,判斷新建的視圖中是否有新的聚合方式,若有,則判斷新建的視圖是獨立視圖。
[0124]在本發明的一些實施例中,處理器510查找所述獨立視圖集合中任意兩個獨立視圖之間的最短關係路徑包括:判斷第一獨立視圖和第二獨立視圖之間是否有直接關係,若沒有,則查找所述第一獨立視圖和第二獨立視圖之間的間接關係;從查找到的所有關係路徑中,找出所述第一獨立視圖和第二獨立視圖之間的最短關係路徑;其中,所述第一獨立視圖和第二獨立視圖是所述獨立視圖集合中的任意兩個獨立視圖。
[0125]在本發明的一些實施例中,處理器510還可以執行如下步驟:針對多個指定欄位新建獨立視圖,所述新建的獨立視圖包括:從所述多個指定欄位的直接來源視圖中複製來的所述欄位,以及所述指定欄位在所述直接來源視圖中與其它視圖的直接關係。
[0126]在本發明的一些實施例中,處理器510針對多個指定欄位新建獨立視圖包括:查找每個指定欄位的直接來源視圖;查找與找出的直接來源視圖存在直接關係的其它視圖;從找出的直接來源視圖中,複製所述指定欄位以及所述指定欄位與其它視圖的所有直接關係到新建的獨立視圖中。
[0127]由上可見,在本發明的一些可行的實施方式中,採用生成SQL語句時,查找每個欄位來源的獨立視圖,並查找任意兩個獨立視圖之間的最短關係路徑,進而根據查找到的獨立視圖集合及其中任意兩個獨立視圖之間的關係表達式,來生成SQL語句的技術方案,所生成的SQL語句相對於現有技術被大幅度簡化,不僅減少了 select語句中包含的子查詢的數量,還降低了 Where語句中關係表達式的複雜度,從而,可以生成最優或接近最優的SQL語句,提升查詢性能和查詢效率,節省資料庫系統的計算和連接資源,並降低損耗,以及簡化業務操作步驟,提升開發效率。
[0128]在上述實施例中,對各個實施例的描述都各有側重,某個實施例中沒有詳細描述的部分,可以參見其它實施例的相關描述。
[0129]需要說明的是,對於前述的各方法實施例,為了簡單描述,故將其都表述為一系列的動作組合,但是本領域技術人員應該知悉,本發明並不受所描述動作順序的限制,因為依據本發明,某些步驟可以採用其它順序或者同時進行。其次,本領域技術人員也應該知悉,說明書中所描述的實施例均屬於優選實施例,所涉及的動作和模塊並不一定是本發明所必須的。
[0130]本領域普通技術人員可以理解上述實施例的各種方法中的全部或部分步驟是可以通過程序來指令相關的硬體來完成,該程序可以存儲於一計算機可讀存儲介質中,存儲介質可以包括:ROM、RAM、磁碟或光碟等。
[0131]以上對本發明實施例所提供的一種生成SQL語句的方法和裝置,進行了詳細介紹,本文中應用了具體個例對本發明的原理及實施方式進行了闡述,以上實施例的說明只是用於幫助理解本發明的方法及其核心思想;同時,對於本領域的一般技術人員,依據本發明的思想,在【具體實施方式】及應用範圍上均會有改變之處,綜上所述,本說明書內容不應理解為對本發明的限制。
【權利要求】
1.一種生成結構化查詢語言SQL語句的方法,其特徵在於,包括: 查找報表中每個欄位的來源,找出包括所述欄位的獨立視圖,找出的所有獨立視圖組成獨立視圖集合; 查找所述獨立視圖集合中任意兩個獨立視圖之間的最短關係路徑,並將所述最短關係路徑上的其它獨立視圖添加到所述獨立視圖集合中,以及記錄任意兩個獨立視圖之間的關係表達式; 根據所述獨立視圖集合及其中任意兩個獨立視圖之間的關係表達式,生成SQL語句。
2.根據權利要求1所述的方法,其特徵在於,所述查找報表中每個欄位的來源,找出包括所述欄位的獨立視圖包括: 分析報表中每個欄位的表達式,以查找每個欄位的來源視圖; 判斷查找到的來源視圖是否是獨立視圖; 如果查找到的來源視圖是獨立視圖,則將查找到的獨立視圖添加到獨立視圖集合中; 如果查找到的來源視圖不是獨立視圖,則分析查找到的來源視圖中的所述欄位的表達式,繼續遞歸查找所述欄位的來源視圖,直到查找到的來源視圖是獨立視圖為止。
3.根據權利要求2所述的方法,其特徵在於,所述判斷查找到的來源視圖是否是獨立視圖包括: 如果查找到的來源視圖是資料庫導入的視圖,則判斷查找到的來源視圖是獨立視圖; 如果查找到的來源視圖是新建的視圖,則,判斷所述新建的視圖是否與其它視圖有直接關係,若有,則判斷所述新建的視圖是獨立視圖;或者,判斷所述新建的視圖中是否有新的聚合方式,若有,則判斷所述新建的視圖是獨立視圖。
4.根據權利要求1所述的方法,其特徵在於,所述查找所述獨立視圖集合中任意兩個獨立視圖之間的最短關係路徑包括: 判斷第一獨立視圖和第二獨立視圖之間是否有直接關係,若沒有,則查找所述第一獨立視圖和第二獨立視圖之間的間接關係;從查找到的所有關係路徑中,找出所述第一獨立視圖和第二獨立視圖之間的最短關係路徑;其中,所述第一獨立視圖和第二獨立視圖是所述獨立視圖集合中的任意兩個獨立視圖。
5.根據權利要求1所述的方法,其特徵在於,還包括: 針對多個指定欄位新建獨立視圖,所述新建的獨立視圖包括:從所述多個指定欄位的直接來源視圖中複製來的所述指定欄位,以及所述指定欄位在所述直接來源視圖中與其它視圖的直接關係。
6.根據權利要求5所述的方法,其特徵在於,所述針對多個指定欄位新建獨立視圖包括: 查找每個指定欄位的直接來源視圖; 查找與找出的直接來源視圖存在直接關係的其它視圖; 從找出的直接來源視圖中,複製所述指定欄位以及所述指定欄位與其它視圖的所有直接關係到新建的獨立視圖中。
7.—種生成結構化查詢語言SQL語句的裝置,其特徵在於,包括: 視圖查找模塊,用於查找報表中每個欄位的來源,找出包括所述欄位的獨立視圖,找出的所有獨立視圖組成獨立視圖集合;關係查找模塊,用於查找所述獨立視圖集合中任意兩個獨立視圖之間的最短關係路徑,並將所述最短關係路徑上的其它獨立視圖添加到所述獨立視圖集合中,以及記錄任意兩個獨立視圖之間的關係表達式; 語句生成模塊,用於根據所述獨立視圖集合及其中任意兩個獨立視圖之間的關係表達式,生成SQL語句。
8.根據權利要求7所述的裝置,其特徵在於,所述視圖查找模塊包括: 分析查找單元,用於分析報表中每個欄位的表達式,以查找每個欄位的來源視圖; 視圖判斷單元,用於判斷查找到的來源視圖是否是獨立視圖; 記錄處理單元,用於如果所述視圖判斷單元判斷查找到的來源視圖是獨立視圖,則將查找到的獨立視圖添加到獨立視圖集合中; 所述分析查找單元,還用於如果所述視圖判斷單元判斷查找到的來源視圖不是獨立視圖,則分析查找到的來源視圖中所述欄位的表達式,繼續遞歸查找所述欄位的來源視圖,直到所述視圖判斷單元判斷查找到的來源視圖是獨立視圖為止。
9.根據權利要求8所述的裝置,其特徵在於: 所述視圖判斷單元,具體用於如果所述分析查找單元查找到的來源視圖是資料庫導入的視圖,則判斷查找到的來源視圖是獨立視圖;如果所述分析查找單元查找到的來源視圖是新建的視圖,則, 判斷所述新建的視圖是否與其它視圖有直接關係,若有,則判斷所述新建的視圖是獨立視圖;或者,判斷所述新建的視圖中是否有新的聚合方式,若有,則判斷所述新建的視圖是獨立視圖。
10.根據權利要求7所述的裝置,其特徵在於,所述關係查找模塊包括: 關係判斷單元,用於判斷第一獨立視圖和第二獨立視圖之間是否有直接關係,其中,所述第一獨立視圖和第二獨立視圖是所述獨立視圖集合中的任意兩個獨立視圖; 關係查找單元,用於若所述關係判斷單元判斷為沒有直接關係,則查找所述第一獨立視圖和第二獨立視圖之間的間接關係;並從查找到的所有關係路徑中,找出所述第一獨立視圖和第二獨立視圖之間的最短關係路徑。
11.根據權利要求7所述的裝置,其特徵在於,還包括: 視圖創建模塊,用於針對多個指定欄位新建獨立視圖,所述新建的獨立視圖包括:從所述多個指定欄位的直接來源視圖中複製來的所述指定欄位,以及所述指定欄位在所述直接來源視圖中與其它視圖的直接關係。
12.根據權利要求11所述的裝置,其特徵在於,所述視圖創建模塊包括: 查找單元,用於查找每個指定欄位的直接來源視圖;以及,查找與找出的直接來源視圖存在直接關係的其它視圖; 複製單元,用於從找出的直接來源視圖中,複製所述指定欄位以及所述指定欄位與其它視圖的所有直接關係到新建的獨立視圖中。
【文檔編號】G06F17/30GK104050264SQ201410276540
【公開日】2014年9月17日 申請日期:2014年6月19日 優先權日:2014年6月19日
【發明者】張偉, 劉衍初 申請人:華為技術有限公司

同类文章

一種新型多功能組合攝影箱的製作方法

一種新型多功能組合攝影箱的製作方法【專利摘要】本實用新型公開了一種新型多功能組合攝影箱,包括敞開式箱體和前攝影蓋,在箱體頂部設有移動式光源盒,在箱體底部設有LED脫影板,LED脫影板放置在底板上;移動式光源盒包括上蓋,上蓋內設有光源,上蓋部設有磨沙透光片,磨沙透光片將光源封閉在上蓋內;所述LED脫影

壓縮模式圖樣重疊檢測方法與裝置與流程

本發明涉及通信領域,特別涉及一種壓縮模式圖樣重疊檢測方法與裝置。背景技術:在寬帶碼分多址(WCDMA,WidebandCodeDivisionMultipleAccess)系統頻分復用(FDD,FrequencyDivisionDuplex)模式下,為了進行異頻硬切換、FDD到時分復用(TDD,Ti

個性化檯曆的製作方法

專利名稱::個性化檯曆的製作方法技術領域::本實用新型涉及一種檯曆,尤其涉及一種既顯示月曆、又能插入照片的個性化檯曆,屬於生活文化藝術用品領域。背景技術::公知的立式檯曆每頁皆由月曆和畫面兩部分構成,這兩部分都是事先印刷好,固定而不能更換的。畫面或為風景,或為模特、明星。功能單一局限性較大。特別是畫

一種實現縮放的視頻解碼方法

專利名稱:一種實現縮放的視頻解碼方法技術領域:本發明涉及視頻信號處理領域,特別是一種實現縮放的視頻解碼方法。背景技術: Mpeg標準是由運動圖像專家組(Moving Picture Expert Group,MPEG)開發的用於視頻和音頻壓縮的一系列演進的標準。按照Mpeg標準,視頻圖像壓縮編碼後包

基於加熱模壓的纖維增強PBT複合材料成型工藝的製作方法

本發明涉及一種基於加熱模壓的纖維增強pbt複合材料成型工藝。背景技術:熱塑性複合材料與傳統熱固性複合材料相比其具有較好的韌性和抗衝擊性能,此外其還具有可回收利用等優點。熱塑性塑料在液態時流動能力差,使得其與纖維結合浸潤困難。環狀對苯二甲酸丁二醇酯(cbt)是一種環狀預聚物,該材料力學性能差不適合做纖

一種pe滾塑儲槽的製作方法

專利名稱:一種pe滾塑儲槽的製作方法技術領域:一種PE滾塑儲槽一、 技術領域 本實用新型涉及一種PE滾塑儲槽,主要用於化工、染料、醫藥、農藥、冶金、稀土、機械、電子、電力、環保、紡織、釀造、釀造、食品、給水、排水等行業儲存液體使用。二、 背景技術 目前,化工液體耐腐蝕貯運設備,普遍使用傳統的玻璃鋼容

釘的製作方法

專利名稱:釘的製作方法技術領域:本實用新型涉及一種釘,尤其涉及一種可提供方便拔除的鐵(鋼)釘。背景技術:考慮到廢木材回收後再加工利用作業的方便性與安全性,根據環保規定,廢木材的回收是必須將釘於廢木材上的鐵(鋼)釘拔除。如圖1、圖2所示,目前用以釘入木材的鐵(鋼)釘10主要是在一釘體11的一端形成一尖

直流氧噴裝置的製作方法

專利名稱:直流氧噴裝置的製作方法技術領域:本實用新型涉及ー種醫療器械,具體地說是ー種直流氧噴裝置。背景技術:臨床上的放療過程極易造成患者的局部皮膚損傷和炎症,被稱為「放射性皮炎」。目前對於放射性皮炎的主要治療措施是塗抹藥膏,而放射性皮炎患者多伴有局部疼痛,對於止痛,多是通過ロ服或靜脈注射進行止痛治療

新型熱網閥門操作手輪的製作方法

專利名稱:新型熱網閥門操作手輪的製作方法技術領域:新型熱網閥門操作手輪技術領域:本實用新型涉及一種新型熱網閥門操作手輪,屬於機械領域。背景技術::閥門作為流體控制裝置應用廣泛,手輪傳動的閥門使用比例佔90%以上。國家標準中提及手輪所起作用為傳動功能,不作為閥門的運輸、起吊裝置,不承受軸向力。現有閥門

用來自動讀取管狀容器所載識別碼的裝置的製作方法

專利名稱:用來自動讀取管狀容器所載識別碼的裝置的製作方法背景技術:1-本發明所屬領域本發明涉及一種用來自動讀取管狀容器所載識別碼的裝置,其中的管狀容器被放在循環於配送鏈上的文檔匣或託架裝置中。本發明特別適用於,然而並非僅僅專用於,對引入自動分析系統的血液樣本試管之類的自動識別。本發明還涉及專為實現讀