更新數(shù)據(jù)庫記錄的控制方法和裝置制造方法
【專利摘要】本發(fā)明公開一種更新數(shù)據(jù)庫記錄的控制方法和裝置。所述方法包括:獲取預(yù)更新的一條數(shù)據(jù)庫記錄;利用主鍵定位所述數(shù)據(jù)庫記錄;更新所述第一預(yù)更新字段,控制內(nèi)存中所述數(shù)據(jù)庫記錄的版本號加1;在更新所述第一預(yù)更新字段的過程中,當(dāng)獲取到對第二預(yù)更新字段的更新請求時,利用所述主鍵定位所述數(shù)據(jù)庫記錄;所述第二預(yù)更新字段位于所述數(shù)據(jù)庫記錄中;獲取所述數(shù)據(jù)庫記錄在內(nèi)存中的版本號以及在數(shù)據(jù)庫中的版本號;當(dāng)所述數(shù)據(jù)庫記錄在內(nèi)存中的版本號,減去所述數(shù)據(jù)庫記錄在數(shù)據(jù)庫中的版本號所得到的差值為1時,更新所述第二預(yù)更新字段。采用本發(fā)明提供的技術(shù)方案,能夠避免現(xiàn)有技術(shù)的并發(fā)控制方法,容易造成死鎖,會降低并發(fā)效率的問題。
【專利說明】更新數(shù)據(jù)庫記錄的控制方法和裝置
【技術(shù)領(lǐng)域】
[0001]本發(fā)明涉及軟件【技術(shù)領(lǐng)域】,尤其涉及一種更新數(shù)據(jù)庫記錄的控制方法和裝置。
【背景技術(shù)】
[0002]數(shù)據(jù)庫是信息系統(tǒng)的核心和基礎(chǔ)?,F(xiàn)在主流的數(shù)據(jù)庫管理系統(tǒng)中,都支持多個事務(wù)同時執(zhí)行,這樣能夠有效提高數(shù)據(jù)庫管理系統(tǒng)的運(yùn)行效率。事務(wù)是指在數(shù)據(jù)庫上完成的一個操作。開發(fā)多用戶數(shù)據(jù)庫應(yīng)用,常常要要力爭最大的并發(fā)訪問。但是,多用戶并發(fā)訪問數(shù)據(jù)庫時,經(jīng)常多個事務(wù)同時對同一條記錄進(jìn)行更新操作,由于不同事務(wù)所需要的處理時間長短不同,會出現(xiàn)長事務(wù)的修改操作覆蓋掉短事務(wù)對記錄的修改這一情況。
[0003]為了避免長事務(wù)的修改操作覆蓋掉短事務(wù)對記錄的修改這一情況的產(chǎn)生,需要引入并發(fā)控制機(jī)制,現(xiàn)有的技術(shù)中,一般利用數(shù)據(jù)庫悲觀鎖完成并發(fā)控制,即,每次對需要進(jìn)行并發(fā)控制的記錄,進(jìn)行讀加更新鎖。
[0004]但是,現(xiàn)有技術(shù)中的這種并發(fā)控制方法,容易造成死鎖,會較大程度上降低并發(fā)效率。
【發(fā)明內(nèi)容】
[0005]有鑒于此,本發(fā)明提供了一種更新數(shù)據(jù)庫記錄的控制方法和裝置,用以避免現(xiàn)有技術(shù)的并發(fā)控制方法,容易造成死鎖,會較大程度上降低并發(fā)效率的問題。
[0006]為實(shí)現(xiàn)上述目的,本發(fā)明提供如下技術(shù)方案:
[0007]一種更新數(shù)據(jù)庫記錄的控制方法,包括:
[0008]獲取預(yù)更新的一條數(shù)據(jù)庫記錄;
[0009]利用主鍵定位所述數(shù)據(jù)庫記錄;
[0010]更新所述第一預(yù)更新字段,控制內(nèi)存中所述數(shù)據(jù)庫記錄的版本號加I ;
[0011]在更新所述第一預(yù)更新字段的過程中,當(dāng)獲取到對第二預(yù)更新字段的更新請求時,利用所述主鍵定位所述數(shù)據(jù)庫記錄;所述第二預(yù)更新字段位于所述數(shù)據(jù)庫記錄中;
[0012]獲取所述數(shù)據(jù)庫記錄在內(nèi)存中的版本號以及在數(shù)據(jù)庫中的版本號;
[0013]當(dāng)所述數(shù)據(jù)庫記錄在內(nèi)存中的版本號,減去所述數(shù)據(jù)庫記錄在數(shù)據(jù)庫中的版本號所得到的差值為I時,更新所述第二預(yù)更新字段。
[0014]優(yōu)選的,通過select語句獲取預(yù)更新的一條所述數(shù)據(jù)庫記錄,所述select語句未加行級鎖。
[0015]優(yōu)選的,所述更新所述第一預(yù)更新字段之前,還包括:
[0016]查找所述第一預(yù)更新字段,所述第一預(yù)更新字段位于所述數(shù)據(jù)庫記錄中;
[0017]獲取用戶輸入的與所述第一預(yù)更新字段相對應(yīng)的第一更新數(shù)據(jù)。
[0018]優(yōu)選的,所述控制內(nèi)存中所述數(shù)據(jù)庫記錄的版本號加I之前,還包括:
[0019]讀取數(shù)據(jù)庫中所述數(shù)據(jù)庫記錄的版本號,將所述數(shù)據(jù)庫記錄的版本號存至內(nèi)存。
[0020]優(yōu)選的,所述更新所述第二預(yù)更新字段之前,還包括:[0021 ] 查找所述第二預(yù)更新字段;
[0022]獲取用戶輸入的與所述第二預(yù)更新字段相對應(yīng)的第二更新數(shù)據(jù)。
[0023]優(yōu)選的,當(dāng)所述差值為O時,等待預(yù)設(shè)時間,直至所述差值為I。
[0024]一種更新數(shù)據(jù)庫記錄的控制裝置,包括:
[0025]數(shù)據(jù)庫記錄獲取單元,用于獲取預(yù)更新的一條數(shù)據(jù)庫記錄;
[0026]第一主鍵定位單元,用于利用主鍵定位所述數(shù)據(jù)庫記錄;
[0027]第一預(yù)更新字段更新單元,用于更新所述第一預(yù)更新字段,控制內(nèi)存中所述數(shù)據(jù)庫記錄的版本號加I ;
[0028]第二主鍵定位單元,用于在更新所述第一預(yù)更新字段的過程中,當(dāng)獲取到對第二預(yù)更新字段的更新請求時,利用所述主鍵定位所述數(shù)據(jù)庫記錄;所述第二預(yù)更新字段位于所述數(shù)據(jù)庫記錄中;
[0029]數(shù)據(jù)庫記錄版本號獲取單元,用于獲取所述數(shù)據(jù)庫記錄在內(nèi)存中的版本號以及在數(shù)據(jù)庫中的版本號;
[0030]第二預(yù)更新字段更新單元,用于當(dāng)所述數(shù)據(jù)庫記錄在內(nèi)存中的版本號,減去所述數(shù)據(jù)庫記錄在數(shù)據(jù)庫中的版本號所得到的差值為I時,更新所述第二預(yù)更新字段。
[0031]優(yōu)選的,還包括:
[0032]第一預(yù)更新字段查找單元,用于查找所述第一預(yù)更新字段,所述第一預(yù)更新字段位于所述數(shù)據(jù)庫記錄中;
[0033]第一更新數(shù)據(jù)獲取單元,用于獲取用戶輸入的與所述第一預(yù)更新字段相對應(yīng)的第一更新數(shù)據(jù)。
[0034]優(yōu)選的,還包括:
[0035]存儲單元,用于讀取數(shù)據(jù)庫中所述數(shù)據(jù)庫記錄的版本號,將所述數(shù)據(jù)庫記錄的版本號存至內(nèi)存。
[0036]優(yōu)選的,還包括:
[0037]第二預(yù)更新字段查找單元,用于查找所述第二預(yù)更新字段;
[0038]第二更新數(shù)據(jù)獲取單元,用于獲取用戶輸入的與所述第二預(yù)更新字段相對應(yīng)的第二更新數(shù)據(jù)。
[0039]經(jīng)由上述的技術(shù)方案可知,與現(xiàn)有技術(shù)相比,本發(fā)明提供了一種更新數(shù)據(jù)庫記錄的控制方法和裝置。當(dāng)需要對數(shù)據(jù)庫記錄進(jìn)行更新時,本發(fā)明提供的技術(shù)方案,獲取預(yù)更新的一條數(shù)據(jù)庫記錄,利用主鍵定位所述數(shù)據(jù)庫記錄,然后更新所述第一預(yù)更新字段,控制內(nèi)存中所述數(shù)據(jù)庫記錄的版本號加1,在更新所述第一預(yù)更新字段的過程中,當(dāng)獲取到對第二預(yù)更新字段的更新請求時,利用所述主鍵定位所述數(shù)據(jù)庫記錄,所述第二預(yù)更新字段位于所述數(shù)據(jù)庫記錄中,然后獲取所述數(shù)據(jù)庫記錄在內(nèi)存中的版本號以及在數(shù)據(jù)庫中的版本號,當(dāng)所述數(shù)據(jù)庫記錄在內(nèi)存中的版本號,減去所述數(shù)據(jù)庫記錄在數(shù)據(jù)庫中的版本號所得到的差值為I時,更新所述第二預(yù)更新字段。本發(fā)明提供的技術(shù)方案,通過主鍵與數(shù)據(jù)庫版本號控制的方式,實(shí)現(xiàn)并發(fā)控制,能夠避免長事務(wù)的修改操作覆蓋掉短事務(wù)對記錄的修改這一情況,而本發(fā)明提供的技術(shù)方案,不需要引入數(shù)據(jù)庫悲觀鎖,因此不會出現(xiàn)死鎖造成的并發(fā)效率低的情況。因此,本發(fā)明提供的技術(shù)方案,相對于現(xiàn)有技術(shù)中利用數(shù)據(jù)庫悲觀鎖完成并發(fā)控制的方式,能夠提高并發(fā)效率。
【專利附圖】
【附圖說明】
[0040]為了更清楚地說明本發(fā)明實(shí)施例或現(xiàn)有技術(shù)中的技術(shù)方案,下面將對實(shí)施例或現(xiàn)有技術(shù)描述中所需要使用的附圖作簡單地介紹,顯而易見地,下面描述中的附圖僅僅是本發(fā)明的實(shí)施例,對于本領(lǐng)域普通技術(shù)人員來講,在不付出創(chuàng)造性勞動的前提下,還可以根據(jù)提供的附圖獲得其他的附圖。
[0041]圖1為本發(fā)明實(shí)施例提供的一種更新數(shù)據(jù)庫記錄的控制方法的流程圖;
[0042]圖2為本發(fā)明實(shí)施例提供的另外一種更新數(shù)據(jù)庫記錄的控制方法的流程圖;
[0043]圖3為本發(fā)明實(shí)施例提供的一種更新數(shù)據(jù)庫記錄的控制裝置的結(jié)構(gòu)圖。
【具體實(shí)施方式】
[0044]下面將結(jié)合本發(fā)明實(shí)施例中的附圖,對本發(fā)明實(shí)施例中的技術(shù)方案進(jìn)行清楚、完整地描述,顯然,所描述的實(shí)施例僅僅是本發(fā)明一部分實(shí)施例,而不是全部的實(shí)施例?;诒景l(fā)明中的實(shí)施例,本領(lǐng)域普通技術(shù)人員在沒有做出創(chuàng)造性勞動前提下所獲得的所有其他實(shí)施例,都屬于本發(fā)明保護(hù)的范圍。
[0045]為使本發(fā)明的上述目的、特征和優(yōu)點(diǎn)能夠更加明顯易懂,下面結(jié)合附圖和【具體實(shí)施方式】對本發(fā)明作進(jìn)一步詳細(xì)的說明。
[0046]實(shí)施例一
[0047]請參閱圖1,圖1為本發(fā)明實(shí)施例提供的一種更新數(shù)據(jù)庫記錄的控制方法的流程圖。如圖1所示,該方法包括:
[0048]步驟S101,獲取預(yù)更新的一條數(shù)據(jù)庫記錄;
[0049]具體的,通過select語句獲取預(yù)更新的一條所述數(shù)據(jù)庫記錄,所述select語句未加行級鎖。
[0050]步驟S102,利用主鍵定位所述數(shù)據(jù)庫記錄;
[0051]具體的,所述主鍵為Constraint數(shù)據(jù)庫中唯一標(biāo)識一條記錄的字段信息。
[0052]步驟S103,更新所述第一預(yù)更新字段,控制內(nèi)存中所述數(shù)據(jù)庫記錄的版本號加I ;
[0053]步驟S104,在更新所述第一預(yù)更新字段的過程中,當(dāng)獲取到對第二預(yù)更新字段的更新請求時,利用所述主鍵定位所述數(shù)據(jù)庫記錄;
[0054]具體的,所述第二預(yù)更新字段位于所述數(shù)據(jù)庫記錄中。
[0055]步驟S105,獲取所述數(shù)據(jù)庫記錄在內(nèi)存中的版本號以及在數(shù)據(jù)庫中的版本號;
[0056]步驟S106,當(dāng)所述數(shù)據(jù)庫記錄在內(nèi)存中的版本號,減去所述數(shù)據(jù)庫記錄在數(shù)據(jù)庫中的版本號所得到的差值為I時,更新所述第二預(yù)更新字段。
[0057]具體的,當(dāng)所述數(shù)據(jù)庫記錄在內(nèi)存中的版本號,減去所述數(shù)據(jù)庫記錄在數(shù)據(jù)庫中的版本號所得到的差值為I時,說明第一預(yù)更新字段已經(jīng)更新成功,則開始更新第二預(yù)更新字段。
[0058]經(jīng)由上述的技術(shù)方案可知,與現(xiàn)有技術(shù)相比,本發(fā)明實(shí)施例一提供了一種更新數(shù)據(jù)庫記錄的控制方法和裝置。當(dāng)需要對數(shù)據(jù)庫記錄進(jìn)行更新時,本發(fā)明實(shí)施例一提供的技術(shù)方案,獲取預(yù)更新的一條數(shù)據(jù)庫記錄,利用主鍵定位所述數(shù)據(jù)庫記錄,然后更新所述第一預(yù)更新字段,控制內(nèi)存中所述數(shù)據(jù)庫記錄的版本號加1,在更新所述第一預(yù)更新字段的過程中,當(dāng)獲取到對第二預(yù)更新字段的更新請求時,利用所述主鍵定位所述數(shù)據(jù)庫記錄,所述第二預(yù)更新字段位于所述數(shù)據(jù)庫記錄中,然后獲取所述數(shù)據(jù)庫記錄在內(nèi)存中的版本號以及在數(shù)據(jù)庫中的版本號,當(dāng)所述數(shù)據(jù)庫記錄在內(nèi)存中的版本號,減去所述數(shù)據(jù)庫記錄在數(shù)據(jù)庫中的版本號所得到的差值為I時,更新所述第二預(yù)更新字段。本發(fā)明實(shí)施例一提供的技術(shù)方案,通過主鍵與數(shù)據(jù)庫版本號控制的方式,實(shí)現(xiàn)并發(fā)控制,能夠避免長事務(wù)的修改操作覆蓋掉短事務(wù)對記錄的修改這一情況,而本發(fā)明實(shí)施例一提供的技術(shù)方案,不需要引入數(shù)據(jù)庫悲觀鎖,因此不會出現(xiàn)死鎖造成的并發(fā)效率低的情況。因此,本發(fā)明實(shí)施例一提供的技術(shù)方案,相對于現(xiàn)有技術(shù)中利用數(shù)據(jù)庫悲觀鎖完成并發(fā)控制的方式,能夠提高并發(fā)效率。
[0059]為了更加詳細(xì)的闡述本發(fā)明提供的技術(shù)方案,本發(fā)明還公開了另外一個具體實(shí)施例。
[0060]實(shí)施例二
[0061]請參閱圖2,圖2為本發(fā)明實(shí)施例提供的另外一種更新數(shù)據(jù)庫記錄的控制方法的流程圖。如圖2所示,該方法包括:
[0062]步驟S201,獲取預(yù)更新的一條數(shù)據(jù)庫記錄;
[0063]步驟S202,利用主鍵定位所述數(shù)據(jù)庫記錄;
[0064]步驟S203,查找所述第一預(yù)更新字段,獲取用戶輸入的與所述第一預(yù)更新字段相對應(yīng)的第一更新數(shù)據(jù),更新所述第一預(yù)更新字段;
[0065]具體的,所述第一預(yù)更新字段位于所述數(shù)據(jù)庫記錄中。
[0066]步驟S204,讀取數(shù)據(jù)庫中所述數(shù)據(jù)庫記錄的版本號,將所述數(shù)據(jù)庫記錄的版本號存至內(nèi)存,控制內(nèi)存中所述數(shù)據(jù)庫記錄的版本號加I ;
[0067]步驟S205,在更新所述第一預(yù)更新字段的過程中,當(dāng)獲取到對第二預(yù)更新字段的更新請求時,利用所述主鍵定位所述數(shù)據(jù)庫記錄;
[0068]具體的,所述第二預(yù)更新字段位于所述數(shù)據(jù)庫記錄中。
[0069]步驟S206,獲取所述數(shù)據(jù)庫記錄在內(nèi)存中的版本號以及在數(shù)據(jù)庫中的版本號;
[0070]步驟S207,計算所述數(shù)據(jù)庫記錄在內(nèi)存中的版本號,減去所述數(shù)據(jù)庫記錄在數(shù)據(jù)庫中的版本號的差值;若所述差值0,執(zhí)行步驟S208 ;若所述差值為1,執(zhí)行步驟S209 ;
[0071]步驟S208,等待預(yù)設(shè)時間,直至所述差值為I ;
[0072]步驟S209,查找所述第二預(yù)更新字段,獲取用戶輸入的與所述第二預(yù)更新字段相對應(yīng)的第二更新數(shù)據(jù),更新所述第二預(yù)更新字段。
[0073]為了更加全面地闡述本發(fā)明提供的技術(shù)方案,本發(fā)明實(shí)施例還提供一種更新數(shù)據(jù)庫記錄的控制裝置。
[0074]圖3為本發(fā)明實(shí)施例提供的一種更新數(shù)據(jù)庫記錄的控制裝置的結(jié)構(gòu)圖。如圖3所示,該裝置包括:
[0075]數(shù)據(jù)庫記錄獲取單元301,用于獲取預(yù)更新的一條數(shù)據(jù)庫記錄;
[0076]第一主鍵定位單元302,用于利用主鍵定位所述數(shù)據(jù)庫記錄;
[0077]第一預(yù)更新字段更新單元303,用于更新所述第一預(yù)更新字段,控制內(nèi)存中所述數(shù)據(jù)庫記錄的版本號加I ;
[0078]第二主鍵定位單元304,用于在更新所述第一預(yù)更新字段的過程中,當(dāng)獲取到對第二預(yù)更新字段的更新請求時,利用所述主鍵定位所述數(shù)據(jù)庫記錄;所述第二預(yù)更新字段位于所述數(shù)據(jù)庫記錄中;
[0079]數(shù)據(jù)庫記錄版本號獲取單元305,用于獲取所述數(shù)據(jù)庫記錄在內(nèi)存中的版本號以及在數(shù)據(jù)庫中的版本號;
[0080]第二預(yù)更新字段更新單元306,用于當(dāng)所述數(shù)據(jù)庫記錄在內(nèi)存中的版本號,減去所述數(shù)據(jù)庫記錄在數(shù)據(jù)庫中的版本號所得到的差值為I時,更新所述第二預(yù)更新字段。
[0081]進(jìn)一步的,本發(fā)明實(shí)施例提供的更新數(shù)據(jù)庫記錄的控制裝置,還包括:
[0082]第一預(yù)更新字段查找單元,用于查找所述第一預(yù)更新字段,所述第一預(yù)更新字段位于所述數(shù)據(jù)庫記錄中;
[0083]第一更新數(shù)據(jù)獲取單元,用于獲取用戶輸入的與所述第一預(yù)更新字段相對應(yīng)的第一更新數(shù)據(jù)。
[0084]存儲單元,用于讀取數(shù)據(jù)庫中所述數(shù)據(jù)庫記錄的版本號,將所述數(shù)據(jù)庫記錄的版本號存至內(nèi)存。
[0085]第二預(yù)更新字段查找單元,用于查找所述第二預(yù)更新字段;
[0086]第二更新數(shù)據(jù)獲取單元,用于獲取用戶輸入的與所述第二預(yù)更新字段相對應(yīng)的第二更新數(shù)據(jù)。
[0087]最后,還需要說明的是,在本文中,諸如第一和第二等之類的關(guān)系術(shù)語僅僅用來將一個實(shí)體或者操作與另一個實(shí)體或操作區(qū)分開來,而不一定要求或者暗示這些實(shí)體或操作之間存在任何這種實(shí)際的關(guān)系或者順序。而且,術(shù)語“包括”、“包含”或者其任何其他變體意在涵蓋非排他性的包含,從而使得包括一系列要素的過程、方法、物品或者設(shè)備不僅包括那些要素,而且還包括沒有明確列出的其他要素,或者是還包括為這種過程、方法、物品或者設(shè)備所固有的要素。在沒有更多限制的情況下,由語句“包括一個……”限定的要素,并不排除在包括所述要素的過程、方法、物品或者設(shè)備中還存在另外的相同要素。
[0088]本說明書中各個實(shí)施例采用遞進(jìn)的方式描述,每個實(shí)施例重點(diǎn)說明的都是與其他實(shí)施例的不同之處,各個實(shí)施例之間相同相似部分互相參見即可。對于實(shí)施例公開的裝置而言,由于其與實(shí)施例公開的方法相對應(yīng),所以描述的比較簡單,相關(guān)之處參見方法部分說明即可。
[0089]結(jié)合本文中所公開的實(shí)施例描述的方法或算法的步驟可以直接用硬件、處理器執(zhí)行的軟件模塊,或者二者的結(jié)合來實(shí)施。軟件模塊可以置于隨機(jī)存儲器(RAM)、內(nèi)存、只讀存儲器(ROM)、電可編程ROM、電可擦除可編程ROM、寄存器、硬盤、可移動磁盤、CD-ROM、或【技術(shù)領(lǐng)域】內(nèi)所公知的任意其它形式的存儲介質(zhì)中。
[0090]對所公開的實(shí)施例的上述說明,使本領(lǐng)域?qū)I(yè)技術(shù)人員能夠?qū)崿F(xiàn)或使用本發(fā)明。對這些實(shí)施例的多種修改對本領(lǐng)域的專業(yè)技術(shù)人員來說將是顯而易見的,本文中所定義的一般原理可以在不脫離本發(fā)明的精神或范圍的情況下,在其它實(shí)施例中實(shí)現(xiàn)。因此,本發(fā)明將不會被限制于本文所示的這些實(shí)施例,而是要符合與本文所公開的原理和新穎特點(diǎn)相一致的最寬的范圍。
【權(quán)利要求】
1.一種更新數(shù)據(jù)庫記錄的控制方法,其特征在于,包括: 獲取預(yù)更新的一條數(shù)據(jù)庫記錄; 利用主鍵定位所述數(shù)據(jù)庫記錄; 更新所述第一預(yù)更新字段,控制內(nèi)存中所述數(shù)據(jù)庫記錄的版本號加I; 在更新所述第一預(yù)更新字段的過程中,當(dāng)獲取到對第二預(yù)更新字段的更新請求時,利用所述主鍵定位所述數(shù)據(jù)庫記錄;所述第二預(yù)更新字段位于所述數(shù)據(jù)庫記錄中; 獲取所述數(shù)據(jù)庫記錄在內(nèi)存中的版本號以及在數(shù)據(jù)庫中的版本號; 當(dāng)所述數(shù)據(jù)庫記錄在內(nèi)存中的版本號,減去所述數(shù)據(jù)庫記錄在數(shù)據(jù)庫中的版本號所得到的差值為I時,更新所述第二預(yù)更新字段。
2.根據(jù)權(quán)利要求1所述的方法,其特征在于,通過select語句獲取預(yù)更新的一條所述數(shù)據(jù)庫記錄,所述select語句未加行級鎖。
3.根據(jù)權(quán)利要求1所述的方法,其特征在于,所述更新所述第一預(yù)更新字段之前,還包括: 查找所述第一預(yù)更新字段,所述第一預(yù)更新字段位于所述數(shù)據(jù)庫記錄中; 獲取用戶輸入的與所述第一預(yù)更新字段相對應(yīng)的第一更新數(shù)據(jù)。
4.根據(jù)權(quán)利要求1所述的方法,其特征在于,所述控制內(nèi)存中所述數(shù)據(jù)庫記錄的版本號加I之前,還包括: 讀取數(shù)據(jù)庫中所述數(shù)據(jù)庫記錄的版本號,將所述數(shù)據(jù)庫記錄的版本號存至內(nèi)存。
5.根據(jù)權(quán)利要求1所述的方法,其特征在于,所述更新所述第二預(yù)更新字段之前,還包括: 查找所述第二預(yù)更新字段; 獲取用戶輸入的與所述第二預(yù)更新字段相對應(yīng)的第二更新數(shù)據(jù)。
6.根據(jù)權(quán)利要求1所述的方法,其特征在于,當(dāng)所述差值為O時,等待預(yù)設(shè)時間,直至所述差值為I。
7.一種更新數(shù)據(jù)庫記錄的控制裝置,其特征在于,包括: 數(shù)據(jù)庫記錄獲取單元,用于獲取預(yù)更新的一條數(shù)據(jù)庫記錄; 第一主鍵定位單元,用于利用主鍵定位所述數(shù)據(jù)庫記錄; 第一預(yù)更新字段更新單元,用于更新所述第一預(yù)更新字段,控制內(nèi)存中所述數(shù)據(jù)庫記錄的版本號加I ; 第二主鍵定位單元,用于在更新所述第一預(yù)更新字段的過程中,當(dāng)獲取到對第二預(yù)更新字段的更新請求時,利用所述主鍵定位所述數(shù)據(jù)庫記錄;所述第二預(yù)更新字段位于所述數(shù)據(jù)庫記錄中; 數(shù)據(jù)庫記錄版本號獲取單元,用于獲取所述數(shù)據(jù)庫記錄在內(nèi)存中的版本號以及在數(shù)據(jù)庫中的版本號; 第二預(yù)更新字段更新單元,用于當(dāng)所述數(shù)據(jù)庫記錄在內(nèi)存中的版本號,減去所述數(shù)據(jù)庫記錄在數(shù)據(jù)庫中的版本號所得到的差值為I時,更新所述第二預(yù)更新字段。
8.根據(jù)權(quán)利要求7所述的裝置,其特征在于,還包括: 第一預(yù)更新字段查找單元,用于查找所述第一預(yù)更新字段,所述第一預(yù)更新字段位于所述數(shù)據(jù)庫記錄中; 第一更新數(shù)據(jù)獲取單元,用于獲取用戶輸入的與所述第一預(yù)更新字段相對應(yīng)的第一更新數(shù)據(jù)。
9.根據(jù)權(quán)利要求7所述的裝置,其特征在于,還包括: 存儲單元,用于讀取數(shù)據(jù)庫中所述數(shù)據(jù)庫記錄的版本號,將所述數(shù)據(jù)庫記錄的版本號存至內(nèi)存。
10.根據(jù)權(quán)利要求7所述的裝置,其特征在于,還包括: 第二預(yù)更新字段查找單元,用于查找所述第二預(yù)更新字段; 第二更新數(shù)據(jù)獲取單元,用于獲取用戶輸入的與所述第二預(yù)更新字段相對應(yīng)的第二更新數(shù)據(jù)。
【文檔編號】G06F17/30GK104376070SQ201410645604
【公開日】2015年2月25日 申請日期:2014年11月12日 優(yōu)先權(quán)日:2014年11月12日
【發(fā)明者】舒展, 陳炙, 聶砂, 劉海, 李拓, 曲麟智 申請人:中國建設(shè)銀行股份有限公司