濮阳杆衣贸易有限公司

主頁 > 知識庫 > Oracle約束管理腳本

Oracle約束管理腳本

熱門標簽:修改高德地圖標注 宜賓外呼系統(tǒng)廠家 語音電話機器人缺點 廣州市400電話辦理 語音電話機器人營銷方案 南通防封外呼系統(tǒng)運營商 地圖標注原件 百變地圖標注 淮安自動外呼系統(tǒng)開發(fā)
正在看的ORACLE教程是:Oracle約束管理腳本。

作為一個Oracle數(shù)據(jù)庫管理員,會碰到這樣的數(shù)據(jù)庫管理需求,停止或者打開當前用戶(模式)下所有表的約束條件和觸發(fā)器。這在數(shù)據(jù)庫的合并以及對數(shù)據(jù)庫系統(tǒng)的代碼表中某些代碼的修改時需要做的工作之一。 

  我們來看這樣一種實際數(shù)據(jù)庫工作業(yè)務需求,這在目前的許多應用中是非常實際的。某地區(qū)銀行數(shù)據(jù),目前采用市級數(shù)據(jù)集中,隨著計算機網(wǎng)絡技術(shù)的不斷提高以及對服務水平的要求,提出了省級乃至國家級的數(shù)據(jù)集中。除了應用需要修改以外,對于數(shù)據(jù)庫管理員來講,最重要的工作就是對各地分散管理的數(shù)據(jù)庫統(tǒng)一集中到一個或者幾個集中數(shù)據(jù)庫中。此時就需要整理以前各地各自為政的代碼表為一個統(tǒng)一的代碼表以及數(shù)據(jù)庫的最后集中合并。 

  對Oracle數(shù)據(jù)庫管理員來講,這樣的數(shù)據(jù)維護工作,在更新代碼表中代碼或者合并數(shù)據(jù)之前,首先要作的工作就是將系統(tǒng)中某用戶下所有的外鍵或觸發(fā)器停止,處理完數(shù)據(jù)后,再打開這些關閉的外鍵和觸發(fā)器。針對這樣的工作需求,本文給出了下面兩個SQL腳本:(1) 系統(tǒng)中某模式或用戶下外鍵或者觸發(fā)器的管理腳本;(2) 外鍵錯誤自動查找腳本。下面就來詳細介紹這兩個腳本。 

  一、約束管理腳本

  該腳本可用來管理當前登錄用戶下的所有外鍵和觸發(fā)器的打開和關閉,此處沒有處理主鍵和唯一約束條件,該腳本稍加修改就可以處理主鍵和唯一約束條件,但這里建議最好不要在隨意停止主鍵或唯一約束條件后,進行數(shù)據(jù)維護。 

  腳本運行方法如下(SQL/PLUS): 


  其中,參數(shù)as_alter只能是“ENABLE”或者“DISABLE”,否則程序提示錯誤。當參數(shù)為“ENABLE”時,表示將當前模式下所有的外鍵和觸發(fā)器打開,相反“DISABLE”就是將當前模式下所有的外鍵和觸發(fā)器關閉。 

  附存儲過程腳本: 


  判斷輸入?yún)?shù)是否為DISABLE或者是ENABLE,如果是的話,就繼續(xù)處理,否則退出過程,給出提示
IF (UPPER(AS_ALTER) = 'DISABLE' OR UPPER(AS_ALTER) = 'ENABLE') THEN
OPEN C_CON;

[NextPage]

當前用戶下外鍵的處理 ENABLE或者 DISABLE


  二、約束錯誤自動查找腳本 

  一般,數(shù)據(jù)庫管理員在對數(shù)據(jù)進行維護時,如新數(shù)據(jù)的導入前,首先要關閉所有的外鍵和觸發(fā)器,數(shù)據(jù)成功導入后,再打開導入前關閉的外鍵和觸發(fā)器。這時經(jīng)常會遇到錯誤號為ORA-02298的“未找到父項關鍵字”的錯誤。該錯誤的原因就是數(shù)據(jù)庫表中出現(xiàn)了不能滿足外鍵約束條件的記錄。這里,另外給出了一個腳本(P_CON_ERR)用來自動查找造成這類錯誤的原因,也就是找出不滿足外鍵約束條件的字段值。 

  該存儲過程可單獨運行,同時在前面介紹的存儲過程P_ALTERCONS中也進行了調(diào)用,在存儲過程P_ALTERCONS中,可以看到在打開外鍵時,如果出現(xiàn)錯誤號為ORA-02298的錯誤,就調(diào)用該存儲過程,自動查找造成外鍵不能啟動的原因。 

  下面是單獨運行該存儲過程的例子,在SQL/PLUS環(huán)境下: 

PL/SQL過程已成功完成。 

  其中,F(xiàn)K_SB_HJJL_RELATION__SB_PZXH為出現(xiàn)錯誤的外鍵名稱。 

  附存儲過程腳本: 

上一頁    

您可能感興趣的文章:
  • 關于sql腳本導入Oracle時重復生成check約束的問題解決
  • Oracle數(shù)據(jù)庫的字段約束創(chuàng)建和維護示例
  • 在Oracle數(shù)據(jù)庫中添加外鍵約束的方法詳解
  • oracle刪除主鍵查看主鍵約束及創(chuàng)建聯(lián)合主鍵
  • oracle 11g em重建報唯一約束錯誤解決方法
  • Oracle如何給數(shù)據(jù)庫添加約束過程解析

標簽:股票投資 聊城 通化 池州 南平 襄陽 南平 嘉峪關

巨人網(wǎng)絡通訊聲明:本文標題《Oracle約束管理腳本》,本文關鍵詞  Oracle,約束,管理,腳本,Oracle,;如發(fā)現(xiàn)本文內(nèi)容存在版權(quán)問題,煩請?zhí)峁┫嚓P信息告之我們,我們將及時溝通與處理。本站內(nèi)容系統(tǒng)采集于網(wǎng)絡,涉及言論、版權(quán)與本站無關。
  • 相關文章
  • 下面列出與本文章《Oracle約束管理腳本》相關的同類信息!
  • 本頁收集關于Oracle約束管理腳本的相關信息資訊供網(wǎng)民參考!
  • 推薦文章
    深水埗区| 四川省| 股票| 隆昌县| 高阳县| 辽中县| 万全县| 武威市| 崇左市| 临猗县| 宝坻区| 彭州市| 新绛县| 错那县| 江西省| 财经| 弥渡县| 平顶山市| 河间市| 铜鼓县| 麻栗坡县| 沁源县| 沁水县| 阿拉尔市| 九龙城区| 应用必备| 岢岚县| 东城区| 扶风县| 沙坪坝区| 成都市| 汨罗市| 大悟县| 榆树市| 东乌| 凤凰县| 义乌市| 马关县| 依安县| 大冶市| 八宿县|