一種將對(duì)象模型向數(shù)據(jù)庫(kù)結(jié)構(gòu)進(jìn)行轉(zhuǎn)化的方法
【專利摘要】一種將對(duì)象模型向數(shù)據(jù)庫(kù)結(jié)構(gòu)進(jìn)行轉(zhuǎn)化的方法主要是提出在軟件需求分析階段即采用面向?qū)ο蟮姆治龇椒ǎ瑪?shù)據(jù)庫(kù)設(shè)計(jì)也采用面向?qū)ο蟮脑O(shè)計(jì)方法,從而可將需求分析階段的對(duì)象模型很自然地轉(zhuǎn)化為其數(shù)據(jù)庫(kù)的結(jié)構(gòu),達(dá)到需求分析與數(shù)據(jù)庫(kù)設(shè)計(jì)在面向?qū)ο蠓椒w系上的一致。
【專利說(shuō)明】一種將對(duì)象模型向數(shù)據(jù)庫(kù)結(jié)構(gòu)進(jìn)行轉(zhuǎn)化的方法
【技術(shù)領(lǐng)域】
[0001]一種將對(duì)象模型向數(shù)據(jù)庫(kù)結(jié)構(gòu)進(jìn)行轉(zhuǎn)化的方法主要是涉及計(jì)算機(jī)領(lǐng)域中的數(shù)據(jù)存儲(chǔ)技術(shù)。
【背景技術(shù)】
[0002]MIS系統(tǒng)開(kāi)發(fā)須經(jīng)過(guò)需求分析和系統(tǒng)設(shè)計(jì)兩個(gè)階段。在完成了需求分析,進(jìn)入設(shè)計(jì)階段時(shí),通常要進(jìn)行數(shù)據(jù)庫(kù)的設(shè)計(jì)。數(shù)據(jù)庫(kù)設(shè)計(jì)的好壞直接關(guān)系到系統(tǒng)后期的開(kāi)發(fā),傳統(tǒng)需求分析是用數(shù)據(jù)流圖,而數(shù)據(jù)庫(kù)的設(shè)計(jì)是用實(shí)體——關(guān)系模型方法(E-R方法),這兩種方法本質(zhì)上是相分離的,需求分析者和數(shù)據(jù)庫(kù)設(shè)計(jì)者對(duì)應(yīng)用的理解很難達(dá)成一致。
【發(fā)明內(nèi)容】
[0003]通過(guò)國(guó)家專利檢索沒(méi)有發(fā)現(xiàn)關(guān)于此系統(tǒng)方面的申請(qǐng)資料。
[0004]本發(fā)明本文提出在軟件需求分析階段即采用面向?qū)ο蟮姆治龇椒?,?shù)據(jù)庫(kù)設(shè)計(jì)也采用面向?qū)ο蟮脑O(shè)計(jì)方法,從而可將需求分析階段的對(duì)象模型很自然地轉(zhuǎn)化為其數(shù)據(jù)庫(kù)的結(jié)構(gòu),達(dá)到需求分析與數(shù)據(jù)庫(kù)設(shè)計(jì)在面向?qū)ο蠓椒w系上的一致。
[0005]將對(duì)象模型映射為表,由以下幾種方法組成:
(I)將單個(gè)對(duì)象映射為表;
(2)將對(duì)象間的二元關(guān)聯(lián)映射為表;
(3)將對(duì)象間的聚集關(guān)系映射為表;
(4)將對(duì)象間的繼承關(guān)系映射為表;
(5)將三元關(guān)聯(lián)映射為表。
[0006]其中:
(1)將單個(gè)對(duì)象映射為表的方法是:將對(duì)象名映射成表名,對(duì)象的屬性映射成表的屬性.但對(duì)象的隱含屬性在表中必須顯示給出。.(2)將對(duì)象間的二元關(guān)聯(lián)映射成表的方法為:如果二元關(guān)聯(lián)是多對(duì)多的,則我們必須將關(guān)聯(lián)映射到一個(gè)單獨(dú)的表中(稱此表為異質(zhì)表),異質(zhì)表的屬性由兩個(gè)對(duì)象的主關(guān)鍵字和關(guān)聯(lián)屬性構(gòu)成。
[0007](3)將對(duì)象間的聚集關(guān)系映射為表:對(duì)象模型中的聚集關(guān)系(部分——整體關(guān)系),可以看成是關(guān)聯(lián)的特例,如系對(duì)象模型與教師對(duì)象、學(xué)生對(duì)象、課程對(duì)象模型之間的關(guān)系是聚集關(guān)系,將對(duì)象模型中的聚集關(guān)系映射成表的方法與將關(guān)聯(lián)映射為表的方法相同。
[0008](4)若對(duì)象間具有繼承關(guān)系,其映射成表的方法是:將父類與子類都映射成表。通過(guò)使用共享ID來(lái)保持繼承后對(duì)象的識(shí)別,即父類中定義的主碼屬性在子類中為外碼。用這種方法構(gòu)造表邏輯上清晰且可擴(kuò)展。但由于涉及到多個(gè)表。表的查詢速度可能要慢些。一種變通的方法是采取“多個(gè)子類方法”,其實(shí)質(zhì)是將父類的屬性復(fù)制到所有子類中,從而清除父類。此種方法適用于子類有多個(gè)屬性,而父類屬性較少且具體應(yīng)用知道應(yīng)該尋找哪個(gè)子類時(shí)的情況.變通后的方法滿足第三范式。 [0009] (5)將三元關(guān)聯(lián)映射為表。
【權(quán)利要求】
1.一種將對(duì)象模型向數(shù)據(jù)庫(kù)結(jié)構(gòu)進(jìn)行轉(zhuǎn)化的方法,其特征是將單個(gè)對(duì)象映射為表;將對(duì)象名映射成表名,對(duì)象的屬性映射成表的屬性.但對(duì)象的隱含屬性在表中必須顯示給出; 在表創(chuàng)建時(shí)需指出表中的主碼或外碼是哪些屬性,某列的取值范圍以及能否為空等選項(xiàng)。
2.根據(jù)權(quán)力要求I的特征是將對(duì)象間的二元關(guān)聯(lián)映射為表;如果二元關(guān)聯(lián)是多對(duì)多的,則我們必須將關(guān)聯(lián)映射到一個(gè)單獨(dú)的表中(稱此表為異質(zhì)表),異質(zhì)表的屬性由兩個(gè)對(duì)象的主關(guān)鍵字和關(guān)聯(lián)屬性構(gòu)成。
3.根據(jù)權(quán)力要求2的特征是將對(duì)象間的聚集關(guān)系映射為表;對(duì)象模型中的聚集關(guān)系(部分一整體關(guān)系),可以看成是關(guān)聯(lián)的特例,如系對(duì)象模型與教師對(duì)象、學(xué)生對(duì)象、課程對(duì)象模型之間的關(guān)系是聚集關(guān)系.將對(duì)象模型中的聚集關(guān)系映射成表的方法與將關(guān)聯(lián)映射為表的方法相同.此例中教師對(duì)象、學(xué)生對(duì)象和課程對(duì)象轉(zhuǎn)化為表時(shí)均須帶“系ID”屬性。
4.根據(jù)權(quán)力要求3的特征是將對(duì)象間的繼承關(guān)系映射為表;將父類與子類都映射成表.通過(guò)使用共享ID來(lái)保持繼承后對(duì)象的識(shí)別,即父類中定義的主碼屬性在子類中為外碼。
5.根據(jù)權(quán)力要求4的特征是將對(duì)象將三元關(guān)聯(lián)映射為表。
【文檔編號(hào)】G06F17/30GK103793435SQ201210432633
【公開(kāi)日】2014年5月14日 申請(qǐng)日期:2012年11月2日 優(yōu)先權(quán)日:2012年11月2日
【發(fā)明者】楊際榮 申請(qǐng)人:鎮(zhèn)江華揚(yáng)信息科技有限公司