Oracle初學者問題9(轉)

Rounders發表於2007-08-06
Oracle初學者問題9(轉)[@more@]
  
  141. 如何刪除重複記錄?
  
  DELETE FROM TABLE_NAME
  
  WHERE ROWID!=(SELECT MAX(ROWID) FROM TABLE_NAME D
  
  WHERE TABLE_NAME.COL1=D.COL1 AND TABLE_NAME.COL2=D.COL2);
  
  142. 如何快速編譯所有檢視?
  
  SQL >SPOOL VIEW1.SQL
  
  SQL >SELECT ‘ALTER VIEW ‘||TNAME||’
  
  COMPILE;’ FROM TAB;
  
  SQL >SPOOL OFF
  
  然後執行VIEW1.SQL即可。
  
  SQL >@VIEW1.SQL;
  
  143. ORA-01555 SNAPSHOT TOO OLD的解決辦法
  
  增加MINEXTENTS的值,增加區的大小,設定一個高的OPTIMAL值。
  
  144. 事務要求的回滾段空間不夠,表現為表空間用滿(ORA-01560錯誤),回滾段擴充套件到
  
  達引數 MAXEXTENTS的值(ORA-01628)的解決辦法.
  
  向回滾段表空間新增檔案或使已有的檔案變大;增加MAXEXTENTS的值。
  
  145. 如何加密ORACLE的儲存過程?
  
  下列儲存過程內容放在AA.SQL檔案中
  
  create or replace procedure testCCB(i in number) as
  
  egin
  
  dbms_output.put_line('輸入引數是'||to_char(i));
  
  end;
  
  SQL>wrap iname=a.sql;
  
  PL/SQL Wrapper: Release 8.1.7.0.0 - Production on Tue Nov 27 22:26:48 2001
  
  Copyright (c) Oracle Corporation 1993, 2000. All Rights Reserved.
  
  Processing AA.sql to AA.plb
  
  執行AA.plb
  
  SQL> @AA.plb ;
  
  146. 如何監控事例的等待?
  
  elect event,sum(decode(wait_Time,0,0,1)) "Prev",
  
  um(decode(wait_Time,0,1,0)) "Curr",count(*) "Tot"
  
  from v$session_Wait

來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/9417382/viewspace-932310/,如需轉載,請註明出處,否則將追究法律責任。

相關文章