a亚洲精品_精品国产91乱码一区二区三区_亚洲精品在线免费观看视频_欧美日韩亚洲国产综合_久久久久久久久久久成人_在线区

首頁 > 數(shù)據(jù)庫 > Oracle > 正文

Oracle數(shù)據(jù)完整性嵌套事務(wù)調(diào)用的研究

2024-08-29 13:50:43
字體:
供稿:網(wǎng)友
為了保護數(shù)據(jù)的完整性我們用了很多的方法,比如數(shù)據(jù)表的主鍵約束、外鍵約束、觸發(fā)器等等,我們今天討論的就是在處理數(shù)據(jù)直接的事務(wù)的時候,保存數(shù)據(jù)的完整性。 比如,我在一個存儲過程中PRoc_SaveBill保存一張單據(jù),調(diào)用一個函數(shù)Func_GenerateCode來生成一個單據(jù)的編號,假如我的這個函數(shù)是從一個存有最大編號的表中取出的并且把編號加一,大家可能會想象的可能產(chǎn)生的問題,就是假如我在Proc_SaveBill中的保存之前通過Func_GenerateCode得到一個編號,假如后面的保存不成功,怎么辦是不是就丟了一個編號,因為我調(diào)用一次Func_GenerateCode就會增加一個編號的,那么為了使我們的數(shù)據(jù)完整不至于丟單,就的使用事務(wù)的會滾,現(xiàn)在又有問題了,存儲過程會會滾到函數(shù)中嘛!答案是,假如函數(shù)中有事務(wù)或有commit語句,那么是會滾不了的,否則可以會滾,因為事務(wù)是會滾到上一個committ或rollback之后的所有事物。所以我在這里說明是為了提醒大家考慮事務(wù)的嵌套回滾的一些方法。但是在存儲過程調(diào)用存儲過程中,假如被調(diào)用的存儲過程執(zhí)行沒有錯誤,那么很遺憾是會滾不了的。 為了解決這個問題Oracle中用自治事務(wù)來處理上述出現(xiàn)的問題,在存儲過程的is/as后面聲明PRAGMA AUTONOMOUS_TRANSACTION; --自治事務(wù)防止嵌套提交,使事務(wù)在自己的事務(wù)區(qū)內(nèi)提交或回滾不會影響其他的事務(wù)。 今天在這里就說這些,當然這些是比較基礎(chǔ)的,給初學(xué)者提個醒!


上一篇:用智能優(yōu)化限制提高Oracle數(shù)據(jù)庫性能

下一篇:Oracle非法數(shù)據(jù)庫對象引起錯誤及解決

發(fā)表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發(fā)表
學(xué)習(xí)交流
熱門圖片

新聞熱點

疑難解答

圖片精選

網(wǎng)友關(guān)注

主站蜘蛛池模板: 丰满少妇久久久久久久 | 久草视频在线播放 | 久久黄网站 | gogo熟少妇大胆尺寸 | 欧美大片在线看免费观看 | 欧洲视频一区二区三区 | 一级片在线免费看 | 国产精品久久久久久久久免费软件 | 成人激情免费视频 | 久久精品视频网 | 午夜伦理影院 | 色呦呦在线视频 | 女人毛片| 欧美日韩中文在线 | 爱爱免费视频网站 | 日日躁夜夜操 | 久久这| 青青久在线视频免费观看 | 欧美性猛交一区二区三区精品 | av一区二区三区四区 | 精品久久国产 | 嫩草久久| 国产精品久久久久久久久久久久冷 | 久久综合一区二区 | 亚洲午夜精品一区二区三区 | 国产精品久久久久久久电影 | 国产精品视频区 | 亚洲三级视频 | 99久久久国产精品免费蜜臀 | 久久99欧美| 三级黄网站 | 国产传媒在线视频 | 九九热在线免费视频 | 国产香蕉97碰碰久久人人九色 | 欧美精品久久 | 久久se精品一区精品二区 | 中文字幕乱码一区二区三区 | 日韩综合一区 | 午夜精品久久久久久久久久久久 | 日本一区二区精品 | 黄色在线免费观看 |