Time of Update: 2018-12-06
對象許可權測試:初始狀態下,user2和user3都沒有user1.t1的對象許可權user1下存在t1表:duzz$user1@orcl>select * from t1; C1---------- 1111Elapsed: 00:00:00.00user2不能查詢user1.t1:duzz$user2@orcl>select * from user1.t1;select * from user1.t1 *ERROR
Time of Update: 2018-12-06
NEXT_DAY(date,char):返回指定日期(由date指定)後的第一個星期幾(由char指定)所在的日期,char也可用1~7替代,1表示星期日。duzz$scott@orcl>select sysdate,to_char(sysdate,'day') weekday,next_day(sysdate,1) n_day,to_char(next_day(sysdate,1),'day') n_weekday from dual;SYSDATE
Time of Update: 2018-12-06
duzz$scott@orcl>SELECT employee_id, last_name, job_id, manager_id 2 FROM employees 3 START WITH employee_id = 101 4 CONNECT BY PRIOR employee_id=manager_id;(PRIOR:先前的,優先的;按照先前的employee_id等於本行的manager_id進行遞迴查詢,從上至下)EMPLOYEE_ID LAST_NAME
Time of Update: 2018-12-06
oracle的聯結分如下幾種:內聯結(inner join)。外聯結(outer join):全聯結(full join)、左聯結(left join)、右聯結(right join)。交叉聯結(cross join)。外聯結與內聯結不一樣,外串連返回到查詢結果中的不僅包含合格行,還包括左表(左外串連),右表(右外串連)或者兩個串連表(全外串連)中的所有不合格資料行。 0.內聯結 ([inner]
Time of Update: 2018-12-06
1. 如果DDL文法正確,即使執行失敗,也會導致隱式提交:duzz$scott@orcl>create table t1 as select * from dept; Table created. Elapsed: 00:00:00.03duzz$scott@orcl>update t1 set loc='xx' where deptno=10; 1 row updated. Elapsed: 00:00:00.03duzz$scott@orcl>drop table xx;
Time of Update: 2018-12-06
在Oracle10g中,如果我們在建立執行個體時沒有選擇安裝樣本,那麼在建立執行個體之後,還可以通過$ORACLE_HOME/demo/schema 下的指令碼來建立。關於具體的建立方法,官方文檔有詳細的說明: SampleSchema Scripts and Object Descriptions
Time of Update: 2018-12-06
前幾天Roger 的blog 更新了一篇文章,是DBMS_ROWID包的定義部分,Oracle 的包的都是用wrap 進行加密的。itpub上有人研究了unwrap,也公布了一些代碼,可以實現unwrap。關於wrap和unwrap,參考我的blog:Oracle wrap 和 unwrap( 加密與解密) 說明http://blog.csdn.net/tianlesoftware/article/details/6698535rowid在DB 維護中用的也是比較多。 瞭解ROWID
Time of Update: 2018-12-06
--==================================-- 設定 Oracle 監聽器密碼(LISTENER)--================================== 監聽器也有安全?Sure!在預設的情況下,任意使用者不需要使用任何密碼即通過lsnrctl 工具對Oracle Listener進行操作或關閉,從而造成任意新的會話都將無法建立串連。在Oracle 9i
Time of Update: 2018-12-06
MOS的文檔對升級路線的說明:Complete Check list for Manual Upgrades to11gR2 [ID 837570.1]Maclean 的Blog 上有幾個更直觀的圖:http://www.oracledatabase12g.com/archives/oracle-database-9i-10g-11g-r2-upgrade-roadmap.html----------------------------------------------------------
Time of Update: 2018-12-06
記錄下剛剛做的一個為一個資料庫(t02)配置多個監聽(listener)的實驗,過程有點小曲折。 (1)新增兩個測試的監聽,listener.ora的配置內容(可純手動編輯該檔案或使用netca)如下:(LISTENER為系統原有;L1、L2為測試用新增的監聽)# listener.ora Network Configuration File: D:\oracle\product\10.2.0\db_1\network\admin\listener.ora# Generated by
Time of Update: 2018-12-06
關於Oracle SGA中Shared Pool的詳細說明,參考我的blog: Oracle Shared pool 詳解 http://blog.csdn.net/tianlesoftware/article/details/6560956 在上篇blog裡,介紹了shared pool 的組成和一些原理, 也有一些指令碼,在這篇blog裡,在補充幾個查看Shared Pool 的指令碼。
Time of Update: 2018-12-06
使用GROUP BY GROUPING SETS相當於把需要GROUP的集合用UNION ALL聯合起來。當GROUPING SETS裡面的分組元素越多時,使用GROUPING SETS比使用UNION ALL效能更好,這可能和使用GROUPING SETS只需要訪問一次表有關。如下兩段查詢的結果是相等的: q1(GROUPING SETS):SELECT department_id, job_id, manager_id, AVG (salary) FROM
Time of Update: 2018-12-06
今天小看了一下 Oracle 11.2.0.2 Patch, patch number: 10098816。 Patch最大的6G多。 杯具中. Oracle 軟體是越來越大了。 還在下這些Patch檔案,等下完了,把原生11gR1的升級下玩玩。 Oracle 針對這個Patch 的更新,專門出了一個說明文檔,具體參考: Important Changes to Oracle Database Patch Sets Starting With 11.2.0.2 [ID 1
Time of Update: 2018-12-06
Test Code:DECLAREBEGIN <<test0>>-- most normal way to handle exception. DECLARE except_test0 EXCEPTION; BEGIN RAISE except_test0; EXCEPTION WHEN except_test0 THEN dbms_output.put_line('test0 except_test0: SQLCODE=' ||
Time of Update: 2018-12-06
將Oracle 升級到9.2.0.8. 剛才查看無效對象,發現有幾個ODCxx 開頭的無效對象。 查看Oracle,說是9.2.0.8 以後的版本中,不知道的原因導致這些對象無效,這些對象在Oracle 10.2 以後的版本中已經刪除掉了。 所以可以忽略這些無效對象。 SQL> select object_type,owner,object_name from all_objects where status='INVALID' and
Time of Update: 2018-12-06
歸檔日誌記錄著資料庫的操作記錄,是做資料恢複的依據,如果資料庫開啟了歸檔模式,那麼就會產生大量的歸檔日誌,當然如果有RMAN備份的話,可以在備份之後刪除已經備份過的日誌,如果是沒有採用rman備份的話,就需要自己來刪除這寫歸檔日誌。 下面的幾個指令碼就減輕了DBA的工作量。 Linux 平台:0 2 * * * /home/oracle/scripts/del_archive.sh > /home/oracle/scripts/del_archive.log[oracle@hfcc-
Time of Update: 2018-12-06
RAC 在安裝時意外中斷, 重新安裝clusterware 軟體, 安裝過程中沒有問題,在最後執行root.sh 指令碼的時候出現異常, 指令碼一閃而過,沒有執行成功。 #/u01/oracle/product/10.2.0/crs/root.shWARNING: directory '/u01/oracle/product/10.2.0' is not owned by rootWARNING: directory '/u01/oracle/product' is not owned by
Time of Update: 2018-12-06
如轉載,請註明出處:http://blog.csdn.net/robinson_0612/archive/2010/03/30/5431428.aspx 雖然 Oracle 10g Database Release 2 已經推出幾年了,但這個版本仍然為很多初學者學習的版本,下面詳細講述了安裝 Oracle 10g 的步驟。一、 linux 的版本選用 目前 linux(RHEL) 使用的主要版本為 5.4 版,可以到下面的地址下載其安裝檔案。 RHEL5.
Time of Update: 2018-12-06
10.1.0.X.0 TO 10.2.0.4.0 1. Install 10.2.0.1.0 software The software can be downloaded from the following link : http://www.oracle.com/technology/software/products/database/index.html https://metalink2.oracle.com/metalink/plsql/showdoc?db=NOT&id=
Time of Update: 2018-12-06
Oracle 在9i以後,可以利用DBMS_METADATA.GET_DDL包得到資料庫的對象的ddl指令碼。如下(SQLPLUS中執行):1. 擷取單個的建表、視圖和建索引的文法set pagesize 0set long 90000set feedback offset echo offspool DEPT.sqlselect dbms_metadata.get_ddl('TABLE','TAB_NAME','SCOTT') from dual; select dbms_metadata.