中文字幕在线一区二区在线,久久久精品免费观看国产,无码日日模日日碰夜夜爽,天堂av在线最新版在线,日韩美精品无码一本二本三本,麻豆精品三级国产国语,精品无码AⅤ片,国产区在线观看视频

      Oracle觸發(fā)器在MIS 開發(fā)中的應(yīng)用

      時(shí)間:2024-10-19 19:38:15 計(jì)算機(jī)畢業(yè)論文 我要投稿
      • 相關(guān)推薦

      Oracle觸發(fā)器在MIS 開發(fā)中的應(yīng)用

      Oracle觸發(fā)器在MIS 開發(fā)中的應(yīng)用

      周海濤 吳良剛

      摘要:本文介紹了oracle觸發(fā)器的概念和類型,總結(jié)了oracle觸發(fā)器在開發(fā)MIS中的應(yīng)用,并提供了實(shí)例以供參考.

      關(guān)鍵詞:MIS 、觸發(fā)器 oracle

      1.引言

      本人在做一個(gè)大型的MIS系統(tǒng)(前臺(tái)用powerbuild工具,后臺(tái)用oracle數(shù)據(jù)庫(kù))時(shí),常碰到一些有關(guān)數(shù)據(jù)冗長(zhǎng)性,批量刪除和動(dòng)態(tài)信息方面的問題,由此發(fā)現(xiàn)數(shù)據(jù)庫(kù)觸發(fā)器簡(jiǎn)單易用。現(xiàn)將有關(guān)開發(fā)和應(yīng)用中的一些體會(huì)總結(jié)成文,供同行參考。

      2.觸發(fā)器的概念和類型。

      數(shù)據(jù)庫(kù)觸發(fā)器(database triggers)是響應(yīng)插入、更新或刪除等數(shù)據(jù)庫(kù)事件而執(zhí)行的過程。它定義了當(dāng)一些數(shù)據(jù)庫(kù)相關(guān)事件發(fā)生時(shí)應(yīng)采取的動(dòng)作。可用于管理復(fù)雜的完整性約束,或監(jiān)控對(duì)表的修改,或通知其它程序,表已發(fā)生修改。它的類型有:語句級(jí)觸發(fā)器,以及行級(jí)觸發(fā)器,前者可以在語句執(zhí)行前或執(zhí)行后被觸發(fā)。后者在每個(gè)觸發(fā)語句影響的行觸發(fā)一次。還有before和after觸發(fā)的命令。在insert,update,和delete之前或之后執(zhí)行,引用新舊值進(jìn)行處理。如果需通過觸發(fā)器設(shè)定插入行中的某列值,則為了訪問“新(new)”值,需使用一個(gè)觸發(fā)器before insert,使用after insert則不行。Instead of 觸發(fā)器命令,使用它告訴oracle應(yīng)執(zhí)行什么操作。以上四種大類合成14種小類(略)。各種觸發(fā)器的執(zhí)行順序如下:

      ⑴ 如果有,最先執(zhí)行語句級(jí)before觸發(fā)器。

      ⑵ 每個(gè)insert,delete,update影響的行;

      ① 如果有,最先執(zhí)行行級(jí)before

      ② 執(zhí)行行的delete或update

      ③ 如果有,執(zhí)行行級(jí)after觸發(fā)器

      ⑶ 如果有,執(zhí)行語句級(jí)after觸發(fā)器

      3.使用數(shù)據(jù)庫(kù)觸發(fā)器管理數(shù)據(jù)冗余性

      為了數(shù)據(jù)分析和制作報(bào)表的需要,用戶在數(shù)據(jù)模型中加入了冗余數(shù)據(jù),應(yīng)使用觸發(fā)器,以保證數(shù)據(jù)的完整性。

      冗余數(shù)據(jù)可以用規(guī)定的 for each row選項(xiàng)的before update觸發(fā)器進(jìn)行管理。update 命令可放在觸發(fā)器中對(duì)所有需要更新的冗余數(shù)據(jù)進(jìn)行更新,如客戶表和訂單表,訂單表包括客戶的訂單和客戶表的冗余信息,客戶表(customer)的表結(jié)構(gòu):客戶號(hào)(cu_no)、客戶名(cu_name)、客戶地址(cu_address)。訂單表(order)的表結(jié)構(gòu):訂單號(hào)(or_no),客戶號(hào)(or_no),客戶名(cu_name),客戶地址(cu_address),當(dāng)客戶基表中的數(shù)據(jù)被更新時(shí)更新訂單中的冗余列。語法如下:

      create or replace trigger bj_customer

      before update on customer

      for each row

      begin

      update order set

      cu_no=:new.cu_no,

      cu_name=:new.cu_name,

      cu_address=:new.cu_addess,

      where cu_no=:old.cu_no;

      end;

      4.用觸發(fā)器完成數(shù)據(jù)復(fù)制

      如果需求非常有限,可以用數(shù)據(jù)觸發(fā)器從一個(gè)數(shù)據(jù)庫(kù)中向另一個(gè)數(shù)據(jù)庫(kù)復(fù)制數(shù)據(jù),如果數(shù)據(jù)復(fù)制需求僅與數(shù)據(jù)的插入有關(guān),當(dāng)一條記錄插入到一個(gè)數(shù)據(jù)庫(kù)中的某個(gè)基表中時(shí),用戶還希望把這條記錄插入到一個(gè)遠(yuǎn)程數(shù)據(jù)庫(kù)中,需用create database link語句創(chuàng)建一條到遠(yuǎn)程數(shù)據(jù)庫(kù)的連接,一旦創(chuàng)建了一條數(shù)據(jù)庫(kù)連接后,就可以在基表上創(chuàng)建一個(gè)after insert觸發(fā)器,以把每一條記錄插入到遠(yuǎn)程數(shù)據(jù)庫(kù)中。

      (1)在腳本中創(chuàng)建數(shù)據(jù)庫(kù)連接(database link)bj_ysd_remote基表作為數(shù)據(jù)庫(kù)基表,Bj_ysd_local代表本地?cái)?shù)據(jù)庫(kù)上的源基表。

      Creat database link remote(連接名)

      Connect to bj(帳戶) indentified by bj(密碼)

      Using ‘:2’;

      (2)復(fù)制記錄

      create or replace trigger trig_ysd(觸發(fā)器名)

      after insert on bj_ysd_local

      for each row

      begin

      insert into bj_ysd_remote@dblink remote

      value(:new.x1,:new.x2,……)/*x1.x2代表字段名*/

      end;

      (3)刪除記錄

      create or replace trigger trig_ys

      【Oracle觸發(fā)器在MIS 開發(fā)中的應(yīng)用】相關(guān)文章:

      MIS開發(fā)中軟件工程方法的運(yùn)用03-18

      ORACLE RAC集群在電力營(yíng)銷系統(tǒng)中的應(yīng)用03-18

      對(duì)MIS 開發(fā)模式的策略研究03-18

      項(xiàng)目管理在ASP軟件開發(fā)中的應(yīng)用03-23

      Oracle Portal及其門戶網(wǎng)站開發(fā)概述03-18

      談?dòng)?jì)算機(jī)在油氣田開發(fā)中的應(yīng)用03-18

      探析計(jì)算機(jī)在油氣田開發(fā)中的應(yīng)用03-18

      基于Oracle數(shù)據(jù)庫(kù)的邏輯數(shù)據(jù)同步技術(shù)在實(shí)踐中的應(yīng)用研究03-10

      CODARTS建模方法在嵌入式軟件開發(fā)中的應(yīng)用03-18

      主站蜘蛛池模板: 尖扎县| 真人在线射美女视频在线观看| 亚洲公开免费在线视频| 国产成人综合久久精品推荐免费| 久久丁香花综合狼人| 亚洲av激情久久精品人| 亚洲av人妖一区二区三区| 钟山县| 亚洲无码美韩综合| 国内视频一区| 久久久久久久久中文字幕| 狠狠亚洲婷婷综合久久久| 少妇高潮紧爽免费观看| 咸阳市| 亚洲精品中文字幕观看| 欧美亚洲国产精品久久久久| 国产av综合一区二区三区最新| 东京热加勒比一区四区| 久久精品这里就是精品| 微山县| 万宁市| 钟祥市| 修水县| 国产三级视频一区二区| 新化县| 临朐县| 新巴尔虎右旗| 激情综合五月天开心久久| 欧美精品久久久久久三级| 国产精品日日摸夜夜添夜夜添| 99熟妇人妻精品一区五一看片| 日本高清视频一区二区在线播放| 黑龙江省| 成人小视频在线观看播放| 国产av普通话对白国语| 日本精品免费一区二区三区| 贵定县| 江山市| 日本亚洲成人中文字幕| 精品中文字幕日本久久久| 国产成品精品午夜视频|