專(zhuān)利名稱(chēng)::一種避免智能網(wǎng)系統(tǒng)中數(shù)據(jù)庫(kù)死鎖的方法和裝置的制作方法
技術(shù)領(lǐng)域:
:本發(fā)明涉及通信領(lǐng)域中的智能網(wǎng)系統(tǒng),尤其涉及一種避免智能網(wǎng)系統(tǒng)中數(shù)據(jù)庫(kù)死鎖的方法和裝置。
背景技術(shù):
:智能網(wǎng)已是電信系統(tǒng)發(fā)展很成熟的增值業(yè)務(wù)實(shí)現(xiàn)方案,可以根據(jù)實(shí)際需要快速、靈活、方便且經(jīng)濟(jì)地生成各種業(yè)務(wù),為運(yùn)營(yíng)商帶來(lái)良好的社會(huì)效益和經(jīng)濟(jì)效益。在業(yè)務(wù)運(yùn)行過(guò)程中,智能網(wǎng)系統(tǒng)根據(jù)相應(yīng)的業(yè)務(wù)邏輯對(duì)業(yè)務(wù)數(shù)據(jù)庫(kù)中的數(shù)據(jù)實(shí)時(shí)地進(jìn)行查詢、提取、刪除等操作。在數(shù)據(jù)庫(kù)的操作中,鎖是最常用的并發(fā)控制機(jī)構(gòu),是防止其它事務(wù)訪問(wèn)指定的資源,控制且實(shí)現(xiàn)并發(fā)操作的一種主要手段。當(dāng)一個(gè)用戶鎖住數(shù)據(jù)庫(kù)中的某個(gè)對(duì)象時(shí),其它用戶則就不能再訪問(wèn)該對(duì)象。數(shù)據(jù)庫(kù)中比較常見(jiàn)的死鎖是交叉互鎖,例如在一個(gè)數(shù)據(jù)庫(kù)事務(wù)中,A表和B表的數(shù)據(jù)操縱語(yǔ)言(DML)順序,與另一個(gè)數(shù)據(jù)庫(kù)事務(wù)中A表和B表的DML順序相反,那么,如果這兩個(gè)事務(wù)同時(shí)發(fā)起,就會(huì)由于A表和B表的相互鎖定引起死鎖,如圖1所示。目前,在對(duì)數(shù)據(jù)庫(kù)的實(shí)際操作研究中,發(fā)現(xiàn)了另一種比較特殊的鎖,即當(dāng)兩個(gè)不同的進(jìn)程同時(shí)對(duì)同一張表執(zhí)行插入和刪除操作時(shí),即使沒(méi)有啟用事務(wù),也可能會(huì)導(dǎo)致數(shù)據(jù)庫(kù)發(fā)生死鎖。究其原因,我們發(fā)現(xiàn)在對(duì)同一張表進(jìn)行插入和刪除時(shí),會(huì)分別產(chǎn)生索引頁(yè)鎖和數(shù)據(jù)頁(yè)鎖,因此,當(dāng)兩個(gè)進(jìn)程同時(shí)進(jìn)行時(shí),會(huì)導(dǎo)致兩個(gè)進(jìn)程因爭(zhēng)奪鎖資源而產(chǎn)生數(shù)據(jù)庫(kù)死鎖的問(wèn)題。同樣,為了實(shí)時(shí)準(zhǔn)確地記錄業(yè)務(wù)執(zhí)行過(guò)程中用戶的狀態(tài)信息及消費(fèi)情況等,智能網(wǎng)系統(tǒng)會(huì)及時(shí)地將用戶的業(yè)務(wù)信息記錄至相應(yīng)表,即插入至相應(yīng)表,以便后續(xù)進(jìn)行查詢。然而,表空間不可能無(wú)限制地增大,對(duì)于一些已被查詢過(guò)的業(yè)務(wù)信息或過(guò)期的業(yè)務(wù)信息,需要有另外的任務(wù)對(duì)表中的業(yè)務(wù)信息進(jìn)行定時(shí)刪除,若此時(shí)插入和刪除兩個(gè)進(jìn)程同時(shí)發(fā)生,數(shù)據(jù)庫(kù)則可能發(fā)生死鎖,尤其在接口扣費(fèi)等業(yè)務(wù)產(chǎn)生記錄比較頻繁的時(shí)候,發(fā)生死鎖的概率更大。死鎖的發(fā)生對(duì)智能網(wǎng)系統(tǒng)的性能將產(chǎn)生很大影響,直接影響用戶的通話質(zhì)量,甚至可能導(dǎo)致整個(gè)智能網(wǎng)系統(tǒng)的癱瘓。
發(fā)明內(nèi)容有鑒于此,本發(fā)明的主要目的在于提供一種避免智能網(wǎng)系統(tǒng)中數(shù)據(jù)庫(kù)死鎖的方法和裝置,可避免智能網(wǎng)系統(tǒng)中產(chǎn)生的死鎖問(wèn)題,進(jìn)而保證智能網(wǎng)系統(tǒng)的正常運(yùn)行。為達(dá)到上述目的,本發(fā)明的技術(shù)方案是這樣實(shí)現(xiàn)的本發(fā)明提供了一種避免智能網(wǎng)系統(tǒng)中數(shù)據(jù)庫(kù)死鎖的方法,該方法包括為需被執(zhí)行插入和刪除操作的表增設(shè)一張空表;以設(shè)定的時(shí)間為周期交替將兩張表設(shè)為插入表或刪除表;業(yè)務(wù)運(yùn)行過(guò)程中,判斷兩張表的屬性,依據(jù)兩張表的屬性分別對(duì)兩張表執(zhí)行對(duì)應(yīng)的插入或刪除操作。其中,所述以設(shè)定的時(shí)間為周期交替將兩張表設(shè)為插入表或刪除表,具體為設(shè)置一個(gè)標(biāo)識(shí)開(kāi)關(guān),以設(shè)定的時(shí)間為周期令標(biāo)識(shí)開(kāi)關(guān)的值交替取值,且令標(biāo)識(shí)開(kāi)關(guān)的不同取值對(duì)應(yīng)兩張表的不同屬性。其中,所述令標(biāo)識(shí)開(kāi)關(guān)的不同取值對(duì)應(yīng)兩張表的不同屬性,為標(biāo)識(shí)開(kāi)關(guān)的值為0時(shí),原表為插入表,增設(shè)的表為刪除表;標(biāo)識(shí)開(kāi)關(guān)的值為1時(shí),原表為刪除表,增設(shè)的表為插入表;或者,標(biāo)識(shí)開(kāi)關(guān)的值為0時(shí),原表為刪除表,增設(shè)的表為插入表;標(biāo)識(shí)開(kāi)關(guān)的值為1時(shí),原表為插入表,增設(shè)的表為刪除表。其中,所述判斷并依據(jù)兩張表的屬性分別對(duì)兩張表執(zhí)行對(duì)應(yīng)的插入或刪除操作,具體為業(yè)務(wù)運(yùn)行過(guò)程中判斷標(biāo)識(shí)開(kāi)關(guān)的值,依據(jù)標(biāo)識(shí)開(kāi)關(guān)的值確定兩張表的屬性,并依據(jù)兩張表的屬性分別對(duì)兩張表執(zhí)行對(duì)應(yīng)的插入或刪除操作。上述方案中,所述設(shè)定的周期與定時(shí)執(zhí)行刪除操作對(duì)應(yīng)的周期相同。其中,所述標(biāo)識(shí)開(kāi)關(guān)設(shè)為operflag;相應(yīng)的,所述令標(biāo)識(shí)開(kāi)關(guān)的值交替為0或1為令operflag=(operflag+Ι)%2。本發(fā)明還提供了一種避免智能網(wǎng)系統(tǒng)中數(shù)據(jù)庫(kù)死鎖的裝置,該裝置包括配置模塊、設(shè)置模塊和運(yùn)行模塊;其中,所述配置模塊,用于為需被執(zhí)行插入和刪除操作的表增設(shè)一張空表,并將兩張表傳送到設(shè)置模塊;所述設(shè)置模塊,用于以設(shè)定的時(shí)間為周期交替將配置模塊傳送的兩張表設(shè)為插入表或刪除表;所述運(yùn)行模塊,用于業(yè)務(wù)運(yùn)行過(guò)程中,判斷設(shè)置模塊中兩張表的屬性,依據(jù)兩張表的屬性分別對(duì)兩張表執(zhí)行對(duì)應(yīng)的插入或刪除操作。其中,所述設(shè)置模塊,具體用于設(shè)置一個(gè)標(biāo)識(shí)開(kāi)關(guān),以設(shè)定的時(shí)間為周期令標(biāo)識(shí)開(kāi)關(guān)的值交替取值,且令標(biāo)識(shí)開(kāi)關(guān)的不同取值對(duì)應(yīng)兩張表的不同屬性。所述運(yùn)行模塊,具體用于業(yè)務(wù)運(yùn)行過(guò)程中判斷設(shè)置模塊中標(biāo)識(shí)開(kāi)關(guān)的值,依據(jù)標(biāo)識(shí)開(kāi)關(guān)的值確定兩張表的屬性,并依據(jù)兩張表的屬性分別對(duì)兩張表執(zhí)行對(duì)應(yīng)的插入或刪除操作。其中,所述設(shè)定的周期與定時(shí)執(zhí)行刪除操作對(duì)應(yīng)的周期相同。本發(fā)明提供的避免智能網(wǎng)系統(tǒng)中數(shù)據(jù)庫(kù)死鎖的方法和裝置,為需被執(zhí)行插入和刪除操作的表增設(shè)一張空表;以設(shè)定的時(shí)間為周期交替將兩張表設(shè)為插入表或刪除表;業(yè)務(wù)運(yùn)行過(guò)程中,判斷兩張表的屬性,依據(jù)兩張表的屬性分別對(duì)兩張表執(zhí)行對(duì)應(yīng)的插入或刪除操作。本發(fā)明可將復(fù)制所得的兩張表周期切換為插入表或刪除表,保證即使插入和刪除兩個(gè)進(jìn)程同時(shí)進(jìn)行,也不會(huì)對(duì)同一張表執(zhí)行操作,因此有效避免了現(xiàn)有技術(shù)中的死鎖問(wèn)題,可保證智能網(wǎng)系統(tǒng)的正常運(yùn)行。圖1為現(xiàn)有數(shù)據(jù)庫(kù)中發(fā)生交叉互鎖的流程示意圖;圖2為本發(fā)明避免智能網(wǎng)系統(tǒng)中數(shù)據(jù)庫(kù)死鎖的方法實(shí)現(xiàn)流程示意4圖3為本發(fā)明避免智能網(wǎng)系統(tǒng)中數(shù)據(jù)庫(kù)死鎖的裝置結(jié)構(gòu)示意圖。具體實(shí)施例方式本發(fā)明的基本思想是為需被執(zhí)行插入和刪除操作的表增設(shè)一張空表;以設(shè)定的時(shí)間為周期交替將兩張表設(shè)為插入表或刪除表;業(yè)務(wù)運(yùn)行過(guò)程中,判斷兩張表的屬性,依據(jù)兩張表的屬性分別對(duì)兩張表執(zhí)行對(duì)應(yīng)的插入或刪除操作。本發(fā)明中,通過(guò)設(shè)置一個(gè)任務(wù)來(lái)管理所述插入表和刪除表的切換,實(shí)現(xiàn)方法為設(shè)置一個(gè)標(biāo)識(shí)開(kāi)關(guān),由定時(shí)器來(lái)控制標(biāo)識(shí)開(kāi)關(guān)的值交替取值,例如交替為0或1,當(dāng)標(biāo)識(shí)開(kāi)關(guān)的值為0時(shí),第一張表為插入表,第二張表為刪除表;當(dāng)標(biāo)識(shí)開(kāi)關(guān)的值為1時(shí),第一張表為刪除表,第二張表為插入表;所述判斷兩張表的屬性,依據(jù)兩張表的屬性分別對(duì)兩張表執(zhí)行對(duì)應(yīng)的插入或刪除操作為判斷所述標(biāo)識(shí)開(kāi)關(guān)的值,如果業(yè)務(wù)運(yùn)行過(guò)程中需執(zhí)行插入操作,則依據(jù)標(biāo)識(shí)開(kāi)關(guān)的值向當(dāng)前的插入表中插入數(shù)據(jù);如果業(yè)務(wù)運(yùn)行過(guò)程中需執(zhí)行刪除操作,則依據(jù)標(biāo)識(shí)開(kāi)關(guān)的值從當(dāng)前的刪除表中刪除數(shù)據(jù)。下面結(jié)合附圖及具體實(shí)施例對(duì)本發(fā)明作進(jìn)一步詳細(xì)說(shuō)明。圖2為本發(fā)明避免智能網(wǎng)系統(tǒng)中數(shù)據(jù)庫(kù)死鎖的方法實(shí)現(xiàn)流程示意圖,如圖2所示,該方法的實(shí)現(xiàn)步驟如下步驟201為需被執(zhí)行插入和刪除操作的表增設(shè)一張空表;這里,假設(shè)需被執(zhí)行插入和刪除操作的表為table,為table增設(shè)一張空表,設(shè)為tablelο步驟202設(shè)置一個(gè)標(biāo)識(shí)開(kāi)關(guān),由定時(shí)器來(lái)控制標(biāo)識(shí)開(kāi)關(guān)的值交替為0或1;具體為可將標(biāo)識(shí)開(kāi)關(guān)設(shè)為operflag,且設(shè)置當(dāng)標(biāo)識(shí)開(kāi)關(guān)operflag=0時(shí),tablel為插入表,table為刪除表;當(dāng)標(biāo)識(shí)開(kāi)關(guān)operflag=1時(shí),tablel為刪除表,table為插入表。本發(fā)明中,在設(shè)置標(biāo)識(shí)開(kāi)關(guān)時(shí),需首先將增設(shè)的空表設(shè)為插入表,原表設(shè)為刪除表,以上述設(shè)置為例,需首先令空表tablel為插入表,以防止原表中的最初始數(shù)據(jù)最終未被刪除的情況,從而防止對(duì)最終的計(jì)費(fèi)操作造成影響。其中,所述定時(shí)器設(shè)定的周期與定時(shí)執(zhí)行刪除操作對(duì)應(yīng)的周期相同,可為15分鐘,定時(shí)周期的長(zhǎng)短可以插入的業(yè)務(wù)數(shù)據(jù)的多少為依據(jù),如果業(yè)務(wù)數(shù)據(jù)較多,考慮到內(nèi)存的問(wèn)題,則需對(duì)過(guò)期的業(yè)務(wù)數(shù)據(jù)及時(shí)進(jìn)行刪除,因此可設(shè)置較小的周期;反之,如果業(yè)務(wù)數(shù)據(jù)較少,可設(shè)置較大的周期。在實(shí)際應(yīng)用過(guò)程中,可在定時(shí)器達(dá)到預(yù)設(shè)的時(shí)間時(shí),令當(dāng)前的標(biāo)識(shí)開(kāi)關(guān)operflag=(operflag+Ι)%2,其含義為operflag+Ι被2整除所得的余數(shù)。步驟203業(yè)務(wù)運(yùn)行時(shí)判斷標(biāo)識(shí)開(kāi)關(guān)的值,依據(jù)標(biāo)識(shí)開(kāi)關(guān)的值分別對(duì)兩張表執(zhí)行插入或刪除操作;具體為業(yè)務(wù)運(yùn)行時(shí),如需向表中插入數(shù)據(jù),系統(tǒng)則首先判斷標(biāo)識(shí)開(kāi)關(guān)的值,以步驟202中的例子為例,如果標(biāo)識(shí)開(kāi)關(guān)operflag=0,則向tablel中插入數(shù)據(jù);如果標(biāo)識(shí)開(kāi)關(guān)operflag=1,則向table中插入數(shù)據(jù)。同樣,如需從表中刪除數(shù)據(jù),系統(tǒng)則首先判斷標(biāo)識(shí)開(kāi)關(guān)的值,如果標(biāo)識(shí)開(kāi)關(guān)operflag=OJUWtable中刪除數(shù)據(jù);如果標(biāo)識(shí)開(kāi)關(guān)operflag=1,則從tablel中刪除數(shù)據(jù)。當(dāng)然,本發(fā)明中所述插入和刪除操作可以同時(shí)進(jìn)行,插入操作對(duì)應(yīng)插入表,刪除操作對(duì)應(yīng)刪除表。這里,由于刪除數(shù)據(jù)時(shí)只是刪除過(guò)期的或早已查詢過(guò)的部分業(yè)務(wù)數(shù)據(jù),而向表中插入數(shù)據(jù)的操作比較頻繁,可以說(shuō)是持續(xù)進(jìn)行的,因此不會(huì)造成需執(zhí)行刪除操作的表中不存在數(shù)據(jù)的情況。下面結(jié)合一具體實(shí)施例對(duì)本發(fā)明所述的方法進(jìn)行詳細(xì)描述。在智能網(wǎng)預(yù)付費(fèi)業(yè)務(wù)(PPS)中,設(shè)slheibailist為用戶狀態(tài)變化表,當(dāng)用戶狀態(tài)在業(yè)務(wù)執(zhí)行過(guò)程中發(fā)生變化時(shí),需要由各業(yè)務(wù)流程向slheibailist中插入用戶狀態(tài)變化記錄,即本發(fā)明所述的向表中插入數(shù)據(jù);任務(wù)PPS_Active⑶R.sh定時(shí)執(zhí)行,周期可設(shè)為15分鐘,用于讀取slheibailist中的記錄來(lái)生成激活話單和停開(kāi)機(jī)話單,并將已出話單記錄刪除,即本發(fā)明所述的從表中刪除數(shù)據(jù)。在現(xiàn)有技術(shù)中,如果向slheibailist中插入用戶狀態(tài)變化記錄的操作和PPS_ActiveCDR.sh任務(wù)同時(shí)進(jìn)行,數(shù)據(jù)庫(kù)很可能發(fā)生死鎖,本發(fā)明則提出如下解決方案,實(shí)現(xiàn)步驟如下步驟301為slheibailist增設(shè)一張空表slheibailistl;步驟302設(shè)置標(biāo)識(shí)開(kāi)關(guān)operflag;具體為設(shè)置標(biāo)識(shí)開(kāi)關(guān)operflag,并設(shè)當(dāng)標(biāo)識(shí)開(kāi)關(guān)operflag=0時(shí),slheibailistl為插入表,slheibailist為刪除表;當(dāng)標(biāo)識(shí)開(kāi)關(guān)operflag=1時(shí),slheibailist為插入表,slheibailistl為刪除表,標(biāo)識(shí)開(kāi)關(guān)operflag為0或1的變化周期設(shè)為PPS_Active⑶R.sh任務(wù)的執(zhí)行周期,即為所述的15分鐘。步驟303業(yè)務(wù)流程中,依據(jù)標(biāo)識(shí)開(kāi)關(guān)operflag的值分別對(duì)slheibailist和slheibailistl執(zhí)行插入或刪除操作;具體為業(yè)務(wù)流程中,如果用戶狀態(tài)發(fā)生變化,則首先判斷標(biāo)識(shí)開(kāi)關(guān)operflag的值,如果為0,則向slheibailistl中插入相應(yīng)的狀態(tài)變化值;如果為1,則向slheibailist中插入相應(yīng)的狀態(tài)變化值;同樣,如果需執(zhí)行PPS_ActiveCDR.sh任務(wù),則首先判斷標(biāo)識(shí)開(kāi)關(guān)operflag的值,如果為0,則從slheibailist中讀取較早存儲(chǔ)的已過(guò)期的激活話單和停開(kāi)機(jī)話單,之后將已讀取的話單刪除;如果為1,則從slheibailistl中讀取相應(yīng)激活話單和停開(kāi)機(jī)話單,并將已讀取的話單刪除。本實(shí)施例中還設(shè)置一個(gè)操作標(biāo)志位sltableoperflag,用于標(biāo)識(shí)PPS_ActiveCDR.sh任務(wù)中讀取話單的操作是否已完成,如果sltableoperflag=0,則表示讀取話單的操作已完成;如果sltableoperflag=1,則表示讀取話單的操作還未完成;相應(yīng)的,所述步驟303中PPS_Active⑶R.sh任務(wù)中刪除已讀取話單的操作執(zhí)行前,還需判斷sltableoperflag的值,如果sltableoperflag=0,則繼續(xù)執(zhí)行刪除已讀取話單的操作;如果sltableoperflag=1,則結(jié)束當(dāng)前的PPS_ActiveCDR.sh任務(wù),不再執(zhí)行刪除話單的操作。這里,設(shè)置操作標(biāo)志位sltableoperflag的目的為防止激活話單和停開(kāi)機(jī)話單還未被讀取完成,就執(zhí)行了后續(xù)的刪除話單的操作,從而導(dǎo)致運(yùn)營(yíng)商執(zhí)行計(jì)費(fèi)操作時(shí),找不到作為計(jì)費(fèi)依據(jù)的話單。為實(shí)現(xiàn)上述方法,本發(fā)明還提供了一種避免智能網(wǎng)系統(tǒng)中數(shù)據(jù)庫(kù)死鎖的裝置,如圖3所示,該裝置包括配置模塊、設(shè)置模塊和運(yùn)行模塊;其中,所述配置模塊,用于為需被執(zhí)行插入和刪除操作的表增設(shè)一張空表,并將兩張表傳送到設(shè)置模塊;所述設(shè)置模塊,用于以設(shè)定的時(shí)間為周期交替將配置模塊傳送的兩張表設(shè)為插入表或刪除表;所述運(yùn)行模塊,用于業(yè)務(wù)運(yùn)行過(guò)程中,判斷設(shè)置模塊中兩張表的屬性,依據(jù)兩張表的屬性分別對(duì)兩張表執(zhí)行對(duì)應(yīng)的插入或刪除操作。所述設(shè)置模塊,具體用于設(shè)置一個(gè)標(biāo)識(shí)開(kāi)關(guān),以設(shè)定的時(shí)間為周期令標(biāo)識(shí)開(kāi)關(guān)的值交替取值,且令標(biāo)識(shí)開(kāi)關(guān)的不同取值對(duì)應(yīng)兩張表的不同屬性。所述運(yùn)行模塊,具體用于業(yè)務(wù)運(yùn)行過(guò)程中判斷設(shè)置模塊中標(biāo)識(shí)開(kāi)關(guān)的值,依據(jù)標(biāo)識(shí)開(kāi)關(guān)的值確定兩張表的屬性,并依據(jù)兩張表的屬性分別對(duì)兩張表執(zhí)行對(duì)應(yīng)的插入或刪除操作。其中,所述設(shè)定的周期與定時(shí)執(zhí)行刪除操作對(duì)應(yīng)的周期相同。以上所述,僅為本發(fā)明的較佳實(shí)施例而已,并非用于限定本發(fā)明的保護(hù)范圍,凡在本發(fā)明的精神和原則之內(nèi)所作的任何修改、等同替換和改進(jìn)等,均應(yīng)包含在本發(fā)明的保護(hù)范圍之內(nèi)。權(quán)利要求一種避免智能網(wǎng)系統(tǒng)中數(shù)據(jù)庫(kù)死鎖的方法,其特征在于,該方法包括為需被執(zhí)行插入和刪除操作的表增設(shè)一張空表;以設(shè)定的時(shí)間為周期交替將兩張表設(shè)為插入表或刪除表;業(yè)務(wù)運(yùn)行過(guò)程中,判斷兩張表的屬性,依據(jù)兩張表的屬性分別對(duì)兩張表執(zhí)行對(duì)應(yīng)的插入或刪除操作。2.根據(jù)權(quán)利要求1所述的避免智能網(wǎng)系統(tǒng)中數(shù)據(jù)庫(kù)死鎖的方法,其特征在于,所述以設(shè)定的時(shí)間為周期交替將兩張表設(shè)為插入表或刪除表,具體為設(shè)置一個(gè)標(biāo)識(shí)開(kāi)關(guān),以設(shè)定的時(shí)間為周期令標(biāo)識(shí)開(kāi)關(guān)的值交替取值,且令標(biāo)識(shí)開(kāi)關(guān)的不同取值對(duì)應(yīng)兩張表的不同屬性。3.根據(jù)權(quán)利要求2所述的避免智能網(wǎng)系統(tǒng)中數(shù)據(jù)庫(kù)死鎖的方法,其特征在于,所述令標(biāo)識(shí)開(kāi)關(guān)的不同取值對(duì)應(yīng)兩張表的不同屬性,為標(biāo)識(shí)開(kāi)關(guān)的值為0時(shí),原表為插入表,增設(shè)的表為刪除表;標(biāo)識(shí)開(kāi)關(guān)的值為1時(shí),原表為刪除表,增設(shè)的表為插入表;或者,標(biāo)識(shí)開(kāi)關(guān)的值為0時(shí),原表為刪除表,增設(shè)的表為插入表;標(biāo)識(shí)開(kāi)關(guān)的值為1時(shí),原表為插入表,增設(shè)的表為刪除表。4.根據(jù)權(quán)利要求2或3所述的避免智能網(wǎng)系統(tǒng)中數(shù)據(jù)庫(kù)死鎖的方法,其特征在于,所述判斷并依據(jù)兩張表的屬性分別對(duì)兩張表執(zhí)行對(duì)應(yīng)的插入或刪除操作,具體為業(yè)務(wù)運(yùn)行過(guò)程中判斷標(biāo)識(shí)開(kāi)關(guān)的值,依據(jù)標(biāo)識(shí)開(kāi)關(guān)的值確定兩張表的屬性,并依據(jù)兩張表的屬性分別對(duì)兩張表執(zhí)行對(duì)應(yīng)的插入或刪除操作。5.根據(jù)權(quán)利要求1、2或3所述的避免智能網(wǎng)系統(tǒng)中數(shù)據(jù)庫(kù)死鎖的方法,其特征在于,所述設(shè)定的周期與定時(shí)執(zhí)行刪除操作對(duì)應(yīng)的周期相同。6.根據(jù)權(quán)利要求3所述的避免智能網(wǎng)系統(tǒng)中數(shù)據(jù)庫(kù)死鎖的方法,其特征在于,所述標(biāo)識(shí)開(kāi)關(guān)設(shè)為operflag;相應(yīng)的,所述令標(biāo)識(shí)開(kāi)關(guān)的值交替為0或1為令operflag=(operflag+Ι)%2。7.—種避免智能網(wǎng)系統(tǒng)中數(shù)據(jù)庫(kù)死鎖的裝置,其特征在于,該裝置包括配置模塊、設(shè)置模塊和運(yùn)行模塊;其中,所述配置模塊,用于為需被執(zhí)行插入和刪除操作的表增設(shè)一張空表,并將兩張表傳送到設(shè)置模塊;所述設(shè)置模塊,用于以設(shè)定的時(shí)間為周期交替將配置模塊傳送的兩張表設(shè)為插入表或刪除表;所述運(yùn)行模塊,用于業(yè)務(wù)運(yùn)行過(guò)程中,判斷設(shè)置模塊中兩張表的屬性,依據(jù)兩張表的屬性分別對(duì)兩張表執(zhí)行對(duì)應(yīng)的插入或刪除操作。8.根據(jù)權(quán)利要求7所述的避免智能網(wǎng)系統(tǒng)中數(shù)據(jù)庫(kù)死鎖的裝置,其特征在于,所述設(shè)置模塊,具體用于設(shè)置一個(gè)標(biāo)識(shí)開(kāi)關(guān),以設(shè)定的時(shí)間為周期令標(biāo)識(shí)開(kāi)關(guān)的值交替取值,且令標(biāo)識(shí)開(kāi)關(guān)的不同取值對(duì)應(yīng)兩張表的不同屬性。9.根據(jù)權(quán)利要求8所述的避免智能網(wǎng)系統(tǒng)中數(shù)據(jù)庫(kù)死鎖的裝置,其特征在于,所述運(yùn)行模塊,具體用于業(yè)務(wù)運(yùn)行過(guò)程中判斷設(shè)置模塊中標(biāo)識(shí)開(kāi)關(guān)的值,依據(jù)標(biāo)識(shí)開(kāi)關(guān)的值確定兩張表的屬性,并依據(jù)兩張表的屬性分別對(duì)兩張表執(zhí)行對(duì)應(yīng)的插入或刪除操作。10.根據(jù)權(quán)利要求7、8或9所述的避免智能網(wǎng)系統(tǒng)中數(shù)據(jù)庫(kù)死鎖的裝置,其特征在于,所述設(shè)定的周期與定時(shí)執(zhí)行刪除操作對(duì)應(yīng)的周期相同。全文摘要本發(fā)明公開(kāi)了一種避免智能網(wǎng)系統(tǒng)中數(shù)據(jù)庫(kù)死鎖的方法,包括為需被執(zhí)行插入和刪除操作的表增設(shè)一張空表;以設(shè)定的時(shí)間為周期交替將兩張表設(shè)為插入表或刪除表;業(yè)務(wù)運(yùn)行過(guò)程中,判斷兩張表的屬性,依據(jù)兩張表的屬性分別對(duì)兩張表執(zhí)行對(duì)應(yīng)的插入或刪除操作。本發(fā)明還同時(shí)公開(kāi)了一種避免智能網(wǎng)系統(tǒng)中數(shù)據(jù)庫(kù)死鎖的裝置,運(yùn)用該方法和裝置可避免智能網(wǎng)系統(tǒng)中產(chǎn)生的死鎖問(wèn)題,進(jìn)而保證智能網(wǎng)系統(tǒng)的正常運(yùn)行。文檔編號(hào)G06F17/30GK101894142SQ20101021099公開(kāi)日2010年11月24日申請(qǐng)日期2010年6月28日優(yōu)先權(quán)日2010年6月28日發(fā)明者陳西申請(qǐng)人:中興通訊股份有限公司