數(shù)據(jù)庫中添加新屬性數(shù)據(jù)的方法和裝置制造方法
【專利摘要】本發(fā)明公開一種數(shù)據(jù)庫中添加新屬性數(shù)據(jù)的方法和裝置。所述方法包括:獲取報文,所述報文包括添加新屬性數(shù)據(jù)的請求;解析報文,將所述新屬性數(shù)據(jù)解析為MappedClob數(shù)據(jù)類型對象的屬性;將所述MappedClob數(shù)據(jù)類型對象轉(zhuǎn)換為可擴(kuò)展標(biāo)記語言XML格式,建立可擴(kuò)展標(biāo)記語言XML文本,所述新屬性數(shù)據(jù)存儲在所述可擴(kuò)展標(biāo)記語言XML文本中;將所述可擴(kuò)展標(biāo)記語言XML文本存儲至所述數(shù)據(jù)庫中相應(yīng)的數(shù)據(jù)實(shí)體內(nèi)預(yù)留字段描述的位置。采用本發(fā)明提供的技術(shù)方案,能夠避免現(xiàn)有技術(shù)中將新屬性數(shù)據(jù)添加到數(shù)據(jù)庫中容易帶來的數(shù)據(jù)庫表結(jié)構(gòu)混亂的問題。
【專利說明】數(shù)據(jù)庫中添加新屬性數(shù)據(jù)的方法和裝置
【技術(shù)領(lǐng)域】
[0001] 本發(fā)明涉及軟件【技術(shù)領(lǐng)域】,尤其涉及一種數(shù)據(jù)庫中添加新屬性數(shù)據(jù)的方法和裝 置。
【背景技術(shù)】
[0002] 數(shù)據(jù)庫是信息系統(tǒng)的核心和基礎(chǔ),一個優(yōu)秀的數(shù)據(jù)庫設(shè)計能夠把信息系統(tǒng)中大量 的數(shù)據(jù)按照數(shù)據(jù)模型的原則有機(jī)組織起來,提供存儲、維護(hù)、檢索數(shù)據(jù)的功能,使信息系統(tǒng) 可以方便、及時、準(zhǔn)確地從數(shù)據(jù)庫中獲得所需的信息。數(shù)據(jù)庫設(shè)計須滿足統(tǒng)一的數(shù)據(jù)規(guī)范, 并具有前瞻性的性擴(kuò)展性考慮,適應(yīng)未來業(yè)務(wù)發(fā)展帶來的各種變化。數(shù)據(jù)庫設(shè)計優(yōu)秀與否 是整個信息系統(tǒng)成功與否的最關(guān)鍵因素之一。
[0003] 傳統(tǒng)的數(shù)據(jù)庫設(shè)計往往采用的是自頂向下的基于業(yè)務(wù)需求驅(qū)動模式,對數(shù)據(jù)庫設(shè) 計缺乏整體性設(shè)計考慮。數(shù)據(jù)庫的表結(jié)構(gòu)設(shè)計完全是基于需求分析概要設(shè)計?;谶@種設(shè) 計模式也許能夠滿足當(dāng)前的業(yè)務(wù)模式,也能夠使系統(tǒng)順利按期上線。但是,一個大中型信息 系統(tǒng)不會因一次成功上線而結(jié)束,相反在上線之后業(yè)務(wù)人員會基于此系統(tǒng)不斷的提出新的 業(yè)務(wù)需求,即會對數(shù)據(jù)庫中添加新屬性數(shù)據(jù),這會不斷帶來數(shù)據(jù)庫表結(jié)構(gòu)調(diào)整的新需求。
[0004] 但是,目前的技術(shù)中,數(shù)據(jù)庫中添加新屬性數(shù)據(jù)時,數(shù)據(jù)庫表結(jié)構(gòu)的調(diào)整容易帶來 數(shù)據(jù)庫表結(jié)構(gòu)混亂的問題,從而容易導(dǎo)致生產(chǎn)數(shù)據(jù)丟失,造成嚴(yán)重的后果。
【發(fā)明內(nèi)容】
[0005] 有鑒于此,本發(fā)明提供了一種數(shù)據(jù)庫中添加新屬性數(shù)據(jù)的方法和裝置,用以避免 現(xiàn)有技術(shù)中將新屬性數(shù)據(jù)添加到數(shù)據(jù)庫中容易帶來的數(shù)據(jù)庫表結(jié)構(gòu)混亂的問題,進(jìn)而能夠 避免現(xiàn)有技術(shù)中容易導(dǎo)致生產(chǎn)數(shù)據(jù)丟失的問題。
[0006] 為實(shí)現(xiàn)上述目的,本發(fā)明提供如下技術(shù)方案:
[0007] -種數(shù)據(jù)庫中添加新屬性數(shù)據(jù)的方法,包括:
[0008] 獲取報文,所述報文包括添加新屬性數(shù)據(jù)的請求;
[0009] 解析報文,將所述新屬性數(shù)據(jù)解析為MappedClob數(shù)據(jù)類型對象的屬性;
[0010] 將所述MappedClob數(shù)據(jù)類型對象轉(zhuǎn)換為可擴(kuò)展標(biāo)記語言XML格式,建立可擴(kuò)展標(biāo) 記語言XML文本,所述新屬性數(shù)據(jù)存儲在所述可擴(kuò)展標(biāo)記語言XML文本中;
[0011] 將所述可擴(kuò)展標(biāo)記語言XML文本存儲至所述數(shù)據(jù)庫中相應(yīng)的數(shù)據(jù)實(shí)體內(nèi)預(yù)留字 段描述的位置。
[0012] 優(yōu)選的,從報文接口獲取所述報文。
[0013] 優(yōu)選的,所述MappedClob是與數(shù)據(jù)庫字符大對象CL0B數(shù)據(jù)類型相對應(yīng)的Java數(shù) 據(jù)類型。
[0014] 優(yōu)選的,所述獲取報文之前,還包括:
[0015] 在有增加所述新屬性數(shù)據(jù)需求的所述數(shù)據(jù)實(shí)體中添加所述預(yù)留字段描述;所述預(yù) 留字段描述為字符大對象CL0B數(shù)據(jù)類型屬性。
[0016] 優(yōu)選的,調(diào)用asXML函數(shù)的方法,將所述MappedClob數(shù)據(jù)類型對象轉(zhuǎn)換為可擴(kuò)展 標(biāo)記語言XML格式。
[0017] 優(yōu)選的,所述新屬性數(shù)據(jù)通過定義標(biāo)簽的方式存儲在可擴(kuò)展標(biāo)記語言XML文本 中,所述定義標(biāo)簽的方式包括:定義標(biāo)簽的名稱和數(shù)據(jù)類型,并為所述標(biāo)簽賦值。
[0018] 優(yōu)選的,所述預(yù)留字段描述為字符大對象CL0B數(shù)據(jù)類型屬性。
[0019] 優(yōu)選的,通過調(diào)用Ibatis數(shù)據(jù)訪問層操作,將所述可擴(kuò)展標(biāo)記語言XML文本存儲 至所述數(shù)據(jù)庫中相應(yīng)的數(shù)據(jù)實(shí)體內(nèi)預(yù)留字段描述的位置。
[0020] 一種數(shù)據(jù)庫中添加新屬性數(shù)據(jù)的裝置,包括:
[0021] 報文獲取單元,用于獲取報文,所述報文包括添加新屬性數(shù)據(jù)的請求;
[0022] 報文解析單元,用于解析報文,將所述新屬性數(shù)據(jù)解析為MappedClob數(shù)據(jù)類型對 象的屬性;
[0023] 新屬性數(shù)據(jù)存儲單元,用于將所述MappedClob數(shù)據(jù)類型對象轉(zhuǎn)換為可擴(kuò)展標(biāo)記 語言XML格式,建立可擴(kuò)展標(biāo)記語言XML文本,所述新屬性數(shù)據(jù)存儲在所述可擴(kuò)展標(biāo)記語言 XML文本中;
[0024] 可擴(kuò)展標(biāo)記語言XML文本存儲單元,用于將所述可擴(kuò)展標(biāo)記語言XML文本存儲至 所述數(shù)據(jù)庫中相應(yīng)的數(shù)據(jù)實(shí)體內(nèi)預(yù)留字段描述的位置。
[0025] 優(yōu)選的,還包括:
[0026] 預(yù)留字段描述建立單元,用于在有增加所述新屬性數(shù)據(jù)需求的所述數(shù)據(jù)實(shí)體中添 加所述預(yù)留字段描述;所述預(yù)留字段描述為字符大對象CL0B數(shù)據(jù)類型屬性。
[0027] 經(jīng)由上述的技術(shù)方案可知,與現(xiàn)有技術(shù)相比,本發(fā)明提供了一種數(shù)據(jù)庫中添加新 屬性數(shù)據(jù)的方法和裝置。采用本發(fā)明提供的數(shù)據(jù)庫中添加新屬性數(shù)據(jù)的方法和裝置,當(dāng)獲 取到包括添加新屬性數(shù)據(jù)請求的報文后,解析報文,將所述新屬性數(shù)據(jù)解析為MappedClob 數(shù)據(jù)類型對象的屬性,然后將所述MappedClob數(shù)據(jù)類型對象轉(zhuǎn)換為可擴(kuò)展標(biāo)記語言XML格 式,建立可擴(kuò)展標(biāo)記語言XML文本,將所述新屬性數(shù)據(jù)存儲在所述可擴(kuò)展標(biāo)記語言XML文本 中,最后,將存儲有所述新屬性數(shù)據(jù)的所述可擴(kuò)展標(biāo)記語言XML文本,存儲在數(shù)據(jù)庫中相應(yīng) 的數(shù)據(jù)實(shí)體內(nèi)預(yù)留字段描述的位置,從而實(shí)現(xiàn)將新屬性數(shù)據(jù)添加到數(shù)據(jù)庫中。本發(fā)明提供 的技術(shù)方案,將新屬性數(shù)據(jù)添加到數(shù)據(jù)庫中相應(yīng)的數(shù)據(jù)實(shí)體內(nèi)預(yù)留字段描述的位置,不必 對數(shù)據(jù)庫中數(shù)據(jù)實(shí)體(包括數(shù)據(jù)表)的結(jié)構(gòu)進(jìn)行更改,從而能夠避免現(xiàn)有技術(shù)中將新屬性 數(shù)據(jù)添加到數(shù)據(jù)庫中容易帶來的數(shù)據(jù)庫表結(jié)構(gòu)混亂的問題,進(jìn)而能夠避免現(xiàn)有技術(shù)中容易 導(dǎo)致生產(chǎn)數(shù)據(jù)丟失的問題,為后續(xù)信息系統(tǒng)面對新增業(yè)務(wù)需求時提供保障,保障信息系統(tǒng) 和數(shù)據(jù)庫的安全性。
【專利附圖】
【附圖說明】
[0028] 為了更清楚地說明本發(fā)明實(shí)施例或現(xiàn)有技術(shù)中的技術(shù)方案,下面將對實(shí)施例或現(xiàn) 有技術(shù)描述中所需要使用的附圖作簡單地介紹,顯而易見地,下面描述中的附圖僅僅是本 發(fā)明的實(shí)施例,對于本領(lǐng)域普通技術(shù)人員來講,在不付出創(chuàng)造性勞動的前提下,還可以根據(jù) 提供的附圖獲得其他的附圖。
[0029] 圖1為本發(fā)明實(shí)施例提供的一種數(shù)據(jù)庫中添加新屬性數(shù)據(jù)的方法的流程圖;
[0030] 圖2為本發(fā)明實(shí)施例提供的另外一種數(shù)據(jù)庫中添加新屬性數(shù)據(jù)的方法的流程圖;
[0031] 圖3為本發(fā)明實(shí)施例提供的一種數(shù)據(jù)庫中添加新屬性數(shù)據(jù)的裝置的結(jié)構(gòu)圖;
[0032] 圖4為本發(fā)明實(shí)施例提供的另外一種數(shù)據(jù)庫中添加新屬性數(shù)據(jù)的裝置的結(jié)構(gòu)圖。
【具體實(shí)施方式】
[0033] 下面將結(jié)合本發(fā)明實(shí)施例中的附圖,對本發(fā)明實(shí)施例中的技術(shù)方案進(jìn)行清楚、完 整地描述,顯然,所描述的實(shí)施例僅僅是本發(fā)明一部分實(shí)施例,而不是全部的實(shí)施例?;?本發(fā)明中的實(shí)施例,本領(lǐng)域普通技術(shù)人員在沒有做出創(chuàng)造性勞動前提下所獲得的所有其他 實(shí)施例,都屬于本發(fā)明保護(hù)的范圍。
[0034] 為使本發(fā)明的上述目的、特征和優(yōu)點(diǎn)能夠更加明顯易懂,下面結(jié)合附圖和具體實(shí) 施方式對本發(fā)明作進(jìn)一步詳細(xì)的說明。
[0035] 實(shí)施例一
[0036] 請參閱圖1,圖1為本發(fā)明實(shí)施例提供的一種數(shù)據(jù)庫中添加新屬性數(shù)據(jù)的方法的 流程圖。如圖1所示,該方法包括:
[0037] 步驟S101,獲取報文,所述報文包括添加新屬性數(shù)據(jù)的請求;
[0038] 具體的,從報文接口獲取所述報文,該報文包括添加新屬性數(shù)據(jù)的請求,該請求中 包括新屬性數(shù)據(jù)的信息。
[0039] 步驟S102,解析報文,將所述新屬性數(shù)據(jù)解析為MappedClob數(shù)據(jù)類型對象的屬 性;
[0040] 具體的,所述MappedClob是與數(shù)據(jù)庫的CLOB(CharacterLargeObject,字符大對 象)數(shù)據(jù)類型相對應(yīng)的Java數(shù)據(jù)類型。CL0B數(shù)據(jù)類型是一種數(shù)據(jù)庫數(shù)據(jù)類型,用于存儲較 大的文本。
[0041] 步驟S103,將所述MappedClob數(shù)據(jù)類型對象轉(zhuǎn)換為XML(ExtensibleMarkup Language,可擴(kuò)展標(biāo)記語言)格式,建立XML文本,所述新屬性數(shù)據(jù)存儲在所述XML文本中;
[0042] 具體的,可選的,調(diào)用asXML函數(shù)的方法,將所述MappedClob數(shù)據(jù)類型對象轉(zhuǎn)換為 可擴(kuò)展標(biāo)記語言XML格式。具體的,asXML函數(shù)是本發(fā)明自定義的將MappedClob數(shù)據(jù)對象 轉(zhuǎn)換為XML文本的函數(shù)。
[0043] 具體的,所述新屬性數(shù)據(jù)通過定義標(biāo)簽的方式存儲在可擴(kuò)展標(biāo)記語言XML文本 中,所述定義標(biāo)簽的方式包括:定義標(biāo)簽的名稱和數(shù)據(jù)類型,并為所述標(biāo)簽賦值。標(biāo)簽的類 型,可選的,包括數(shù)字、字符和日期三種類型。示例如下:
[0044]
【權(quán)利要求】
1. 一種數(shù)據(jù)庫中添加新屬性數(shù)據(jù)的方法,其特征在于,包括: 獲取報文,所述報文包括添加新屬性數(shù)據(jù)的請求; 解析報文,將所述新屬性數(shù)據(jù)解析為Ma卵edClob數(shù)據(jù)類型對象的屬性; 將所述Ma卵edClob數(shù)據(jù)類型對象轉(zhuǎn)換為可擴(kuò)展標(biāo)記語言XML格式,建立可擴(kuò)展標(biāo)記語 言XML文本,所述新屬性數(shù)據(jù)存儲在所述可擴(kuò)展標(biāo)記語言XML文本中; 將所述可擴(kuò)展標(biāo)記語言XML文本存儲至所述數(shù)據(jù)庫中相應(yīng)的數(shù)據(jù)實(shí)體內(nèi)預(yù)留字段描 述的位置。
2. 根據(jù)權(quán)利要求1所述的方法,其特征在于,從報文接口獲取所述報文。
3. 根據(jù)權(quán)利要求1所述的方法,其特征在于,所述Ma卵edClob是與數(shù)據(jù)庫字符大對象 化0B數(shù)據(jù)類型相對應(yīng)的化va數(shù)據(jù)類型。
4. 根據(jù)權(quán)利要求1所述的方法,其特征在于,所述獲取報文之前,還包括: 在有增加所述新屬性數(shù)據(jù)需求的所述數(shù)據(jù)實(shí)體中添加所述預(yù)留字段描述;所述預(yù)留字 段描述為字符大對象化0B數(shù)據(jù)類型屬性。
5. 根據(jù)權(quán)利要求1所述的方法,其特征在于,調(diào)用asXML函數(shù)的方法,將所述 Ma卵edClob數(shù)據(jù)類型對象轉(zhuǎn)換為可擴(kuò)展標(biāo)記語言XML格式。
6. 根據(jù)權(quán)利要求1所述的方法,其特征在于,所述新屬性數(shù)據(jù)通過定義標(biāo)簽的方式存 儲在可擴(kuò)展標(biāo)記語言XML文本中,所述定義標(biāo)簽的方式包括:定義標(biāo)簽的名稱和數(shù)據(jù)類型, 并為所述標(biāo)簽賦值。
7. 根據(jù)權(quán)利要求1所述的方法,其特征在于,所述預(yù)留字段描述為字符大對象化0B數(shù) 據(jù)類型屬性。
8. 根據(jù)權(quán)利要求1所述的方法,其特征在于,通過調(diào)用Ibatis數(shù)據(jù)訪問層操作,將所述 可擴(kuò)展標(biāo)記語言XML文本存儲至所述數(shù)據(jù)庫中相應(yīng)的數(shù)據(jù)實(shí)體內(nèi)預(yù)留字段描述的位置。
9. 一種數(shù)據(jù)庫中添加新屬性數(shù)據(jù)的裝置,其特征在于,包括: 報文獲取單元,用于獲取報文,所述報文包括添加新屬性數(shù)據(jù)的請求; 報文解析單元,用于解析報文,將所述新屬性數(shù)據(jù)解析為MappedClob數(shù)據(jù)類型對象的 屬性; 新屬性數(shù)據(jù)存儲單元,用于將所述Ma卵edClob數(shù)據(jù)類型對象轉(zhuǎn)換為可擴(kuò)展標(biāo)記語言 XML格式,建立可擴(kuò)展標(biāo)記語言XML文本,所述新屬性數(shù)據(jù)存儲在所述可擴(kuò)展標(biāo)記語言XML 文本中; 可擴(kuò)展標(biāo)記語言XML文本存儲單元,用于將所述可擴(kuò)展標(biāo)記語言XML文本存儲至所述 數(shù)據(jù)庫中相應(yīng)的數(shù)據(jù)實(shí)體內(nèi)預(yù)留字段描述的位置。
10. 根據(jù)權(quán)利要求9所述的裝置,其特征在于,還包括: 預(yù)留字段描述建立單元,用于在有增加所述新屬性數(shù)據(jù)需求的所述數(shù)據(jù)實(shí)體中添加所 述預(yù)留字段描述;所述預(yù)留字段描述為字符大對象CL0B數(shù)據(jù)類型屬性。
【文檔編號】G06F17/30GK104346466SQ201410645814
【公開日】2015年2月11日 申請日期:2014年11月12日 優(yōu)先權(quán)日:2014年11月12日
【發(fā)明者】舒展, 李拓, 賈國琛, 曲麟智, 李超, 王寧, 張欣 申請人:中國建設(shè)銀行股份有限公司