文法規則:Create [or replace] trigger [模式.]觸發器名 Before| after insert|delete|(update of 列名)On 表名[for each row]When 條件PL/SQL塊說明:For each row的意義是:在一次動作表的語句中,每操作成功一行就會觸發一次;不寫的話,表示是表級觸發器,則無論操作多少行,都只觸發一次;When條件的出現說明了,在DML操作的時候也許一定會觸發觸發器,但是觸發器不一定會做實際的工作,
1,串連資料庫C:\Documents and Settings\Administrator>sqlplus /nologSQL*Plus: Release 10.1.0.2.0- Production on 星期六 5月 14 11:14Copyright (c) 1982, 2004, Oracle. All rights reserved.SQL> conn /assysdba已串連。SQL>
在應用.Net 2.0 串連Oracle的時候遇到了問題:1.1時代都是直接Using System.Data.OracleClient,.Net 2.0改進成使用DBProvider(System.Data.Common)的方式,看起來很美,但是用到Oracle預存程序返回結果集的時候愣住了DBType沒有支援Cursor的類型?!查了資料半天也沒有結果如果實在沒辦法只好回到System.Data.OracleClient了.NET Framework Data Provider for
這兩天發了一個貼子,尋找比較好的辦法隨機取出表的一條記錄地址見:http://www.oracle.com.cn/viewthread.php?tid=20848 本文介紹了一下ORACLE SAMPLE文法的應用,採用SAMPLE也是一種解決方案,不過還不是很好,主要是返回的記錄分布不均勻,要麼是靠表前面的一些,要麼是不返回記錄。下面是SAMPLE文法的使用樣本:選擇10%的記錄select * from t1 sample(10)選擇0.1%的記錄select * from t1
不小心使用drop table語句把表刪除了,資料也沒有備份。就是資料備份了恢複的時候還是會遺失資料的,這時候不必太慌張,或許oracle的資源回收筒(recyclebin)可以解決問題。 【使用環境】:oracle 10g r1、oracle 10g r2、 Oracle 11g r1、 oracle 11g r21、 檢查資料庫是否開啟資源回收筒功能。--預設是開啟的SELECT Value FROM V$parameter WHERE Name =
oracle的預存程序返回記錄集,找到兩個ORACLE段都一樣,只是C#部份有點區別,都放上來,個人偏向使用用第一個。 C#調用ORACLE預存程序返回結果集及函數 ORACLE段: 首先在ORACLE建立PACKAGE和PACKAGE BODY,將在這裡面定義函數和預存程序返回結果集。 1:建立PACKAGE: CREATE OR REPLACE package SCOTT.pk_wt is type mytype is ref cursor; procedure p_wt(mycs out