專利名稱::一種基于視圖的數(shù)據(jù)訪問系統(tǒng)及其方法
技術(shù)領(lǐng)域:
:本發(fā)明涉及計(jì)算機(jī)數(shù)據(jù)訪問
技術(shù)領(lǐng)域:
,尤其是涉及一種應(yīng)用于計(jì)算機(jī)信息領(lǐng)域的基于視圖的數(shù)據(jù)訪問系統(tǒng)及其方法。
背景技術(shù):
:當(dāng)前,基于關(guān)系數(shù)據(jù)庫的數(shù)據(jù)訪問中,主要有幾下幾種方法(1)內(nèi)嵌SQL代碼圖1中所采用的方法是SQL(StructuredQueryLanguage,結(jié)構(gòu)化查詢語言)代碼直接嵌入在業(yè)務(wù)類中,這種策略是針對(duì)小型系統(tǒng)能快速開發(fā)。但是它的缺點(diǎn)也是很顯然的,SQL代碼是寫在源代碼中,這就意味著任何一個(gè)簡單的改變,例如改變數(shù)據(jù)庫中表的一個(gè)列名,則必須修改源代碼。這種修改對(duì)于一個(gè)小型系統(tǒng)尚可接受,如果對(duì)于大中型系統(tǒng),這種缺陷是極為嚴(yán)重的。(2)業(yè)務(wù)類建立獨(dú)立的數(shù)據(jù)類圖2中所采用的方法是業(yè)務(wù)類的SQL代碼寫在獨(dú)立的一個(gè)或多個(gè)數(shù)據(jù)類中或在存儲(chǔ)過程中。這種方法相對(duì)于把SQL代碼嵌入在業(yè)務(wù)類中有了很大的進(jìn)步,但是這種方法同樣也只適用于業(yè)務(wù)類小于40至50個(gè)左右的小型系統(tǒng)。同時(shí),當(dāng)數(shù)據(jù)庫進(jìn)行簡單的改變時(shí),相應(yīng)的數(shù)據(jù)類要重新編譯。這種方法只是做到了壓縮源代碼,而把處理SQL放置在了數(shù)據(jù)類。采用這種方法,在支持多個(gè)對(duì)象模型對(duì)應(yīng)同一個(gè)映射定義方面缺乏靈活性,開發(fā)人員必須手工映射每一個(gè)對(duì)象模型。更糟糕的是,在企業(yè)級(jí)應(yīng)用中,這種方法在異構(gòu)組件環(huán)境中不能很好的獨(dú)立,而且由于方法是靜態(tài)的,即一個(gè)類對(duì)應(yīng)一個(gè)映射模型,所以是不可擴(kuò)展的。(3)業(yè)務(wù)類建立共享的數(shù)據(jù)類圖3中所采用的方法是為所有業(yè)務(wù)類建立一個(gè)共享數(shù)據(jù)類來實(shí)現(xiàn)數(shù)據(jù)訪問,實(shí)際上是針對(duì)為每個(gè)業(yè)務(wù)類建立獨(dú)立數(shù)據(jù)類方法的改進(jìn)。和上述的獨(dú)立數(shù)據(jù)類方法相比,共享數(shù)據(jù)類實(shí)現(xiàn)了代碼的重用性。圖4所示的共享數(shù)據(jù)類圖,其中方法參數(shù)tableName為表名,兩個(gè)靜態(tài)數(shù)組Name和Value分別存放列名和列值。具體方法包括查詢、增加、刪除和修改,根據(jù)表名參數(shù)和兩個(gè)靜態(tài)數(shù)組,利用動(dòng)態(tài)SQL技術(shù)實(shí)現(xiàn)SQL代碼的自動(dòng)生成。共享數(shù)據(jù)類方法擺脫了繁重的SQL語句,實(shí)現(xiàn)了SQL語句的自動(dòng)生成。從這個(gè)角度來說,共享數(shù)據(jù)類方法有了極大的提高,但是共享數(shù)據(jù)類只適應(yīng)于單表操作,不適用多表操作,例如查詢操作中需要從數(shù)據(jù)庫多張表中獲取數(shù)據(jù)時(shí),上述共享數(shù)據(jù)類無法實(shí)現(xiàn)。在現(xiàn)有技術(shù)當(dāng)中,一種與本發(fā)明最接近的技術(shù)為由浪潮集團(tuán)山東通用軟件有限公司于2007年05月10日申請(qǐng),2007年11月07日公開,公開號(hào)為CN101067814A的中國發(fā)明專利申請(qǐng)《數(shù)據(jù)訪問層XML格式數(shù)據(jù)與關(guān)系數(shù)據(jù)間的映射轉(zhuǎn)換方法》所公開。該發(fā)明主要是說明數(shù)據(jù)訪問層的作用模式、方法。它提供一種數(shù)據(jù)訪問層XML格式數(shù)據(jù)與關(guān)系數(shù)據(jù)間的映射轉(zhuǎn)換方法,該方法主要包括設(shè)計(jì)時(shí)和運(yùn)行時(shí)兩個(gè)階段,其中在設(shè)計(jì)時(shí)階段,針對(duì)關(guān)系數(shù)據(jù)的數(shù)據(jù)結(jié)構(gòu)以及對(duì)象與關(guān)系數(shù)據(jù)的映射和轉(zhuǎn)換進(jìn)行建模,描述為數(shù)據(jù)對(duì)象和數(shù)據(jù)模型兩種元數(shù)據(jù),數(shù)據(jù)對(duì)象是關(guān)系數(shù)據(jù)進(jìn)行建模,將數(shù)據(jù)庫中的表和視圖的數(shù)據(jù)結(jié)構(gòu)抽象出來,描述其名稱、字段屬性等。在運(yùn)行時(shí)階段,由數(shù)據(jù)訪問引擎,根據(jù)設(shè)計(jì)時(shí)定義的元數(shù)據(jù)信息,結(jié)合輸入的數(shù)據(jù)信息,動(dòng)態(tài)的構(gòu)造數(shù)據(jù)庫存取訪問的SQL(結(jié)構(gòu)化查詢語言)語句,訪問數(shù)據(jù)庫,自動(dòng)完成增刪改查的數(shù)據(jù)訪問層的功能,并對(duì)動(dòng)態(tài)構(gòu)造過程的結(jié)果進(jìn)行適量緩存。(1)在內(nèi)嵌SQL代碼方法中,SQL代碼寫在源代碼中,任何一個(gè)簡單的改變則必須修改源代碼;(2)在業(yè)務(wù)類建立獨(dú)立的數(shù)據(jù)類方法中,SQL代碼寫在獨(dú)立的一個(gè)或多個(gè)數(shù)據(jù)類中或在存儲(chǔ)過程中。采用這種方法,在支持多個(gè)對(duì)象模型對(duì)應(yīng)同一個(gè)映射定義方面缺乏靈活性,開發(fā)人員必須手工映射每一個(gè)對(duì)象模型。更糟糕的是,在企業(yè)級(jí)應(yīng)用中,這種方法在異構(gòu)組件環(huán)境中不能很好的獨(dú)立,而且由于方法是靜態(tài)的,即一個(gè)類對(duì)應(yīng)一個(gè)映射模型,所以是不可擴(kuò)展的;(3)在業(yè)務(wù)類建立共享的數(shù)據(jù)類方法中,為所有業(yè)務(wù)類建立一個(gè)共享數(shù)據(jù)類來實(shí)現(xiàn)數(shù)據(jù)訪問,利用動(dòng)態(tài)SQL技術(shù)實(shí)現(xiàn)SQL代碼的自動(dòng)生成。共享數(shù)據(jù)類方法擺脫了繁重的SQL語句,實(shí)現(xiàn)了SQL語句的自動(dòng)生成。從這個(gè)角度來說,共享數(shù)據(jù)類方法有了極大的提高,但是共享數(shù)據(jù)類只適用于單表操作,不適用于多表操作,例如查詢操作中需要從數(shù)據(jù)庫多張表中獲取數(shù)據(jù)時(shí),上述共享數(shù)據(jù)類無法實(shí)現(xiàn)。(4)當(dāng)用戶使用CN101067814A發(fā)明專利申請(qǐng)的方法進(jìn)行表格數(shù)據(jù)操作時(shí),若表格的數(shù)據(jù)源為以下情況(a)在SELECT語句中使用DISTINCT操作符的視圖;(b)使用類似SUN或MAX等聚集函數(shù)的視圖;(c)包含GROUPBY、ORDERBY子句的視圖;(d)在SELECT列表中使用子查詢的視圖;(e)聯(lián)合多個(gè)表的視圖。上述的這幾類視圖在一般情況下不能通過SQL語句進(jìn)行更新,例如無法用一句標(biāo)準(zhǔn)SQL(例如Update)來操作多個(gè)物理表組成的視圖數(shù)據(jù);當(dāng)數(shù)據(jù)源有視圖和物理表,開發(fā)人員不但要熟悉數(shù)據(jù)庫的表定義,還要熟悉大量的視圖定義,增加了開發(fā)難度。
發(fā)明內(nèi)容本發(fā)明提供一種基于視圖的數(shù)據(jù)訪問系統(tǒng)及其方法,該系統(tǒng)及其方法在源代碼文件中不出現(xiàn)SQL代碼,實(shí)現(xiàn)數(shù)據(jù)訪問組件對(duì)象對(duì)關(guān)系數(shù)據(jù)庫的映射,有效地減少了開發(fā)人員的工程量,可以縮短整個(gè)開發(fā)周期。同時(shí)整個(gè)系統(tǒng)易于學(xué)習(xí)和操作。本發(fā)明提供一種基于視圖的數(shù)據(jù)訪問系統(tǒng)的技術(shù)實(shí)現(xiàn)方案,一種基于視圖的數(shù)據(jù)訪問系統(tǒng),包括界面組件、數(shù)據(jù)訪問層、數(shù)據(jù)庫接口、關(guān)系數(shù)據(jù)庫連接模塊、關(guān)系數(shù)據(jù)庫;界面組件與數(shù)據(jù)訪問層相連,并向數(shù)據(jù)訪問層發(fā)送用戶消息;數(shù)據(jù)訪問層包括對(duì)象創(chuàng)建組件和數(shù)據(jù)訪問組件,數(shù)據(jù)訪問層的對(duì)象創(chuàng)建組件創(chuàng)建數(shù)據(jù)訪問組件,數(shù)據(jù)訪問組件包括復(fù)雜視圖組件和簡單視圖組件;數(shù)據(jù)訪問組件產(chǎn)生SQL操作語句,數(shù)據(jù)訪問組件與數(shù)據(jù)庫接口相連接,通過XML配置文件獲取數(shù)據(jù)庫信息,同時(shí)獲取數(shù)據(jù)庫連接對(duì)象;數(shù)據(jù)庫接口與關(guān)系數(shù)據(jù)庫連接模塊相連,通過關(guān)系數(shù)據(jù)庫連接模塊將SQL操作語句傳遞給關(guān)系數(shù)據(jù)庫,關(guān)系數(shù)據(jù)庫執(zhí)行SQL操作語句,并通過關(guān)系數(shù)據(jù)庫連接模塊將數(shù)據(jù)訪問組件對(duì)象中的獲取數(shù)據(jù)屬性所定義的查詢語句傳遞給關(guān)系數(shù)據(jù)庫,關(guān)系數(shù)據(jù)庫執(zhí)行查詢語句;關(guān)系數(shù)據(jù)庫連接模塊根據(jù)查詢語句將所返回的數(shù)據(jù)傳輸給數(shù)據(jù)訪問組件;數(shù)據(jù)訪問組件將獲取的數(shù)據(jù)源傳輸至界面組件進(jìn)行顯示,界面組件刷新數(shù)據(jù),并通知用戶。作為本發(fā)明一種基于視圖的數(shù)據(jù)訪問系統(tǒng)技術(shù)方案的進(jìn)一步改進(jìn),復(fù)雜視圖組件包括第一中心控制器、第一SQL操作生成器、第一視圖生成器、INSTEADOF觸發(fā)器生成器、第一動(dòng)態(tài)SQL拼裝生成器、第一連接器、第一公共屬性集合;第一中心控制器接收用戶消息,返回用戶數(shù)據(jù)或提示信息,解析XML映射文件并寫入第一公共屬性集合,向第一SQL操作生成器、第一視圖生成器、INSTEADOF觸發(fā)器生成器發(fā)送動(dòng)作消息,并接收第一SQL操作生成器、第一視圖生成器、INSTEADOF觸發(fā)器生成器的消息和關(guān)系數(shù)據(jù)庫的返回結(jié)果;第一SQL操作生成器生成SQL,并通過第一連接器和數(shù)據(jù)庫接口傳送至關(guān)系數(shù)據(jù)庫;第一視圖生成器根據(jù)不同的關(guān)系數(shù)據(jù)庫創(chuàng)建組件依賴視圖的動(dòng)態(tài)SQL;INSTEADOF觸發(fā)器生成器根據(jù)不同的關(guān)系數(shù)據(jù)庫創(chuàng)建一個(gè)在組件依賴視圖上操作的INSTEADOF觸發(fā)器的動(dòng)態(tài)SQL;動(dòng)態(tài)SQL拼裝生成器根據(jù)第一公共屬性集合輸出的公共屬性值進(jìn)行SQL的拼裝,實(shí)現(xiàn)動(dòng)態(tài)SQL;第一連接器與數(shù)據(jù)庫接口進(jìn)行連接;第一公共屬性集合存儲(chǔ)來自第一中心控制器解析XML映射文件的相關(guān)信息。作為本發(fā)明一種基于視圖的數(shù)據(jù)訪問系統(tǒng)技術(shù)方案的進(jìn)一步改進(jìn),簡單視圖組件包括第二中心控制器、第二SQL操作生成器、第二視圖生成器、第二動(dòng)態(tài)SQL拼裝生成器、第二連接器、第二公共屬性集合;第二中心控制器接收用戶消息,返回用戶數(shù)據(jù)或提示信息,解析XML映射文件并寫入公共屬性集合,并向第二SQL操作生成器和第二視圖生成器發(fā)送動(dòng)作消息,接收第二SQL操作生成器和第二視圖生成器的消息和數(shù)據(jù)庫的返回結(jié)果;第二SQL操作生成器生成SQL,并通過第二連接器和數(shù)據(jù)庫接口傳送至關(guān)系數(shù)據(jù)庫;第二視圖生成器根據(jù)不同的關(guān)系數(shù)據(jù)庫創(chuàng)建組件依賴視圖的動(dòng)態(tài)SQL;第二動(dòng)態(tài)SQL拼裝生成器根據(jù)第二公共屬性集合輸出的公共屬性值進(jìn)行SQL的拼裝,實(shí)現(xiàn)動(dòng)態(tài)SQL;第二連接器與數(shù)據(jù)庫接口進(jìn)行連接;第二公共屬性集合存儲(chǔ)來自第二中心控制器解析XML映射文件的相關(guān)信息。本發(fā)明還提供一種利用上述基于視圖的數(shù)據(jù)訪問系統(tǒng)進(jìn)行數(shù)據(jù)訪問的方法的技術(shù)實(shí)現(xiàn)方案,該方法包括以下步驟SlOl界面組件向數(shù)據(jù)訪問層發(fā)送包括具體的操作消息、視圖組件類型標(biāo)識(shí)、XML映射文件和XML配置文件的路徑、數(shù)據(jù)訪問組件對(duì)象標(biāo)識(shí)、數(shù)據(jù)訪問組件獲取數(shù)據(jù)標(biāo)識(shí)在內(nèi)的用戶消息;S102:數(shù)據(jù)訪問層的對(duì)象創(chuàng)建組件根據(jù)視圖組件標(biāo)識(shí)創(chuàng)建一個(gè)數(shù)據(jù)訪問組件對(duì)象,數(shù)據(jù)訪問組件對(duì)象包括復(fù)雜視圖組件對(duì)象或簡單視圖組件對(duì)象,并完成數(shù)據(jù)訪問組件對(duì)象的初始化工作;S103:數(shù)據(jù)訪問組件對(duì)象根據(jù)復(fù)雜視圖組件或簡單視圖組件的類型完成初始化工作,并根據(jù)操作消息屬性,若是數(shù)據(jù)獲取,則執(zhí)行數(shù)據(jù)獲取過程;若為數(shù)據(jù)刪除,則執(zhí)行數(shù)據(jù)刪除過程;若為數(shù)據(jù)增加或修改,則執(zhí)行數(shù)據(jù)增加或修改過程,最后由數(shù)據(jù)訪問組件產(chǎn)生一個(gè)SQL操作語句;S104數(shù)據(jù)訪問組件對(duì)象連接數(shù)據(jù)庫接口,通過XML配置文件獲取數(shù)據(jù)庫信息,同時(shí)獲取一個(gè)數(shù)據(jù)庫連接對(duì)象;S105關(guān)系數(shù)據(jù)庫連接模塊通過數(shù)據(jù)庫連接對(duì)象將SQL操作語句傳遞給關(guān)系數(shù)據(jù)庫,關(guān)系數(shù)據(jù)庫執(zhí)行SQL操作語句;S106:關(guān)系數(shù)據(jù)庫連接模塊通過數(shù)據(jù)庫連接對(duì)象將數(shù)據(jù)訪問組件對(duì)象中的獲取數(shù)據(jù)屬性所定義的查詢語句傳遞給關(guān)系數(shù)據(jù)庫,關(guān)系數(shù)據(jù)庫執(zhí)行查詢語句;S107:數(shù)據(jù)庫連接對(duì)象根據(jù)查詢語句將所返回的數(shù)據(jù)傳給數(shù)據(jù)訪問組件對(duì)象,完成操作后,該數(shù)據(jù)庫連接對(duì)象關(guān)閉;S108數(shù)據(jù)訪問組件對(duì)象將獲取的數(shù)據(jù)源提供給界面組件對(duì)象進(jìn)行顯示,系統(tǒng)刪除該數(shù)據(jù)訪問組件對(duì)象;S109界面組件對(duì)象刷新數(shù)據(jù),并通知用戶。作為本發(fā)明一種基于視圖的數(shù)據(jù)訪問方法技術(shù)方案的進(jìn)一步改進(jìn),基于視圖的數(shù)據(jù)訪問方法包括復(fù)雜視圖組件對(duì)象初始化過程,該過程包括以下步驟S201第一中心控制器將用戶消息分別寫入組件對(duì)象的公共屬性集合中,包括具體操作消息屬性、XML映射文件路徑屬性、XML配置文件路徑屬性、對(duì)象標(biāo)識(shí)屬性、獲取數(shù)據(jù)標(biāo)識(shí)屬性或獲取數(shù)據(jù)的查詢條件值;S202第一中心控制器根據(jù)組件對(duì)象的XML映射文件路徑屬性找到XML映射文件,根據(jù)對(duì)象標(biāo)識(shí)屬性在XML映射文件中實(shí)現(xiàn)定位,找到相應(yīng)的數(shù)據(jù)塊,第一中心控制器對(duì)數(shù)據(jù)塊進(jìn)行XML解析工作,將物理表名、表屬性等寫入對(duì)象的公共屬性集中;S203第一中心控制器向第一SQL操作生成器發(fā)送獲取數(shù)據(jù)標(biāo)識(shí)屬性消息,由第一SQL操作生成器調(diào)用第一動(dòng)態(tài)SQL拼裝生成器和第一公共屬性集合動(dòng)態(tài)產(chǎn)生一個(gè)select查詢語句,第一SQL操作生成器將select查詢語句消息返回給第一中心控制器,第一中心控制器再將select查詢語句寫入對(duì)象的獲取數(shù)據(jù)屬性中;S204第一中心控制器向第一SQL操作生成器發(fā)送查詢數(shù)據(jù)庫視圖消息,由第一SQL操作生成器調(diào)用第一動(dòng)態(tài)SQL拼裝生成器和第一公共屬性集合動(dòng)態(tài)產(chǎn)生組件對(duì)象所依賴的視圖是否存在的SQL,并發(fā)送給第一連接器;S205第一連接器連接數(shù)據(jù)庫接口后,創(chuàng)建一個(gè)數(shù)據(jù)庫連接對(duì)象,關(guān)系數(shù)據(jù)庫執(zhí)行查詢視圖是否存在的SQL,將結(jié)果返回給第一連接器,第一連接器將消息傳給第一中心控制器;否則若第一連接器超時(shí),則第一中心控制器發(fā)送一個(gè)錯(cuò)誤信息,流程結(jié)束;S206:第一中心控制器收到第一連接器的消息,若視圖存在,則直接執(zhí)行步驟S211;否則第一連接器通過數(shù)據(jù)庫接口關(guān)閉新創(chuàng)建的數(shù)據(jù)庫連接對(duì)象,同時(shí)第一中心控制器向第一視圖生成器發(fā)送創(chuàng)建視圖消息,第一視圖生成器的接口根據(jù)XML配置文件獲取關(guān)系數(shù)據(jù)庫類型,選擇對(duì)應(yīng)的關(guān)系數(shù)據(jù)庫視圖生成組件,該組件調(diào)用第一動(dòng)態(tài)SQL拼裝生成器和第一公共屬性集合動(dòng)態(tài)產(chǎn)生一個(gè)創(chuàng)建視圖的SQL,并將該SQL發(fā)送給第一連接器;S207第一連接器收到創(chuàng)建視圖的SQL,連接數(shù)據(jù)庫接口,創(chuàng)建一個(gè)數(shù)據(jù)庫連接對(duì)象,關(guān)系數(shù)據(jù)庫執(zhí)行創(chuàng)建視圖SQL,將結(jié)果返回給第一連接器,第一連接器將消息傳給第一中心控制器;否則若第一連接器超時(shí),則第一中心控制器發(fā)送一個(gè)錯(cuò)誤信息,流程結(jié)束;S208第一中心控制器收到視圖創(chuàng)建的消息,由第一連接器通過數(shù)據(jù)庫接口關(guān)閉新創(chuàng)建的數(shù)據(jù)庫連接對(duì)象,同時(shí)向INSTEADOF觸發(fā)器生成器發(fā)送創(chuàng)建INSTEADOF觸發(fā)器消息,INSTEADOF觸發(fā)器生成器的接口根據(jù)XML配置文件獲取關(guān)系數(shù)據(jù)庫類型,選擇對(duì)應(yīng)的關(guān)系數(shù)據(jù)庫INSTEADOF觸發(fā)器生成組件,該組件調(diào)用第一動(dòng)態(tài)SQL拼裝生成器和第一公共屬性集合動(dòng)態(tài)產(chǎn)生一個(gè)生成INSTEADOF觸發(fā)器的SQL,并將該SQL發(fā)送給第一連接器;S209第一連接器收到創(chuàng)建INSTEADOF觸發(fā)器的SQL,連接數(shù)據(jù)庫接口,創(chuàng)建一個(gè)數(shù)據(jù)庫連接對(duì)象,關(guān)系數(shù)據(jù)庫執(zhí)行創(chuàng)建INSTEADOF觸發(fā)器SQL,將結(jié)果返回給第一連接器,第一連接器將消息傳給第一中心控制器;否則若第一連接器超時(shí),則第一中心控制器發(fā)送一個(gè)錯(cuò)誤信息,流程結(jié)束;S210第一中心控制器收到INSTEADOF觸發(fā)器創(chuàng)建的消息;S211第一中心控制器向第一連接器發(fā)送關(guān)閉信息,由第一連接器通過數(shù)據(jù)庫接口關(guān)閉新創(chuàng)建數(shù)據(jù)庫連接對(duì)象,同時(shí)發(fā)送初始化已完成的提示信息,該流程結(jié)束。作為本發(fā)明一種基于視圖的數(shù)據(jù)訪問方法技術(shù)方案的進(jìn)一步改進(jìn),基于視圖的數(shù)據(jù)訪問方法包括復(fù)雜視圖組件對(duì)象數(shù)據(jù)獲取過程,該過程包括以下步驟S301若視圖組件對(duì)象沒有進(jìn)行初始化,則先進(jìn)行初始化流程;S302第一中心控制器向第一SQL操作生成器發(fā)送數(shù)據(jù)獲取信息;S303第一SQL操作生成器收到數(shù)據(jù)獲取信息,將對(duì)象的數(shù)據(jù)獲取屬性發(fā)送到第一連接器;S304第一連接器連接數(shù)據(jù)庫接口后,創(chuàng)建一個(gè)數(shù)據(jù)庫連接對(duì)象,關(guān)系數(shù)據(jù)庫在組件對(duì)象所依賴的視圖上執(zhí)行一條select獲取數(shù)據(jù),并將結(jié)果返回給第一連接器,第一連接器將數(shù)據(jù)集傳給第一中心控制器;否則若第一連接器超時(shí),則第一中心控制器發(fā)送一個(gè)錯(cuò)誤信息,流程結(jié)束;S305第一中心控制器收到數(shù)據(jù)集后,向第一連接器發(fā)送消息,由第一連接器通過數(shù)據(jù)庫接口關(guān)閉新創(chuàng)建的數(shù)據(jù)庫連接對(duì)象;S306第一中心控制器向界面組件對(duì)象傳遞數(shù)據(jù),界面組件對(duì)象刷新數(shù)據(jù),通知用戶后,該流程結(jié)束。作為本發(fā)明一種基于視圖的數(shù)據(jù)訪問方法技術(shù)方案的進(jìn)一步改進(jìn),基于視圖的數(shù)據(jù)訪問方法包括復(fù)雜視圖組件對(duì)象數(shù)據(jù)刪除過程,該過程包括以下步驟S401先執(zhí)行對(duì)象的初始化工作流程;S402第一中心控制器從具體操作屬性判斷是刪除工作,則向第一SQL操作生成器發(fā)送刪除信息;S403第一SQL操作生成器接收到刪除信息,根據(jù)公共屬性集首先獲取父表屬性,其次判斷組件對(duì)象的物理表是多表還是單表,若是單表,則直接執(zhí)行S406;若是多表,則第一SQL操作生成器生成一個(gè)獲取父表主外鍵的SQL,發(fā)送給第一連接器;S404第一連接器連接數(shù)據(jù)庫接口后,創(chuàng)建一個(gè)數(shù)據(jù)庫連接對(duì)象,關(guān)系數(shù)據(jù)庫執(zhí)行獲取父表主外鍵的SQL,將結(jié)果返回給第一連接器,第一連接器將消息傳給第一中心控制器;否則若第一連接器超時(shí),則第一中心控制器發(fā)送一個(gè)錯(cuò)誤信息,流程結(jié)束;S405:第一中心控制器收到父表的主外鍵信息,通過第一連接器通知數(shù)據(jù)庫接口關(guān)閉新創(chuàng)建的數(shù)據(jù)庫連接對(duì)象,同時(shí)將主外鍵信息寫入第一公共屬性集合,寫入完成后,第一中心控制器向第一SQL操作生成器發(fā)送主外鍵成功獲取信息;S406:第一SQL操作生成器調(diào)用第一動(dòng)態(tài)SQL拼裝生成器和公共屬性集合,生成一條操作父表的刪除SQL,實(shí)現(xiàn)單表或多表的信息刪除;S407第一連接器連接數(shù)據(jù)庫接口后,創(chuàng)建一個(gè)數(shù)據(jù)庫連接對(duì)象,關(guān)系數(shù)據(jù)庫執(zhí)行一條操作父表的刪除SQL,將結(jié)果返回給第一連接器,第一連接器將消息傳給第一中心控制器;否則若第一連接器超時(shí),則第一中心控制器發(fā)送一個(gè)錯(cuò)誤信息,流程結(jié)束;S408:第一中心控制器收到刪除操作消息,通過第一連接器通知數(shù)據(jù)庫接口關(guān)閉新創(chuàng)建的數(shù)據(jù)庫連接對(duì)象,同時(shí)向第一SQL操作生成器發(fā)送獲取信息;S409執(zhí)行組件對(duì)象的數(shù)據(jù)獲取流程后,流程結(jié)束。作為本發(fā)明一種基于視圖的數(shù)據(jù)訪問方法技術(shù)方案的進(jìn)一步改進(jìn),基于視圖的數(shù)據(jù)訪問方法包括復(fù)雜視圖組件對(duì)象數(shù)據(jù)增加和修改過程,該過程包括以下步驟S501先執(zhí)行組件對(duì)象的初始化工作流程;S502第一中心控制器從具體操作屬性判斷是增加數(shù)據(jù)工作或修改數(shù)據(jù)工作,則向第一SQL操作生成器發(fā)送增加信息;S503第一SQL操作生成器接收到增加信息,由第一動(dòng)態(tài)SQL拼裝生成器產(chǎn)生一條在組件對(duì)象所依賴視圖上操作的插入語句,實(shí)現(xiàn)增加數(shù)據(jù)和修改數(shù)據(jù)工作,實(shí)現(xiàn)視圖的更新;S504第一連接器連接數(shù)據(jù)庫接口后,創(chuàng)建一個(gè)數(shù)據(jù)庫連接對(duì)象,關(guān)系數(shù)據(jù)庫執(zhí)行插入語句,將結(jié)果返回給第一連接器,第一連接器將消息傳給第一中心控制器;否則若第一連接器超時(shí),則第一中心控制器發(fā)送一個(gè)錯(cuò)誤信息,流程結(jié)束;S505第一中心控制器收到插入操作消息,通過第一連接器通知數(shù)據(jù)庫接口關(guān)閉新創(chuàng)建的數(shù)據(jù)庫連接對(duì)象,同時(shí)向第一SQL操作生成器發(fā)送獲取信息;S506執(zhí)行組件對(duì)象的數(shù)據(jù)獲取流程后,流程結(jié)束。作為本發(fā)明一種基于視圖的數(shù)據(jù)訪問方法技術(shù)方案的進(jìn)一步改進(jìn),基于視圖的數(shù)據(jù)訪問方法包括簡單視圖組件對(duì)象初始化過程,該過程包括以下步驟S601第二中心控制器將包括具體操作消息屬性、XML映射文件路徑屬性、XML配置文件路徑屬性、對(duì)象標(biāo)識(shí)屬性、獲取數(shù)據(jù)標(biāo)識(shí)屬性、獲取數(shù)據(jù)的查詢條件值在內(nèi)的用戶消息分別寫入組件對(duì)象的公共屬性集中;S602第二中心控制器根據(jù)組件對(duì)象的XML映射文件路徑屬性找到XML映射文件,其次根據(jù)對(duì)象標(biāo)識(shí)屬性在XML映射文件中實(shí)現(xiàn)定位,找到相應(yīng)的數(shù)據(jù)塊,第二中心控制器開始對(duì)數(shù)據(jù)塊進(jìn)行XML解析工作,將物理表名、表屬性等寫入對(duì)象的公共屬性集中;S603第二中心控制器向第二SQL操作生成器發(fā)送獲取數(shù)據(jù)標(biāo)識(shí)屬性消息,由第二SQL操作生成器調(diào)用第二動(dòng)態(tài)SQL拼裝生成器和第二公共屬性集合動(dòng)態(tài)產(chǎn)生一個(gè)select查詢語句,第二SQL操作生成器將select查詢語句消息返回給第二中心控制器,第二中心控制器再將select查詢語句寫入對(duì)象的獲取數(shù)據(jù)屬性中;S604第二中心控制器向第二SQL操作生成器發(fā)送查詢數(shù)據(jù)庫視圖消息,由第二SQL操作生成器調(diào)用第二動(dòng)態(tài)SQL拼裝生成器和第二公共屬性集合動(dòng)態(tài)產(chǎn)生組件對(duì)象所依賴的視圖是否存在的SQL,并發(fā)送給第二連接器;S605第二連接器連接數(shù)據(jù)庫接口后,創(chuàng)建一個(gè)數(shù)據(jù)庫連接對(duì)象,關(guān)系數(shù)據(jù)庫執(zhí)行查詢視圖是否存在的SQL,將結(jié)果返回給第二連接器,第二連接器將消息傳給第二中心控制器;否則若第二連接器超時(shí),則第二中心控制器發(fā)送一個(gè)錯(cuò)誤信息,流程結(jié)束;S606:第二中心控制器收到第二連接器的消息,若視圖存在,則直接執(zhí)行步驟S609;否則第二連接器通過數(shù)據(jù)庫接口關(guān)閉新創(chuàng)建數(shù)據(jù)庫連接對(duì)象,同時(shí)第二中心控制器向第二視圖生成器發(fā)送創(chuàng)建視圖消息,第二視圖生成器的接口根據(jù)XML配置文件獲取關(guān)系數(shù)據(jù)庫類型,選擇對(duì)應(yīng)的關(guān)系數(shù)據(jù)庫視圖生成組件,該組件調(diào)用第二動(dòng)態(tài)SQL拼裝生成器和第二公共屬性集合動(dòng)態(tài)產(chǎn)生一個(gè)創(chuàng)建視圖的SQL,并將該SQL發(fā)送給第二連接器;S607第二連接器收到創(chuàng)建視圖的SQL,連接數(shù)據(jù)庫接口,創(chuàng)建一個(gè)數(shù)據(jù)庫連接對(duì)象,關(guān)系數(shù)據(jù)庫執(zhí)行創(chuàng)建視圖SQL,將結(jié)果返回給第二連接器,第二連接器將消息傳給第二中心控制器;否則若第二連接器超時(shí),則第二中心控制器發(fā)送一個(gè)錯(cuò)誤信息,流程結(jié)束;S608第二中心控制器收到視圖創(chuàng)建的消息;S609第二中心控制器向第二連接器發(fā)送關(guān)閉信息,由第二連接器通過數(shù)據(jù)庫接口關(guān)閉新創(chuàng)建數(shù)據(jù)庫連接對(duì)象,同時(shí)發(fā)送初始化已完成的提示信息,該流程結(jié)束。作為本發(fā)明一種基于視圖的數(shù)據(jù)訪問方法技術(shù)方案的進(jìn)一步改進(jìn),基于視圖的數(shù)據(jù)訪問方法包括簡單視圖組件對(duì)象數(shù)據(jù)刪除過程,該過程包括以下步驟S701先執(zhí)行組件對(duì)象的初始化工作流程;S702第二中心控制器從具體操作屬性判斷是刪除工作,則向第二SQL操作生成器發(fā)送刪除信息;S703:第二SQL操作生成器接收到刪除信息,調(diào)用第二動(dòng)態(tài)SQL拼裝生成器和第二公共屬性集合,生成一條在依賴視圖上進(jìn)行操作的刪除SQL,實(shí)現(xiàn)信息刪除;S704第二連接器連接數(shù)據(jù)庫接口后,創(chuàng)建一個(gè)數(shù)據(jù)庫連接對(duì)象,關(guān)系數(shù)據(jù)庫執(zhí)行一條操作依賴視圖的刪除SQL,將結(jié)果返回給第二連接器,第二連接器將消息傳給第二中心控制器;否則若連接器超時(shí),則第二中心控制器發(fā)送一個(gè)錯(cuò)誤信息,流程結(jié)束;S705:第二中心控制器收到刪除操作消息,通過第二連接器通知數(shù)據(jù)庫接口關(guān)閉新創(chuàng)建的數(shù)據(jù)庫連接對(duì)象,同時(shí)向第二SQL操作生成器發(fā)送獲取信息;S706執(zhí)行組件對(duì)象的數(shù)據(jù)獲取流程后,流程結(jié)束。通過應(yīng)用上述本發(fā)明實(shí)施方式所描述的一種基于視圖的數(shù)據(jù)訪問系統(tǒng)及其方法的技術(shù)方案,達(dá)到了如下技術(shù)效果(1)利用XML配置文件和XML映射文件生成動(dòng)態(tài)SQL,在源代碼文件中不出現(xiàn)SQL代碼,實(shí)現(xiàn)數(shù)據(jù)訪問組件對(duì)象對(duì)關(guān)系數(shù)據(jù)庫的映射;(2)對(duì)操作者來說簡單易用,同時(shí)提供共享服務(wù)有效地減少了開發(fā)人員的工程量,可以縮短整個(gè)開發(fā)周期;(3)開發(fā)人員只要熟悉數(shù)據(jù)庫的表定義,視圖定義由數(shù)據(jù)訪問組件對(duì)象操作。數(shù)據(jù)庫中的視圖對(duì)開發(fā)人員來說是透明的;(4)開發(fā)人員在配置XML映射文件時(shí),按照已約定規(guī)則,只要配置數(shù)據(jù)庫中的物理表,無須關(guān)心實(shí)際生成的數(shù)據(jù)源。為了更清楚地說明本發(fā)明實(shí)施例或現(xiàn)有技術(shù)中的技術(shù)方案,下面將對(duì)實(shí)施例或現(xiàn)有技術(shù)描述中所需要使用的附圖作簡單地介紹,顯而易見地,下面描述中的附圖僅僅是本發(fā)明的一些實(shí)施例,對(duì)于本領(lǐng)域普通技術(shù)人員來講,在不付出創(chuàng)造性勞動(dòng)的前提下,還可以根據(jù)這些附圖獲得其他的附圖。圖1為現(xiàn)有技術(shù)1一種具體實(shí)施方式所描述的SQL代碼嵌入在業(yè)務(wù)類中的數(shù)據(jù)訪問系統(tǒng)結(jié)構(gòu)示意圖;圖2為現(xiàn)有技術(shù)2—種具體實(shí)施方式所描述的業(yè)務(wù)類建立獨(dú)立數(shù)據(jù)類的數(shù)據(jù)訪問系統(tǒng)結(jié)構(gòu)示意圖;圖3為現(xiàn)有技術(shù)3—種具體實(shí)施方式所描述的業(yè)務(wù)類建立共享數(shù)據(jù)類的數(shù)據(jù)訪問系統(tǒng)結(jié)構(gòu)示意圖;圖4為本發(fā)明一種具體實(shí)施方式所描述的基于視圖的數(shù)據(jù)訪問系統(tǒng)工作原理圖;圖5為本發(fā)明一種具體實(shí)施方式所描述的基于視圖的數(shù)據(jù)訪問系統(tǒng)復(fù)雜視圖組件的功能結(jié)構(gòu)圖;圖6為本發(fā)明一種具體實(shí)施方式所描述的基于視圖的數(shù)據(jù)訪問系統(tǒng)簡單視圖組件的功能結(jié)構(gòu)圖;其中,1-界面組件,2-數(shù)據(jù)訪問層,3-數(shù)據(jù)庫接口,4-關(guān)系數(shù)據(jù)庫連接模塊,5-關(guān)系數(shù)據(jù)庫,6-對(duì)象創(chuàng)建組件,7-數(shù)據(jù)訪問組件,8-復(fù)雜視圖組件,9-簡單視圖組件,10-第一中心控制器,11-第一SQL操作生成器,12-第一視圖生成器,13-INSTEADOF觸發(fā)器生成器,14-第一動(dòng)態(tài)SQL拼裝生成器,15-第一連接器,16-第一公共屬性集合,17-第二中心控制器,18-第二SQL操作生成器,19-第二視圖生成器,20-第二動(dòng)態(tài)SQL拼裝生成器,21-第二連接器,22-第二公共屬性集合。具體實(shí)施例方式下面將結(jié)合本發(fā)明實(shí)施例中的附圖,對(duì)本發(fā)明實(shí)施例中的技術(shù)方案進(jìn)行清楚、完整地描述,顯然,所描述的實(shí)施例僅僅是本發(fā)明的一部分實(shí)施例,而不是全部的實(shí)施例?;诒景l(fā)明中的實(shí)施例,本領(lǐng)域普通技術(shù)人員在沒有作出創(chuàng)造性勞動(dòng)前提下所獲得的所有其他實(shí)施例,都屬于本發(fā)明保護(hù)的范圍。如附圖4、5、6所示,給出了本發(fā)明一種基于視圖的數(shù)據(jù)訪問系統(tǒng)及其方法應(yīng)用于計(jì)算機(jī)信息
技術(shù)領(lǐng)域:
數(shù)據(jù)庫訪問的具體實(shí)施例,下面結(jié)合附圖和具體實(shí)施例對(duì)本發(fā)明作進(jìn)一步說明。本發(fā)明基于視圖的數(shù)據(jù)訪問系統(tǒng)以視圖為基礎(chǔ),將以下視圖定義為復(fù)雜視圖(1)在SELECT語句中使用DISTINCT操作符的視圖;(2)使用類似SUN或MAX等聚集函數(shù)的視圖;(3)包含GROUPBY、ORDERBY子句的視圖;(4)在SELECT列表中使用子查詢的視圖;(5)聯(lián)合多個(gè)表的視圖。除復(fù)雜視圖之外的視圖,則定義為簡單視圖。數(shù)據(jù)訪問組件按上述視圖分類,分為復(fù)雜視圖組件和簡單視圖組件。如圖4所示的基于視圖的數(shù)據(jù)訪問系統(tǒng)包括界面組件1、數(shù)據(jù)訪問層2、數(shù)據(jù)庫接口3、關(guān)系數(shù)據(jù)庫連接模塊4、關(guān)系數(shù)據(jù)庫5;界面組件1與數(shù)據(jù)訪問層2相連,并向數(shù)據(jù)訪問層2發(fā)送用戶消息;數(shù)據(jù)訪問層2包括對(duì)象創(chuàng)建組件6和數(shù)據(jù)訪問組件7,數(shù)據(jù)訪問層2的對(duì)象創(chuàng)建組件6創(chuàng)建數(shù)據(jù)訪問組件7,數(shù)據(jù)訪問組件7包括復(fù)雜視圖組件8和簡單視圖組件9;數(shù)據(jù)訪問組件7產(chǎn)生SQL操作語句,數(shù)據(jù)訪問組件7與數(shù)據(jù)庫接口3相連接,通過XML配置文件獲取數(shù)據(jù)庫信息,同時(shí)獲取數(shù)據(jù)庫連接對(duì)象;數(shù)據(jù)庫接口3與關(guān)系數(shù)據(jù)庫連接模塊4相連,通過關(guān)系數(shù)據(jù)庫連接模塊4將SQL操作語句傳遞給關(guān)系數(shù)據(jù)庫5,關(guān)系數(shù)據(jù)庫5執(zhí)行SQL操作語句,并通過關(guān)系數(shù)據(jù)庫連接模塊4將數(shù)據(jù)訪問組件對(duì)象中的獲取數(shù)據(jù)屬性所定義的查詢語句傳遞給關(guān)系數(shù)據(jù)庫5,關(guān)系數(shù)據(jù)庫幻執(zhí)行查詢語句;關(guān)系數(shù)據(jù)庫連接模塊4根據(jù)查詢語句將所返回的數(shù)據(jù)傳輸給數(shù)據(jù)訪問組件7;數(shù)據(jù)訪問組件7將獲取的數(shù)據(jù)源傳輸至界面組件1進(jìn)行顯示,界面組件1刷新數(shù)據(jù),并通知用戶。圖4的工作原理圖說明了一種基于視圖技術(shù)的數(shù)據(jù)訪問方法的工作結(jié)構(gòu),它的工作過程如下SlOl界面組件1向數(shù)據(jù)訪問層2發(fā)送用戶消息,該消息包括具體的操作消息(例如插入、刪除等操作),視圖組件類型標(biāo)識(shí)(復(fù)雜視圖組件或簡單視圖組件)、XML(ExtensibleMarkupLanguage,可擴(kuò)展標(biāo)識(shí)語言)映射文件和XML配置文件的路徑、數(shù)據(jù)訪問組件對(duì)象標(biāo)識(shí)、數(shù)據(jù)訪問組件獲取數(shù)據(jù)標(biāo)識(shí)等;S102數(shù)據(jù)訪問層2的對(duì)象創(chuàng)建組件根據(jù)視圖組件標(biāo)識(shí)創(chuàng)建一個(gè)數(shù)據(jù)訪問組件對(duì)象(復(fù)雜視圖組件對(duì)象或簡單視圖組件對(duì)象),并完成數(shù)據(jù)訪問組件對(duì)象的初始化工作,這部分工作主要是完成解析XML映射文件、創(chuàng)建視圖等工作,內(nèi)部機(jī)制詳見以下的復(fù)雜視圖組件和簡單視圖組件的初始化工作流程;S103數(shù)據(jù)訪問組件對(duì)象根據(jù)復(fù)雜視圖組件8或簡單視圖組件9的類型完成初始化工作,并根據(jù)操作消息屬性,若是數(shù)據(jù)獲取,則執(zhí)行數(shù)據(jù)獲取過程;若為數(shù)據(jù)刪除,則執(zhí)行數(shù)據(jù)刪除過程;若為數(shù)據(jù)增加或修改,則執(zhí)行數(shù)據(jù)增加或修改過程,最后由數(shù)據(jù)訪問組件7產(chǎn)生一個(gè)SQL操作語句(例如delete語句);S104數(shù)據(jù)訪問組件對(duì)象連接數(shù)據(jù)庫接口3,通過XML配置文件獲取相關(guān)數(shù)據(jù)庫信息(如某種類型關(guān)系數(shù)據(jù)庫,數(shù)據(jù)庫名,IP地址等),通過靜態(tài)工廠模式獲取一個(gè)數(shù)據(jù)庫連接對(duì)象;S105通過數(shù)據(jù)庫連接對(duì)象將SQL操作語句傳遞給關(guān)系數(shù)據(jù)庫5,關(guān)系數(shù)據(jù)庫5執(zhí)行SQL操作語句;S106:通過數(shù)據(jù)庫連接對(duì)象將數(shù)據(jù)訪問組件對(duì)象中的獲取數(shù)據(jù)屬性所定義的查詢語句傳遞給關(guān)系數(shù)據(jù)庫5,關(guān)系數(shù)據(jù)庫5執(zhí)行查詢語句;S107:數(shù)據(jù)庫連接對(duì)象根據(jù)查詢語句將所返回的數(shù)據(jù)傳給數(shù)據(jù)訪問組件對(duì)象,完成操作后,該數(shù)據(jù)庫連接對(duì)象關(guān)閉;S108:數(shù)據(jù)訪問組件對(duì)象將獲取的數(shù)據(jù)源提供給界面組件對(duì)象進(jìn)行顯示,系統(tǒng)刪除該數(shù)據(jù)訪問組件對(duì)象;S109界面組件對(duì)象刷新數(shù)據(jù),并通知用戶。其中,如圖5所示的復(fù)雜視圖組件進(jìn)一步包括第一中心控制器10、第一SQL操作生成器11、第一視圖生成器12、INSTEADOF觸發(fā)器生成器13、第一動(dòng)態(tài)SQL拼裝生成器14、第一連接器15、第一公共屬性集合16。復(fù)雜視圖組件中各部件的功能結(jié)構(gòu)說明如下表1所示。第一中心控制器10接收用戶消息,返回用戶數(shù)據(jù)或提示信息,解析XML映射文件并寫入第一公共屬性集合16,向第一SQL操作生成器11、第一視圖生成器12、INSTEADOF觸發(fā)器生成器13發(fā)送動(dòng)作消息,并接收第一SQL操作生成器11、第一視圖生成器12、INSTEADOF觸發(fā)器生成器13的消息和關(guān)系數(shù)據(jù)庫5的返回結(jié)果;第一SQL操作生成器11生成SQL,并通過第一連接器15和數(shù)據(jù)庫接口3傳送至關(guān)系數(shù)據(jù)庫5;第一視圖生成器12根據(jù)不同的關(guān)系數(shù)據(jù)庫5創(chuàng)建組件依賴視圖(組件對(duì)象根據(jù)映射文件所創(chuàng)建的一個(gè)視圖,組件數(shù)據(jù)操作在該視圖上進(jìn)行)的動(dòng)態(tài)SQL;INSTEADOF觸發(fā)器生成器13根據(jù)不同的關(guān)系數(shù)據(jù)庫5創(chuàng)建一個(gè)在組件依賴視圖上操作的INSTEADOF觸發(fā)器的動(dòng)態(tài)SQL;第一動(dòng)態(tài)SQL拼裝生成器14根據(jù)第一公共屬性集合16輸出的公共屬性值進(jìn)行SQL的拼裝,實(shí)現(xiàn)動(dòng)態(tài)SQL;第一連接器15與數(shù)據(jù)庫接口3進(jìn)行連接;第一公共屬性集合16存儲(chǔ)來自第一中心控制器10的解析XML映射文件的相關(guān)信肩、ο權(quán)利要求1.一種基于視圖的數(shù)據(jù)訪問系統(tǒng),其特征在于,包括界面組件(1)、數(shù)據(jù)訪問層O)、數(shù)據(jù)庫接口(3)、關(guān)系數(shù)據(jù)庫連接模塊G)、關(guān)系數(shù)據(jù)庫(5);界面組件⑴與數(shù)據(jù)訪問層⑵相連,并向數(shù)據(jù)訪問層⑵發(fā)送用戶消息;數(shù)據(jù)訪問層(包括對(duì)象創(chuàng)建組件(6)和數(shù)據(jù)訪問組件(7),數(shù)據(jù)訪問層(的對(duì)象創(chuàng)建組件(6)創(chuàng)建數(shù)據(jù)訪問組件(7),數(shù)據(jù)訪問組件(7)包括復(fù)雜視圖組件(8)和簡單視圖組件⑶;數(shù)據(jù)訪問組件(7)產(chǎn)生SQL操作語句,數(shù)據(jù)訪問組件(7)與數(shù)據(jù)庫接口(相連接,通過XML配置文件獲取數(shù)據(jù)庫信息,同時(shí)獲取數(shù)據(jù)庫連接對(duì)象;數(shù)據(jù)庫接口(與關(guān)系數(shù)據(jù)庫連接模塊(4)相連,通過關(guān)系數(shù)據(jù)庫連接模塊(4)將SQL操作語句傳遞給關(guān)系數(shù)據(jù)庫(5),關(guān)系數(shù)據(jù)庫(5)執(zhí)行SQL操作語句,并通過關(guān)系數(shù)據(jù)庫連接模塊(4)將數(shù)據(jù)訪問組件對(duì)象中的獲取數(shù)據(jù)屬性所定義的查詢語句傳遞給關(guān)系數(shù)據(jù)庫(5),關(guān)系數(shù)據(jù)庫(執(zhí)行查詢語句;關(guān)系數(shù)據(jù)庫連接模塊(4)根據(jù)查詢語句將所返回的數(shù)據(jù)傳輸給數(shù)據(jù)訪問組件(7);數(shù)據(jù)訪問組件(7)將獲取的數(shù)據(jù)源傳輸至界面組件(1)進(jìn)行顯示,界面組件(1)刷新數(shù)據(jù),并通知用戶。2.根據(jù)權(quán)利要求1所述的一種基于視圖的數(shù)據(jù)訪問系統(tǒng),其特征在于所述的復(fù)雜視圖組件(8)包括第一中心控制器(10)、第一SQL操作生成器(11)、第一視圖生成器(12)、INSTEADOF觸發(fā)器生成器(13)、第一動(dòng)態(tài)SQL拼裝生成器(14)、第一連接器(15)、第一公共屬性集合(16);第一中心控制器(10)接收用戶消息,返回用戶數(shù)據(jù)或提示信息,解析XML映射文件并寫入第一公共屬性集合(16),向第一SQL操作生成器(11)、第一視圖生成器(12)、INSTEAD0F觸發(fā)器生成器(13)發(fā)送動(dòng)作消息,并接收第一SQL操作生成器(11)、第一視圖生成器(12)、INSTEADOF觸發(fā)器生成器(13)的消息和關(guān)系數(shù)據(jù)庫(5)的返回結(jié)果;第一SQL操作生成器(11)生成SQL,并通過第一連接器(1和數(shù)據(jù)庫接口(傳送至關(guān)系數(shù)據(jù)庫(5);第一視圖生成器(1根據(jù)不同的關(guān)系數(shù)據(jù)庫(創(chuàng)建組件依賴視圖的動(dòng)態(tài)SQL;INSTEADOF觸發(fā)器生成器(1根據(jù)不同的關(guān)系數(shù)據(jù)庫(5)創(chuàng)建一個(gè)在組件依賴視圖上操作的INSTEADOF觸發(fā)器的動(dòng)態(tài)SQL;第一動(dòng)態(tài)SQL拼裝生成器(14)根據(jù)第一公共屬性集合(16)輸出的公共屬性值進(jìn)行SQL的拼裝,實(shí)現(xiàn)動(dòng)態(tài)SQL;第一連接器(1與數(shù)據(jù)庫接口(進(jìn)行連接;第一公共屬性集合(16)存儲(chǔ)來自第一中心控制器(10)解析XML映射文件的相關(guān)信3.根據(jù)權(quán)利要求2所述的一種基于視圖的數(shù)據(jù)訪問系統(tǒng),其特征在于所述的簡單視圖組件(9)包括第二中心控制器(17)、第二SQL操作生成器(18)、第二視圖生成器(19)、第二動(dòng)態(tài)SQL拼裝生成器(20)、第二連接器(21)、第二公共屬性集合02);第二中心控制器(17)接收用戶消息,返回用戶數(shù)據(jù)或提示信息,解析XML映射文件并寫入公共屬性集合,并向第二SQL操作生成器(18)和第二視圖生成器(19)發(fā)送動(dòng)作消息,接收第二SQL操作生成器(18)和第二視圖生成器(19)的消息和數(shù)據(jù)庫的返回結(jié)果;第二SQL操作生成器(18)生成SQL,并通過第二連接器和數(shù)據(jù)庫接口(傳送至關(guān)系數(shù)據(jù)庫(5);第二視圖生成器(19)根據(jù)不同的關(guān)系數(shù)據(jù)庫(創(chuàng)建組件依賴視圖的動(dòng)態(tài)SQL;第二動(dòng)態(tài)SQL拼裝生成器OO)根據(jù)第二公共屬性集合0輸出的公共屬性值進(jìn)行SQL的拼裝,實(shí)現(xiàn)動(dòng)態(tài)SQL;第二連接器與數(shù)據(jù)庫接口(進(jìn)行連接;第二公共屬性集合0存儲(chǔ)來自第二中心控制器(17)解析XML映射文件的相關(guān)信肩、ο4.一種對(duì)權(quán)利要求1、2、3中任一權(quán)利要求所述的基于視圖的數(shù)據(jù)訪問系統(tǒng)進(jìn)行數(shù)據(jù)訪問的方法,其特征在于,包括以下步驟SlOl界面組件(1)向數(shù)據(jù)訪問層(2)發(fā)送包括具體的操作消息、視圖組件類型標(biāo)識(shí)、XML映射文件和XML配置文件的路徑、數(shù)據(jù)訪問組件對(duì)象標(biāo)識(shí)、數(shù)據(jù)訪問組件獲取數(shù)據(jù)標(biāo)識(shí)在內(nèi)的用戶消息;S102:數(shù)據(jù)訪問層O)的對(duì)象創(chuàng)建組件(6)根據(jù)視圖組件標(biāo)識(shí)創(chuàng)建一個(gè)數(shù)據(jù)訪問組件對(duì)象,數(shù)據(jù)訪問組件對(duì)象包括復(fù)雜視圖組件對(duì)象或簡單視圖組件對(duì)象,并完成數(shù)據(jù)訪問組件對(duì)象的初始化工作;5103數(shù)據(jù)訪問組件對(duì)象根據(jù)復(fù)雜視圖組件(8)或簡單視圖組件(9)的類型完成初始化工作,并根據(jù)操作消息屬性,若是數(shù)據(jù)獲取,則執(zhí)行數(shù)據(jù)獲取過程;若為數(shù)據(jù)刪除,則執(zhí)行數(shù)據(jù)刪除過程;若為數(shù)據(jù)增加或修改,則執(zhí)行數(shù)據(jù)增加或修改過程,最后由數(shù)據(jù)訪問組件(7)產(chǎn)生一個(gè)SQL操作語句;5104數(shù)據(jù)訪問組件對(duì)象連接數(shù)據(jù)庫接口(,通過XML配置文件獲取數(shù)據(jù)庫信息,同時(shí)獲取一個(gè)數(shù)據(jù)庫連接對(duì)象;5105關(guān)系數(shù)據(jù)庫連接模塊(4)通過數(shù)據(jù)庫連接對(duì)象將SQL操作語句傳遞給關(guān)系數(shù)據(jù)庫(5),關(guān)系數(shù)據(jù)庫(5)執(zhí)行SQL操作語句;5106關(guān)系數(shù)據(jù)庫連接模塊(4)通過數(shù)據(jù)庫連接對(duì)象將數(shù)據(jù)訪問組件對(duì)象中的獲取數(shù)據(jù)屬性所定義的查詢語句傳遞給關(guān)系數(shù)據(jù)庫(5),關(guān)系數(shù)據(jù)庫(執(zhí)行查詢語句;5107數(shù)據(jù)庫連接對(duì)象根據(jù)查詢語句將所返回的數(shù)據(jù)傳給數(shù)據(jù)訪問組件對(duì)象,完成操作后,該數(shù)據(jù)庫連接對(duì)象關(guān)閉;5108數(shù)據(jù)訪問組件對(duì)象將獲取的數(shù)據(jù)源提供給界面組件對(duì)象進(jìn)行顯示,系統(tǒng)刪除該數(shù)據(jù)訪問組件對(duì)象;5109界面組件對(duì)象刷新數(shù)據(jù),并通知用戶。5.根據(jù)權(quán)利要求4所述的一種基于視圖的數(shù)據(jù)訪問方法,其特征在于所述基于視圖的數(shù)據(jù)訪問方法包括復(fù)雜視圖組件對(duì)象初始化過程,該過程包括以下步驟5201第一中心控制器(10)將用戶消息分別寫入組件對(duì)象的公共屬性集合中,包括具體操作消息屬性、XML映射文件路徑屬性、XML配置文件路徑屬性、對(duì)象標(biāo)識(shí)屬性、獲取數(shù)據(jù)標(biāo)識(shí)屬性或獲取數(shù)據(jù)的查詢條件值;5202第一中心控制器(10)根據(jù)組件對(duì)象的XML映射文件路徑屬性找到XML映射文件,根據(jù)對(duì)象標(biāo)識(shí)屬性在XML映射文件中實(shí)現(xiàn)定位,找到相應(yīng)的數(shù)據(jù)塊,第一中心控制器(10)對(duì)數(shù)據(jù)塊進(jìn)行XML解析工作,將物理表名、表屬性等寫入對(duì)象的公共屬性集合中;5203第一中心控制器(10)向第一SQL操作生成器(11)發(fā)送獲取數(shù)據(jù)標(biāo)識(shí)屬性消息,由第一SQL操作生成器(11)調(diào)用第一動(dòng)態(tài)SQL拼裝生成器(14)和第一公共屬性集合(16)動(dòng)態(tài)產(chǎn)生一個(gè)select查詢語句,第一SQL操作生成器(11)將select查詢語句消息返回給第一中心控制器(10),第一中心控制器(10)再將select查詢語句寫入對(duì)象的獲取數(shù)據(jù)屬性中;5204第一中心控制器(10)向第一SQL操作生成器(11)發(fā)送查詢數(shù)據(jù)庫視圖消息,由第一SQL操作生成器(11)調(diào)用第一動(dòng)態(tài)SQL拼裝生成器(14)和第一公共屬性集合(16)動(dòng)態(tài)產(chǎn)生組件對(duì)象所依賴的視圖是否存在的SQL,并發(fā)送給第一連接器(15);5205第一連接器(1連接數(shù)據(jù)庫接口C3)后,創(chuàng)建一個(gè)數(shù)據(jù)庫連接對(duì)象,關(guān)系數(shù)據(jù)庫(5)執(zhí)行查詢視圖是否存在的SQL,將結(jié)果返回給第一連接器(15),第一連接器(15)將消息傳給第一中心控制器(10);否則若第一連接器(15)超時(shí),則第一中心控制器(10)發(fā)送一個(gè)錯(cuò)誤信息,流程結(jié)束;5206第一中心控制器(10)收到第一連接器(15)的消息,若視圖存在,則直接執(zhí)行步驟S211;否則第一連接器(1通過數(shù)據(jù)庫接口(關(guān)閉新創(chuàng)建的數(shù)據(jù)庫連接對(duì)象,同時(shí)第一中心控制器(10)向第一視圖生成器(1發(fā)送創(chuàng)建視圖消息,第一視圖生成器(1的接口根據(jù)XML配置文件獲取關(guān)系數(shù)據(jù)庫類型,選擇對(duì)應(yīng)的關(guān)系數(shù)據(jù)庫視圖生成組件,該組件調(diào)用第一動(dòng)態(tài)SQL拼裝生成器(14)和第一公共屬性集合(16)動(dòng)態(tài)產(chǎn)生一個(gè)創(chuàng)建視圖的SQL,并將該SQL發(fā)送給第一連接器(15);S207:第一連接器(1收到創(chuàng)建視圖的SQL,連接數(shù)據(jù)庫接口(3),創(chuàng)建一個(gè)數(shù)據(jù)庫連接對(duì)象,關(guān)系數(shù)據(jù)庫(執(zhí)行創(chuàng)建視圖SQL,將結(jié)果返回給第一連接器(15),第一連接器(15)將消息傳給第一中心控制器(10);否則若第一連接器(15)超時(shí),則第一中心控制器(10)發(fā)送一個(gè)錯(cuò)誤信息,流程結(jié)束;5208第一中心控制器(10)收到視圖創(chuàng)建的消息,由第一連接器(1通過數(shù)據(jù)庫接口(3)關(guān)閉新創(chuàng)建的數(shù)據(jù)庫連接對(duì)象,同時(shí)向INSTEADOF觸發(fā)器生成器(1發(fā)送創(chuàng)建INSTEAD0F觸發(fā)器消息,INSTEADOF觸發(fā)器生成器(1的接口根據(jù)XML配置文件獲取關(guān)系數(shù)據(jù)庫類型,選擇對(duì)應(yīng)的關(guān)系數(shù)據(jù)庫INSTEADOF觸發(fā)器生成組件,該組件調(diào)用第一動(dòng)態(tài)SQL拼裝生成器(14)和第一公共屬性集合(16)動(dòng)態(tài)產(chǎn)生一個(gè)生成INSTEADOF觸發(fā)器的SQL,并將該SQL發(fā)送給第一連接器(15);5209第一連接器(1收到創(chuàng)建INSTEADOF觸發(fā)器的SQL,連接數(shù)據(jù)庫接口(3),創(chuàng)建一個(gè)數(shù)據(jù)庫連接對(duì)象,關(guān)系數(shù)據(jù)庫(執(zhí)行創(chuàng)建INSTEADOF觸發(fā)器SQL,將結(jié)果返回給第一連接器(15),第一連接器(15)將消息傳給第一中心控制器(10);否則若第一連接器(15)超時(shí),則第一中心控制器(10)發(fā)送一個(gè)錯(cuò)誤信息,流程結(jié)束;5210第一中心控制器(10)收到INSTEADOF觸發(fā)器創(chuàng)建的消息;5211第一中心控制器(10)向第一連接器(1發(fā)送關(guān)閉信息,由第一連接器(15)通過數(shù)據(jù)庫接口(關(guān)閉新創(chuàng)建數(shù)據(jù)庫連接對(duì)象,同時(shí)發(fā)送初始化已完成的提示信息,該流程結(jié)束。6.根據(jù)權(quán)利要求4或5所述的一種基于視圖的數(shù)據(jù)訪問方法,其特征在于所述基于視圖的數(shù)據(jù)訪問方法包括復(fù)雜視圖組件對(duì)象數(shù)據(jù)獲取過程,該過程包括以下步驟S301若視圖組件對(duì)象沒有進(jìn)行初始化,則先進(jìn)行初始化流程;5302第一中心控制器(10)向第一SQL操作生成器(11)發(fā)送數(shù)據(jù)獲取信息;5303第一SQL操作生成器(11)收到數(shù)據(jù)獲取信息,將對(duì)象的數(shù)據(jù)獲取屬性發(fā)送到第一連接器(15);S304:第一連接器(1連接數(shù)據(jù)庫接口(后,創(chuàng)建一個(gè)數(shù)據(jù)庫連接對(duì)象,關(guān)系數(shù)據(jù)庫(5)在組件對(duì)象所依賴的視圖上執(zhí)行一條select獲取數(shù)據(jù),并將結(jié)果返回給第一連接器(15),第一連接器(1將數(shù)據(jù)集傳給第一中心控制器(10);否則若第一連接器(1超時(shí),則第一中心控制器(10)發(fā)送一個(gè)錯(cuò)誤信息,流程結(jié)束;S305第一中心控制器(10)收到數(shù)據(jù)集后,向第一連接器(1發(fā)送消息,由第一連接器(1通過數(shù)據(jù)庫接口(關(guān)閉新創(chuàng)建的數(shù)據(jù)庫連接對(duì)象;S306:第一中心控制器(10)向界面組件對(duì)象傳遞數(shù)據(jù),界面組件對(duì)象刷新數(shù)據(jù),通知用戶后,該流程結(jié)束。7.根據(jù)權(quán)利要求4或5所述的一種基于視圖的數(shù)據(jù)訪問方法,其特征在于所述基于視圖的數(shù)據(jù)訪問方法包括復(fù)雜視圖組件對(duì)象數(shù)據(jù)刪除過程,該過程包括以下步驟5401先執(zhí)行對(duì)象的初始化工作流程;5402第一中心控制器(10)從具體操作屬性判斷是刪除工作,則向第一SQL操作生成器(11)發(fā)送刪除信息;5403第一SQL操作生成器(11)接收到刪除信息,根據(jù)公共屬性集首先獲取父表屬性,其次判斷組件對(duì)象的物理表是多表還是單表,若是單表,則直接執(zhí)行S406;若是多表,則第一SQL操作生成器(11)生成一個(gè)獲取父表主外鍵的SQL,發(fā)送給第一連接器(15);5404第一連接器(1連接數(shù)據(jù)庫接口C3)后,創(chuàng)建一個(gè)數(shù)據(jù)庫連接對(duì)象,關(guān)系數(shù)據(jù)庫(5)執(zhí)行獲取父表主外鍵的SQL,將結(jié)果返回給第一連接器(15),第一連接器(1將消息傳給第一中心控制器(10);否則若第一連接器(15)超時(shí),則第一中心控制器(10)發(fā)送一個(gè)錯(cuò)誤信息,流程結(jié)束;5405第一中心控制器(10)收到父表的主外鍵信息,通過第一連接器(1通知數(shù)據(jù)庫接口(關(guān)閉新創(chuàng)建的數(shù)據(jù)庫連接對(duì)象,同時(shí)將主外鍵信息寫入第一公共屬性集合(16),寫入完成后,第一中心控制器(10)向第一SQL操作生成器(11)發(fā)送主外鍵成功獲取信息;S406:第一SQL操作生成器(11)調(diào)用第一動(dòng)態(tài)SQL拼裝生成器(14)和第一公共屬性集合(16),生成一條操作父表的刪除SQL,實(shí)現(xiàn)單表或多表的信息刪除;5407第一連接器(1連接數(shù)據(jù)庫接口C3)后,創(chuàng)建一個(gè)數(shù)據(jù)庫連接對(duì)象,關(guān)系數(shù)據(jù)庫(5)執(zhí)行一條操作父表的刪除SQL,將結(jié)果返回給第一連接器(15),第一連接器(15)將消息傳給第一中心控制器(10);否則若第一連接器(15)超時(shí),則第一中心控制器(10)發(fā)送一個(gè)錯(cuò)誤信息,流程結(jié)束;5408第一中心控制器(10)收到刪除操作消息,通過第一連接器(15)通知數(shù)據(jù)庫接口(3)關(guān)閉新創(chuàng)建的數(shù)據(jù)庫連接對(duì)象,同時(shí)向第一SQL操作生成器(11)發(fā)送獲取信息;5409執(zhí)行組件對(duì)象的數(shù)據(jù)獲取流程后,流程結(jié)束。8.根據(jù)權(quán)利要求4或5所述的一種基于視圖的數(shù)據(jù)訪問方法,其特征在于所述基于視圖的數(shù)據(jù)訪問方法包括復(fù)雜視圖組件對(duì)象數(shù)據(jù)增加和修改過程,該過程包括以下步驟5501先執(zhí)行組件對(duì)象的初始化工作流程;5502第一中心控制器(10)從具體操作屬性判斷是增加數(shù)據(jù)工作或修改數(shù)據(jù)工作,則向第一SQL操作生成器(11)發(fā)送增加信息;5503第一SQL操作生成器(11)接收到增加信息,由第一動(dòng)態(tài)SQL拼裝生成器(14)產(chǎn)生一條在組件對(duì)象所依賴視圖上操作的插入語句,實(shí)現(xiàn)增加數(shù)據(jù)和修改數(shù)據(jù)工作,實(shí)現(xiàn)視圖的更新;5504第一連接器(1連接數(shù)據(jù)庫接口C3)后,創(chuàng)建一個(gè)數(shù)據(jù)庫連接對(duì)象,關(guān)系數(shù)據(jù)庫(5)執(zhí)行插入語句,將結(jié)果返回給第一連接器(15),第一連接器(1將消息傳給第一中心控制器(10);否則若第一連接器(1超時(shí),則第一中心控制器(10)發(fā)送一個(gè)錯(cuò)誤信息,流程結(jié)束;5505第一中心控制器(10)收到插入操作消息,通過第一連接器(15)通知數(shù)據(jù)庫接口(3)關(guān)閉新創(chuàng)建的數(shù)據(jù)庫連接對(duì)象,同時(shí)向第一SQL操作生成器(11)發(fā)送獲取信息;5506執(zhí)行組件對(duì)象的數(shù)據(jù)獲取流程后,流程結(jié)束。9.根據(jù)權(quán)利要求4或5所述的一種基于視圖的數(shù)據(jù)訪問方法,其特征在于所述基于視圖的數(shù)據(jù)訪問方法包括簡單視圖組件對(duì)象初始化過程,該過程包括以下步驟5601第二中心控制器(17)將包括具體操作消息屬性、XML映射文件路徑屬性、XML配置文件路徑屬性、對(duì)象標(biāo)識(shí)屬性、獲取數(shù)據(jù)標(biāo)識(shí)屬性、獲取數(shù)據(jù)的查詢條件值在內(nèi)的用戶消息分別寫入組件對(duì)象的公共屬性集中;5602第二中心控制器(17)根據(jù)組件對(duì)象的XML映射文件路徑屬性找到XML映射文件,其次根據(jù)對(duì)象標(biāo)識(shí)屬性在XML映射文件中實(shí)現(xiàn)定位,找到相應(yīng)的數(shù)據(jù)塊,第二中心控制器(17)開始對(duì)數(shù)據(jù)塊進(jìn)行XML解析工作,將物理表名、表屬性等寫入對(duì)象的公共屬性集中;5603第二中心控制器(17)向第二SQL操作生成器(18)發(fā)送獲取數(shù)據(jù)標(biāo)識(shí)屬性消息,由第二SQL操作生成器(18)調(diào)用第二動(dòng)態(tài)SQL拼裝生成器00)和第二公共屬性集合02)動(dòng)態(tài)產(chǎn)生一個(gè)select查詢語句,第二SQL操作生成器(18)將select查詢語句消息返回給第二中心控制器(17),第二中心控制器(17)再將select查詢語句寫入對(duì)象的獲取數(shù)據(jù)屬性中;5604第二中心控制器(17)向第二SQL操作生成器(18)發(fā)送查詢數(shù)據(jù)庫視圖消息,由第二SQL操作生成器(18)調(diào)用第二動(dòng)態(tài)SQL拼裝生成器00)和第二公共屬性集合02)動(dòng)態(tài)產(chǎn)生組件對(duì)象所依賴的視圖是否存在的SQL,并發(fā)送給第二連接器;5605第二連接器連接數(shù)據(jù)庫接口C3)后,創(chuàng)建一個(gè)數(shù)據(jù)庫連接對(duì)象,關(guān)系數(shù)據(jù)庫(5)執(zhí)行查詢視圖是否存在的SQL,將結(jié)果返回給第二連接器(21),第二連接器將消息傳給第二中心控制器(17);否則若第二連接器超時(shí),則第二中心控制器(17)發(fā)送一個(gè)錯(cuò)誤信息,流程結(jié)束;5606第二中心控制器(17)收到第二連接器的消息,若視圖存在,則直接執(zhí)行步驟S609;否則第二連接器通過數(shù)據(jù)庫接口(關(guān)閉新創(chuàng)建數(shù)據(jù)庫連接對(duì)象,同時(shí)第二中心控制器(17)向第二視圖生成器(19)發(fā)送創(chuàng)建視圖消息,第二視圖生成器(19)的接口根據(jù)XML配置文件獲取關(guān)系數(shù)據(jù)庫類型,選擇對(duì)應(yīng)的關(guān)系數(shù)據(jù)庫視圖生成組件,該組件調(diào)用第二動(dòng)態(tài)SQL拼裝生成器OO)和第二公共屬性集合0動(dòng)態(tài)產(chǎn)生一個(gè)創(chuàng)建視圖的SQL,并將該SQL發(fā)送給第二連接器;S607:第二連接器收到創(chuàng)建視圖的SQL,連接數(shù)據(jù)庫接口(3),創(chuàng)建一個(gè)數(shù)據(jù)庫連接對(duì)象,關(guān)系數(shù)據(jù)庫(執(zhí)行創(chuàng)建視圖SQL,將結(jié)果返回給第二連接器(21),第二連接器(21)將消息傳給第二中心控制器(17);否則若第二連接器超時(shí),則第二中心控制器(17)發(fā)送一個(gè)錯(cuò)誤信息,流程結(jié)束;5608第二中心控制器(17)收到視圖創(chuàng)建的消息;5609第二中心控制器(17)向第二連接器發(fā)送關(guān)閉信息,由第二連接器通過數(shù)據(jù)庫接口(關(guān)閉新創(chuàng)建數(shù)據(jù)庫連接對(duì)象,同時(shí)發(fā)送初始化已完成的提示信息,該流程結(jié)束。10.根據(jù)權(quán)利要求4或5所述的一種基于視圖的數(shù)據(jù)訪問方法,其特征在于所述基于視圖的數(shù)據(jù)訪問方法包括簡單視圖組件對(duì)象數(shù)據(jù)刪除過程,該過程包括以下步驟5701先執(zhí)行組件對(duì)象的初始化工作流程;5702第二中心控制器(17)從具體操作屬性判斷是刪除工作,則向第二SQL操作生成器(18)發(fā)送刪除信息;5703第二SQL操作生成器(18)接收到刪除信息,調(diào)用第二動(dòng)態(tài)SQL拼裝生成器QO)和第二公共屬性集合(22),生成一條在依賴視圖上進(jìn)行操作的刪除SQL,實(shí)現(xiàn)信息刪除;5704第二連接器連接數(shù)據(jù)庫接口C3)后,創(chuàng)建一個(gè)數(shù)據(jù)庫連接對(duì)象,關(guān)系數(shù)據(jù)庫(5)執(zhí)行一條操作依賴視圖的刪除SQL,將結(jié)果返回給第二連接器(21),第二連接器將消息傳給第二中心控制器(17);否則若連接器超時(shí),則第二中心控制器(17)發(fā)送一個(gè)錯(cuò)誤信息,流程結(jié)束;5705第二中心控制器(17)收到刪除操作消息,通過第二連接器通知數(shù)據(jù)庫接口(3)關(guān)閉新創(chuàng)建的數(shù)據(jù)庫連接對(duì)象,同時(shí)向第二SQL操作生成器(18)發(fā)送獲取信息;5706執(zhí)行組件對(duì)象的數(shù)據(jù)獲取流程后,流程結(jié)束。全文摘要本發(fā)明公開了一種基于視圖的數(shù)據(jù)訪問系統(tǒng)及其方法,界面組件與數(shù)據(jù)訪問層相連,數(shù)據(jù)訪問層的對(duì)象創(chuàng)建組件創(chuàng)建數(shù)據(jù)訪問組件,數(shù)據(jù)訪問組件包括復(fù)雜視圖組件和簡單視圖組件;數(shù)據(jù)訪問組件產(chǎn)生SQL操作語句,數(shù)據(jù)訪問組件與數(shù)據(jù)庫接口相連,數(shù)據(jù)庫接口通過關(guān)系數(shù)據(jù)庫連接模塊將SQL操作語句傳遞給關(guān)系數(shù)據(jù)庫,關(guān)系數(shù)據(jù)庫執(zhí)行SQL操作語句,并將數(shù)據(jù)訪問組件對(duì)象中獲取數(shù)據(jù)屬性所定義的查詢語句傳遞給關(guān)系數(shù)據(jù)庫,關(guān)系數(shù)據(jù)庫執(zhí)行查詢語句;關(guān)系數(shù)據(jù)庫連接模塊根據(jù)查詢語句將所返回的數(shù)據(jù)傳輸給數(shù)據(jù)訪問組件;數(shù)據(jù)訪問組件將獲取的數(shù)據(jù)源傳輸至界面組件進(jìn)行顯示。本發(fā)明有效地減少了開發(fā)人員的工程量,可以縮短整個(gè)開發(fā)周期。文檔編號(hào)G06F17/30GK102254029SQ201110216880公開日2011年11月23日申請(qǐng)日期2011年7月29日優(yōu)先權(quán)日2011年7月29日發(fā)明者劉旭君,吳衛(wèi)平,周曉,楊獻(xiàn),楊玻雅申請(qǐng)人:株洲南車時(shí)代電氣股份有限公司