[發明專利]一種數據庫模式固定的對象關系映射模型無效
| 申請號: | 201010136132.9 | 申請日: | 2010-03-31 |
| 公開(公告)號: | CN101794315A | 公開(公告)日: | 2010-08-04 |
| 發明(設計)人: | 袁梅宇 | 申請(專利權)人: | 袁梅宇 |
| 主分類號: | G06F17/30 | 分類號: | G06F17/30 |
| 代理公司: | 暫無信息 | 代理人: | 暫無信息 |
| 地址: | 650051 云南省昆明市環城東路50號*** | 國省代碼: | 云南;53 |
| 權利要求書: | 查看更多 | 說明書: | 查看更多 |
| 摘要: | |||
| 搜索關鍵詞: | 一種 數據庫 模式 固定 對象 關系 映射 模型 | ||
技術領域
本發明是一種數據庫模型,能夠存儲面向對象的信息建模元素(如實體、屬性、關系等)。適用于在軟件開發完成、交付用戶后,不能或不允許改變數據庫表結構,但又必須允許用戶存儲各種用戶自定義數據的特定編程環境中。該數據庫模型采用數量有限的數據庫表,存放能滿足大多數應用需求的持久化數據,特別適合在工作流應用中存放業務數據。
背景技術
在軟件工程項目的實施中,常常需要將經數據建模后的信息模型及實例數據存儲到關系數據庫中,以便應用訪問。由于關系模型與面向對象描述語言(設計對象模型)及程序設計語言(實現對象模型)的不匹配,常常需要在兩者之間進行映射。關于面向對象的信息模型到關系模型的映射方法,已經有很多文獻論述。這些文獻中的方法可以歸結為:將類(或實體)映射為數據庫表,將類屬性(或實體屬性)映射為數據庫表字段,將類(或實體)之間的關系映射為數據庫表之間的“1對多”或“1對1”關系,此外,由于關系數據庫本身的限制,只能增加一個數據庫表來實現“多對多”關系。
上述方法已經經過多年實踐的考驗,證明在大多數情況都能滿足需要。但它卻存在一個致命的缺陷——要求數據庫所存儲的數據格式在設計時而不是在運行時就必須確定,也就是說,如果在軟件運行時需要數據庫存儲新格式的對象,就必須創建新數據庫表以容納其數據。這就產生了以下問題:如果用戶的業務數據模型經常變動,或者需要開發適用于不同領域的、需要用戶自行定制業務數據模型的軟件,由于事先不知道或不能確定用戶到底需要存放什么樣的數據及數據格式,沒法在設計時確定數據庫表結構,不得不為了存放一種新格式的數據而新建一張數據庫表——引起數據庫模式經常變化,這種變化必然要求客戶端軟件經常作相應修改,否則客戶端由于不知道新的數據庫模式而無法訪問其數據。這些修改包括用戶交互界面的重新設計、SQL語句的改寫等等。由于經常變更需求,導致很大的維護工作量,經常變更的用戶交互界面通常不能為客戶所接受,軟件開發人員也沒有足夠精力去應付頻繁變更的需求。
為了克服這一缺陷,本發明采用固定的數據庫表以容納各種數據,當需要存儲新格式的對象時,也不需要新建數據庫表,僅僅只需在固定的數據庫表中插入新的記錄,就可以存儲實體、屬性、關系及實體實例,減少了維護工作量,特別適用于最終用戶使用時還經常變動的業務數據的情形,如工作流應用場景。
在工作流應用中,業務數據是業務流程中所涉及到的流程數據,它又稱為流程變量(Process?Variables),例如,請假流程中的請假原因和請假天數,還有公文審批流程中的審批意見,等等。不同的業務流程涉及到不同的流程數據,而且可能經常變動。一般來說,工作流引擎并不考慮業務數據,而把它留給工作流應用的實施者來考慮。少部分工作流引擎,如著名的開源jBPM,本身就支持業務數據,但其所支持的流程變量一般都是簡單的數據類型,并且相互之間沒有關聯,不支持面向對象的信息建模概念,如實體、屬性、關系等,因而和數據建模時產生的數據模型差異較大,難以支持對業務數據復雜的查詢統計等應用要求。更為重要的是,如果不能很好解決這個問題,就很難實現流程任務表單的自動生成。任務表單用于獲取用戶輸入的業務數據,即,在任務表單的“提交”按鈕的響應函數中,應該實現將獲取用戶輸入的業務數據并存儲到數據庫的功能。如果數據庫表結構還沒有確定,就沒法編寫該按鈕的通用代碼。
發明內容
本發明采用通用的關系數據庫模式,與具體的關系數據庫管理系統無關,適用于各種商業或免費的數據庫管理系統。本發明數據庫模式固定,可以存儲能滿足大多數應用的數據,按照后文所述步驟可以編制靈活的數據庫訪問代碼,代碼可以采用面向對象的編程語言編寫,以實現用戶業務數據的定制、數據輸入和輸出。
本發明的有益效果是,數據庫模式固定,能夠在交付用戶使用后,存儲用戶自行定制的數據,支持面向對象的信息建模概念,如實體、屬性、關系等,保證了反映現實世界的信息模型平滑地向固定的數據庫模式映射。在工作流應用中,克服過程變量間無聯系、孤立的缺點,使得業務數據在邏輯上以相互聯系、自然、結構化的方式存放,減小數據建模時產生的數據模型與具體實現的業務數據的差異。另外,由于所存儲的數據本身是結構化的,理論上可以支持查詢統計功能。
附圖說明
下面結合附圖和實施對本發明進一步說明。
附圖是本發明數據庫模型的E-R圖。
圖中1.實體表?2.屬性表?3.實體實例表?4.字符串型屬性表?5.數字型屬性表?6.實體聯系表
該專利技術資料僅供研究查看技術是否侵權等信息,商用須獲得專利權人授權。該專利全部權利屬于袁梅宇,未經袁梅宇許可,擅自商用是侵權行為。如果您想購買此專利、獲得商業授權和技術合作,請聯系【客服】
本文鏈接:http://www.szxzyx.cn/pat/books/201010136132.9/2.html,轉載請聲明來源鉆瓜專利網。
- 上一篇:分段計費水價管理技術
- 下一篇:面向正則表達式的多模式匹配硬件引擎及生成方法





