一種將對象模型向資料庫結構進行轉化的方法
2023-06-25 03:35:06 1
一種將對象模型向資料庫結構進行轉化的方法
【專利摘要】一種將對象模型向資料庫結構進行轉化的方法主要是提出在軟體需求分析階段即採用面向對象的分析方法,資料庫設計也採用面向對象的設計方法,從而可將需求分析階段的對象模型很自然地轉化為其資料庫的結構,達到需求分析與資料庫設計在面向對象方法體系上的一致。
【專利說明】一種將對象模型向資料庫結構進行轉化的方法
【技術領域】
[0001]一種將對象模型向資料庫結構進行轉化的方法主要是涉及計算機領域中的數據存儲技術。
【背景技術】
[0002]MIS系統開發須經過需求分析和系統設計兩個階段。在完成了需求分析,進入設計階段時,通常要進行資料庫的設計。資料庫設計的好壞直接關係到系統後期的開發,傳統需求分析是用數據流圖,而資料庫的設計是用實體——關係模型方法(E-R方法),這兩種方法本質上是相分離的,需求分析者和資料庫設計者對應用的理解很難達成一致。
【發明內容】
[0003]通過國家專利檢索沒有發現關於此系統方面的申請資料。
[0004]本發明本文提出在軟體需求分析階段即採用面向對象的分析方法,資料庫設計也採用面向對象的設計方法,從而可將需求分析階段的對象模型很自然地轉化為其資料庫的結構,達到需求分析與資料庫設計在面向對象方法體系上的一致。
[0005]將對象模型映射為表,由以下幾種方法組成:
(I)將單個對象映射為表;
(2)將對象間的二元關聯映射為表;
(3)將對象間的聚集關係映射為表;
(4)將對象間的繼承關係映射為表;
(5)將三元關聯映射為表。
[0006]其中:
(1)將單個對象映射為表的方法是:將對象名映射成表名,對象的屬性映射成表的屬性.但對象的隱含屬性在表中必須顯示給出。.(2)將對象間的二元關聯映射成表的方法為:如果二元關聯是多對多的,則我們必須將關聯映射到一個單獨的表中(稱此表為異質表),異質表的屬性由兩個對象的主關鍵字和關聯屬性構成。
[0007](3)將對象間的聚集關係映射為表:對象模型中的聚集關係(部分——整體關係),可以看成是關聯的特例,如系對象模型與教師對象、學生對象、課程對象模型之間的關係是聚集關係,將對象模型中的聚集關係映射成表的方法與將關聯映射為表的方法相同。
[0008](4)若對象間具有繼承關係,其映射成表的方法是:將父類與子類都映射成表。通過使用共享ID來保持繼承後對象的識別,即父類中定義的主碼屬性在子類中為外碼。用這種方法構造表邏輯上清晰且可擴展。但由於涉及到多個表。表的查詢速度可能要慢些。一種變通的方法是採取「多個子類方法」,其實質是將父類的屬性複製到所有子類中,從而清除父類。此種方法適用於子類有多個屬性,而父類屬性較少且具體應用知道應該尋找哪個子類時的情況.變通後的方法滿足第三範式。 [0009] (5)將三元關聯映射為表。
【權利要求】
1.一種將對象模型向資料庫結構進行轉化的方法,其特徵是將單個對象映射為表;將對象名映射成表名,對象的屬性映射成表的屬性.但對象的隱含屬性在表中必須顯示給出; 在表創建時需指出表中的主碼或外碼是哪些屬性,某列的取值範圍以及能否為空等選項。
2.根據權力要求I的特徵是將對象間的二元關聯映射為表;如果二元關聯是多對多的,則我們必須將關聯映射到一個單獨的表中(稱此表為異質表),異質表的屬性由兩個對象的主關鍵字和關聯屬性構成。
3.根據權力要求2的特徵是將對象間的聚集關係映射為表;對象模型中的聚集關係(部分一整體關係),可以看成是關聯的特例,如系對象模型與教師對象、學生對象、課程對象模型之間的關係是聚集關係.將對象模型中的聚集關係映射成表的方法與將關聯映射為表的方法相同.此例中教師對象、學生對象和課程對象轉化為表時均須帶「系ID」屬性。
4.根據權力要求3的特徵是將對象間的繼承關係映射為表;將父類與子類都映射成表.通過使用共享ID來保持繼承後對象的識別,即父類中定義的主碼屬性在子類中為外碼。
5.根據權力要求4的特徵是將對象將三元關聯映射為表。
【文檔編號】G06F17/30GK103793435SQ201210432633
【公開日】2014年5月14日 申請日期:2012年11月2日 優先權日:2012年11月2日
【發明者】楊際榮 申請人:鎮江華揚信息科技有限公司