<?xml version='1.0' encoding='UTF-8'?><?xml-stylesheet href="http://www.blogger.com/styles/atom.css" type="text/css"?><feed xmlns='http://www.w3.org/2005/Atom' xmlns:openSearch='http://a9.com/-/spec/opensearchrss/1.0/' xmlns:georss='http://www.georss.org/georss' xmlns:gd='http://schemas.google.com/g/2005' xmlns:thr='http://purl.org/syndication/thread/1.0'><id>tag:blogger.com,1999:blog-2639035620819724618</id><updated>2011-10-22T11:49:57.728-05:00</updated><category term='Oracle 11g Database'/><category term='New features in Oracle 11g Database'/><title type='text'>Oracle</title><subtitle type='html'></subtitle><link rel='http://schemas.google.com/g/2005#feed' type='application/atom+xml' href='http://babumani.blogspot.com/feeds/posts/default'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/2639035620819724618/posts/default?max-results=100'/><link rel='alternate' type='text/html' href='http://babumani.blogspot.com/'/><link rel='hub' href='http://pubsubhubbub.appspot.com/'/><author><name>babumani</name><uri>http://www.blogger.com/profile/08434916381222486044</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><generator version='7.00' uri='http://www.blogger.com'>Blogger</generator><openSearch:totalResults>16</openSearch:totalResults><openSearch:startIndex>1</openSearch:startIndex><openSearch:itemsPerPage>100</openSearch:itemsPerPage><entry><id>tag:blogger.com,1999:blog-2639035620819724618.post-1914889987133695973</id><published>2010-06-04T17:46:00.004-05:00</published><updated>2010-06-04T17:51:52.529-05:00</updated><title type='text'>ORA-29341: The transportable set is not self-contained</title><content type='html'>H:\&gt;exp 'sys/****@db5 as sysdba' parfile=Z:\DATA_NORTH_TBSP_EXP.PAR&lt;br /&gt;&lt;br /&gt;Export: Release 10.2.0.3.0 - Production on Fri Jun 4 15:14:40 2010&lt;br /&gt;&lt;br /&gt;Copyright (c) 1982, 2005, Oracle.  All rights reserved.&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;Connected to: Oracle Database 10g Enterprise Edition Release 10.2.0.3.0 - Production&lt;br /&gt;With the Partitioning, OLAP, Data Mining and Real Application Testing options&lt;br /&gt;Export done in WE8MSWIN1252 character set and AL16UTF16 NCHAR character set&lt;br /&gt;Note: table data (rows) will not be exported&lt;br /&gt;About to export transportable tablespace metadata...&lt;br /&gt;EXP-00008: ORACLE error 29341 encountered&lt;br /&gt;ORA-29341: The transportable set is not self-contained&lt;br /&gt;ORA-06512: at "SYS.DBMS_PLUGTS", line 1387&lt;br /&gt;ORA-06512: at line 1&lt;br /&gt;EXP-00000: Export terminated unsuccessfully&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;SYS@db5&gt; EXECUTE dbms_tts.transport_set_check('DATA_NORTH', TRUE, TRUE);&lt;br /&gt;&lt;br /&gt;PL/SQL procedure successfully completed.&lt;br /&gt;&lt;br /&gt;SYS@db5&gt; SELECT * FROM transport_set_violations;&lt;br /&gt;&lt;br /&gt;VIOLATIONS&lt;br /&gt;----------------------------------------------------------------------------------------------------&lt;br /&gt;Index EGIS_RW_X.SDE_RIX_113 in tablespace DATA_NORTH points to table EGIS_RW_X.DATA_SOUTH&lt;br /&gt;SOUTH&lt;br /&gt;&lt;br /&gt;SYS@db5&gt; ALTER INDEX EGIS_RW_X.SDE_RIX_113 REBUILD TABLESPACE DATA_SOUTH;&lt;br /&gt;&lt;br /&gt;Index altered.&lt;br /&gt;&lt;br /&gt;SYS@db5&gt; SELECT * FROM transport_set_violations;&lt;br /&gt;&lt;br /&gt;VIOLATIONS&lt;br /&gt;----------------------------------------------------------------------------------------------------&lt;br /&gt;Index EGIS_RW_X.SDE_RIX_113 in tablespace DATA_NORTH points to table EGIS_RW_X.DATA_SOUTH&lt;br /&gt;SOUTH&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;SYS@db5&gt; EXECUTE dbms_tts.transport_set_check('DATA_NORTH', TRUE, TRUE);&lt;br /&gt;&lt;br /&gt;PL/SQL procedure successfully completed.&lt;br /&gt;&lt;br /&gt;SYS@db5&gt; SELECT * FROM transport_set_violations;&lt;br /&gt;&lt;br /&gt;no rows selected&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;H:\exp 'sys/****@db5 as sysdba' parfile=Z:\DATA_NORTH_TBSP_EXP.PAR&lt;br /&gt;&lt;br /&gt;Export: Release 10.2.0.3.0 - Production on Fri Jun 4 15:20:11 2010&lt;br /&gt;&lt;br /&gt;Copyright (c) 1982, 2005, Oracle.  All rights reserved.&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;Connected to: Oracle Database 10g Enterprise Edition Release 10.2.0.3.0 - Production&lt;br /&gt;With the Partitioning, OLAP, Data Mining and Real Application Testing options&lt;br /&gt;Export done in WE8MSWIN1252 character set and AL16UTF16 NCHAR character set&lt;br /&gt;Note: table data (rows) will not be exported&lt;br /&gt;About to export transportable tablespace metadata...&lt;br /&gt;For tablespace DATA_NORTH ...&lt;br /&gt;. exporting cluster definitions&lt;br /&gt;. exporting table definitions&lt;br /&gt;. . exporting table                    DATA_NORTH&lt;br /&gt;. . exporting table                     SDE_RAS_81&lt;br /&gt;. . exporting table                     SDE_BND_81&lt;br /&gt;. . exporting table                     SDE_AUX_81&lt;br /&gt;. . exporting table                     SDE_BLK_81&lt;br /&gt;. . exporting table                            F85&lt;br /&gt;. . exporting table                            S85&lt;br /&gt;. exporting referential integrity constraints&lt;br /&gt;. exporting triggers&lt;br /&gt;. end transportable tablespace metadata export&lt;br /&gt;Export terminated successfully without warnings.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/2639035620819724618-1914889987133695973?l=babumani.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://babumani.blogspot.com/feeds/1914889987133695973/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=2639035620819724618&amp;postID=1914889987133695973' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/2639035620819724618/posts/default/1914889987133695973'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/2639035620819724618/posts/default/1914889987133695973'/><link rel='alternate' type='text/html' href='http://babumani.blogspot.com/2010/06/ora-29341-transportable-set-is-not-self.html' title='ORA-29341: The transportable set is not self-contained'/><author><name>babumani</name><uri>http://www.blogger.com/profile/08434916381222486044</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-2639035620819724618.post-314727453283819396</id><published>2009-11-30T16:12:00.000-05:00</published><updated>2009-11-30T16:13:30.416-05:00</updated><title type='text'>Deploying Mapviewer in Oracle 11g</title><content type='html'>&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/2639035620819724618-314727453283819396?l=babumani.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://babumani.blogspot.com/feeds/314727453283819396/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=2639035620819724618&amp;postID=314727453283819396' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/2639035620819724618/posts/default/314727453283819396'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/2639035620819724618/posts/default/314727453283819396'/><link rel='alternate' type='text/html' href='http://babumani.blogspot.com/2009/11/deploying-mapviewer-in-oracle-11g.html' title='Deploying Mapviewer in Oracle 11g'/><author><name>babumani</name><uri>http://www.blogger.com/profile/08434916381222486044</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-2639035620819724618.post-3630694118472857857</id><published>2009-10-31T08:22:00.005-05:00</published><updated>2009-11-30T13:03:54.783-05:00</updated><title type='text'>Install Oracle Spatial in Oracle 11g</title><content type='html'>&lt;title&gt;Install Oracle Spatial in Oracle 11g&lt;/title&gt;&lt;/head&gt;&lt;body&gt;&lt;p&gt;&lt;b&gt;Install Oracle Spatial in Oracle 11g&lt;/b&gt;&lt;/p&gt;&lt;p&gt;Create the (just the basic without any bells and whistles) database first.&lt;/p&gt;&lt;p&gt;To install Oracle Spatial, you need to have these below said database components/products already installed in the database:-&lt;/p&gt;&lt;p&gt;1) Java&lt;br&gt;2) XML database&lt;br&gt;3) Oracle Multimedia (In Pre-11g versions, its called interMedia)&lt;/p&gt;&lt;p&gt;Let us check if its already there:-&lt;/p&gt;&lt;p&gt;&lt;font face="Courier New" size="2" color="#0000FF"&gt;&amp;gt; select comp_id,version,status from dba_registry &lt;br&gt; &amp;nbsp;&amp;nbsp;&amp;nbsp; where comp_id in ('JAVAVM','ORDIM','XDB');&lt;br&gt;&lt;br&gt;no rows selected&lt;/font&gt;&lt;/p&gt;&lt;p&gt;It shows that these components are not installed. &lt;/p&gt;&lt;p&gt;&lt;b&gt;1) Installing Java&lt;/b&gt;:- &lt;/p&gt;&lt;p&gt;Requirements for Java install: Check space availability for SYSTEM UNDO (minimum 100MB) and SYSTEM (minimum 70MB) tablespace, and memory settings for SHARED POOL (minimum 96MB) and JAVA POOL (minimum 50MB).&lt;/p&gt;&lt;p&gt;Run &amp;quot;initjvm.sql&amp;quot; to verify these requirements.&lt;/p&gt;&lt;p&gt;&lt;font color="#0000FF" face="Courier New" size="2"&gt;&amp;gt; col COMPONENT for a15&lt;br&gt;&amp;gt;select COMPONENT,CURRENT_SIZE/1024/1024 &amp;quot;CURRENT_MB&amp;quot;,MIN_SIZE/1024/1024 &amp;quot;MIN_MB&amp;quot;,&lt;br&gt;MAX_SIZE/1024/1024 &amp;quot;MAX_MB&amp;quot; from V$MEMORY_DYNAMIC_COMPONENTS where upper(COMPONENT) like '%POOL';&lt;br&gt;&lt;br&gt;COMPONENT&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; CURRENT_MB MIN_MB&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; MAX_MB&lt;br&gt;---------------&amp;nbsp;&amp;nbsp; ---------- ---------- ----------&lt;br&gt;shared pool&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 156&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 156&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 156&lt;br&gt;large pool&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 4&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 0&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 4&lt;br&gt;java pool&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 4&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 4&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 4&lt;br&gt;streams pool&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 0&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 0&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 0&lt;br&gt;Shared IO Pool&amp;nbsp;&amp;nbsp;&amp;nbsp; 0&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 0&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 0&lt;br&gt;&lt;br&gt;&amp;gt; ALTER SYSTEM SET JAVA_POOL_SIZE=50M;&lt;br&gt;&lt;br&gt;System altered.&lt;br&gt;&lt;br&gt;&amp;gt; select COMPONENT,CURRENT_SIZE/1024/1024 &amp;quot;CURRENT_MB&amp;quot;,MIN_SIZE/1024/1024 &amp;quot;MIN_MB&amp;quot;,&lt;br&gt;2 MAX_SIZE/1024/1024 &amp;quot;MAX_MB&amp;quot; from V$MEMORY_DYNAMIC_COMPONENTS where upper(COMPONENT) like '%POOL';&lt;/font&gt;&lt;/p&gt;&lt;p&gt;&lt;font color="#0000FF" face="Courier New" size="2"&gt;COMPONENT&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; CURRENT_MB MIN_MB&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; MAX_MB&lt;br&gt;---------------&amp;nbsp;&amp;nbsp; ---------- ---------- ----------&lt;br&gt;shared pool&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 156&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 156&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 156&lt;br&gt;large pool&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 4&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 0&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 4&lt;br&gt;java pool&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 52&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 4&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 52&lt;br&gt;streams pool&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 0&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 0&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 0&lt;br&gt;Shared IO Pool&amp;nbsp;&amp;nbsp;&amp;nbsp; 0&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 0&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 0&lt;br&gt;&lt;br&gt;&amp;gt;SELECT TABLESPACE_NAME,BYTES/1024/1024 &amp;quot;BYTES_MB&amp;quot;,MAXBYTES/1024/1024 &amp;quot;MAX_BYTES_MB&amp;quot;&lt;br&gt;FROM DBA_DATA_FILES WHERE TABLESPACE_NAME IN ('SYSTEM','UNDOTBS1');&lt;br&gt;&lt;br&gt;TABLESPACE_NAME&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; BYTES_MB&amp;nbsp;&amp;nbsp; MAX_BYTES_MB&lt;br&gt;------------------------------ ---------- ------------&lt;br&gt;SYSTEM&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 325&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 32767.9844&lt;br&gt;UNDOTBS1&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 200&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 32767.9844&lt;/font&gt;&lt;/p&gt;&lt;p&gt;&lt;font color="#0000FF" face="Courier New" size="2"&gt;&amp;gt; spool C:\full_jvminst.log;&lt;br&gt;&lt;br&gt;&amp;gt;set echo on &lt;br&gt;&amp;gt;connect sys/*** as sysdba&lt;br&gt;&amp;gt;startup mount &lt;br&gt;&amp;gt;alter system set &amp;quot;_system_trig_enabled&amp;quot; = false scope=memory; &lt;br&gt;&amp;gt;alter database open; &lt;br&gt;&amp;gt;ALTER SYSTEM SET JAVA_POOL_SIZE=50M;&lt;br&gt;&lt;br&gt;&lt;span style="background-color: #FFFF00"&gt;&amp;gt;@C:\oracle\ora11\javavm\install\initjvm.sql &lt;br&gt;&amp;gt;@C:\oracle\ora11\xdk\admin\initxml.sql &lt;br&gt;&amp;gt;@C:\oracle\ora11\xdk\admin\xmlja.sql &lt;br&gt;&amp;gt;@C:\oracle\ora11\RDBMS\ADMIN\catjava.sql &lt;br&gt;&amp;gt;@C:\oracle\ora11\RDBMS\ADMIN\catexf.sql &lt;/span&gt; &lt;/font&gt;&lt;/p&gt;&lt;p&gt;&lt;font color="#0000FF" face="Courier New" size="2"&gt;&amp;gt; select count(*), object_type from all_objects &lt;br&gt;where object_type like '%JAVA%' group by object_type; &lt;br&gt;&lt;br&gt;&amp;nbsp; COUNT(*) OBJECT_TYPE&lt;br&gt;---------- ---------------&lt;br&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 317 JAVA DATA&lt;br&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 763 JAVA RESOURCE&lt;br&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 19974 JAVA CLASS&lt;br&gt;&lt;br&gt;&amp;gt;shutdown immediate &lt;br&gt;&amp;gt;set echo off &lt;br&gt;&amp;gt;spool off &lt;br&gt;&amp;gt;exit &lt;/font&gt;&lt;/p&gt;&lt;p&gt;&lt;b&gt;2) Installing XML DB&lt;/b&gt;:- &lt;/p&gt;&lt;p&gt;Create a user and tablespace to store the XML DB components:-&lt;/p&gt;&lt;p&gt;&lt;font color="#0000FF" face="Courier New" size="2"&gt;&amp;gt; connect sys/*** as sysdba&lt;br&gt;&amp;gt; Shutdown Immediate; &lt;br&gt;&amp;gt; Startup;&lt;br&gt;&lt;br&gt;&amp;gt; create tablespace XDB &lt;br&gt;datafile 'C:\ORACLE\ORADATA\ORA11\XDB1.DBF' size 50m autoextend on next 1m maxsize 4096m&lt;br&gt;extent management local &lt;br&gt;uniform size 1m&lt;br&gt;segment space management auto;&lt;br&gt;&lt;br&gt;&amp;gt; create user XDB identified by XDB &lt;br&gt;default tablespace XDB &lt;br&gt;quota unlimited on XDB &lt;br&gt;temporary tablespace TEMP;&lt;br&gt;&lt;br&gt;&lt;span style="background-color: #FFFF00"&gt;&amp;gt; @C:\oracle\ora11\RDBMS\ADMIN\catqm.sql XDB XDB TEMP&lt;br&gt;&lt;/span&gt;&lt;br&gt;&amp;gt; @C:\Babu\4Project\GTO_PROJECT\Oracle_Spatial\Oracle_11g\xdbusagecheck.sql&lt;br&gt;&lt;br&gt;&amp;gt; SELECT TABLESPACE_NAME,BYTES/1024/1024 &amp;quot;BYTES_MB&amp;quot;,MAXBYTES/1024/1024 &amp;quot;MAX_BYTES_MB&amp;quot;&lt;br&gt;FROM DBA_DATA_FILES WHERE TABLESPACE_NAME = 'XDB';&lt;br&gt;&lt;br&gt;TABLESPACE_NAME&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; BYTES_MB&amp;nbsp;&amp;nbsp; MAX_BYTES_MB&lt;br&gt;------------------------------ ---------- ------------&lt;br&gt;XDB&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 830&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 4096&lt;br&gt;&lt;br&gt;@C:\oracle\ora11\RDBMS\ADMIN\utlrp.sql&lt;br&gt;&lt;br&gt;&amp;gt; COL COMP_NAME FOR A30&lt;br&gt;&amp;gt; select comp_name, status, version from DBA_REGISTRY where comp_name= 'Oracle XML Database';&lt;br&gt;&lt;br&gt;COMP_NAME&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; STATUS&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; VERSION&lt;br&gt;------------------------------ ----------- ------------------------------&lt;br&gt;Oracle XML Database&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; VALID&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 11.1.0.6.0&lt;/font&gt;&lt;/p&gt;&lt;p&gt;&lt;b&gt;3) Installing Oracle Multimedia&lt;/b&gt;:- &lt;/p&gt;&lt;p&gt;Create a tablespace to store the Oracle Spatial components (or SYSAUX default tablespace can be used) :-&lt;/p&gt;&lt;p&gt;&lt;font color="#0000FF" face="Courier New" size="2"&gt;&amp;gt; select version, status from dba_registry where comp_id='JAVAVM';&lt;br&gt;&lt;br&gt;VERSION&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; STATUS&lt;br&gt;------------------------------ -----------&lt;br&gt;11.1.0.6.0&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; VALID&lt;br&gt;&lt;br&gt;&amp;gt; create tablespace ORA_SPATIAL &lt;br&gt;datafile 'C:\ORACLE\ORADATA\ORA11\ORA_SPATIAL1.DBF' size 50m autoextend on next 1m maxsize 4096m&lt;br&gt;extent management local &lt;br&gt;uniform size 1m&lt;br&gt;segment space management auto;&lt;br&gt;&lt;br&gt;&amp;gt; @C:\oracle\ora11\ord\admin\ordinst.sql SYSAUX ORA_SPATIAL &lt;br&gt;&lt;br&gt;&amp;gt; COL USERNAME FOR A20&lt;br&gt;&amp;gt; COL ACCOUNT_STATUS FOR A20&lt;br&gt;&amp;gt; COL DEFAULT_TABLESPACE FOR A20&lt;br&gt;&amp;gt; SELECT USERNAME,TO_CHAR(CREATED,'DD-MON-YY HH24:MI:SS') CREATED,ACCOUNT_STATUS,DEFAULT_TABLESPACE &lt;br&gt;FROM DBA_USERS ORDER BY 2;&lt;br&gt;&lt;br&gt;USERNAME&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; CREATED&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; ACCOUNT_STATUS&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; DEFAULT_TABLESPACE&lt;br&gt;-------------------- ------------------ -------------------- -------------------&lt;br&gt;SYS&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 03-JAN-08 10:08:44 OPEN&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; SYSTEM&lt;br&gt;SYSTEM&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 03-JAN-08 10:08:44 OPEN&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; SYSTEM&lt;br&gt;OUTLN&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 03-JAN-08 10:08:46 OPEN&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; SYSTEM&lt;br&gt;DIP&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 03-JAN-08 10:11:02 EXPIRED &amp;amp; LOCKED&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; USERS&lt;br&gt;TSMSYS&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 03-JAN-08 10:11:06 EXPIRED &amp;amp; LOCKED&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; USERS&lt;br&gt;ORACLE_OCM&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 03-JAN-08 10:12:40 EXPIRED &amp;amp; LOCKED&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; USERS&lt;br&gt;BABU&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 11-AUG-08 09:31:08 OPEN&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; BABU&lt;br&gt;DBSNMP&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 23-JAN-08 13:30:18 EXPIRED &amp;amp; LOCKED&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; SYSAUX&lt;br&gt;EXFSYS&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 29-OCT-09 13:26:45 EXPIRED &amp;amp; LOCKED&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; SYSAUX&lt;br&gt;XS$NULL&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 29-OCT-09 13:51:16 OPEN&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; USERS&lt;br&gt;ANONYMOUS&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 29-OCT-09 14:24:51 LOCKED&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; XDB&lt;br&gt;XDB&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 29-OCT-09 14:40:29 OPEN&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; XDB&lt;br&gt;ORDSYS&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 29-OCT-09 15:03:24 EXPIRED &amp;amp; LOCKED&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; SYSAUX&lt;br&gt;ORDPLUGINS&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 29-OCT-09 15:03:24 EXPIRED &amp;amp; LOCKED&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; SYSAUX&lt;br&gt;SI_INFORMTN_SCHEMA&amp;nbsp;&amp;nbsp; 29-OCT-09 15:03:24 EXPIRED &amp;amp; LOCKED&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; SYSAUX&lt;br&gt;&lt;span style="background-color: #FFFF00"&gt;MDSYS&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 29-OCT-09 15:03:24 EXPIRED &amp;amp; LOCKED&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; ORA_SPATIAL&lt;br&gt;&lt;/span&gt;&lt;br&gt;16 rows selected.&lt;br&gt;&lt;br&gt;&amp;gt; @C:\oracle\ora11\ord\im\admin\catim.sql &lt;br&gt;&lt;br&gt;&amp;gt; execute validate_ordim;&lt;br&gt;&lt;br&gt;&amp;gt; select version, status from dba_registry where comp_id='ORDIM';&lt;br&gt;&lt;br&gt;VERSION STATUS&lt;br&gt;------------------------------ -----------&lt;br&gt;11.1.0.6.0 VALID&lt;br&gt;&lt;br&gt;1 row selected.&lt;/font&gt;&lt;/p&gt;&lt;p&gt;&lt;b&gt;4) Verify Install Oracle Spatial in Oracle 11g&lt;/b&gt;&lt;/p&gt;&lt;p&gt;&lt;font color="#0000FF" face="Courier New" size="2"&gt;&amp;gt; connect sys/***&amp;nbsp; as sysdba&lt;br&gt;&lt;br&gt;&amp;gt; select comp_id,version,status from dba_registry&lt;br&gt;where comp_id in ('JAVAVM','ORDIM','XDB'); &lt;br&gt;&lt;br&gt;COMP_ID&amp;nbsp;&amp;nbsp;&amp;nbsp; VERSION&amp;nbsp;&amp;nbsp;&amp;nbsp; STATUS&lt;br&gt;---------- ---------- -----------&lt;br&gt;ORDIM&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 11.1.0.6.0 VALID&lt;br&gt;XDB&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 11.1.0.6.0 VALID&lt;br&gt;JAVAVM&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 11.1.0.6.0 VALID&lt;br&gt;&lt;br&gt;3 rows selected.&lt;br&gt;&lt;br&gt;&amp;gt; @C:\oracle\ora11\md\admin\mdprivs.sql &lt;br&gt;&amp;gt; @C:\oracle\ora11\md\admin\mdinst.sql &lt;br&gt;&lt;br&gt;&amp;gt; set serveroutput on&lt;br&gt;&amp;gt; execute validate_sdo;&lt;br&gt;&lt;br&gt;&amp;gt; col COMP_ID for a10&lt;br&gt;&amp;gt; col COMP_NAME for a10&lt;br&gt;&amp;gt; col CONTROL for a10&lt;br&gt;&amp;gt; col SCHEMA for a10&lt;br&gt;&amp;gt; col VERSION for a10&lt;br&gt;&amp;gt; select comp_id, control, schema, version, status, comp_name from dba_registry&lt;br&gt;where comp_id='SDO';&lt;br&gt;&lt;br&gt;COMP_ID&amp;nbsp;&amp;nbsp;&amp;nbsp; CONTROL&amp;nbsp;&amp;nbsp;&amp;nbsp; SCHEMA&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; VERSION&amp;nbsp;&amp;nbsp;&amp;nbsp; STATUS&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; COMP_NAME&lt;br&gt;---------- ---------- ---------- ---------- ----------- ----------&lt;br&gt;SDO&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; SYS&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; MDSYS&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 11.1.0.6.0 VALID&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; Spatial&lt;br&gt;&lt;br&gt;&amp;gt; select object_name, object_type, status from dba_objects&lt;br&gt;where owner='MDSYS' and status &amp;lt;&amp;gt; 'VALID'&lt;br&gt;order by object_name;&lt;br&gt;&lt;br&gt;no rows selected&lt;br&gt;&lt;br&gt;&amp;gt; select comp_id,version,status from dba_registry&lt;br&gt;where comp_id in ('JAVAVM','ORDIM','XDB','SDO'); &lt;br&gt;&lt;br&gt;COMP_ID&amp;nbsp;&amp;nbsp;&amp;nbsp; VERSION&amp;nbsp;&amp;nbsp;&amp;nbsp; STATUS&lt;br&gt;---------- ---------- -----------&lt;br&gt;SDO&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 11.1.0.6.0 VALID&lt;br&gt;ORDIM&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 11.1.0.6.0 VALID&lt;br&gt;XDB&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 11.1.0.6.0 VALID&lt;br&gt;JAVAVM&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 11.1.0.6.0 VALID&lt;br&gt;&lt;br&gt;4 rows selected&lt;/font&gt;&lt;/p&gt;&lt;/body&gt;&lt;/html&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/2639035620819724618-3630694118472857857?l=babumani.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://babumani.blogspot.com/feeds/3630694118472857857/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=2639035620819724618&amp;postID=3630694118472857857' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/2639035620819724618/posts/default/3630694118472857857'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/2639035620819724618/posts/default/3630694118472857857'/><link rel='alternate' type='text/html' href='http://babumani.blogspot.com/2009/10/install-oracle-spatial-in-oracle-11g.html' title='Install Oracle Spatial in Oracle 11g'/><author><name>babumani</name><uri>http://www.blogger.com/profile/08434916381222486044</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-2639035620819724618.post-2542023543457085798</id><published>2009-07-31T09:10:00.000-05:00</published><updated>2009-07-31T09:19:17.084-05:00</updated><title type='text'>Oracle Error - "ORA-01762: vopdrv: view query block not in FROM"</title><content type='html'>&lt;p&gt;Came across this error &amp;quot;&lt;font color="#800000"&gt;&lt;span style="background-color: #FFFF00"&gt;ORA-01762: vopdrv: view query block not in FROM&lt;/span&gt;&lt;/font&gt;&amp;quot; &lt;/p&gt;&lt;p&gt;Here is the version and platform details:&lt;/p&gt;&lt;p&gt;&lt;font color="#0000FF" face="Courier New" size="2"&gt;SQL&amp;gt; select banner from v$version;&lt;br&gt;&lt;br&gt;BANNER&lt;br&gt;--------------------------------------------------------------------------------&lt;br&gt;Oracle Database 11g Enterprise Edition Release 11.1.0.6.0 - Production&lt;br&gt;PL/SQL Release 11.1.0.6.0 - Production&lt;br&gt;CORE 11.1.0.6.0 Production&lt;br&gt;TNS for 32-bit Windows: Version 11.1.0.6.0 - Production&lt;br&gt;NLSRTL Version 11.1.0.6.0 - Production&lt;/font&gt;&lt;/p&gt;&lt;p&gt;Here is the structure of the view:&lt;/p&gt;&lt;p&gt;&lt;font color="#0000FF" face="Courier New" size="2"&gt;SQL&amp;gt; DESC DBA_AUTOTASK_WINDOW_CLIENTS;&lt;br&gt;Name Null? Type&lt;br&gt;----------------------- -------- ----------------&lt;br&gt;WINDOW_NAME NOT NULL VARCHAR2(30)&lt;br&gt;WINDOW_NEXT_TIME TIMESTAMP(6) WITH TIME ZONE&lt;br&gt;WINDOW_ACTIVE VARCHAR2(5)&lt;br&gt;AUTOTASK_STATUS VARCHAR2(8)&lt;br&gt;OPTIMIZER_STATS VARCHAR2(8)&lt;br&gt;SEGMENT_ADVISOR VARCHAR2(8)&lt;br&gt;SQL_TUNE_ADVISOR VARCHAR2(8)&lt;br&gt;HEALTH_MONITOR VARCHAR2(8)&lt;/font&gt;&lt;/p&gt;&lt;p&gt;This query works:&lt;/p&gt;&lt;p&gt;&lt;font color="#0000FF" face="Courier New" size="2"&gt;SQL&amp;gt; SELECT * FROM DBA_AUTOTASK_WINDOW_CLIENTS&lt;br&gt;&lt;br&gt;WINDOW_NAME WINDOW_NEXT_TIME WINDO AUTOTASK OPTIMIZE SEGMENT_ SQL_TUNE HEALTH_M&lt;br&gt;---------------- ---------------------------------------- ----- -------- -------- -------- -------- --------&lt;br&gt;MONDAY_WINDOW 03-AUG-09 10.00.00.000000 PM US/EASTERN FALSE ENABLED ENABLED ENABLED ENABLED DISABLED&lt;br&gt;TUESDAY_WINDOW 04-AUG-09 10.00.00.000000 PM US/EASTERN FALSE ENABLED ENABLED ENABLED ENABLED DISABLED&lt;br&gt;WEDNESDAY_WINDOW 05-AUG-09 10.00.00.000000 PM US/EASTERN FALSE ENABLED ENABLED ENABLED ENABLED DISABLED&lt;br&gt;THURSDAY_WINDOW 06-AUG-09 10.00.00.000000 PM US/EASTERN FALSE ENABLED ENABLED ENABLED ENABLED DISABLED&lt;br&gt;FRIDAY_WINDOW 31-JUL-09 10.00.00.000000 PM US/EASTERN FALSE ENABLED ENABLED ENABLED ENABLED DISABLED&lt;br&gt;SATURDAY_WINDOW 01-AUG-09 06.00.00.000000 AM US/EASTERN FALSE ENABLED ENABLED ENABLED ENABLED DISABLED&lt;br&gt;SUNDAY_WINDOW 02-AUG-09 06.00.00.000000 AM US/EASTERN FALSE ENABLED ENABLED ENABLED ENABLED DISABLED&lt;br&gt;&lt;br&gt;7 rows selected.&lt;/font&gt;&lt;/p&gt;&lt;p&gt;But this one fails (or sucks! for the USA readers!):&lt;/p&gt;&lt;p&gt;&lt;font color="#0000FF" face="Courier New" size="2"&gt;SQL&amp;gt; SELECT WINDOW_NAME FROM DBA_AUTOTASK_WINDOW_CLIENTS;&lt;br&gt;&lt;/font&gt;&lt;font face="Courier New" size="2" color="#800000"&gt;&lt;b&gt;&lt;span style="background-color: #FFFF00"&gt;SELECT WINDOW_NAME FROM DBA_AUTOTASK_WINDOW_CLIENTS&lt;br&gt;*&lt;br&gt;ERROR at line 1:&lt;br&gt;ORA-01762: vopdrv: view query block not in FROM&lt;/span&gt;&lt;/b&gt;&lt;/font&gt;&lt;/p&gt;&lt;p&gt;Any clue?&lt;/p&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/2639035620819724618-2542023543457085798?l=babumani.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://babumani.blogspot.com/feeds/2542023543457085798/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=2639035620819724618&amp;postID=2542023543457085798' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/2639035620819724618/posts/default/2542023543457085798'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/2639035620819724618/posts/default/2542023543457085798'/><link rel='alternate' type='text/html' href='http://babumani.blogspot.com/2009/07/oracle-error-ora-01762-vopdrv-view.html' title='Oracle Error - &quot;ORA-01762: vopdrv: view query block not in FROM&quot;'/><author><name>babumani</name><uri>http://www.blogger.com/profile/08434916381222486044</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-2639035620819724618.post-3785006591171614894</id><published>2009-07-01T14:25:00.001-05:00</published><updated>2009-07-01T14:27:08.548-05:00</updated><title type='text'>SECUREFILE Migration - Oracle 11g Feature</title><content type='html'>&lt;p class="MsoNormal"&gt;&lt;font face="Courier New" size="2" color="#0000FF"&gt;Step#1) Create a partition table:-&lt;/font&gt;&lt;/p&gt;&lt;p&gt;&lt;font face="Courier New" size="2"&gt;SQL&amp;gt; CREATE TABLE DOC_TAB (ID NUMBER, COLX CLOB )&lt;br&gt;2 PARTITION BY RANGE (ID) (&lt;br&gt;3 PARTITION P1 VALUES LESS THAN (10) TABLESPACE TBS_A LOB(COLX) STORE AS LOBP1,&lt;br&gt;4 PARTITION P2 VALUES LESS THAN (20) TABLESPACE TBS_B LOB(COLX) STORE AS LOBP2,&lt;br&gt;5 PARTITION P3 VALUES LESS THAN (30) TABLESPACE TBS_C LOB(COLX) STORE AS LOBP3);&lt;br&gt;&lt;br&gt;Table created.&lt;/font&gt;&lt;/p&gt;&lt;p class="MsoNormal"&gt;&lt;font face="Courier New" size="2" color="#0000FF"&gt;Step#2) Insert data&lt;/font&gt;&lt;/p&gt;&lt;p&gt;&lt;font face="Courier New" size="2"&gt;SQL&amp;gt; INSERT INTO DOC_TAB VALUES (5,'XXX');&lt;br&gt;&lt;br&gt;1 row created.&lt;br&gt;&lt;br&gt;SQL&amp;gt; INSERT INTO DOC_TAB VALUES (15,'YYY');&lt;br&gt;&lt;br&gt;1 row created.&lt;br&gt;&lt;br&gt;SQL&amp;gt; INSERT INTO DOC_TAB VALUES (25,'ZZZ');&lt;br&gt;&lt;br&gt;1 row created.&lt;br&gt;&lt;br&gt;SQL&amp;gt; commit;&lt;br&gt;&lt;br&gt;Commit complete.&lt;/font&gt;&lt;/p&gt;&lt;p class="MsoNormal"&gt;&lt;font face="Courier New" size="2" color="#0000FF"&gt;Step#3) Create a transient table&lt;/font&gt;&lt;/p&gt;&lt;p&gt;&lt;font face="Courier New" size="2"&gt;SQL&amp;gt; CREATE TABLE DOC_TAB_TEMP (ID NUMBER, COLX CLOB)&lt;br&gt;2 PARTITION BY RANGE (ID) (&lt;br&gt;3 PARTITION P1 VALUES LESS THAN (10) TABLESPACE TBS_A LOB(COLX) STORE AS SECUREFILE,&lt;br&gt;4 PARTITION P2 VALUES LESS THAN (20) TABLESPACE TBS_B LOB(COLX) STORE AS SECUREFILE,&lt;br&gt;5 PARTITION P3 VALUES LESS THAN (30) TABLESPACE TBS_C LOB(COLX) STORE AS SECUREFILE);&lt;br&gt;&lt;br&gt;Table created.&lt;/font&gt;&lt;/p&gt;&lt;p&gt;&lt;font face="Courier New" size="2"&gt;&lt;font color="#0000FF"&gt;Step#4) Table Redefinition&lt;/font&gt;&lt;br&gt;&lt;br&gt;SQL&amp;gt; DECLARE&lt;br&gt;2 ERROR_COUNT NUMBER;&lt;br&gt;3 BEGIN&lt;br&gt;4 DBMS_REDEFINITION.START_REDEF_TABLE(&lt;br&gt;5 UNAME=&amp;gt;'BABU',&lt;br&gt;6 ORIG_TABLE=&amp;gt;'DOC_TAB',&lt;br&gt;7 INT_TABLE=&amp;gt;'DOC_TAB_TEMP',&lt;br&gt;8 COL_MAPPING=&amp;gt;'ID ID,COLX COLX');&lt;br&gt;9 DBMS_REDEFINITION.COPY_TABLE_DEPENDENTS(&lt;br&gt;10 UNAME=&amp;gt;'BABU',&lt;br&gt;11 ORIG_TABLE=&amp;gt;'DOC_TAB',&lt;br&gt;12 INT_TABLE=&amp;gt;'DOC_TAB_TEMP',&lt;br&gt;13 COPY_INDEXES=&amp;gt;1,&lt;br&gt;14 COPY_TRIGGERS=&amp;gt;TRUE,&lt;br&gt;15 COPY_CONSTRAINTS=&amp;gt;TRUE,&lt;br&gt;16 COPY_PRIVILEGES=&amp;gt;TRUE,&lt;br&gt;17 IGNORE_ERRORS=&amp;gt;FALSE,&lt;br&gt;18 NUM_ERRORS=&amp;gt;ERROR_COUNT);&lt;br&gt;19 DBMS_REDEFINITION.FINISH_REDEF_TABLE(&lt;br&gt;20 UNAME=&amp;gt;'BABU',ORIG_TABLE=&amp;gt;'DOC_TAB',INT_TABLE=&amp;gt;'DOC_TAB_TEMP');&lt;br&gt;21 DBMS_OUTPUT.PUT_LINE(ERROR_COUNT);&lt;br&gt;22 END;&lt;br&gt;23 /&lt;br&gt;DECLARE&lt;br&gt;*&lt;br&gt;ERROR at line 1:&lt;br&gt;ORA-12089: cannot online redefine table &amp;quot;BABU&amp;quot;.&amp;quot;DOC_TAB&amp;quot; with no primary key&lt;br&gt;ORA-06512: at &amp;quot;SYS.DBMS_REDEFINITION&amp;quot;, line 52&lt;br&gt;ORA-06512: at &amp;quot;SYS.DBMS_REDEFINITION&amp;quot;, line 1631&lt;br&gt;ORA-06512: at line 4&lt;br&gt;&lt;br&gt;SQL&amp;gt; CREATE TABLE DOC_TAB (ID NUMBER &lt;span style="background-color: #FFFF00"&gt;PRIMARY KEY&lt;/span&gt;, COLX CLOB )&lt;br&gt;2 PARTITION BY RANGE (ID) (&lt;br&gt;3 PARTITION P1 VALUES LESS THAN (10) TABLESPACE TBS_A LOB(COLX) STORE AS LOBP1,&lt;br&gt;4 PARTITION P2 VALUES LESS THAN (20) TABLESPACE TBS_B LOB(COLX) STORE AS LOBP2,&lt;br&gt;5 PARTITION P3 VALUES LESS THAN (30) TABLESPACE TBS_C LOB(COLX) STORE AS LOBP3);&lt;br&gt;&lt;br&gt;Table created.&lt;/font&gt;&lt;/p&gt;&lt;p&gt;&lt;font face="Courier New" size="2"&gt;&lt;font color="#0000FF"&gt;Step#4) Table Redefinition (again)&lt;/font&gt;&lt;br&gt;&lt;br&gt;SQL&amp;gt; DECLARE&lt;br&gt;2 ERROR_COUNT NUMBER;&lt;br&gt;3 BEGIN&lt;br&gt;4 DBMS_REDEFINITION.START_REDEF_TABLE(&lt;br&gt;5 UNAME=&amp;gt;'BABU',&lt;br&gt;6 ORIG_TABLE=&amp;gt;'DOC_TAB',&lt;br&gt;7 INT_TABLE=&amp;gt;'DOC_TAB_TEMP',&lt;br&gt;8 COL_MAPPING=&amp;gt;'ID ID,COLX COLX');&lt;br&gt;9 DBMS_REDEFINITION.COPY_TABLE_DEPENDENTS(&lt;br&gt;10 UNAME=&amp;gt;'BABU',&lt;br&gt;11 ORIG_TABLE=&amp;gt;'DOC_TAB',&lt;br&gt;12 INT_TABLE=&amp;gt;'DOC_TAB_TEMP',&lt;br&gt;13 COPY_INDEXES=&amp;gt;1,&lt;br&gt;14 COPY_TRIGGERS=&amp;gt;TRUE,&lt;br&gt;15 COPY_CONSTRAINTS=&amp;gt;TRUE,&lt;br&gt;16 COPY_PRIVILEGES=&amp;gt;TRUE,&lt;br&gt;17 IGNORE_ERRORS=&amp;gt;FALSE,&lt;br&gt;18 NUM_ERRORS=&amp;gt;ERROR_COUNT);&lt;br&gt;19 DBMS_REDEFINITION.FINISH_REDEF_TABLE(&lt;br&gt;20 UNAME=&amp;gt;'BABU',ORIG_TABLE=&amp;gt;'DOC_TAB',INT_TABLE=&amp;gt;'DOC_TAB_TEMP');&lt;br&gt;21 DBMS_OUTPUT.PUT_LINE(ERROR_COUNT);&lt;br&gt;22 END;&lt;br&gt;23 /&lt;br&gt;0&lt;br&gt;&lt;br&gt;PL/SQL procedure successfully completed.&lt;/font&gt;&lt;/p&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/2639035620819724618-3785006591171614894?l=babumani.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://babumani.blogspot.com/feeds/3785006591171614894/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=2639035620819724618&amp;postID=3785006591171614894' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/2639035620819724618/posts/default/3785006591171614894'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/2639035620819724618/posts/default/3785006591171614894'/><link rel='alternate' type='text/html' href='http://babumani.blogspot.com/2009/07/securefile-migration-oracle-11g-feature.html' title='SECUREFILE Migration - Oracle 11g Feature'/><author><name>babumani</name><uri>http://www.blogger.com/profile/08434916381222486044</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-2639035620819724618.post-5056181034157473834</id><published>2009-05-28T09:14:00.002-05:00</published><updated>2009-05-28T09:20:42.545-05:00</updated><title type='text'>New features in Oracle 11g Database - Reference Partition</title><content type='html'>&lt;p&gt;Reference Partitioning is a new feature in Oracle 11g, it is meant for partitioning the parent and child tables using the foreign key constraint.&lt;br&gt;&lt;br&gt;&lt;font face="Courier New" size="2" color="#0000FF"&gt;SQL&amp;gt; CREATE TABLE PARENT_TAB (&lt;br&gt;2 COL1 NUMBER(3) PRIMARY KEY,&lt;br&gt;3 COL2 DATE)&lt;br&gt;4 PARTITION BY RANGE (COL2) (&lt;br&gt;5 PARTITION Q1 VALUES LESS THAN (TO_DATE('1-4-2009','DD-MM-YYYY')),&lt;br&gt;6 PARTITION Q2 VALUES LESS THAN (TO_DATE('1-7-2009','DD-MM-YYYY')));&lt;br&gt;&lt;br&gt;Table created.&lt;/font&gt;&lt;/p&gt;&lt;p&gt;&lt;font face="Courier New" size="2" color="#0000FF"&gt;SQL&amp;gt; CREATE TABLE CHILD_TAB (&lt;br&gt;2 COL1 NUMBER(3),&lt;br&gt;3 CONSTRAINT CHILD_FK FOREIGN KEY (COL1) REFERENCES PARENT_TAB(COL1))&lt;br&gt;4 PARTITION BY REFERENCE (CHILD_FK);&lt;br&gt;PARTITION BY REFERENCE (CHILD_FK)&lt;br&gt;*&lt;br&gt;ERROR at line 4:&lt;br&gt;&lt;b&gt;&lt;span style="background-color: #FFFF00"&gt;ORA-14652: reference partitioning foreign key is not supported&lt;/span&gt;&lt;br&gt;&lt;/b&gt;&lt;br&gt;SQL&amp;gt; CREATE TABLE CHILD_TAB (&lt;br&gt;2 COL1 NUMBER(3) &lt;span style="background-color: #FFFF00; font-weight:700"&gt;NOT NULL&lt;/span&gt;,&lt;br&gt;3 CONSTRAINT CHILD_FK FOREIGN KEY (COL1) REFERENCES PARENT_TAB(COL1))&lt;br&gt;4 PARTITION BY REFERENCE (CHILD_FK);&lt;br&gt;&lt;br&gt;Table created.&lt;br&gt;&lt;/font&gt;&lt;br&gt;In Reference Partitioning, specifying NOT NULL for the FOREIGN KEY column in child table is mandatory. Otherwise it will throw the above error.&lt;/p&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/2639035620819724618-5056181034157473834?l=babumani.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://babumani.blogspot.com/feeds/5056181034157473834/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=2639035620819724618&amp;postID=5056181034157473834' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/2639035620819724618/posts/default/5056181034157473834'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/2639035620819724618/posts/default/5056181034157473834'/><link rel='alternate' type='text/html' href='http://babumani.blogspot.com/2009/05/new-features-in-oracle-11g-database.html' title='New features in Oracle 11g Database - Reference Partition'/><author><name>babumani</name><uri>http://www.blogger.com/profile/08434916381222486044</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-2639035620819724618.post-7939234165611218320</id><published>2008-12-29T15:43:00.007-05:00</published><updated>2008-12-29T15:58:44.601-05:00</updated><title type='text'>Oracle NUMBER Data Types</title><content type='html'>&lt;p&gt;&lt;u&gt;&lt;b&gt;Introduction: &lt;/b&gt;&lt;/u&gt;This is my study about number data types present&lt;br /&gt;in Oracle database. I have used Oracle 10g (10.2.0.3) for my study:-&lt;br /&gt;&lt;br /&gt;Data types INT, INTEGER and SMALLINT all uses NUMBER in Oracle, let us see how:-&lt;br /&gt;&lt;br /&gt;&lt;u&gt;Example # 1:&lt;/u&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family:Courier New;font-size:85%;color:#0000ff;"&gt;drop table tab1 purge;&lt;br /&gt;&lt;br /&gt;create table tab2 (&lt;br /&gt;I INT,&lt;br /&gt;S SMALLINT,&lt;br /&gt;IG INTEGER);&lt;br /&gt;&lt;br /&gt;describe tab1&lt;br /&gt;&lt;br /&gt;Name Null? Type&lt;br /&gt;------------------ -------- ----------&lt;br /&gt;I NUMBER(38)&lt;br /&gt;S NUMBER(38)&lt;br /&gt;IG NUMBER(38)&lt;br /&gt;&lt;br /&gt;&lt;/span&gt;&lt;span style="font-family:Times New Roman;"&gt;&lt;u&gt;Example # 2: &lt;/u&gt;Let's see about other number data types:-&lt;/span&gt;&lt;span style="font-family:Times New Roman;color:#0000ff;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;span style="font-family:Courier New;font-size:85%;color:#0000ff;"&gt;&lt;br /&gt;drop table tab2 purge;&lt;br /&gt;&lt;br /&gt;create table tab2 (&lt;br /&gt;X number,&lt;br /&gt;NUM1 NUMBER,&lt;br /&gt;FLOAT1 FLOAT,&lt;br /&gt;BFLOAT BINARY_FLOAT,&lt;br /&gt;BDOUBLE BINARY_DOUBLE);&lt;br /&gt;&lt;br /&gt;describe tab2&lt;/span&gt;&lt;br /&gt;&lt;/p&gt;&lt;p&gt;&lt;span style="font-family:Courier New;font-size:85%;color:#0000ff;"&gt;Name Null? Type&lt;br /&gt;----------------------- -------- -------------&lt;br /&gt;X NUMBER&lt;br /&gt;NUM1 NUMBER&lt;br /&gt;FLOAT1 FLOAT(126)&lt;br /&gt;BFLOAT BINARY_FLOAT&lt;br /&gt;BDOUBLE BINARY_DOUBLE&lt;br /&gt;&lt;br /&gt;declare&lt;br /&gt;y number;&lt;br /&gt;begin for a in 1..10 loop&lt;br /&gt;y:=1/(a*100);&lt;br /&gt;insert into tab2 values (a,y,y,y,y);&lt;br /&gt;end loop;&lt;br /&gt;commit;&lt;br /&gt;end;&lt;br /&gt;/&lt;br /&gt;&lt;br /&gt;col NUM1 for .99999999999999999999&lt;br /&gt;col FLOAT1 for .99999999999999999999&lt;br /&gt;col BFLOAT for .99999999999999999999&lt;br /&gt;col BDOUBLE for .99999999999999999999&lt;br /&gt;set lines 120&lt;br /&gt;&lt;br /&gt;select * from tab2;&lt;br /&gt;&lt;br /&gt;X NUM1 FLOAT1 BFLOAT BDOUBLE&lt;br /&gt;-- ---------------------- ---------------------- ---------------------- ------------&lt;br /&gt;1 .01000000000000000000 .01000000000000000000 .00999999978000000000 .01000000000000000000 2 .00500000000000000000 .00500000000000000000 .00499999989000000000 .005000000000000000&lt;span style="color:#ffff00;"&gt;10&lt;/span&gt; 3 .00333333333333333333 .00333333333333333333 .003333333&lt;span style="color:#ffff00;"&gt;41000000000&lt;/span&gt; .003333333333333333&lt;span style="color:#ffff00;"&gt;50&lt;/span&gt; 4 .00250000000000000000 .00250000000000000000 .002&lt;span style="color:#ffff00;"&gt;49999994&lt;/span&gt;000000000 .002500000000000000&lt;span style="color:#ffff00;"&gt;10&lt;/span&gt; 5 .00200000000000000000 .00200000000000000000 .0020000000&lt;span style="color:#ffff00;"&gt;9&lt;/span&gt;000000000 .00200000000000000000 6 .00166666666666666667 .00166666666666666667 .001666666&lt;span style="color:#ffff00;"&gt;71&lt;/span&gt;000000000 .001666666666666666&lt;span style="color:#ffff00;"&gt;80&lt;/span&gt; 7 .00142857142857142857 .00142857142857142857 .001428571&lt;span style="color:#ffff00;"&gt;41&lt;/span&gt;000000000 .001428571428571428&lt;span style="color:#ffff00;"&gt;60&lt;/span&gt; 8 .00125000000000000000 .00125000000000000000 .00124999997000000000 .00125000000000000000 9 .00111111111111111111 .00111111111111111111 .00111111114000000000 .00111111111111111110 10 .00100000000000000000 .00100000000000000000 .00100000005000000000 .00100000000000000000&lt;br /&gt;10 rows selected.&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;In the above, the NUM1 (which is using Number data type) and FLOAT1 (which is using FLOAT data type) preserves accuracy/scale than others.&lt;br /&gt;&lt;u&gt;&lt;/u&gt;&lt;/p&gt;&lt;p&gt;&lt;u&gt;Example # 3:&lt;/u&gt; Now, lets us try this&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family:Courier New;font-size:85%;color:#0000ff;"&gt;delete tab2;&lt;br /&gt;&lt;br /&gt;declare&lt;br /&gt;y number;&lt;br /&gt;begin for a in 1..10 loop&lt;br /&gt;y:=(a+(sqrt(a))/(a*100));&lt;br /&gt;insert into tab2 values (a,y,y,y,y);&lt;br /&gt;end loop;&lt;br /&gt;commit;&lt;br /&gt;end;&lt;br /&gt;/&lt;br /&gt;&lt;br /&gt;col NUM1 for 99.99999999999999999999999999999999999999&lt;br /&gt;col FLOAT1 for 99.99999999999999999999999999999999999999&lt;br /&gt;&lt;br /&gt;select NUM1,FLOAT1 from tab2;&lt;br /&gt;&lt;br /&gt;NUM1 FLOAT1&lt;br /&gt;------------------------------------------ ------------------------------------------ 1.01000000000000000000000000000000000000 1.01000000000000000000000000000000000000&lt;br /&gt;2.00707106781186547524400844362104849039 2.00707106781186547524400844362104849040&lt;br /&gt;3.00577350269189625764509148780501957456 3.00577350269189625764509148780501957460&lt;br /&gt;4.00500000000000000000000000000000000000 4.00500000000000000000000000000000000000&lt;br /&gt;5.00447213595499957939281834733746255247 5.00447213595499957939281834733746255250&lt;br /&gt;6.00408248290463863016366214012450981899 6.00408248290463863016366214012450981900&lt;br /&gt;7.00377964473009227227214516536234180061 7.00377964473009227227214516536234180060&lt;br /&gt;8.00353553390593273762200422181052424520 8.00353553390593273762200422181052424520&lt;br /&gt;9.00333333333333333333333333333333333333 9.00333333333333333333333333333333333330&lt;br /&gt;10.00316227766016837933199889354443271853 10.00316227766016837933199889354443271900&lt;br /&gt;&lt;br /&gt;10 rows selected.&lt;br /&gt;&lt;br /&gt;select avg(NUM1) NUM1, avg(FLOAT1) FLOAT1 from tab2;&lt;br /&gt;&lt;br /&gt;NUM1 FLOAT1&lt;br /&gt;------------------------------------------ ------------------------------------------ 5.505020997899292666500506203293867253&lt;span style="color:#ffff00;"&gt;41&lt;/span&gt; 5.505020997899292666500506203293867253&lt;span style="color:#ffff00;"&gt;46&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;select sum(NUM1) NUM1, sum(FLOAT1) FLOAT1 from tab2;&lt;br /&gt;&lt;br /&gt;NUM1 FLOAT1&lt;br /&gt;------------------------------------------ ------------------------------------------ 55.050209978992926665005062032938672534&lt;span style="color:#ffff00;"&gt;08&lt;/span&gt; 55.050209978992926665005062032938672534&lt;span style="color:#ffff00;"&gt;60&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;select max(NUM1) NUM1, max(FLOAT1) FLOAT1 from tab2;&lt;br /&gt;&lt;br /&gt;NUM1 FLOAT1&lt;br /&gt;------------------------------------------ ------------------------------------------ 10.00316227766016837933199889354443271&lt;span style="color:#ffff00;"&gt;853&lt;/span&gt; 10.00316227766016837933199889354443271&lt;span style="color:#ffff00;"&gt;900&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;u&gt;Example # 4:&lt;/u&gt; Now, lets us compare NUMBER and FLOAT data type and try this&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family:Courier New;font-size:85%;color:#0000ff;"&gt;drop table tab3 purge;&lt;br /&gt;&lt;br /&gt;create table tab3 (&lt;br /&gt;NUM1 NUMBER,&lt;br /&gt;FLOAT1 FLOAT);&lt;br /&gt;&lt;br /&gt;delete tab3;&lt;br /&gt;&lt;br /&gt;insert into tab3 values (&lt;br /&gt;1234567891234567891234567890123456789123.45,&lt;br /&gt;1234567891234567891234567890123456789123.45);&lt;br /&gt;&lt;br /&gt;col NUM1 for 9999999999999999999999999999999999999999.99&lt;br /&gt;col FLOAT1 for 9999999999999999999999999999999999999999.99&lt;br /&gt;&lt;br /&gt;select * from tab3;&lt;br /&gt;&lt;br /&gt;NUM1&lt;br /&gt;--------------------------------------------&lt;br /&gt;FLOAT1&lt;br /&gt;--------------------------------------------&lt;br /&gt;12345678912345678912345678901234567891&lt;span style="color:#ffff00;"&gt;23&lt;/span&gt;.00&lt;br /&gt;12345678912345678912345678901234567891&lt;span style="color:#ffff00;"&gt;00&lt;/span&gt;.00&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;In the above when comparing the NUM1 (NUMBER data type) and FLOAT1 (FLOAT data type), it appears that NUM1 (Number data type) preserves accuracy/scale than the other.&lt;br /&gt;&lt;br /&gt;When default is used, NUMBER datatype can preserve values upto 40 bytes and FLOAT upto 38 bytes&lt;br /&gt;&lt;/p&gt;&lt;/span&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/2639035620819724618-7939234165611218320?l=babumani.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://babumani.blogspot.com/feeds/7939234165611218320/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=2639035620819724618&amp;postID=7939234165611218320' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/2639035620819724618/posts/default/7939234165611218320'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/2639035620819724618/posts/default/7939234165611218320'/><link rel='alternate' type='text/html' href='http://babumani.blogspot.com/2008/12/oracle-number-data-types.html' title='Oracle NUMBER Data Types'/><author><name>babumani</name><uri>http://www.blogger.com/profile/08434916381222486044</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-2639035620819724618.post-5042726327979420279</id><published>2008-12-17T15:43:00.003-05:00</published><updated>2008-12-17T15:51:06.755-05:00</updated><title type='text'>Bug in Oracle 10g while using Check Constraint</title><content type='html'>&lt;p&gt;Came across this bug in the check constraint in Oracle database 10g.&lt;br /&gt;This has been tested in both 32 and 64 bit Oracle 10g (10.2.0.3) running on Windows 2003 Server.&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family:Courier New;font-size:85%;color:#0000FF;"&gt;SQL&amp;gt; select * from v$version;&lt;br /&gt;BANNER&lt;br /&gt;----------------------------------------------------------------&lt;br /&gt;Oracle Database 10g Enterprise Edition Release 10.2.0.3.0 - Prod&lt;br /&gt;PL/SQL Release 10.2.0.3.0 - Production&lt;br /&gt;CORE 10.2.0.3.0 Production&lt;br /&gt;TNS for 32-bit Windows: Version 10.2.0.3.0 - Production&lt;br /&gt;NLSRTL Version 10.2.0.3.0 - Production&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;u&gt;&lt;b&gt;Reproducing the bug&lt;/b&gt;&lt;/u&gt;: Create a table called STORE having filed called LOCATION, this field should accept specified values or NULL values, below is the syntax:-&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family:Courier New;font-size:85%;color:#0000FF;"&gt;SQL&amp;gt; CREATE TABLE STORE (LOCATION VARCHAR2(15));&lt;br /&gt;&lt;br /&gt;Table created.&lt;br /&gt;&lt;br /&gt;SQL&amp;gt; ALTER TABLE STORE&lt;br /&gt;2 ADD CONSTRAINT C1 CHECK&lt;br /&gt;3 &lt;/span&gt;&lt;span style="font-family:Courier New;font-size:85%;color:#800000;"&gt;&lt;b&gt;(LOCATION IN ('PHILLY','HARRISBURG',NULL));&lt;/b&gt;&lt;/span&gt;&lt;span style="font-family:Courier New;font-size:85%;color:#0000FF;"&gt;&lt;br /&gt;&lt;br /&gt;Table altered.&lt;br /&gt;&lt;/span&gt;&lt;br /&gt;&lt;u&gt;&lt;b&gt;Bug Note: &lt;/b&gt;&lt;/u&gt;By specifying a NULL, the constraint doesn't not verifies/validates the entered value.&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family:Courier New;font-size:85%;color:#0000FF;"&gt;SQL&amp;gt; INSERT INTO STORE VALUES ('PHILLY');&lt;br /&gt;1 row created.&lt;br /&gt;&lt;br /&gt;&lt;/span&gt;&lt;span style="font-family:Courier New;font-size:85%;color:#800000;"&gt;SQL&amp;gt; INSERT INTO STORE VALUES ('philly');&lt;br /&gt;1 row created.&lt;br /&gt;&lt;/span&gt;&lt;span style="font-family:Courier New;font-size:85%;color:#0000FF;"&gt;&lt;br /&gt;SQL&amp;gt; INSERT INTO STORE VALUES ('HARRISBURG');&lt;br /&gt;1 row created.&lt;br /&gt;&lt;br /&gt;&lt;/span&gt;&lt;span style="font-family:Courier New;font-size:85%;color:#800000;"&gt;SQL&amp;gt; INSERT INTO STORE VALUES ('harrisburg');&lt;br /&gt;1 row created.&lt;br /&gt;&lt;/span&gt;&lt;span style="font-family:Courier New;font-size:85%;color:#0000FF;"&gt;&lt;br /&gt;SQL&amp;gt; INSERT INTO STORE VALUES (null);&lt;br /&gt;1 row created.&lt;br /&gt;&lt;br /&gt;SQL&amp;gt; INSERT INTO STORE VALUES ('PITTSBURGH');&lt;br /&gt;1 row created.&lt;br /&gt;&lt;br /&gt;&lt;/span&gt;&lt;span style="font-family:Courier New;font-size:85%;color:#800000;"&gt;SQL&amp;gt; INSERT INTO STORE VALUES ('pittsburgh');&lt;br /&gt;1 row created.&lt;br /&gt;&lt;/span&gt;&lt;span style="font-family:Courier New;font-size:85%;color:#0000FF;"&gt;&lt;br /&gt;SQL&amp;gt; commit;&lt;br /&gt;Commit complete.&lt;br /&gt;&lt;br /&gt;SQL&amp;gt; col SEARCH_CONDITION for a50&lt;br /&gt;SQL&amp;gt; select&lt;br /&gt;2 STATUS,&lt;br /&gt;3 DEFERRABLE,&lt;br /&gt;4 DEFERRED,&lt;br /&gt;5 VALIDATED,&lt;br /&gt;6 SEARCH_CONDITION&lt;br /&gt;7 FROM ALL_CONSTRAINTS A&lt;br /&gt;8 WHERE table_name='STORE';&lt;br /&gt;&lt;br /&gt;STATUS   DEFERRABLE     DEFERRED  VALIDATED     SEARCH_CONDITION&lt;br /&gt;-------- -------------- --------- ------------- ----------------------------------------&lt;br /&gt;ENABLED  NOT DEFERRABLE IMMEDIATE VALIDATED     LOCATION IN ('PHILLY','HARRISBURG',NULL)&lt;br /&gt;&lt;br /&gt;SQL&amp;gt; select LOCATION from STORE;&lt;br /&gt;LOCATION&lt;br /&gt;---------------&lt;br /&gt;PHILLY&lt;br /&gt;&lt;/span&gt;&lt;span style="font-family:Courier New;font-size:85%;color:#800000;"&gt;philly&lt;br /&gt;&lt;/span&gt;&lt;span style="font-family:Courier New;font-size:85%;color:#0000FF;"&gt;HARRISBURG&lt;br /&gt;&lt;/span&gt;&lt;span style="font-family:Courier New;font-size:85%;color:#800000;"&gt;harrisburg&lt;/span&gt;&lt;span style="font-family:Courier New;font-size:85%;color:#0000FF;"&gt;&lt;br /&gt;&lt;br /&gt;PITTSBURGH&lt;br /&gt;&lt;/span&gt;&lt;span style="font-family:Courier New;font-size:85%;color:#800000;"&gt;pittsburgh&lt;/span&gt;&lt;span style="font-family:Courier New;font-size:85%;color:#0000FF;"&gt;&lt;br /&gt;&lt;br /&gt;7 rows selected.&lt;br /&gt;&lt;/span&gt;&lt;br /&gt;&lt;u&gt;&lt;b&gt;PROBLEM: &lt;/b&gt;&lt;/u&gt;DMLs like INSERT, UPDATE and DELETE works, but Query (SELECT) statements doesn't work in Oracle 10g (Tested in 10.2.0.3 both in 32 and 64 bit) while querying for records that actually violates the constraint rule. But works fine in Oracle 9i (tested in 9.2.0.8) and 11g (tested in 11.1.0.6)&lt;br /&gt;&lt;br /&gt;Condition that violate the constraint rule:-&lt;br /&gt;&lt;span style="font-family:Courier New;font-size:85%;color:#800000;"&gt;SQL&amp;gt; select count(*) from STORE where LOCATION='philly'; &lt;br /&gt;&lt;br /&gt;COUNT(*)&lt;br /&gt;----------&lt;br /&gt;0&lt;/span&gt;&lt;/p&gt;&lt;p&gt;Condition that doesn't violate the constraint rule:-&lt;br /&gt;&lt;span style="font-family:Courier New;font-size:85%;color:#0000FF;"&gt;SQL&amp;gt; select count(*) from STORE where LOCATION='PHILLY';&lt;br /&gt;COUNT(*)&lt;br /&gt;----------&lt;br /&gt;1&lt;br /&gt;&lt;br /&gt;SQL&amp;gt; select count(*) from STORE where upper(LOCATION)=upper('philly');&lt;br /&gt;COUNT(*)&lt;br /&gt;----------&lt;br /&gt;2&lt;br /&gt;&lt;br /&gt;&lt;/span&gt;Condition that violate the constraint rule, DMLs works fine:-&lt;br /&gt;&lt;span style="font-family:Courier New;font-size:85%;color:#0000FF;"&gt;SQL&amp;gt; update STORE set LOCATION='XYX' where LOCATION='philly';&lt;br /&gt;1 row updated.&lt;br /&gt;&lt;br /&gt;SQL&amp;gt; commit;&lt;br /&gt;Commit complete.&lt;br /&gt;&lt;br /&gt;&lt;/span&gt;Condition that violate the constraint rule:-&lt;br /&gt;&lt;span style="font-family:Courier New;font-size:85%;color:#800000;"&gt;SQL&amp;gt; select count(*) from STORE where LOCATION='XYX';&lt;br /&gt;COUNT(*)&lt;br /&gt;----------&lt;br /&gt;0&lt;br /&gt;&lt;/span&gt;&lt;span style="font-family:Courier New;font-size:85%;color:#0000FF;"&gt;&lt;br /&gt;SQL&amp;gt; select LOCATION from STORE;&lt;br /&gt;LOCATION&lt;br /&gt;---------------&lt;br /&gt;PHILLY&lt;br /&gt;XYX&lt;br /&gt;HARRISBURG&lt;br /&gt;&lt;/span&gt;&lt;span style="font-family:Courier New;font-size:85%;color:#800000;"&gt;harrisburg&lt;br /&gt;&lt;/span&gt;&lt;span style="font-family:Courier New;font-size:85%;color:#0000FF;"&gt;&lt;br /&gt;PITTSBURGH&lt;br /&gt;&lt;/span&gt;&lt;span style="font-family:Courier New;font-size:85%;color:#800000;"&gt;pittsburgh&lt;/span&gt;&lt;span style="font-family:Courier New;font-size:85%;color:#0000FF;"&gt;&lt;br /&gt;&lt;br /&gt;7 rows selected.&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;Condition that violate the constraint rule, DMLs works fine:-&lt;br /&gt;&lt;span style="font-family:Courier New;font-size:85%;color:#0000FF;"&gt;SQL&amp;gt; delete from STORE where LOCATION='XYX';&lt;br /&gt;&lt;br /&gt;1 row deleted.&lt;br /&gt;&lt;br /&gt;SQL&amp;gt; select LOCATION from STORE;&lt;br /&gt;LOCATION&lt;br /&gt;---------------&lt;br /&gt;PHILLY&lt;br /&gt;HARRISBURG&lt;br /&gt;&lt;/span&gt;&lt;span style="font-family:Courier New;font-size:85%;color:#800000;"&gt;harrisburg&lt;/span&gt;&lt;span style="font-family:Courier New;font-size:85%;color:#0000FF;"&gt;&lt;br /&gt;&lt;br /&gt;PITTSBURGH&lt;br /&gt;&lt;/span&gt;&lt;span style="font-family:Courier New;font-size:85%;color:#800000;"&gt;pittsburgh&lt;/span&gt;&lt;span style="font-family:Courier New;font-size:85%;color:#0000FF;"&gt;&lt;br /&gt;&lt;br /&gt;6 rows selected.&lt;br /&gt;&lt;br /&gt;SQL&amp;gt; commit;&lt;br /&gt;&lt;br /&gt;Commit complete.&lt;br /&gt;&lt;/span&gt;&lt;br /&gt;&lt;u&gt;&lt;b&gt;FIX for 10g&lt;/b&gt;&lt;/u&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family:Courier New;font-size:85%;color:#0000FF;"&gt;ALTER TABLE STORE drop CONSTRAINT C1 ;&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;u&gt;&lt;b&gt;Option # 1:&lt;/b&gt;&lt;/u&gt; Create a check constraint without specifying NULL. By default check constraint will accept NULL values, hence it doesn't have to be mentioned in the constraint condition&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family:Courier New;font-size:85%;color:#0000FF;"&gt;ALTER TABLE STORE&lt;br /&gt;ADD CONSTRAINT C1 CHECK&lt;br /&gt;&lt;/span&gt;&lt;span style="font-family:Courier New;font-size:85%;color:#800000;"&gt;&lt;b&gt;(LOCATION IN ('PHILLY','HARRISBURG'));&lt;br /&gt;&lt;/b&gt;&lt;/span&gt;&lt;span style="font-family:Courier New;font-size:85%;color:#0000FF;"&gt;&lt;br /&gt;or &lt;br /&gt;&lt;br /&gt;ALTER TABLE STORE &lt;br /&gt;ADD CONSTRAINT C1 CHECK&lt;br /&gt;&lt;/span&gt;&lt;span style="font-family:Courier New;font-size:85%;color:#800000;"&gt;&lt;b&gt;(LOCATION IN ('PHILLY','HARRISBURG') or LOCATION IS NULL);&lt;/b&gt;&lt;/span&gt;&lt;span style="color:#800000;"&gt;&lt;b&gt;&lt;br /&gt;&lt;/b&gt;&lt;/span&gt;&lt;br /&gt;&lt;u&gt;&lt;b&gt;Option # 2:&lt;/b&gt;&lt;/u&gt; Specify function like UPPER or LOWER in the constraint&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family:Courier New;font-size:85%;color:#0000FF;"&gt;ALTER TABLE STORE&lt;br /&gt;ADD CONSTRAINT C1 CHECK&lt;br /&gt;&lt;/span&gt;&lt;span style="font-family:Courier New;font-size:85%;color:#800000;"&gt;&lt;b&gt;(UPPER(LOCATION) IN ('PHILLY','HARRISBURG'));&lt;br /&gt;&lt;/b&gt;&lt;/span&gt;&lt;br /&gt;&lt;u&gt;&lt;b&gt;Option # 3:&lt;/b&gt;&lt;/u&gt; If NOT NULL need to be enforced along with the above condition, then use the following:-&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family:Courier New;font-size:85%;color:#0000FF;"&gt;ALTER TABLE STORE &lt;br /&gt;ADD CONSTRAINT C1 CHECK&lt;br /&gt;&lt;/span&gt;&lt;span style="font-family:Courier New;font-size:85%;color:#800000;"&gt;&lt;b&gt;(LOCATION IN ('PHILLY','HARRISBURG') and LOCATION IS NOT NULL);&lt;br /&gt;&lt;/b&gt;&lt;/span&gt;&lt;br /&gt;Did anyone else had similar problem?&lt;/p&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/2639035620819724618-5042726327979420279?l=babumani.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://babumani.blogspot.com/feeds/5042726327979420279/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=2639035620819724618&amp;postID=5042726327979420279' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/2639035620819724618/posts/default/5042726327979420279'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/2639035620819724618/posts/default/5042726327979420279'/><link rel='alternate' type='text/html' href='http://babumani.blogspot.com/2008/12/bug-in-oracle-10g-while-using-check.html' title='Bug in Oracle 10g while using Check Constraint'/><author><name>babumani</name><uri>http://www.blogger.com/profile/08434916381222486044</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-2639035620819724618.post-2437355742231003565</id><published>2007-12-21T09:52:00.001-05:00</published><updated>2007-12-21T14:41:40.498-05:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='New features in Oracle 11g Database'/><title type='text'>New features in Oracle 11g Database - Virtual Columns</title><content type='html'>&lt;p&gt;&lt;b&gt;&lt;u&gt;&lt;font size="4"&gt;5. Virtual Columns&lt;/font&gt;&lt;/u&gt;&lt;/b&gt;&lt;br&gt;Virtual Columns are either created at the time of creating or modifying a table. Virtual Columns are defined by expressions or functions, which will be included as part of table structure and hence its metadata. Virtual Columns are like Views, they don't use additional disk space for its data.&lt;/p&gt;&lt;p&gt;&lt;font size="2" face="Courier"&gt;U1&amp;gt; CREATE TABLE student_mark(&lt;br&gt;&amp;nbsp; 2&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; stud_id NUMBER(5),&lt;br&gt;&amp;nbsp; 3&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; stud_name VARCHAR2(15),&lt;br&gt;&amp;nbsp; 4&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; subj1_mark NUMBER(3),&lt;br&gt;&amp;nbsp; 5&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; subj2_mark NUMBER(3),&lt;br&gt;&amp;nbsp; 6&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; subj3_mark NUMBER(3),&lt;br&gt;&amp;nbsp; 7&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;font color="#0000FF"&gt;tot_mark AS (subj1_mark + subj2_mark + subj3_mark));&lt;/font&gt;&lt;br&gt;&lt;br&gt;Table created.&lt;br&gt;&lt;br&gt;U1&amp;gt; DESCRIBE student_mark&lt;br&gt;&amp;nbsp;Name&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; Null?&amp;nbsp;&amp;nbsp;&amp;nbsp; Type&lt;br&gt;&amp;nbsp;----------------------- -------- ----------------&lt;br&gt;&amp;nbsp;STUD_ID&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; NUMBER(5)&lt;br&gt;&amp;nbsp;STUD_NAME&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; VARCHAR2(15)&lt;br&gt;&amp;nbsp;SUBJ1_MARK&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; NUMBER(3)&lt;br&gt;&amp;nbsp;SUBJ2_MARK&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; NUMBER(3)&lt;br&gt;&amp;nbsp;SUBJ3_MARK&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; NUMBER(3)&lt;br&gt;&amp;nbsp;&lt;font color="#0000FF"&gt;TOT_MARK&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; NUMBER&lt;/font&gt;&lt;br&gt;&lt;br&gt;U1&amp;gt; DROP TABLE student_mark;&lt;br&gt;&lt;br&gt;Table dropped.&lt;br&gt;&lt;br&gt;U1&amp;gt; CREATE TABLE student_mark(&lt;br&gt;&amp;nbsp; 2&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; stud_id NUMBER(5),&lt;br&gt;&amp;nbsp; 3&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; stud_name VARCHAR2(15),&lt;br&gt;&amp;nbsp; 4&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; subj1_mark NUMBER(3),&lt;br&gt;&amp;nbsp; 5&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; subj2_mark NUMBER(3),&lt;br&gt;&amp;nbsp; 6&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; subj3_mark NUMBER(3),&lt;br&gt;&amp;nbsp; 7&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;font color="#0000FF"&gt;tot_mark NUMBER(4) AS (subj1_mark + subj2_mark + subj3_mark));&lt;/font&gt;&lt;br&gt;&lt;br&gt;Table created.&lt;br&gt;&lt;br&gt;U1&amp;gt; DESCRIBE student_mark&lt;br&gt;&amp;nbsp;Name&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; Null?&amp;nbsp;&amp;nbsp;&amp;nbsp; Type&lt;br&gt;&amp;nbsp;----------------------- -------- ----------------&lt;br&gt;&amp;nbsp;STUD_ID&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; NUMBER(5)&lt;br&gt;&amp;nbsp;STUD_NAME&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; VARCHAR2(15)&lt;br&gt;&amp;nbsp;SUBJ1_MARK&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; NUMBER(3)&lt;br&gt;&amp;nbsp;SUBJ2_MARK&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; NUMBER(3)&lt;br&gt;&amp;nbsp;SUBJ3_MARK&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; NUMBER(3)&lt;br&gt;&amp;nbsp;&lt;font color="#0000FF"&gt;TOT_MARK&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; NUMBER(4)&lt;/font&gt; &lt;br&gt;&lt;br&gt;U1&amp;gt; INSERT&lt;br&gt;&amp;nbsp; 2&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; INTO student_mark(stud_id, stud_name, subj1_mark, subj2_mark, subj3_mark)&lt;br&gt;&amp;nbsp; 3&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; VALUES(10, 'Rose', 75, 45, 66);&lt;br&gt;&lt;br&gt;1 row created.&lt;br&gt;&lt;br&gt;U1&amp;gt; INSERT&lt;br&gt;&amp;nbsp; 2&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; INTO student_mark(stud_id, stud_name, subj1_mark, subj2_mark, subj3_mark)&lt;br&gt;&amp;nbsp; 3&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; VALUES(20, 'Bose', 45, 79, 88);&lt;br&gt;&lt;br&gt;1 row created.&lt;br&gt;&lt;br&gt;U1&amp;gt; SELECT *&lt;br&gt;&amp;nbsp; 2&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; FROM student_mark;&lt;br&gt;&lt;br&gt;STUD_ID&amp;nbsp;&amp;nbsp;&amp;nbsp; STUD_NAME&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; SUBJ1_MARK SUBJ2_MARK SUBJ3_MARK&amp;nbsp;&amp;nbsp; &lt;font color="#0000FF"&gt;TOT_MARK&lt;/font&gt;&lt;br&gt;---------- --------------- ---------- ---------- ---------- ----------&lt;br&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 10 Rose&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 75&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 45&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 66&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 186&lt;br&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 20 Bose&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 45&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 79&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 88&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 212&lt;br&gt;&lt;br&gt;U1&amp;gt; ALTER TABLE student_mark&lt;br&gt;&amp;nbsp; 2&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; ADD &lt;font color="#0000FF"&gt;avg_mark NUMBER(3) AS (((subj1_mark + subj2_mark + subj3_mark) / 3))&lt;/font&gt;;&lt;br&gt;&lt;br&gt;Table altered.&lt;br&gt;&lt;br&gt;U1&amp;gt; DESCRIBE student_mark&lt;br&gt;&amp;nbsp;Name&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; Null?&amp;nbsp;&amp;nbsp;&amp;nbsp; Type&lt;br&gt;&amp;nbsp;----------------------- -------- ----------------&lt;br&gt;&amp;nbsp;STUD_ID&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; NUMBER(5)&lt;br&gt;&amp;nbsp;STUD_NAME&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; VARCHAR2(15)&lt;br&gt;&amp;nbsp;SUBJ1_MARK&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; NUMBER(3)&lt;br&gt;&amp;nbsp;SUBJ2_MARK&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; NUMBER(3)&lt;br&gt;&amp;nbsp;SUBJ3_MARK&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; NUMBER(3)&lt;br&gt;&amp;nbsp;TOT_MARK&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; NUMBER(4)&lt;br&gt;&amp;nbsp;&lt;font color="#0000FF"&gt;AVG_MARK&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; NUMBER(3)&lt;/font&gt;&lt;br&gt;&lt;br&gt;U1&amp;gt; INSERT&lt;br&gt;&amp;nbsp; 2&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; INTO student_mark(stud_id, stud_name, subj1_mark, subj2_mark, subj3_mark)&lt;br&gt;&amp;nbsp; 3&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; VALUES(30, 'Jose', 63, 68, 72);&lt;br&gt;&lt;br&gt;1 row created.&lt;br&gt;&lt;br&gt;U1&amp;gt; SELECT *&lt;br&gt;&amp;nbsp; 2 FROM student_mark;&lt;br&gt;&lt;br&gt;STUD_ID&amp;nbsp;&amp;nbsp;&amp;nbsp; STUD_NAME&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; SUBJ1_MARK SUBJ2_MARK SUBJ3_MARK&amp;nbsp;&amp;nbsp; TOT_MARK&amp;nbsp;&amp;nbsp; &lt;font color="#0000FF"&gt;AVG_MARK&lt;/font&gt;&lt;br&gt;---------- --------------- ---------- ---------- ---------- ---------- ----------&lt;br&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 10 Rose&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 75&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 45&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 66&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 186&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 62&lt;br&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 20 Bose&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 45&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 79&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 88&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 212&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 71&lt;br&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 30 Jose&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 63&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 68&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 72&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 203&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 68&lt;br&gt;&lt;br&gt;U1&amp;gt; ALTER TABLE student_mark DROP COLUMN avg_mark;&lt;br&gt;&lt;br&gt;Table altered.&lt;br&gt;&lt;br&gt;&lt;/font&gt;&lt;b&gt;&lt;u&gt;&lt;font face="Times New Roman"&gt;Attaching a user defined function with a virtual column:-&lt;/font&gt;&lt;/u&gt;&lt;/b&gt;&lt;font size="2" face="Courier"&gt;&lt;br&gt;&lt;br&gt;U1&amp;gt; CREATE OR REPLACE FUNCTION get_avg(stud_no IN NUMBER)&lt;br&gt;&amp;nbsp; 2&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; RETURN NUMBER deterministic IS subj_avg NUMBER(3);&lt;br&gt;&amp;nbsp; 3&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; BEGIN&lt;br&gt;&amp;nbsp; 4&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; SELECT((subj1_mark + subj2_mark + subj3_mark) / 3)&lt;br&gt;&amp;nbsp; 5&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; INTO subj_avg&lt;br&gt;&amp;nbsp; 6&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; FROM student_mark&lt;br&gt;&amp;nbsp; 7&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; WHERE stud_id = stud_no;&lt;br&gt;&amp;nbsp; 8&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; RETURN(subj_avg);&lt;br&gt;&amp;nbsp; 9&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; END;&lt;br&gt;&amp;nbsp;10 /&lt;br&gt;&lt;br&gt;Function created.&lt;br&gt;&lt;br&gt;U1&amp;gt; ALTER TABLE student_mark &lt;br&gt;&amp;nbsp;2&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; ADD &lt;font color="#0000FF"&gt;avrg_mark AS (get_avg(stud_id));&lt;/font&gt;&lt;br&gt;&lt;br&gt;Table altered.&lt;/font&gt;&lt;/p&gt;&lt;p&gt;&lt;font size="2" face="Courier"&gt;U1&amp;gt; DESCRIBE student_mark&lt;br&gt;&amp;nbsp;Name&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; Null?&amp;nbsp;&amp;nbsp;&amp;nbsp; Type&lt;br&gt;&amp;nbsp;----------------------- -------- ----------------&lt;br&gt;&amp;nbsp;STUD_ID&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; NUMBER(5)&lt;br&gt;&amp;nbsp;STUD_NAME&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; VARCHAR2(15)&lt;br&gt;&amp;nbsp;SUBJ1_MARK&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; NUMBER(3)&lt;br&gt;&amp;nbsp;SUBJ2_MARK&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; NUMBER(3)&lt;br&gt;&amp;nbsp;SUBJ3_MARK&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; NUMBER(3)&lt;br&gt;&amp;nbsp;TOT_MARK&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; NUMBER(4)&lt;br&gt;&amp;nbsp;&lt;font color="#0000FF"&gt;AVRG_MARK&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; NUMBER&lt;/font&gt;&lt;br&gt;&lt;br&gt;&lt;br&gt;U1&amp;gt; SELECT * FROM student_mark;&lt;br&gt;&lt;br&gt;STUD_ID&amp;nbsp;&amp;nbsp;&amp;nbsp; STUD_NAME&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; SUBJ1_MARK SUBJ2_MARK SUBJ3_MARK&amp;nbsp;&amp;nbsp; TOT_MARK&amp;nbsp; &lt;font color="#0000FF"&gt;AVRG_MARK&lt;/font&gt;&lt;br&gt;---------- --------------- ---------- ---------- ---------- ---------- ----------&lt;br&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 10 Rose&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 75&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 45&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 66&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 186&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 62&lt;br&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 20 Bose&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 45&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 79&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 88&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 212&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 71&lt;br&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 30 Jose&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 63&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 68&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 72&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 203&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 68&lt;br&gt;&lt;/font&gt;&lt;br&gt;&lt;u&gt;&lt;b&gt;Lets see what happens when we drop the function:-&lt;/b&gt;&lt;/u&gt;&lt;/p&gt;&lt;p&gt;&lt;font size="2" face="Courier"&gt;U1&amp;gt; DROP FUNCTION get_avg;&lt;br&gt;&lt;br&gt;Function dropped.&lt;br&gt;&lt;br&gt;U1&amp;gt; SELECT *&lt;br&gt;&amp;nbsp; 2 FROM student_mark;&lt;br&gt;&lt;font color="#FF0000"&gt;SELECT *&lt;br&gt;*&lt;br&gt;ERROR at line 1:&lt;br&gt;ORA-00904: &amp;quot;U1&amp;quot;.&amp;quot;GET_AVG&amp;quot;: invalid identifier&lt;/font&gt;&lt;br&gt;&lt;br&gt;U1&amp;gt; DESCRIBE student_mark&lt;br&gt;&amp;nbsp;Name&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; Null?&amp;nbsp;&amp;nbsp;&amp;nbsp; Type&lt;br&gt;&amp;nbsp;----------------------- -------- ----------------&lt;br&gt;&amp;nbsp;STUD_ID&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; NUMBER(5)&lt;br&gt;&amp;nbsp;STUD_NAME&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; VARCHAR2(15)&lt;br&gt;&amp;nbsp;SUBJ1_MARK&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; NUMBER(3)&lt;br&gt;&amp;nbsp;SUBJ2_MARK&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; NUMBER(3)&lt;br&gt;&amp;nbsp;SUBJ3_MARK&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; NUMBER(3)&lt;br&gt;&amp;nbsp;TOT_MARK&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; NUMBER(4)&lt;br&gt;&amp;nbsp;&lt;font color="#0000FF"&gt;AVRG_MARK&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; NUMBER&lt;/font&gt;&lt;br&gt;&lt;br&gt;U1&amp;gt; CREATE OR REPLACE FUNCTION get_avg(stud_no IN NUMBER)&lt;br&gt;&amp;nbsp; 2&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; RETURN NUMBER deterministic IS subj_avg NUMBER(3);&lt;br&gt;&amp;nbsp; 3&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; BEGIN&lt;br&gt;&amp;nbsp; 4&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; SELECT((subj1_mark + subj2_mark + subj3_mark) / 3)&lt;br&gt;&amp;nbsp; 5&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; INTO subj_avg&lt;br&gt;&amp;nbsp; 6&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; FROM student_mark&lt;br&gt;&amp;nbsp; 7&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; WHERE stud_id = stud_no;&lt;br&gt;&amp;nbsp; 8&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; RETURN(subj_avg);&lt;br&gt;&amp;nbsp; 9&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; END;&lt;br&gt;&amp;nbsp;10 /&lt;br&gt;&lt;br&gt;Function created.&lt;br&gt;&lt;br&gt;U1&amp;gt; SELECT * FROM student_mark;&lt;br&gt;&lt;br&gt;STUD_ID&amp;nbsp;&amp;nbsp;&amp;nbsp; STUD_NAME&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; SUBJ1_MARK SUBJ2_MARK SUBJ3_MARK&amp;nbsp;&amp;nbsp; TOT_MARK&amp;nbsp; &lt;font color="#0000FF"&gt;AVRG_MARK&lt;/font&gt;&lt;br&gt;---------- --------------- ---------- ---------- ---------- ---------- ----------&lt;br&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 10 Rose&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 75&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 45&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 66&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 186&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 62&lt;br&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 20 Bose&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 45&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 79&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 88&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 212&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 71&lt;br&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 30 Jose&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 63&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 68&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 72&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 203&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 68&lt;/font&gt;&lt;/p&gt;&lt;p&gt;&lt;font face="Times New Roman"&gt;&lt;b&gt;&lt;u&gt;Partition on Virtual Columns&lt;/u&gt;&lt;/b&gt;&lt;br&gt;&lt;br&gt;This enables to partition the table based on the expression or function that were used to create a virtual column. Lets take the below example:-&lt;br&gt;&lt;/font&gt;&lt;font size="2" face="Courier"&gt;&lt;br&gt;&lt;br&gt;U1&amp;gt; CREATE TABLE phone_cust (&lt;br&gt;&amp;nbsp; 2&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; cust_id NUMBER(5),&lt;br&gt;&amp;nbsp; 3&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; name VARCHAR2(15),&lt;br&gt;&amp;nbsp; 4&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; street VARCHAR2(15),&lt;br&gt;&amp;nbsp; 5&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; city VARCHAR2(10),&lt;br&gt;&amp;nbsp; 6&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; zip NUMBER(5),&lt;br&gt;&amp;nbsp; 7&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; phone NUMBER(10),&lt;br&gt;&amp;nbsp; 8&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;font color="#0000FF"&gt;area_code AS (SUBSTR(phone,1,3)||'-'||SUBSTR(phone,4,3)));&lt;/font&gt;&lt;br&gt;&lt;br&gt;Table created.&lt;br&gt;&lt;br&gt;U1&amp;gt; DESCRIBE phone_cust&lt;br&gt;&amp;nbsp;Name&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; Null? Type&lt;br&gt;&amp;nbsp;----------------------- -------- ----------------&lt;br&gt;&amp;nbsp;CUST_ID&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; NUMBER(5)&lt;br&gt;&amp;nbsp;NAME&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; VARCHAR2(15)&lt;br&gt;&amp;nbsp;STREET&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; VARCHAR2(15)&lt;br&gt;&amp;nbsp;CITY&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; VARCHAR2(10)&lt;br&gt;&amp;nbsp;ZIP&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; NUMBER(5)&lt;br&gt;&amp;nbsp;PHONE&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; NUMBER(10)&lt;br&gt;&amp;nbsp;&lt;font color="#0000FF"&gt;AREA_CODE&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; VARCHAR2(7)&lt;/font&gt;&lt;br&gt;&lt;br&gt;U1&amp;gt; ALTER TABLE phone_cust &lt;font color="#0000FF"&gt;modify area_code AS (SUBSTR(phone, 1, 3));&lt;/font&gt;&lt;br&gt;&lt;br&gt;Table altered.&lt;br&gt;&lt;br&gt;U1&amp;gt; DESCRIBE phone_cust&lt;br&gt;&amp;nbsp;Name&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; Null? Type&lt;br&gt;&amp;nbsp;----------------------- -------- ----------------&lt;br&gt;&amp;nbsp;CUST_ID&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; NUMBER(5)&lt;br&gt;&amp;nbsp;NAME&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; VARCHAR2(15)&lt;br&gt;&amp;nbsp;STREET&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; VARCHAR2(15)&lt;br&gt;&amp;nbsp;CITY&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; VARCHAR2(10)&lt;br&gt;&amp;nbsp;ZIP&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; NUMBER(5)&lt;br&gt;&amp;nbsp;PHONE&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; NUMBER(10)&lt;br&gt;&amp;nbsp;&lt;font color="#0000FF"&gt;AREA_CODE&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; VARCHAR2(3)&lt;/font&gt;&lt;/font&gt;&lt;/p&gt;&lt;p&gt;&lt;font size="2" face="Courier"&gt;U1&amp;gt; SELECT * FROM phone_cust;&lt;br&gt;&lt;br&gt;&amp;nbsp;&amp;nbsp; CUST_ID NAME&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; STREET&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; CITY&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; ZIP&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; PHONE ARE&lt;br&gt;---------- --------------- --------------- ---------- ---------- ---------- ---&lt;br&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 10 John&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 660 Boas Street Harrisburg&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 17102 7171234567 717&lt;br&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 20 Raju&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 123 Mkt Street&amp;nbsp; Lemoyne&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 17011 7174567891 717&lt;br&gt;&lt;br&gt;U1&amp;gt; DROP TABLE phone_cust;&lt;br&gt;&lt;br&gt;Table dropped.&lt;br&gt;&lt;br&gt;U1&amp;gt; CREATE TABLE phone_cust(&lt;br&gt;&amp;nbsp; 2&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; cust_id NUMBER(5),&lt;br&gt;&amp;nbsp; 3&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; name VARCHAR2(15),&lt;br&gt;&amp;nbsp; 4&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; street VARCHAR2(15),&lt;br&gt;&amp;nbsp; 5&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; city VARCHAR2(10),&lt;br&gt;&amp;nbsp; 6&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; zip NUMBER(5),&lt;br&gt;&amp;nbsp; 7&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; phone NUMBER(10),&lt;br&gt;&amp;nbsp; 8&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;font color="#0000FF"&gt;area_code AS (SUBSTR(phone, 1, 3)))&lt;/font&gt;&lt;br&gt;&amp;nbsp; 9&amp;nbsp;&amp;nbsp; &lt;font color="#0000FF"&gt;PARTITION BY range(area_code)(&lt;/font&gt;&lt;br&gt;&amp;nbsp;10&amp;nbsp;&amp;nbsp; &lt;font color="#0000FF"&gt;PARTITION p1 VALUES less than(500) TABLESPACE encr_tbs_1,&lt;/font&gt;&lt;br&gt;&amp;nbsp;11&amp;nbsp;&amp;nbsp; &lt;font color="#0000FF"&gt;PARTITION p2 VALUES less than(999) TABLESPACE encr_tbs_2)&lt;/font&gt;&lt;br&gt;&amp;nbsp;12&amp;nbsp;&amp;nbsp; enable ROW movement;&lt;br&gt;&lt;br&gt;Table created.&lt;br&gt;&lt;br&gt;U1&amp;gt; INSERT&lt;br&gt;&amp;nbsp; 2&amp;nbsp; INTO phone_cust(cust_id, name, street, city, zip, phone)&lt;br&gt;&amp;nbsp; 3&amp;nbsp; VALUES(10, 'Chel', '456 Walnut St', 'Philly', '19139', 2154567891);&lt;br&gt;&lt;br&gt;1 row created.&lt;br&gt;&lt;br&gt;U1&amp;gt; INSERT&lt;br&gt;&amp;nbsp; 2&amp;nbsp; INTO phone_cust(cust_id, name, street, city, zip, phone)&lt;br&gt;&amp;nbsp; 3&amp;nbsp; VALUES(20, 'John', '660 Boas Street', 'Harrisburg', '17102', 7171234567);&lt;br&gt;&lt;br&gt;1 row created.&lt;br&gt;&lt;br&gt;U1&amp;gt; INSERT&lt;br&gt;&amp;nbsp; 2&amp;nbsp; INTO phone_cust(cust_id, name, street, city, zip, phone)&lt;br&gt;&amp;nbsp; 3&amp;nbsp; VALUES(30, 'Raju', '123 Mkt Street', 'Lemoyne', '17011', 7174567891);&lt;br&gt;&lt;br&gt;1 row created.&lt;br&gt;&lt;br&gt;U1&amp;gt; INSERT&lt;br&gt;&amp;nbsp; 2&amp;nbsp; INTO phone_cust(cust_id, name, street, city, zip, phone)&lt;br&gt;&amp;nbsp; 3&amp;nbsp; VALUES(40, 'Appu', '3 Bridge Trc', 'Woodbridge', '07085', 7324567891);&lt;br&gt;&lt;br&gt;1 row created.&lt;/font&gt;&lt;/p&gt;&lt;p&gt;&lt;font face="Courier" size="2"&gt;U1&amp;gt; INSERT&lt;br&gt;&amp;nbsp; 2 INTO phone_cust(cust_id, name, street, city, zip, phone)&lt;br&gt;&amp;nbsp; 3 VALUES(50, 'Babu', '5 1st Ave', 'Manhattan', '10037', 2124567891);&lt;br&gt;&lt;br&gt;1 row created.&lt;br&gt;&lt;br&gt;U1&amp;gt; INSERT&lt;br&gt;&amp;nbsp; 2 INTO phone_cust(cust_id, name, street, city, zip, phone)&lt;br&gt;&amp;nbsp; 3 VALUES(60, 'Rangasamy', '12 Circle Dr', 'Redlands', '92415', 9094567891);&lt;br&gt;&lt;br&gt;1 row created.&lt;/font&gt;&lt;/p&gt;&lt;p&gt;&lt;font face="Courier" size="2"&gt;U1&amp;gt; commit;&lt;br&gt;&lt;br&gt;Commit complete.&lt;/font&gt;&lt;/p&gt;&lt;p&gt;&lt;font size="2" face="Courier"&gt;U1&amp;gt; DESCRIBE phone_cust&lt;br&gt;&amp;nbsp;Name&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; Null? Type&lt;br&gt;&amp;nbsp;----------------------- -------- ----------------&lt;br&gt;&amp;nbsp;CUST_ID&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; NUMBER(5)&lt;br&gt;&amp;nbsp;NAME&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; VARCHAR2(15)&lt;br&gt;&amp;nbsp;STREET&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; VARCHAR2(15)&lt;br&gt;&amp;nbsp;CITY&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; VARCHAR2(10)&lt;br&gt;&amp;nbsp;ZIP&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; NUMBER(5)&lt;br&gt;&amp;nbsp;PHONE&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; NUMBER(10)&lt;br&gt;&amp;nbsp;&lt;font color="#0000FF"&gt;AREA_CODE&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; VARCHAR2(3)&lt;/font&gt;&lt;/font&gt;&lt;/p&gt;&lt;p&gt;&lt;font size="2" face="Courier"&gt;U1&amp;gt; SELECT * FROM phone_cust;&lt;br&gt;&lt;br&gt;&amp;nbsp;&amp;nbsp; CUST_ID NAME&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; STREET&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; CITY&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; ZIP&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; PHONE ARE&lt;br&gt;---------- --------------- --------------- ---------- ---------- ---------- ---&lt;br&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 10 Chel&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 456 Walnut St&amp;nbsp;&amp;nbsp; Philly&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 19139 2154567891 215&lt;br&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 50 Babu&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 5 1st Ave&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; Manhattan&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 10037 2124567891 212&lt;br&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 20 John&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 660 Boas Street Harrisburg&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 17102 7171234567 717&lt;br&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 30 Raju&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 123 Mkt Street&amp;nbsp; Lemoyne&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 17011 7174567891 717&lt;br&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 40 Appu&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 3 Bridge Trc&amp;nbsp;&amp;nbsp;&amp;nbsp; Woodbridge&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 7085 7324567891 732&lt;br&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 60 Rangasamy&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 12 Circle Dr&amp;nbsp;&amp;nbsp;&amp;nbsp; Redlands&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 92415 9094567891 909&lt;/font&gt;&lt;/p&gt;&lt;p&gt;&lt;font size="2" face="Courier"&gt;U1&amp;gt; SELECT * FROM phone_cust PARTITION(p1);&lt;/font&gt;&lt;/p&gt;&lt;p&gt;&lt;font size="2" face="Courier"&gt;&amp;nbsp;&amp;nbsp; CUST_ID NAME&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; STREET&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; CITY&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; ZIP&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; PHONE ARE&lt;br&gt;---------- --------------- --------------- ---------- ---------- ---------- ---&lt;br&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 10 Chel&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 456 Walnut St&amp;nbsp;&amp;nbsp; Philly&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 19139 2154567891 215&lt;br&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 50 Babu&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 5 1st Ave&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; Manhattan&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 10037 2124567891 212&lt;/font&gt;&lt;/p&gt;&lt;p&gt;&lt;font size="2" face="Courier"&gt;U1&amp;gt; SELECT * FROM phone_cust PARTITION(p2);&lt;br&gt;&lt;br&gt;&amp;nbsp;&amp;nbsp; CUST_ID NAME&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; STREET&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; CITY&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; ZIP&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; PHONE ARE&lt;br&gt;---------- --------------- --------------- ---------- ---------- ---------- ---&lt;br&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 20 John&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 660 Boas Street Harrisburg&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 17102 7171234567 717&lt;br&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 30 Raju&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 123 Mkt Street&amp;nbsp; Lemoyne&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 17011 7174567891 717&lt;br&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 40 Appu&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 3 Bridge Trc&amp;nbsp;&amp;nbsp;&amp;nbsp; Woodbridge&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 7085 7324567891 732&lt;br&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 60 Rangasamy&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 12 Circle Dr&amp;nbsp;&amp;nbsp;&amp;nbsp; Redlands&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 92415 9094567891 909&lt;br&gt;&lt;br&gt;U1&amp;gt; UPDATE phone_cust SET &lt;font color="#0000FF"&gt;phone = 2121234567&lt;/font&gt; WHERE cust_id = 20;&lt;br&gt;&lt;br&gt;1 row updated.&lt;br&gt;&lt;br&gt;U1&amp;gt; commit;&lt;br&gt;&lt;br&gt;Commit complete.&lt;/font&gt;&lt;/p&gt;&lt;p&gt;&lt;font face="Courier" size="2"&gt;U1&amp;gt; SELECT * FROM phone_cust;&lt;br&gt;&lt;br&gt;&amp;nbsp;&amp;nbsp; CUST_ID NAME&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; STREET&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; CITY&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; ZIP&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; PHONE ARE&lt;br&gt;---------- --------------- --------------- ---------- ---------- ---------- ---&lt;br&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 10 Chel&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 456 Walnut St&amp;nbsp;&amp;nbsp; Philly&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 19139 2154567891 215&lt;br&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 50 Babu&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 5 1st Ave&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; Manhattan&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 10037 2124567891 212&lt;br&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 20 John&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 660 Boas Street Harrisburg&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 17102 &lt;font color="#0000FF"&gt;2121234567 212&lt;/font&gt;&lt;br&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 30 Raju&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 123 Mkt Street&amp;nbsp; Lemoyne&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 17011 7174567891 717&lt;br&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 40 Appu&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 3 Bridge Trc&amp;nbsp;&amp;nbsp;&amp;nbsp; Woodbridge&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 7085 7324567891 732&lt;br&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 60 Rangasamy&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 12 Circle Dr&amp;nbsp;&amp;nbsp;&amp;nbsp; Redlands&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 92415 9094567891 909&lt;br&gt;&lt;br&gt;6 rows selected.&lt;br&gt;&lt;br&gt;U1&amp;gt; SELECT * FROM phone_cust PARTITION(p1);&lt;/font&gt;&lt;/p&gt;&lt;p&gt;&lt;font size="2" face="Courier"&gt;&amp;nbsp;&amp;nbsp; CUST_ID NAME&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; STREET&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; CITY&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; ZIP&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; PHONE ARE&lt;br&gt;---------- --------------- --------------- ---------- ---------- ---------- ---&lt;br&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 10 Chel&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 456 Walnut St&amp;nbsp;&amp;nbsp; Philly&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 19139 2154567891 215&lt;br&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 50 Babu&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 5 1st Ave&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; Manhattan&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 10037 2124567891 212&lt;br&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 20 John&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 660 Boas Street Harrisburg&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 17102 &lt;font color="#0000FF"&gt;2121234567 212&lt;/font&gt;&lt;br&gt;&lt;br&gt;U1&amp;gt; SELECT * FROM phone_cust PARTITION(p2);&lt;br&gt;&lt;br&gt;&amp;nbsp;&amp;nbsp; CUST_ID NAME&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; STREET&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; CITY&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; ZIP&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; PHONE ARE&lt;br&gt;---------- --------------- --------------- ---------- ---------- ---------- ---&lt;br&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 30 Raju&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 123 Mkt Street&amp;nbsp; Lemoyne&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 17011 7174567891 717&lt;br&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 40 Appu&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 3 Bridge Trc&amp;nbsp;&amp;nbsp;&amp;nbsp; Woodbridge&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 7085 7324567891 732&lt;br&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 60 Rangasamy&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 12 Circle Dr&amp;nbsp;&amp;nbsp;&amp;nbsp; Redlands&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 92415 9094567891 909&lt;br&gt;&amp;nbsp;&lt;/font&gt;&lt;/p&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/2639035620819724618-2437355742231003565?l=babumani.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://babumani.blogspot.com/feeds/2437355742231003565/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=2639035620819724618&amp;postID=2437355742231003565' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/2639035620819724618/posts/default/2437355742231003565'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/2639035620819724618/posts/default/2437355742231003565'/><link rel='alternate' type='text/html' href='http://babumani.blogspot.com/2007/12/new-features-in-oracle-11g-database_21.html' title='New features in Oracle 11g Database - Virtual Columns'/><author><name>babumani</name><uri>http://www.blogger.com/profile/08434916381222486044</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-2639035620819724618.post-745288157915776016</id><published>2007-12-18T14:47:00.001-05:00</published><updated>2008-01-03T11:09:15.854-05:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='New features in Oracle 11g Database'/><title type='text'>New features in Oracle 11g Database</title><content type='html'>&lt;p&gt;&lt;u&gt;&lt;font size="4"&gt;What's new in an Oracle 11g Database?&lt;/font&gt;&lt;/u&gt;&lt;br&gt;&lt;br&gt;&lt;u&gt;&lt;font size="4"&gt;1. Lets check some INIT parameters first:-&lt;/font&gt;&lt;/u&gt;&lt;br&gt;&lt;br&gt;&lt;font face="Courier" color="#0000FF"&gt;&lt;font size="2"&gt;MEMORY_TARGET:&lt;/font&gt; &lt;/font&gt;Specifies the Oracle system-wide usable memory. The database tunes memory to the MEMORY_TARGET value, increasing or decreasing SGA and PGA as needed.&lt;br&gt;&lt;br&gt;&lt;font face="Courier" color="#0000FF" size="2"&gt;MEMORY_MAX_TARGET: &lt;/font&gt;Maximum value that MEMORY_TARGET initialization parameter can use.&lt;br&gt;&lt;br&gt;&lt;font face="Courier" color="#0000FF" size="2"&gt;DIAGNOSTIC_DEST: &lt;/font&gt;Diagnostics for each database instance are located in this dedicated directory&lt;br&gt;&lt;/p&gt;&lt;p&gt;&lt;u&gt;&lt;font size="4"&gt;2. Password is now Case Sensitive.&lt;/font&gt;&lt;/u&gt;&lt;/p&gt;&lt;p&gt;&lt;font face="Courier" size="2"&gt;&lt;font color="#0000FF"&gt;SQL&amp;gt; create user u1 identified by U1 default tablespace users quota 50m on users;&lt;/font&gt;&lt;br&gt;&lt;br&gt;User created.&lt;br&gt;&lt;br&gt;&lt;font color="#0000FF"&gt;SQL&amp;gt; grant create session, create table, create procedure, create view to u1;&lt;/font&gt;&lt;br&gt;&lt;br&gt;Grant succeeded.&lt;br&gt;&lt;br&gt;&lt;font color="#0000FF"&gt;SQL&amp;gt; create user u2 identified by u2 default tablespace users quota 50m on users;&lt;br&gt;&lt;/font&gt;&lt;br&gt;User created.&lt;br&gt;&lt;br&gt;&lt;font color="#0000FF"&gt;SQL&amp;gt; grant create session, create table, create procedure, create view to u2;&lt;/font&gt;&lt;br&gt;&lt;br&gt;Grant succeeded.&lt;br&gt;&lt;br&gt;&lt;font color="#0000FF"&gt;SQL&amp;gt; connect u1/&lt;/font&gt;&lt;font color="#800000"&gt;u1&lt;/font&gt;&lt;font color="#0000FF"&gt;&lt;br&gt;&lt;/font&gt;&lt;font color="#800000"&gt;ERROR:&lt;br&gt;ORA-01017: invalid username/password; logon denied&lt;br&gt;&lt;br&gt;&lt;br&gt;Warning: You are no longer connected to ORACLE.&lt;br&gt;&lt;/font&gt;&lt;br&gt;&lt;font color="#0000FF"&gt;SQL&amp;gt; connect u1/U1&lt;br&gt;&lt;/font&gt;Connected.&lt;br&gt;&lt;br&gt;&lt;font color="#0000FF"&gt;SQL&amp;gt; connect u2/&lt;/font&gt;&lt;font color="#800000"&gt;U2&lt;/font&gt;&lt;font color="#0000FF"&gt;&lt;br&gt;&lt;/font&gt;&lt;font color="#800000"&gt;ERROR:&lt;br&gt;ORA-01017: invalid username/password; logon denied&lt;br&gt;&lt;br&gt;&lt;br&gt;Warning: You are no longer connected to ORACLE.&lt;br&gt;&lt;/font&gt;&lt;font color="#0000FF"&gt;SQL&amp;gt; connect u2/u2&lt;br&gt;&lt;/font&gt;Connected.&lt;/font&gt;&lt;br&gt;&lt;/p&gt;&lt;p&gt;&lt;u&gt;&lt;font size="4"&gt;3. READ-ONLY Table&lt;/font&gt;&lt;/u&gt;&lt;/p&gt;&lt;p&gt;&lt;font size="2" face="Courier"&gt;&lt;font color="#0000FF"&gt;SQL&amp;gt; connect u1/U1&lt;br&gt;&lt;/font&gt;Connected.&lt;br&gt;&lt;br&gt;&lt;font color="#0000FF"&gt;SQL&amp;gt; create table t1 (a number) ;&lt;br&gt;&lt;/font&gt;&lt;br&gt;Table created.&lt;br&gt;&lt;br&gt;&lt;font color="#0000FF"&gt;SQL&amp;gt; begin&lt;br&gt;&amp;nbsp;&amp;nbsp; 2 for x in 1..20 loop&lt;br&gt;&amp;nbsp;&amp;nbsp; 3 insert into t1 values (x);&lt;br&gt;&amp;nbsp;&amp;nbsp; 4 end loop;&lt;br&gt;&amp;nbsp;&amp;nbsp; 5 commit;&lt;br&gt;&amp;nbsp;&amp;nbsp; 6 end;&lt;br&gt;&amp;nbsp;&amp;nbsp; 7 /&lt;/font&gt;&lt;br&gt;&lt;br&gt;PL/SQL procedure successfully completed.&lt;br&gt;&lt;br&gt;&lt;font color="#0000FF"&gt;SQL&amp;gt; select READ_ONLY from user_tables where table_name='T1';&lt;br&gt;&lt;/font&gt;&lt;br&gt;REA&lt;br&gt;---&lt;br&gt;NO&lt;br&gt;&lt;br&gt;1 row selected.&lt;br&gt;&lt;br&gt;&lt;font color="#0000FF"&gt;SQL&amp;gt; alter table t1 &lt;b&gt;READ ONLY&lt;/b&gt;;&lt;br&gt;&lt;/font&gt;&lt;br&gt;Table altered.&lt;br&gt;&lt;br&gt;&lt;font color="#0000FF"&gt;SQL&amp;gt; select READ_ONLY from user_tables where table_name='T1';&lt;br&gt;&lt;/font&gt;&lt;br&gt;REA&lt;br&gt;---&lt;br&gt;YES&lt;br&gt;&lt;br&gt;1 row selected.&lt;br&gt;&lt;br&gt;&lt;font color="#800000"&gt;SQL&amp;gt; insert into t1 values (99);&lt;br&gt;insert into t1 values (99)&lt;br&gt;*&lt;br&gt;ERROR at line 1:&lt;br&gt;ORA-12081: update operation not allowed on table &amp;quot;U1&amp;quot;.&amp;quot;T1&amp;quot;&lt;/font&gt;&lt;br&gt;&lt;br&gt;&lt;font color="#0000FF"&gt;SQL&amp;gt; alter table t1 &lt;b&gt;READ WRITE&lt;/b&gt;;&lt;/font&gt;&lt;br&gt;&lt;br&gt;Table altered.&lt;br&gt;&lt;br&gt;&lt;font color="#0000FF"&gt;SQL&amp;gt; insert into t1 values (99);&lt;/font&gt;&lt;br&gt;&lt;br&gt;1 row created.&lt;br&gt;&lt;br&gt;&lt;font color="#0000FF"&gt;SQL&amp;gt; commit;&lt;/font&gt;&lt;br&gt;&lt;br&gt;Commit complete.&lt;/font&gt;&lt;/p&gt;&lt;p&gt;&lt;u&gt;&lt;b&gt;&lt;font size="4"&gt;4. Tablespace Encryption&lt;/font&gt;&lt;/b&gt;&lt;/u&gt;&lt;/p&gt;&lt;p&gt;As we all know, in an Oracle database all the data are finally stored in the datafiles, what if the datafiles containing sensitive data were stolen? there are always chances that these datafiles can either be disseminated or attached to a different database and the sensitive data can be exposed or revealed.&lt;br&gt;&lt;br&gt;In order to overcome this, Oracle introduced Transparent Data Encryption (TDE), in Oracle 10g version, a column of a table can be encrypted based on a (master) key, and that key is not stored within the same database, but externally in an Oracle wallet.&lt;br&gt;&lt;br&gt;Now in Oracle 11g, you can encrypt an entire tablespace, i.e., a whole table or all the tables in an encrypted tablespace using tablespace encryption.&lt;br&gt;&lt;br&gt;Tablespace encryption is supported on all data stored in an encrypted tablespace including internal large objects (LOBs) such as BLOBs and CLOBs. But data stored externally, like BFILE data is not encrypted.&lt;br&gt;&lt;br&gt;If a table is created with BFILE column in an encrypted tablespace, then this BFILE column will not be encrypted, but the rest of the table will be encrypted.&lt;br&gt;&lt;br&gt;Configure wallet location by setting the ENCRYPTION_WALLET_LOCATION parameter in sqlnet.ora:-&lt;br&gt;&lt;br&gt;&lt;font face="Courier" size="2"&gt;ENCRYPTION_WALLET_LOCATION=(SOURCE=(METHOD=FILE)(METHOD_DATA=(DIRECTORY=C:\oracle\ora11\admin\ORA11\wallet)))&lt;/font&gt;&lt;br&gt;&lt;br&gt;&lt;u&gt;&lt;b&gt;Tablespace Level&lt;/b&gt;&lt;/u&gt;&lt;br&gt;ENCRYPTION algorithms supported in Oracle11g are &lt;font color="#0000FF"&gt;3DES168, AES128, AES192 &lt;/font&gt;and&lt;font color="#0000FF"&gt; AES256&lt;/font&gt;&lt;br&gt;&lt;br&gt;&lt;font face="Courier" size="2"&gt;SYS&amp;gt; ALTER SYSTEM SET ENCRYPTION KEY IDENTIFIED BY &amp;quot;b1b1&amp;quot;;&lt;br&gt;&lt;br&gt;System altered.&lt;/font&gt;&lt;/p&gt;&lt;p&gt;&lt;font face="Courier" size="2"&gt;SYS&amp;gt; CREATE TABLESPACE ENCR_TBS_1&lt;br&gt;&amp;nbsp;&amp;nbsp; 2&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; DATAFILE 'C:\ORACLE\ORADATA\ORA11\ENCR_TBS_01.DBF' SIZE 20M &lt;br&gt;&amp;nbsp;&amp;nbsp; 3&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; AUTOEXTEND ON NEXT 1M MAXSIZE 128M&lt;br&gt;&amp;nbsp;&amp;nbsp; 4&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; EXTENT MANAGEMENT LOCAL UNIFORM SIZE 1M&lt;br&gt;&amp;nbsp;&amp;nbsp; 5&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; SEGMENT SPACE MANAGEMENT AUTO&lt;br&gt;&amp;nbsp;&amp;nbsp; 6 &lt;font color="#0000FF"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; ENCRYPTION&lt;/font&gt;&lt;br&gt;&amp;nbsp;&amp;nbsp; 7 &lt;font color="#0000FF"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; DEFAULT STORAGE(ENCRYPT)&lt;/font&gt;;&lt;br&gt;&lt;br&gt;Tablespace created.&lt;br&gt;&lt;br&gt;SYS&amp;gt; CREATE TABLESPACE ENCR_TBS_2&lt;br&gt;&amp;nbsp;&amp;nbsp; 2&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; DATAFILE 'C:\ORACLE\ORADATA\ORA11\ENCR_TBS_02.DBF' SIZE 20M&lt;br&gt;&amp;nbsp;&amp;nbsp; 3&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; AUTOEXTEND ON NEXT 1M MAXSIZE 128M&lt;br&gt;&amp;nbsp;&amp;nbsp; 4&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; EXTENT MANAGEMENT LOCAL UNIFORM SIZE 1M&lt;br&gt;&amp;nbsp;&amp;nbsp; 5&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; SEGMENT SPACE MANAGEMENT AUTO&lt;br&gt;&amp;nbsp;&amp;nbsp; 6 &lt;font color="#0000FF"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; ENCRYPTION USING 'AES256'&lt;/font&gt;&lt;br&gt;&amp;nbsp;&amp;nbsp; 7 &lt;font color="#0000FF"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; DEFAULT STORAGE(ENCRYPT);&lt;/font&gt;&lt;br&gt;&lt;br&gt;Tablespace created.&lt;/font&gt;&lt;/p&gt;&lt;p&gt;&lt;font face="Courier" size="2"&gt;SQL&amp;gt; select * from V$ENCRYPTED_TABLESPACES;&lt;br&gt;&lt;br&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; TS# ENCRYPT ENC&lt;br&gt;---------- ------- ---&lt;br&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 5 AES128&amp;nbsp; YES&lt;br&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 6 AES256&amp;nbsp; YES&lt;/font&gt;&lt;/p&gt;&lt;p&gt;&lt;font face="Courier" size="2"&gt;SYS&amp;gt; select tablespace_name,encrypted from dba_tablespaces;&lt;br&gt;&lt;br&gt;TABLESPACE_NAME&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; ENC&lt;br&gt;----------------&amp;nbsp;&amp;nbsp;&amp;nbsp; ---&lt;br&gt;SYSTEM&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; NO&lt;br&gt;SYSAUX&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; NO&lt;br&gt;UNDOTBS1&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; NO&lt;br&gt;TEMP&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; NO&lt;br&gt;USERS&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; NO&lt;br&gt;TEST_TS1&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; NO&lt;br&gt;ENCR_TBS_1&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; YES&lt;br&gt;ENCR_TBS_2&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; YES&lt;br&gt;&lt;br&gt;8 rows selected.&lt;/font&gt;&lt;/p&gt;&lt;p&gt;&lt;font face="Courier" size="2"&gt;SQL&amp;gt; desc DBA_ENCRYPTED_COLUMNS&lt;br&gt;Name&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; Null?&amp;nbsp;&amp;nbsp;&amp;nbsp; Type&lt;br&gt;------------------- -------- -------------&lt;br&gt;OWNER NOT&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; NULL&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; VARCHAR2(30)&lt;br&gt;TABLE_NAME&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; NOT NULL VARCHAR2(30)&lt;br&gt;COLUMN_NAME&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; NOT NULL VARCHAR2(30)&lt;br&gt;ENCRYPTION_ALG&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; VARCHAR2(29)&lt;br&gt;SALT&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; VARCHAR2(3)&lt;/font&gt;&lt;/p&gt;&lt;p&gt;&lt;font face="Courier" size="2"&gt;SQL&amp;gt; col owner for a5&lt;br&gt;SQL&amp;gt; col table_name for a10&lt;br&gt;SQL&amp;gt; col column_name for a14&lt;br&gt;SQL&amp;gt; select * from DBA_ENCRYPTED_COLUMNS;&lt;br&gt;&lt;br&gt;OWNER TABLE_NAME COLUMN_NAME&amp;nbsp;&amp;nbsp;&amp;nbsp; ENCRYPTION_ALG&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; SAL&lt;br&gt;----- ---------- -------------- ----------------------------- ---&lt;br&gt;U1&amp;nbsp;&amp;nbsp;&amp;nbsp; CUST&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; CRED_CARD_NUM&amp;nbsp; AES 192 bits key&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; NO&lt;br&gt;U1&amp;nbsp;&amp;nbsp;&amp;nbsp; CUST_2&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; CRED_CARD_NUM&amp;nbsp; 3 Key Triple DES 168 bits key NO&lt;/font&gt;&lt;/p&gt;&lt;p&gt;&lt;font face="Courier" size="2"&gt;&lt;br&gt;SYS&amp;gt; CREATE TABLE CUST_1(&lt;br&gt;&amp;nbsp;&amp;nbsp; 2&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; cust_id VARCHAR2(4),&lt;br&gt;&amp;nbsp;&amp;nbsp; 3&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; cust_name VARCHAR2(10),&lt;br&gt;&amp;nbsp;&amp;nbsp; 4&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; cred_card_num NUMBER(16))&lt;br&gt;&amp;nbsp;&amp;nbsp; 5&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; TABLESPACE ENCR_TBS_1;&lt;br&gt;&lt;br&gt;Table created.&lt;br&gt;&lt;/font&gt;&lt;br&gt;Above table is created in an encrypted tablespace, hence all data in this table is stored encrypted on the disk.&lt;br&gt;&lt;br&gt;&lt;font face="Courier" size="2"&gt;SYS&amp;gt; insert into CUST_1 values (30,'Kate',1234567812345678);&lt;br&gt;&lt;br&gt;1 row created.&lt;br&gt;&lt;br&gt;SYS&amp;gt; insert into CUST_1 values (40,'Deep',5678123456781234);&lt;br&gt;&lt;br&gt;1 row created.&lt;br&gt;&lt;br&gt;SYS&amp;gt; commit;&lt;br&gt;&lt;br&gt;Commit complete.&lt;br&gt;&lt;br&gt;SYS&amp;gt; col CRED_CARD_NUM for 9999999999999999&lt;br&gt;SYS&amp;gt; select * from CUST_1;&lt;br&gt;&lt;br&gt;CUST CUST_NAME&amp;nbsp; CRED_CARD_NUM&lt;br&gt;---- ---------- -----------------&lt;br&gt;30&amp;nbsp;&amp;nbsp; Kate&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 1234567812345678&lt;br&gt;40&amp;nbsp;&amp;nbsp; Deep&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 5678123456781234&lt;br&gt;&lt;br&gt;SYS&amp;gt; alter system set encryption wallet close;&lt;br&gt;&lt;br&gt;System altered.&lt;br&gt;&lt;br&gt;C:\&amp;gt;cd C:\oracle\ora11\admin\ORA11\wallet&lt;br&gt;&lt;br&gt;C:\oracle\ora11\admin\ORA11\wallet&amp;gt;C:\oracle\ora11\BIN\orapki wallet export -wallet . -dn &amp;quot;CN=oracle&amp;quot; -request oracle.req -pwd &amp;quot;b1b1&amp;quot;&lt;br&gt;&lt;/font&gt;&lt;br&gt;&lt;u&gt;&lt;b&gt;Table Level&lt;/b&gt;&lt;/u&gt;&lt;br&gt;&lt;font face="Courier" size="2"&gt;SQL&amp;gt; ALTER SYSTEM SET ENCRYPTION KEY IDENTIFIED BY &amp;quot;b1b1&amp;quot;;&lt;br&gt;&lt;br&gt;System altered.&lt;br&gt;&lt;br&gt;SQL&amp;gt; ALTER SYSTEM SET ENCRYPTION WALLET OPEN IDENTIFIED BY &amp;quot;b1b1&amp;quot;;&lt;br&gt;ALTER SYSTEM SET ENCRYPTION WALLET OPEN IDENTIFIED BY &amp;quot;b1b1&amp;quot;&lt;br&gt;*&lt;br&gt;ERROR at line 1:&lt;br&gt;ORA-28354: wallet already open&lt;br&gt;&lt;br&gt;A wallet is automatically opened when you set or reset the master encryption key. Once you set the encryption, you will be see a file created in the above DIRECTORY location. &lt;br&gt;&lt;br&gt;SQL&amp;gt; ALTER SYSTEM SET ENCRYPTION WALLET CLOSE ;&lt;br&gt;&lt;br&gt;System altered.&lt;br&gt;&lt;br&gt;SQL&amp;gt; ALTER SYSTEM SET ENCRYPTION WALLET OPEN IDENTIFIED BY &amp;quot;b1b1&amp;quot;;&lt;br&gt;&lt;br&gt;System altered.&lt;/font&gt;&lt;br&gt;&lt;br&gt;&lt;u&gt;&lt;b&gt;Creating a table with an encrypted column using the default AES192 algorithm &lt;/b&gt;&lt;/u&gt;&lt;br&gt;&lt;br&gt;&lt;font face="Courier" size="2"&gt;SQL&amp;gt; conn u1/u1&lt;br&gt;Connected.&lt;br&gt;SQL&amp;gt; create table CUST (&lt;br&gt;&amp;nbsp;&amp;nbsp; 2&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; cust_id VARCHAR2(4),&lt;br&gt;&amp;nbsp;&amp;nbsp; 3&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; cust_name VARCHAR2(10),&lt;br&gt;&amp;nbsp;&amp;nbsp; 4&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; cred_card_num NUMBER(16) &lt;font color="#0000FF"&gt;ENCRYPT&lt;/font&gt;&lt;br&gt;&amp;nbsp;&amp;nbsp; 5&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; );&lt;br&gt;&lt;br&gt;Table created.&lt;br&gt;&lt;br&gt;U1&amp;gt; desc cust&lt;br&gt;Name&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; Null?&amp;nbsp;&amp;nbsp;&amp;nbsp; Type&lt;br&gt;------------------- -------- --------------------&lt;br&gt;CUST_ID&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; VARCHAR2(4)&lt;br&gt;CUST_NAME&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; VARCHAR2(10)&lt;br&gt;CRED_CARD_NUM&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; NUMBER(16) ENCRYPT&lt;br&gt;&lt;br&gt;U1&amp;gt; insert into CUST values (10,'Tom',1234567812345678);&lt;br&gt;&lt;br&gt;1 row created.&lt;br&gt;&lt;br&gt;U1&amp;gt; insert into CUST values (20,'Sam',5678123456781234);&lt;br&gt;&lt;br&gt;1 row created.&lt;br&gt;&lt;br&gt;U1&amp;gt; commit;&lt;br&gt;&lt;br&gt;Commit complete.&lt;br&gt;&lt;br&gt;U1&amp;gt; CREATE INDEX cust_card_idx ON CUST (cred_card_num);&lt;br&gt;CREATE INDEX cust_card_idx ON CUST (cred_card_num)&lt;br&gt;*&lt;br&gt;ERROR at line 1:&lt;br&gt;ORA-28338: cannot encrypt indexed column(s) with salt&lt;br&gt;&lt;br&gt;U1&amp;gt; ALTER TABLE CUST MODIFY (cred_card_num&lt;font color="#0000FF"&gt; ENCRYPT NO SALT&lt;/font&gt;);&lt;br&gt;&lt;br&gt;Table altered.&lt;br&gt;&lt;br&gt;U1&amp;gt; CREATE INDEX cust_card_idx ON CUST (cred_card_num);&lt;br&gt;&lt;br&gt;Index created.&lt;br&gt;&lt;br&gt;U1&amp;gt; col CRED_CARD_NUM for 9999999999999999&lt;br&gt;U1&amp;gt; select * from CUST;&lt;br&gt;&lt;br&gt;CUST CUST_NAME&amp;nbsp; CRED_CARD_NUM&lt;br&gt;---- ---------- -----------------&lt;br&gt;10&amp;nbsp;&amp;nbsp; Tom&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 1234567812345678&lt;br&gt;20&amp;nbsp;&amp;nbsp; Sam&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 5678123456781234&lt;br&gt;&lt;/font&gt;&lt;br&gt;&lt;u&gt;&lt;b&gt;Creating a table with an encrypted column using NO SALT parameter &lt;/b&gt;&lt;/u&gt;&lt;br&gt;&lt;br&gt;&lt;font face="Courier" size="2"&gt;U1&amp;gt; create table CUST_2 (&lt;br&gt;&amp;nbsp; 2&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; cust_id VARCHAR2(4),&lt;br&gt;&amp;nbsp; 3&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; cust_name VARCHAR2(10),&lt;br&gt;&amp;nbsp; 4&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; cred_card_num NUMBER(16) &lt;font color="#0000FF"&gt;ENCRYPT NO SALT&lt;/font&gt;&lt;br&gt;&amp;nbsp; 5&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; );&lt;br&gt;&lt;br&gt;Table created.&lt;br&gt;&lt;br&gt;U1&amp;gt; insert into CUST_2 select * from CUST;&lt;br&gt;&lt;br&gt;2 rows created.&lt;br&gt;&lt;br&gt;U1&amp;gt; commit;&lt;br&gt;&lt;br&gt;Commit complete.&lt;br&gt;&lt;br&gt;U1&amp;gt; select * from CUST_2;&lt;br&gt;&lt;br&gt;CUST CUST_NAME&amp;nbsp; CRED_CARD_NUM&lt;br&gt;---- ---------- -----------------&lt;br&gt;10&amp;nbsp;&amp;nbsp; Tom&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 1234567812345678&lt;br&gt;20&amp;nbsp;&amp;nbsp; Sam&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 5678123456781234&lt;br&gt;&lt;/font&gt;&lt;br&gt;&lt;u&gt;&lt;b&gt;Adding Salt to an Encrypted Column&lt;/b&gt;&lt;/u&gt;&lt;br&gt;&lt;br&gt;&lt;font face="Courier" size="2"&gt;U1&amp;gt; ALTER TABLE CUST_2 MODIFY (cred_card_num&lt;font color="#0000FF"&gt; ENCRYPT SALT&lt;/font&gt;);&lt;br&gt;&lt;br&gt;Table altered.&lt;/font&gt;&lt;br&gt;&lt;br&gt;&lt;u&gt;&lt;b&gt;Removing Salt to an Encrypted Column&lt;br&gt;&lt;/b&gt;&lt;/u&gt;&lt;br&gt;&lt;font face="Courier" size="2"&gt;U1&amp;gt; ALTER TABLE CUST_2 MODIFY (cred_card_num&lt;font color="#0000FF"&gt; ENCRYPT NO SALT&lt;/font&gt;);&lt;br&gt;&lt;br&gt;Table altered.&lt;br&gt;&lt;br&gt;U1&amp;gt; ALTER TABLE CUST_2 &lt;font color="#0000FF"&gt;REKEY;&lt;/font&gt;&lt;br&gt;&lt;br&gt;Table altered.&lt;br&gt;&lt;br&gt;U1&amp;gt; ALTER TABLE CUST_2 &lt;font color="#0000FF"&gt;REKEY USING '3DES168';&lt;/font&gt;&lt;br&gt;&lt;br&gt;Table altered.&lt;/font&gt;&lt;br&gt;&lt;br&gt;&lt;u&gt;&lt;b&gt;Creating a table with an encrypted column using 3DES168 algorithm &lt;br&gt;&lt;/b&gt;&lt;/u&gt;&lt;br&gt;&lt;font face="Courier" size="2"&gt;create table CUST_3 (&lt;br&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; cust_id VARCHAR2(4),&lt;br&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; cust_name VARCHAR2(10),&lt;br&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; cred_card_num NUMBER(16) &lt;font color="#0000FF"&gt;ENCRYPT USING '3DES168'&lt;/font&gt;&lt;br&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; );&lt;br&gt;&lt;br&gt;Adding and modifying encrypted columns&lt;br&gt;&lt;br&gt;ALTER TABLE CUST_3 ADD (cust_addr VARCHAR2(15) &lt;font color="#0000FF"&gt;ENCRYPT&lt;/font&gt;);&lt;br&gt;&lt;br&gt;ALTER TABLE CUST_3 modify (cust_name&lt;font color="#0000FF"&gt; ENCRYPT&lt;/font&gt;);&lt;/font&gt;&lt;br&gt;&lt;br&gt;&lt;u&gt;&lt;b&gt;Disable Column Encryption&lt;/b&gt;&lt;/u&gt;&lt;br&gt;&lt;br&gt;&lt;font face="Courier" size="2"&gt;ALTER TABLE CUST_3 MODIFY (cust_name&lt;font color="#0000FF"&gt; DECRYPT&lt;/font&gt;);&lt;/font&gt;&lt;/p&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/2639035620819724618-745288157915776016?l=babumani.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://babumani.blogspot.com/feeds/745288157915776016/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=2639035620819724618&amp;postID=745288157915776016' title='3 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/2639035620819724618/posts/default/745288157915776016'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/2639035620819724618/posts/default/745288157915776016'/><link rel='alternate' type='text/html' href='http://babumani.blogspot.com/2007/12/new-features-in-oracle-11g-database.html' title='New features in Oracle 11g Database'/><author><name>babumani</name><uri>http://www.blogger.com/profile/08434916381222486044</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>3</thr:total></entry><entry><id>tag:blogger.com,1999:blog-2639035620819724618.post-1448574667618918538</id><published>2007-12-18T14:42:00.001-05:00</published><updated>2008-01-03T10:04:11.669-05:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Oracle 11g Database'/><title type='text'>Manually Creating an Oracle 11g Database</title><content type='html'>&lt;p&gt;&lt;u&gt;&lt;font size="4"&gt;Creating an Oracle 11g Database in Windows using command line.&lt;/font&gt;&lt;/u&gt;&lt;/p&gt;&lt;p&gt;Creating a 11g database is just the same as 10g. &lt;/p&gt;&lt;p&gt;&lt;font size="4"&gt;&lt;u&gt;INIT.ORA&lt;/u&gt;.&lt;/font&gt;Below are the contents of my init.ora:-&lt;/p&gt;&lt;p&gt;&lt;font face="Courier" color="#0000FF" size="2"&gt;db_name='ORA11'&lt;br&gt;memory_target=1G&lt;br&gt;processes = 150&lt;br&gt;audit_file_dest='C:\oracle\ora11\admin\adump'&lt;br&gt;audit_trail ='db'&lt;br&gt;db_block_size=8192&lt;br&gt;db_domain=''&lt;br&gt;db_recovery_file_dest=C:\oracle\ora11\admin\ORA11\flash_recovery_area&lt;br&gt;db_recovery_file_dest_size=2G&lt;br&gt;diagnostic_dest=C:\oracle\ora11\admin\ORA11\diagnostic_dest&lt;br&gt;dispatchers='(PROTOCOL=TCP) (SERVICE=ORA11XDB)'&lt;br&gt;open_cursors=300 &lt;br&gt;remote_login_passwordfile='EXCLUSIVE'&lt;br&gt;undo_tablespace='UNDOTBS1'&lt;br&gt;control_files = (&amp;quot;C:\oracle\oradata\ORA11\ORA11_CONTROL1.ora&amp;quot;, &amp;quot;C:\oracle\oradata\ORA11\ORA11_CONTROL2.ora&amp;quot;)&lt;br&gt;compatible ='11.1.0'&lt;/font&gt;&lt;/p&gt;&lt;p&gt;&lt;u&gt;&lt;font face="Times New Roman" size="4"&gt;Set Environment Variables:-&lt;/font&gt;&lt;/u&gt;&lt;/p&gt;&lt;p&gt;&lt;font face="Courier" color="#0000FF" size="2"&gt;set ORACLE_SID=ORA11&lt;br&gt;set ORACLE_HOME=C:\oracle\ora11&lt;/font&gt;&lt;/p&gt;&lt;p&gt;&lt;u&gt;&lt;font size="4"&gt;Create Oracle service&lt;/font&gt;&lt;/u&gt;&lt;/p&gt;&lt;p&gt;&lt;font face="Courier" size="2"&gt;&lt;font color="#0000FF"&gt;C:\oracle\ora11\bin\oradim.exe -new -sid ORA11 -startmode m -INTPWD oracle -PFILE &amp;quot;C:\oracle\ora11\database\initORA11.ora&amp;quot;&lt;/font&gt;&lt;br&gt;&lt;br&gt;Instance created.&lt;br&gt;&lt;font color="#800000"&gt;Error while deleting value, OS Error = 2&lt;/font&gt;&lt;/font&gt;&lt;/p&gt;&lt;p&gt;&lt;u&gt;&lt;font size="4"&gt;Create Database&lt;/font&gt;&lt;/u&gt;&lt;/p&gt;&lt;p&gt;&lt;font face="Courier"&gt;&lt;font size="2" color="#0000FF"&gt;C:\&amp;gt;sqlplus /nolog&lt;br&gt;&lt;/font&gt;&lt;font size="2"&gt;&lt;br&gt;SQL*Plus: Release 11.1.0.6.0 - Production on Mon Dec 10 15:25:47 2007&lt;br&gt;&lt;br&gt;Copyright (c) 1982, 2007, Oracle. All rights reserved.&lt;br&gt;&lt;br&gt;&lt;/font&gt;&lt;font color="#0000FF" size="2"&gt;SQL&amp;gt; connect sys/oracle as sysdba&lt;br&gt;&lt;/font&gt;&lt;font size="2"&gt;Connected to an idle instance.&lt;br&gt;&lt;br&gt;&lt;font color="#0000FF"&gt;SQL&amp;gt; startup nomount pfile=&amp;quot;C:\oracle\ora11\database\initORA11.ora&amp;quot;&lt;br&gt;&lt;/font&gt;&lt;br&gt;ORACLE instance started.&lt;br&gt;&lt;br&gt;Total System Global Area 644468736 bytes&lt;br&gt;Fixed Size 1335108 bytes&lt;br&gt;Variable Size 171966652 bytes&lt;br&gt;Database Buffers 465567744 bytes&lt;br&gt;Redo Buffers 5599232 bytes&lt;/font&gt;&lt;/font&gt;&lt;/p&gt;&lt;p&gt;&lt;font face="Courier" color="#0000FF" size="2"&gt;CREATE DATABASE ORA11&lt;br&gt;USER SYS IDENTIFIED BY ORACLE&lt;br&gt;USER SYSTEM IDENTIFIED BY ORACLE&lt;br&gt;DATAFILE 'C:\oracle\oradata\ORA11\SYSTEM01.DBF' SIZE 325M REUSE AUTOEXTEND ON NEXT 10240K MAXSIZE UNLIMITED&lt;br&gt;SYSAUX DATAFILE 'C:\oracle\oradata\ORA11\SYSAUX01.DAT' SIZE 120M REUSE AUTOEXTEND ON NEXT 5M MAXSIZE 2048M&lt;br&gt;DEFAULT TABLESPACE USERS DATAFILE 'C:\oracle\oradata\ORA11\USERS01.DBF' SIZE 50M REUSE AUTOEXTEND ON MAXSIZE UNLIMITED&lt;br&gt;DEFAULT TEMPORARY TABLESPACE TEMP TEMPFILE 'C:\oracle\oradata\ORA11\TEMP01.DBF' SIZE 40M REUSE AUTOEXTEND ON NEXT 640K MAXSIZE UNLIMITED&lt;br&gt;UNDO TABLESPACE &amp;quot;UNDOTBS1&amp;quot; DATAFILE 'C:\oracle\oradata\ORA11\UNDOTBS01.DBF'&lt;br&gt;SIZE 200M REUSE AUTOEXTEND ON NEXT 5120K MAXSIZE UNLIMITED&lt;br&gt;CHARACTER SET WE8MSWIN1252&lt;br&gt;NATIONAL CHARACTER SET AL16UTF16&lt;br&gt;LOGFILE 'C:\oracle\oradata\ORA11\REDO01.LOG' SIZE 100M REUSE,&lt;br&gt;'C:\oracle\oradata\ORA11\REDO02.LOG' SIZE 100M REUSE,&lt;br&gt;'C:\oracle\oradata\ORA11\REDO03.LOG' SIZE 100MREUSE&lt;br&gt;EXTENT MANAGEMENT LOCAL&lt;br&gt;MAXLOGFILES 32 &lt;br&gt;MAXLOGMEMBERS 4&lt;br&gt;MAXLOGHISTORY 100&lt;br&gt;MAXDATAFILES 254&lt;br&gt;MAXINSTANCES 1;&lt;/font&gt;&lt;/p&gt;&lt;p&gt;&lt;font face="Courier" color="#0000FF" size="2"&gt;@C:\oracle\ora11\rdbms\admin\catalog.sql&lt;br&gt;@C:\oracle\ora11\rdbms\admin\catproc.sql&lt;/font&gt;&lt;/p&gt;&lt;p&gt;&lt;font face="Courier" size="2"&gt;&lt;font color="#0000FF"&gt;SQL&amp;gt; connect system/ORACLE as sysdba&lt;br&gt;&lt;/font&gt;Connected.&lt;/font&gt;&lt;/p&gt;&lt;p&gt;&lt;font face="Courier" color="#0000FF" size="2"&gt;@C:\oracle\ora11\sqlplus\admin\pupbld.sql&lt;/font&gt;&lt;/p&gt;&lt;p&gt;&lt;font face="Courier" size="2"&gt;&lt;font color="#0000FF"&gt;SQL&amp;gt; select program from v$session;&lt;br&gt;&lt;/font&gt;&lt;br&gt;PROGRAM&lt;br&gt;-----------------------&lt;br&gt;sqlplus.exe&lt;br&gt;ORACLE.EXE (q001)&lt;br&gt;ORACLE.EXE (CJQ0)&lt;br&gt;ORACLE.EXE (q000)&lt;br&gt;ORACLE.EXE (W000)&lt;br&gt;ORACLE.EXE (QMNC)&lt;br&gt;ORACLE.EXE (FBDA)&lt;br&gt;ORACLE.EXE (SMCO)&lt;br&gt;ORACLE.EXE (MMNL)&lt;br&gt;ORACLE.EXE (MMON)&lt;br&gt;ORACLE.EXE (RECO)&lt;br&gt;ORACLE.EXE (SMON)&lt;br&gt;ORACLE.EXE (CKPT)&lt;br&gt;ORACLE.EXE (LGWR)&lt;br&gt;ORACLE.EXE (DBW0)&lt;br&gt;ORACLE.EXE (MMAN)&lt;br&gt;ORACLE.EXE (DIA0)&lt;br&gt;ORACLE.EXE (PSP0)&lt;br&gt;ORACLE.EXE (DBRM)&lt;br&gt;ORACLE.EXE (DIAG)&lt;br&gt;ORACLE.EXE (VKTM)&lt;br&gt;ORACLE.EXE (PMON)&lt;br&gt;&lt;br&gt;22 rows selected.&lt;br&gt;&lt;/font&gt;&lt;br&gt;&lt;u&gt;&lt;font size="4"&gt;Drop Database&lt;/font&gt;&lt;/u&gt;&lt;/p&gt;&lt;p&gt;&lt;font face="Courier" size="2"&gt;&lt;font color="#0000FF"&gt;SQL&amp;gt; connect sys/oracle as sysdba&lt;br&gt;&lt;/font&gt;Connected.&lt;br&gt;&lt;font color="#0000FF"&gt;SQL&amp;gt; shutdown immediate;&lt;br&gt;&lt;/font&gt;Database closed.&lt;br&gt;Database dismounted.&lt;br&gt;ORACLE instance shut down.&lt;br&gt;&lt;font color="#0000FF"&gt;SQL&amp;gt; startup mount exclusive;&lt;br&gt;&lt;/font&gt;ORACLE instance started.&lt;br&gt;&lt;br&gt;Total System Global Area 644468736 bytes&lt;br&gt;Fixed Size 1335108 bytes&lt;br&gt;Variable Size 171966652 bytes&lt;br&gt;Database Buffers 465567744 bytes&lt;br&gt;Redo Buffers 5599232 bytes&lt;br&gt;Database mounted.&lt;br&gt;&lt;font color="#0000FF"&gt;SQL&amp;gt; alter system enable restricted session;&lt;br&gt;&lt;/font&gt;&lt;br&gt;System altered.&lt;/font&gt;&lt;/p&gt;&lt;p&gt;&lt;font face="Courier" size="2"&gt;&lt;font color="#0000FF"&gt;SQL&amp;gt; drop DATABASE ;&lt;br&gt;&lt;/font&gt;&lt;br&gt;Database dropped.&lt;br&gt;&lt;br&gt;Disconnected from Oracle Database 11g Enterprise Edition Release 11.1.0.6.0 - Production&lt;br&gt;With the Partitioning, OLAP, Data Mining and Real Application Testing options&lt;/font&gt;&lt;/p&gt;&lt;p&gt;&lt;font face="Courier" size="2"&gt;or&lt;/font&gt;&lt;/p&gt;&lt;p&gt;&lt;font face="Courier" size="2"&gt;&lt;font color="#0000FF"&gt;SQL&amp;gt; STARTUP mount RESTRICT EXCLUSIVE;&lt;/font&gt;&lt;br&gt;ORACLE instance started.&lt;br&gt;&lt;br&gt;Total System Global Area 644468736 bytes&lt;br&gt;Fixed Size 1335108 bytes&lt;br&gt;Variable Size 171966652 bytes&lt;br&gt;Database Buffers 465567744 bytes&lt;br&gt;Redo Buffers 5599232 bytes&lt;br&gt;Database mounted.&lt;/font&gt;&lt;/p&gt;&lt;p&gt;&lt;font face="Courier" size="2"&gt;&lt;font color="#0000FF"&gt;SQL&amp;gt; drop DATABASE ;&lt;/font&gt;&lt;br&gt;&lt;br&gt;Operation 203 succeeded.&lt;br&gt;&lt;/font&gt;&lt;br&gt;&lt;u&gt;&lt;font face="Times New Roman" size="4"&gt;Version&lt;/font&gt;&lt;/u&gt;&lt;/p&gt;&lt;p&gt;&lt;font face="Courier" size="2"&gt;&lt;font color="#0000FF"&gt;SQL&amp;gt; select * from v$version;&lt;br&gt;&lt;/font&gt;&lt;br&gt;BANNER&lt;br&gt;--------------------------------------------------------------------------------&lt;br&gt;Oracle Database 11g Enterprise Edition Release 11.1.0.6.0 - Production&lt;br&gt;PL/SQL Release 11.1.0.6.0 - Production&lt;br&gt;CORE 11.1.0.6.0 Production&lt;br&gt;TNS for 32-bit Windows: Version 11.1.0.6.0 - Production&lt;br&gt;NLSRTL Version 11.1.0.6.0 - Production&lt;br&gt;&lt;br&gt;5 rows selected.&lt;/font&gt;&lt;/p&gt;&lt;p&gt;&lt;u&gt;&lt;font size="4"&gt;Following messages were noted in Alert.ora&lt;/font&gt;&lt;/u&gt;&lt;p&gt;&lt;font size="2" face="Courier"&gt;Tue Dec 11 08:36:23 2007&lt;br&gt;&lt;font color="#800000"&gt;Warning: chk_tab_prop - table doesn't exist :SYS.KUPC$DATAPUMP_QUETAB&lt;br&gt;Warning: chk_tab_prop - table doesn't exist :SYS.AQ$_KUPC$DATAPUMP_QUETAB_S&lt;br&gt;Warning: chk_tab_prop - table doesn't exist :SYS.AQ$_KUPC$DATAPUMP_QUETAB_I&lt;br&gt;Warning: chk_tab_prop - table doesn't exist :SYS.AQ$_KUPC$DATAPUMP_QUETAB_H&lt;br&gt;Warning: chk_tab_prop - table doesn't exist :SYS.AQ$_KUPC$DATAPUMP_QUETAB_T&lt;br&gt;Warning: chk_tab_prop - table doesn't exist :SYS.AQ$_KUPC$DATAPUMP_QUETAB_G&lt;br&gt;Warning: chk_tab_prop - table doesn't exist :SYS.AQ$_KUPC$DATAPUMP_QUETAB_P&lt;br&gt;Warning: chk_tab_prop - table doesn't exist :SYS.AQ$_KUPC$DATAPUMP_QUETAB_D&lt;br&gt;&lt;/font&gt;Tue Dec 11 08:39:11 2007&lt;br&gt;SERVER COMPONENT id=CATPROC: timestamp=2007-12-11 08:39:11&lt;br&gt;&lt;/font&gt;&lt;font size="2"&gt;&lt;br&gt;&lt;/font&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/2639035620819724618-1448574667618918538?l=babumani.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://babumani.blogspot.com/feeds/1448574667618918538/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=2639035620819724618&amp;postID=1448574667618918538' title='6 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/2639035620819724618/posts/default/1448574667618918538'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/2639035620819724618/posts/default/1448574667618918538'/><link rel='alternate' type='text/html' href='http://babumani.blogspot.com/2007/12/manually-creating-oracle-11g-database.html' title='Manually Creating an Oracle 11g Database'/><author><name>babumani</name><uri>http://www.blogger.com/profile/08434916381222486044</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>6</thr:total></entry><entry><id>tag:blogger.com,1999:blog-2639035620819724618.post-1456400609098830301</id><published>2007-09-26T14:34:00.000-05:00</published><updated>2007-10-02T11:21:07.086-05:00</updated><title type='text'>Failure to Extend Rollback Segment</title><content type='html'>&lt;p align="justify"&gt;&lt;u&gt;&lt;b&gt;Environment: &lt;/b&gt;&lt;/u&gt;Oracle 9.2.0.7 EE, 32bit, Windows 2003 Enterprise &lt;br /&gt;Server. &lt;br&gt;&lt;br&gt;&lt;u&gt;&lt;b&gt;Problem: &lt;/b&gt;&lt;/u&gt;Transaction (bulk load) hangs and getting below error in the alert.log&lt;br&gt;&lt;br&gt;&lt;font face="Courier New"&gt;Thread 1 advanced to log sequence 1234&lt;br&gt;Current log# 1 seq# 1234 mem# 0: D:\ORACLE\ORADATA\LOG1.ORA&lt;br&gt;Wed Sep 25 21:06:06 2007&lt;br&gt;Failure to extend rollback segment 19 because of 1000 conditionFULL status of &lt;br /&gt;rollback segment 19 set.&lt;br&gt;Wed Sep 25 21:06:20 2007&lt;br&gt;SMON: FULL status of rollback segment 19 cleared.&lt;br&gt;&lt;/font&gt;&lt;br&gt; I have seen various reasons and scenarios (like insufficient disk space for RBS/UNDO tablespace/datafiles to grow, or hitting maxsize limitation for datafiles, max extents reached, ORA-1555 the famous &amp;quot;snapshot too old&amp;quot; error, etc) causing failure of a rollback (undo) segment. But this is the first time I came across a RBS failure which is slightly different the usual.&lt;br&gt; &lt;br&gt; The database is in AUTOMATIC undo management mode &lt;br&gt; &lt;br&gt; &lt;font face="Courier New"&gt;NAME&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; TYPE&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; VALUE&lt;br&gt; ----------------------- ----------- ---------&lt;br&gt; undo_management&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; string&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; AUTO&lt;br&gt;undo_retention&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; integer&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 10800&lt;br&gt;undo_suppress_errors&amp;nbsp;&amp;nbsp;&amp;nbsp; boolean&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; FALSE&lt;br&gt;undo_tablespace&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; string&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; UNDOTBS1&lt;br&gt;&lt;br /&gt;&lt;/font&gt;&lt;br&gt;&lt;u&gt;&lt;b&gt;Solution:&lt;/b&gt;&lt;/u&gt; After trying various options, attempts and looking the alert log message under the microscope, I came to know that the reason for the error is ORA-01000 (as the error in the alert.log says &amp;quot;&lt;u&gt;&lt;b&gt;because of 1000&lt;/b&gt;&lt;/u&gt;&amp;quot;, so DBAs are expected to assume it is ORA-01000 error, go figure!). Here is what Oracle documentation say about this error:&lt;br&gt;&lt;br&gt;&lt;font face="Courier New"&gt;&lt;b&gt;ORA-01000 maximum open cursors exceeded&lt;/b&gt;&lt;br&gt;&lt;br&gt;&lt;u&gt;&lt;b&gt;Cause:&lt;/b&gt;&lt;/u&gt; A host language program attempted to open too many cursors.  The initialization parameter OPEN_CURSORS determines the maximum number of &lt;br /&gt;cursors per user.&lt;br&gt;&lt;br&gt;&lt;u&gt;&lt;b&gt;Action:&lt;/b&gt;&lt;/u&gt; Modify the program to use fewer cursors. If this error occurs often, shut down Oracle, increase the value of OPEN_CURSORS, and then restart Oracle.&lt;br&gt;&lt;/font&gt;&lt;br&gt;After changing the OPEN_CURSORS parameter (from 300) to 2000 and restarting the database, the bulk load went fine. &lt;br&gt;&lt;br&gt;Did anyone had this problem? welcome to share your thoughts..&lt;/p&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/2639035620819724618-1456400609098830301?l=babumani.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://babumani.blogspot.com/feeds/1456400609098830301/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=2639035620819724618&amp;postID=1456400609098830301' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/2639035620819724618/posts/default/1456400609098830301'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/2639035620819724618/posts/default/1456400609098830301'/><link rel='alternate' type='text/html' href='http://babumani.blogspot.com/2007/09/failure-to-extend-rollback-segment.html' title='Failure to Extend Rollback Segment'/><author><name>babumani</name><uri>http://www.blogger.com/profile/08434916381222486044</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-2639035620819724618.post-719374054577934041</id><published>2007-03-01T16:32:00.000-05:00</published><updated>2007-03-12T11:26:16.039-05:00</updated><title type='text'>Installation of Oracle DST 2007 Patches in Oracle 9.2.0.7 Database and Client Machines</title><content type='html'>Recommended reading: "&lt;a target="_blank" href="http://babumani.blogspot.com/2007/02/impact-of-dst-2007-day-light-saving-on.html"&gt;Impact of DST 2007 (Day Light Saving) on Oracle Databases&lt;/a&gt;"&lt;p&gt;&lt;u&gt;&lt;b&gt;Environment:&lt;/b&gt;&lt;/u&gt; GIS database environment, &lt;a target="_blank" href="http://www.esri.com/software/arcgis/arcsde/index.html"&gt;ESRI's ArcSDE&lt;/a&gt; 9.0 running on Oracle 9.2.0.7 database on a 32 bit Windows 2003 Server operating system.&lt;p&gt;&lt;u&gt;&lt;b&gt;Table of Contents&lt;/b&gt;&lt;/u&gt; &lt;blockquote&gt;&lt;blockquote&gt;&lt;p&gt;&lt;a href="#Introduction:"&gt;Introduction&lt;/a&gt;&lt;br /&gt;&lt;a href="#Rollback and De-Installation of Patches:"&gt;Rollback and De-Installation of Patches&lt;/a&gt;&lt;br /&gt;&lt;a href="#Patch Install Verification:"&gt;Patch Install Verification&lt;/a&gt;&lt;br /&gt;&lt;a href="#Part 1 - Install DST Patches in Oracle 9.2.0.7 Database Server"&gt;Part 1 - Install DST Patches in Oracle 9.2.0.7 Database Server&lt;/a&gt;&lt;br /&gt;&lt;a href="#1. Software and Utility Requirement:"&gt;1. Software and Utility Requirement&lt;/a&gt;&lt;br /&gt;&lt;a href="#2. DST Patch Download from Oracle Metalink:-"&gt;2. DST Patch Download from Oracle Metalink&lt;/a&gt;&lt;br /&gt;&lt;a href="#3. Shutdown and Reboot"&gt;3. Shutdown and Reboot&lt;/a&gt;&lt;br /&gt;&lt;a href="#4. Patch Install"&gt;4. Patch Install&lt;/a&gt;&lt;br /&gt;&lt;a href="#4.1. Patch  5548107"&gt;4.1. Patch # 5548107&lt;/a&gt; [Interim Patch for Bug: 5548107]&lt;br /&gt;&lt;a href="#4.2. Patch  5654905"&gt;4.2. Patch # 5654905&lt;/a&gt; [Critical patch update 9.2.0.7 Patch 15]&lt;br /&gt;&lt;a href="#4.2.2. Patch the Databases"&gt;4.2.2.1. Patch Database(s)&lt;/a&gt;&lt;br /&gt;&lt;a href="#4.3. Patch  5047902"&gt;4.3. Patch # 5047902&lt;/a&gt; [Oracle JVM TimeZone - Interim Patch for bug 5047902]&lt;br /&gt;&lt;a href="#5. Final Testing"&gt;5. Final Testing&lt;/a&gt;&lt;br /&gt;&lt;a href="#Part 2 - Install DST Patches in Oracle 9.2.0.7 Client Machines"&gt;Part 2 - Install DST Patches in Oracle 9.2.0.7 Client Machines&lt;/a&gt;&lt;br /&gt;&lt;b&gt;&lt;/p&gt;&lt;/blockquote&gt;&lt;/blockquote&gt;&lt;/b&gt;&lt;div align="justify"&gt;&lt;u&gt;&lt;a name="Introduction:"&gt;Introduction:&lt;/a&gt;&lt;/u&gt; This document provides steps involved in installing Oracle DST patches in Oracle Database and Client machines. Identify and list out the Oracle database server(s) and client machines. &lt;/div&gt;&lt;p&gt;&lt;table style="BORDER-COLLAPSE: collapse" bordercolor="#111111" cellspacing="0" cellpadding="0" width="350" bgcolor="#808080" border="1"&gt;&lt;tbody&gt;&lt;tr&gt;&lt;td width="100"&gt;&lt;u&gt;&lt;b&gt;Server&lt;/b&gt;&lt;/u&gt;&lt;/td&gt;&lt;td width="250"&gt;&lt;u&gt;&lt;b&gt;Oracle Product Installed&lt;/b&gt;&lt;/u&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td width="100"&gt;ORADBTEST&lt;/td&gt;&lt;td width="250"&gt;Database Server&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td width="100"&gt;ORADBPROD&lt;/td&gt;&lt;td width="250"&gt;Database Server&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td width="100"&gt;WEBTEST&lt;/td&gt;&lt;td width="250"&gt;Client&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td width="100"&gt;WEBPROD&lt;/td&gt;&lt;td width="250"&gt;Client&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td width="100"&gt;APPTEST&lt;/td&gt;&lt;td width="250"&gt;Client&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td width="100"&gt;APPPROD&lt;/td&gt;&lt;td width="250"&gt;Client&lt;/td&gt;&lt;/tr&gt;&lt;/tbody&gt;&lt;/table&gt;&lt;/p&gt;&lt;p align="justify"&gt;&lt;u&gt;&lt;b&gt;&lt;a name="Rollback and De-Installation of Patches:"&gt;Rollback and De-Installation of Patches:&lt;/a&gt; &lt;/b&gt;&lt;/u&gt;It’s safe to backup entire database server (including ORACLE_HOME and Database files) before patches are installed for the purpose of restoring the database. &lt;/p&gt;&lt;p align="justify"&gt;However, there is a second option available, rollback scripts are created for each patch install when applied using Oracle OPatch Utility, hence a patch (or a patch-set) can be rolled back using them. During the patch install, rollback scripts are automatically created at "%ORACLE_HOME%\.patch_storage\&amp;lt;&lt;i&gt;patch_id&lt;/i&gt;&amp;gt;\" folder in the name "rollback_&amp;lt;&lt;i&gt;patch_id&lt;/i&gt;&amp;gt;.cmd". Patch De-Installation instructions are available at the bottom of each respective README.txt (or README.html if available) files.&lt;p&gt;There was no requirement for patch rollback when installed, hence steps for rolling back a patch is not included in this document.&lt;/p&gt;&lt;div align="justify"&gt;&lt;u&gt;&lt;b&gt;&lt;a name="Patch Install Verification:"&gt;Patch Install Verification:&lt;/a&gt;&lt;/b&gt;&lt;/u&gt;Verify the log file "Apply_&amp;lt;&lt;i&gt;patch_id&lt;/i&gt;&amp;gt;_&amp;lt;timestamp&amp;gt;.log" created at "%ORACLE_HOME%\.patch_storage\&amp;lt;&lt;i&gt;patch_id&lt;/i&gt;&amp;gt;\ for any errors after every OPatch install. Also check %ORACLE_HOME%\cpu\CPUJan2007Apply_&amp;lt;ORACLE_SID&amp;gt;_&amp;lt;timestamp&amp;gt;.log after running "catcpu.sql" script for patch 5654905. &lt;/div&gt;&lt;p align="justify"&gt;&lt;u&gt;&lt;b&gt;&lt;a name="Part 1 - Install DST Patches in Oracle 9.2.0.7 Database Server"&gt;&lt;span style="font-size:130%;"&gt;Part 1 - Install DST Patches in Oracle 9.2.0.7 Database Server&lt;/span&gt;&lt;/a&gt;&lt;/b&gt;&lt;/u&gt;&lt;/p&gt;&lt;p align="justify"&gt;&lt;u&gt;&lt;b&gt;&lt;a name="1. Software and Utility Requirement:"&gt;1. Software and Utility Requirement:&lt;/a&gt;&lt;/b&gt;&lt;/u&gt; Oracle DST Patches are applied using an Oracle Patch utility called OPatch. It requires Perl 5.005_03 or higher and JDK versions of 1.3.1 or higher.&lt;/p&gt;&lt;p align="justify"&gt;&lt;b&gt;&lt;u&gt;Note:&lt;/u&gt; &lt;/b&gt;Java, OPatch and Perl that were already present in Database Server may not include all the required files for DST patches. Hence download and reinstall all the three once again to successfully install the DST patches.&lt;/p&gt;&lt;p align="justify"&gt;&lt;u&gt;&lt;b&gt;1.1. JAVA:&lt;/b&gt;&lt;/u&gt; Download and install JAVA from below Sun website and set PATH accordingly:-&lt;/p&gt;&lt;p&gt;J2SDK - &lt;a href="http://java.sun.com/j2se/1.4.2/download.html"&gt;http://java.sun.com/j2se/1.4.2/download.html&lt;/a&gt;&lt;/p&gt;&lt;table border="1" style="border-collapse: collapse" bordercolor="#111111" width="650" bgcolor="#808080"&gt;&lt;tr&gt;&lt;td width="645"&gt;&lt;font face="Courier" size="2"&gt;&lt;b&gt;C:\j2sdk1.4.2_13\bin&amp;gt;java -version&lt;/b&gt;&lt;br&gt;java version "1.4.2_13"&lt;br&gt;Java(TM) 2 Runtime Environment, Standard Edition (build 1.4.2_13-b06)&lt;br&gt;Java HotSpot(TM) Client VM (build 1.4.2_13-b06, mixed mode&lt;/font&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;&lt;br /&gt;&lt;p align="justify"&gt;In Database Server, it is installed in "C:\j2sdk1.4.2_13", include its "bin" folder in "Path" environment variable [refer section 1.4].&lt;/p&gt;&lt;p align="justify"&gt;&lt;u&gt;&lt;b&gt;1.2. Perl&lt;/b&gt;&lt;/u&gt; - Download Perl using Oracle Interim Patch # 2417994 and install it as per instructions provided in the README.txt file.&lt;/p&gt;&lt;p align="justify"&gt;Log into "metalink.oracle.com" -&amp;gt; "Patch &amp; Updates" -&amp;gt; "Simple Search" and provide "2417994" as patch number, Select "Microsoft Windows (32 bit)" as platform and click "Go". Download the 9.2.0.1 release, downloaded file name would be "p2417872_9201_WINNT.zip". [Or use below link to download]&lt;/p&gt;&lt;p align="justify"&gt;&lt;a href="http://updates.oracle.com/ARULink/Download/process_form/p2417872_9201_WINNT.zip?file_id=536569&amp;aru=2430176"&gt;http://updates.oracle.com/ARULink/Download/process_form/p2417872_9201_WINNT.zip?file_id=536569&amp;amp;aru=2430176&lt;/a&gt;&lt;/p&gt;&lt;table border="1" style="border-collapse: collapse" bordercolor="#111111" width="650" bgcolor="#808080"&gt;&lt;tr&gt;&lt;td width="645"&gt;&lt;font face="Courier" size="2"&gt;&lt;b&gt;C:\perl\perl\5.00503\bin\MSWin32-x86&amp;gt;perl -version&lt;/b&gt;&lt;br&gt;This is perl, version 5.005_03 built for MSWin32-x86&lt;br&gt;Copyright 1987-1999, Larry Wall&lt;br&gt;Perl may be copied only under the terms of either the Artistic License or&lt;br&gt;the GNU General Public License, which may be found in the Perl 5.0 source kit.&lt;br&gt;Complete documentation for Perl, including FAQ lists, should be found on&lt;br&gt;this system using `man perl' or `perldoc perl'. If you have access to the&lt;br&gt;Internet, point your browser at http://www.perl.com/, the Perl Home Page. &lt;/font&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;&lt;br /&gt;&lt;p&gt;In Database Server, Perl is installed in "C:\perl", include its "..\bin\MSWin32-x86" folder in "Path" environment variable [refer section 1.4].&lt;p align="justify"&gt;&lt;u&gt;&lt;b&gt;1.3. OPatch&lt;/b&gt;&lt;/u&gt; - In Database Server, OPatch is installed in "D:\oracle\ora92\OPatch" folder. [If already present, move/backup the files present in the OPatch folder and reinstall new OPatch in the same folder]. Include its "D:\oracle\ora92\OPatch" folder in "Path" environment variable [refer section 1.4].&lt;/p&gt;&lt;table border="1" style="border-collapse: collapse" bordercolor="#111111" width="550" bgcolor="#808080"&gt;&lt;tr&gt;&lt;td width="505"&gt;&lt;font face="Courier" size="2"&gt;&lt;b&gt;set ORACLE_HOME=d:\oracle\ora92&lt;/b&gt;&lt;p&gt;D:\&amp;gt;&lt;b&gt;opatch version&lt;/b&gt;&lt;p&gt;Oracle Interim Patch Installer version 1.0.0.0.52&lt;br&gt;Copyright (c) 2005 Oracle Corporation. All Rights Reserved..&lt;br&gt;We recommend you refer to the OPatch documentation under&lt;br&gt;OPatch/docs for usage reference. We also recommend using&lt;br&gt;the latest OPatch version. For the latest OPatch version&lt;br&gt;and other support related issues, please refer to document&lt;br&gt;293369.1 which is viewable from metalink.oracle.com&lt;p&gt;OPatch Version: 1.0.0.0.52&lt;p&gt;OPatch returns with error code = 0&lt;/font&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;&lt;p&gt;Download Oracle OPatch using Bug # 2417872, and install it as per instructions provided in the README.txt file.&lt;p align="justify"&gt;"metalink.oracle.com" -&amp;gt; "Patch &amp; Updates" -&amp;gt; "Simple Search" and provide "2617419" as patch number, Select "Microsoft windows Server 2003" as platform and click "Go". Download the 10.1.0.2 release, downloaded file name would be "p2617419_10102_GENERIC.zip". [Or use below link to download].&lt;br&gt;&lt;br /&gt;&lt;a href="http://updates.oracle.com/ARULink/Download/process_form/p2617419_10102_GENERIC.zip?aru=5939446&amp;file_id=9596770&amp;amp;patch_file=p2617419_10102_GENERIC.zip"&gt;http://updates.oracle.com/ARULink/Download/process_form/p2617419_10102_GENERIC.zip?aru=5939446&amp;file_id=9596770&amp;amp;patch_file=p2617419_10102_GENERIC.zip&lt;/a&gt;&lt;br&gt;&lt;br /&gt;&lt;u&gt;&lt;b&gt;Reference:&lt;/b&gt;&lt;/u&gt; Oracle9i Data Server Interim Patch Installation (OPatch) &lt;a href="http://metalink.oracle.com/metalink/plsql/ml2_documents.showDocument?p_database_id=NOT&amp;p_id=189489.1"&gt;Note: 189489.1&lt;/a&gt;&lt;br&gt;&lt;br /&gt;&lt;u&gt;&lt;b&gt;1.4. Path environment variable:&lt;/b&gt;&lt;/u&gt; Once Path is set for all the above 3, it would look as follows:- &lt;br&gt;&lt;br /&gt;&lt;table border="1" style="border-collapse: collapse" bordercolor="#111111" width="650" bgcolor="#808080"&gt;&lt;tr&gt;&lt;td width="645"&gt;&lt;font face="Courier" size="2"&gt;&lt;b&gt;echo %Path%&lt;/b&gt;&lt;br&gt;D:\oracle\ora92\jre\1.4.2\bin\client;D:\oracle\ora92\jre\1.4.2\bin;&lt;br&gt;D:\oracle\ora92\bin;C:\Program Files\Oracle\jre\1.3.1\bin;&lt;br&gt;C:\Program Files\Oracle\jre\1.1.8\bin;C:\WINDOWS\system32;&lt;br&gt;C:\WINDOWS;C:\WINDOWS\System32\Wbem;&lt;br&gt;C:\Program Files\Microsoft SQL Server\80\Tools\BINN;&lt;br&gt;C:\esri_sde\ArcSDE\ora9iexe\bin;c:\program files\netiq\Common\Bin;&lt;br&gt;&lt;b&gt;C:\j2sdk1.4.2_13\bin;D:\oracle\ora92\OPatch;&lt;br&gt;C:\perl\perl\5.00503\bin\MSWin32-x86;&lt;/b&gt;&lt;/font&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;&lt;br /&gt;&lt;p&gt;&lt;u&gt;&lt;b&gt;&lt;a name="2. DST Patch Download from Oracle Metalink:-"&gt;&lt;span style="font-size:130%;"&gt;2. DST Patch Download from Oracle Metalink:-&lt;/span&gt;&lt;/a&gt;&lt;/b&gt;&lt;/u&gt;&lt;br /&gt;&lt;u&gt;&lt;b&gt;2.1. Interim Patch for Bug: 5548107&lt;/b&gt;&lt;/u&gt;&lt;br /&gt;&lt;p align="justify"&gt;"metalink.oracle.com" -&amp;gt; "Patch &amp; Updates" -&amp;gt; "Simple Search" and provide "5548107" as patch number, Select "Microsoft windows Server 2003" as platform and click "Go". Download the 9.2.0.7 release, downloaded file name would be "p5548107_92070_GENERIC.zip". [Or use below link to download].&lt;br /&gt;&lt;p&gt;&lt;a href="https://updates.oracle.com/ARULink/PatchDetails/process_form?patch_num=5548107&amp;release=8092070&amp;amp;plat_lang=2000P&amp;patch_num_id=759969"&gt;https://updates.oracle.com/ARULink/PatchDetails/process_form?patch_num=5548107&amp;amp;release=8092070&amp;plat_lang=2000P&amp;amp;patch_num_id=759969&lt;/a&gt;&lt;br /&gt;&lt;p&gt;&lt;u&gt;&lt;b&gt;2.2. Oracle 9.2.0.7 Patch 15 on Windows 32 bit # 5654905&lt;/b&gt;&lt;/u&gt;&lt;br /&gt;&lt;p&gt;"metalink.oracle.com" -&amp;gt; "Patch &amp; Updates" -&amp;gt; "Simple Search" and provide "5654905" as patch number, Select "Microsoft Windows (32 bit)" as platform and click "Go". The downloaded file name would be "p5654905_92070_WINNT.zip". [Or use below link to download].&lt;p&gt;&lt;a href="http://updates.oracle.com/ARULink/Download/process_form/p5654905_92070_WINNT.zip?file_id=18784604&amp;aru=8927462"&gt;http://updates.oracle.com/ARULink/Download/process_form/p5654905_92070_WINNT.zip?file_id=18784604&amp;amp;aru=8927462&lt;/a&gt;&lt;br /&gt;&lt;p&gt;&lt;u&gt;&lt;b&gt;2.3. Oracle JVM Patch # 5047902&lt;/b&gt;&lt;/u&gt;&lt;br /&gt;&lt;p align="justify"&gt;"metalink.oracle.com" -&amp;gt; "Patch &amp; Updates" -&amp;gt; "Simple Search" provide "5047902" as patch number, Select "Microsoft Windows (32 bit)" as platform and click "Go". Download the 9.2.0.7 release, downloaded file name would be "p5047902_92070_GENERIC.zip". [Or use below link to download].&lt;br /&gt;&lt;p&gt;&lt;a href="https://updates.oracle.com/ARULink/PatchDetails/process_form?patch_num=5047902&amp;release=8092070&amp;amp;plat_lang=2000P&amp;patch_num_id=682328"&gt;https://updates.oracle.com/ARULink/PatchDetails/process_form?patch_num=5047902&amp;amp;release=8092070&amp;plat_lang=2000P&amp;amp;patch_num_id=682328&lt;/a&gt;&lt;br /&gt;&lt;p&gt;Unzip all the above three zip files (patches) in the appropriate folders and following is the folder structure created in Database Server:&lt;br /&gt;&lt;p&gt;&lt;u&gt;Example:&lt;/u&gt;&lt;br&gt;Folder called "D:\5548107" for patch 5548107&lt;br&gt;Folder called "D:\5654905" for patch 5654905&lt;br&gt;Folder called "D:\5047902" for patch 5047902&lt;br&gt; Read the README.txt present in the respective unzipped folder for further information about the patches.&lt;p&gt;&lt;u&gt;&lt;b&gt;&lt;a name="3. Shutdown and Reboot"&gt;&lt;span style="font-size:130%;"&gt;3. Shutdown and Reboot&lt;/span&gt;&lt;/a&gt;&lt;/b&gt;&lt;/u&gt;&lt;br /&gt;&lt;p align="justify"&gt;&lt;u&gt;&lt;b&gt;3.1. Manual Services&lt;/b&gt;&lt;/u&gt; - Make all the ArcSDE and Oracle Services "Startup Type" as "Manual" if they are "Automatic" [Note down the "Startup Type" of these services prior to the change, will need to reverse it back to the original startup type ("Automatic") after the patch install]. &lt;br /&gt;&lt;p&gt;&lt;u&gt;&lt;b&gt;3.2. Shutdown ArcSDE Service(s): &lt;/b&gt;&lt;/u&gt;&lt;br&gt;&lt;p&gt;&lt;table border="1" style="border-collapse: collapse" bordercolor="#111111" width="550" bgcolor="#808080"&gt;&lt;tr&gt;&lt;td width="505"&gt;&lt;font face="Courier" size="2"&gt;C:\&amp;gt;set ORACLE_SID=TESTORCL&lt;br&gt;C:\&amp;gt;set SDEHOME=C:\esri_sde\ArcSDE\ora9iexe&lt;p&gt;C:\&amp;gt;sdemon -o shutdown -i esri_sde -p &amp;lt;password&amp;gt; -N&lt;p&gt;ArcSDE Instance esri_sde on TESTORCL is Shutdown!&lt;/span&gt;&lt;/td&gt;&lt;/font&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;&lt;br /&gt;&lt;u&gt;&lt;b&gt;3.3. Shutdown Oracle Databases:&lt;/b&gt;&lt;/u&gt; [From command line sqlplus.exe, not the windows sqlplusw.exe] &lt;br /&gt;&lt;p&gt;&lt;table border="1" style="border-collapse: collapse" bordercolor="#111111" width="550" bgcolor="#808080"&gt;&lt;tr&gt;&lt;td width="505"&gt;&lt;font face="Courier" size="2"&gt;SQL&gt; conn sys/&lt;password&gt;@TESTORCL as sysdba&lt;br&gt;Connected.&lt;br&gt;SQL&gt; shutdown immediate;&lt;br&gt;Database closed.&lt;br&gt;Database dismounted.&lt;br&gt;ORACLE instance shut down.&lt;/font&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;&lt;br /&gt;&lt;p&gt;&lt;u&gt;&lt;b&gt;3.4. Stop all Oracle* services:&lt;/b&gt;&lt;/u&gt;&lt;br /&gt;&lt;p&gt;&lt;table border="1" style="border-collapse: collapse" bordercolor="#111111" width="550" bgcolor="#808080"&gt;&lt;tr&gt;&lt;td width="505"&gt;&lt;font face="Courier" size="2"&gt;C:\&gt;net stop OracleServiceTESTORCL&lt;br&gt;The OracleServiceTESTORCL service is stopping.&lt;br&gt;The OracleServiceTESTORCL service was stopped successfully.&lt;p&gt;C:\&gt;net stop OracleOra92TNSListener&lt;br&gt;The OracleOra92TNSListener service is stopping&lt;br&gt;.The OracleOra92TNSListener service was stopped successfully.&lt;/font&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;&lt;br /&gt;&lt;p align="justify"&gt;&lt;u&gt;&lt;b&gt;3.5. Rename bin and reboot server&lt;/b&gt;&lt;/u&gt;&lt;br /&gt;&lt;p&gt;- Rename the "bin" folder in "D:\oracle\ora92" to some other name (Example: "bin_save") and reboot the server.&lt;br&gt;- Once the server comes back up, rename the "bin_save" folder back to "bin" again&lt;br /&gt;&lt;p&gt;&lt;u&gt;&lt;b&gt;&lt;a name="4. Patch Install"&gt;&lt;span style="font-size:130%;"&gt;4. Patch Install&lt;/span&gt;&lt;/a&gt;&lt;/b&gt;&lt;/u&gt;&lt;br /&gt;&lt;u&gt;&lt;a name="4.1. Patch  5548107"&gt;&lt;b&gt;4.1. Patch # 5548107&lt;/b&gt;&lt;/a&gt;&lt;/u&gt;&lt;a name="4.1. Patch  5548107"&gt;&lt;/a&gt;[Interim Patch for Bug: 5548107]. Patch the Oracle Home (Run only once for an Oracle Home): &lt;br /&gt;&lt;p&gt;&lt;table border="1" style="border-collapse: collapse" bordercolor="#111111" width="650" bgcolor="#808080"&gt;&lt;tr&gt;&lt;td width="645"&gt;&lt;font face="Courier" size="2"&gt;-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-&lt;br&gt;D:\&amp;gt;set ORACLE_HOME=D:\ORACLE\ORA92&lt;br&gt;&lt;br&gt;D:\&amp;gt;cd 5548107&lt;br&gt;&lt;br&gt;D:\5548107&amp;gt;opatch lsinventory&lt;br&gt;&lt;br&gt;Oracle Interim Patch Installer version 1.0.0.0.56&lt;br&gt;Copyright (c) 2006 Oracle Corporation. All Rights Reserved..&lt;br&gt;&lt;br&gt;We recommend you refer to the OPatch documentation under&lt;br&gt;OPatch/docs for usage reference. We also recommend using&lt;br&gt;the latest OPatch version. For the latest OPatch version&lt;br&gt;and other support related issues, please refer to document&lt;br&gt;293369.1 which is viewable from metalink.oracle.com&lt;br&gt;&lt;br&gt;Oracle Home : D:\ORACLE\ORA92&lt;br&gt;Oracle Home Inventory : D:\ORACLE\ORA92\inventory&lt;br&gt;Central Inventory : C:\Program Files\oracle\inventory&lt;br&gt;from : N/A&lt;br&gt;OUI location : D:\ORACLE\ORA92\oui&lt;br&gt;OUI shared library : D:\ORACLE\ORA92\oui\lib\win32\oraInstaller.dll&lt;br&gt;Java location : &amp;quot;D:\ORACLE\ORA92\jre\1.4.2\bin\java.exe&amp;quot;&lt;br&gt;Log file location : D:\ORACLE\ORA92/.patch_storage/&amp;lt;patch ID&amp;gt;/*.log&lt;br&gt;&lt;br&gt;Creating log file &amp;quot;D:\oracle\ora92\.patch_storage\LsInventory__02-28-2007_16-02-35.log&amp;quot;&lt;br&gt;&lt;br&gt;Result:&lt;br&gt;&lt;br&gt;&lt;br&gt;Installed Patch List:&lt;br&gt;=====================&lt;br&gt;1) Patch 5548107 applied on Wed Feb 28 15:28:38 EST 2007&lt;br&gt;[ Base Bug(s): 5548107 ]&lt;br&gt;&lt;br&gt;&lt;br&gt;&lt;br&gt;&lt;br&gt;OPatch succeeded.&lt;br&gt;OPatch returns with error code = 0&lt;br&gt;&lt;br&gt;-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-&lt;br&gt;&lt;br&gt;D:\5548107&amp;gt;opatch apply&lt;br&gt;&lt;br&gt;Oracle Interim Patch Installer version 1.0.0.0.56&lt;br&gt;Copyright (c) 2006 Oracle Corporation. All Rights Reserved..&lt;br&gt;&lt;br&gt;We recommend you refer to the OPatch documentation under&lt;br&gt;OPatch/docs for usage reference. We also recommend using&lt;br&gt;the latest OPatch version. For the latest OPatch version&lt;br&gt;and other support related issues, please refer to document&lt;br&gt;293369.1 which is viewable from metalink.oracle.com&lt;br&gt;&lt;br&gt;Oracle Home : D:\ORACLE\ORA92&lt;br&gt;Oracle Home Inventory : D:\ORACLE\ORA92\inventory&lt;br&gt;Central Inventory : C:\Program Files\oracle\inventory&lt;br&gt;from : N/A&lt;br&gt;OUI location : D:\ORACLE\ORA92\oui&lt;br&gt;OUI shared library : D:\ORACLE\ORA92\oui\lib\win32\oraInstaller.dll&lt;br&gt;Java location : &amp;quot;D:\ORACLE\ORA92\jre\1.4.2\bin\java.exe&amp;quot;&lt;br&gt;Log file location : D:\ORACLE\ORA92/.patch_storage/&amp;lt;patch ID&amp;gt;/*.log&lt;br&gt;&lt;br&gt;Creating log file &amp;quot;D:\oracle\ora92\.patch_storage\5548107\Apply_5548107_02-28-2007_16-03-22.log&amp;quot;&lt;br&gt;&lt;br&gt;&lt;br&gt;Subset patches: 5548107,&lt;br&gt;&lt;br&gt;The fixes for Patch 5548107, are included in the patch currently&lt;br&gt;being installed (5548107). OPatch will roll back the subset patch(es) and install the new patch (5548107).&lt;br&gt;&lt;br&gt;&lt;br&gt;Backing up comps.xml ...&lt;br&gt;&lt;br&gt;OPatch detected non-cluster Oracle Home from the inventory and will patch the local system only.&lt;br&gt;&lt;br&gt;&lt;br&gt;Please shut down Oracle instances running out of this ORACLE_HOME&lt;br&gt;(Oracle Home = d:\oracle\ora92)&lt;br&gt;Is this system ready for updating?&lt;br&gt;Please respond Y|N &amp;gt;&lt;br&gt;Y&lt;br&gt;Rolling back patch 5548107...&lt;br&gt;&lt;br&gt;Creating log file quot;D:\oracle\ora92\.patch_storage\5548107\RollBack_5548107_02-28&lt;br&gt;-2007_16-03-39.log&amp;quot;&lt;br&gt;&lt;br&gt;Rolling back with all-node mode.&lt;br&gt;OPatch detected non-cluster Oracle Home from the inventory and will patch the local system only.&lt;br&gt;&lt;br&gt;Oracle instances have been shut down, proceeding with auto-rollback.&lt;br&gt;&lt;br&gt;Removing patch 5548107...&lt;br&gt;&lt;br&gt;Restoring copied files...&lt;br&gt;&lt;br&gt;&lt;br&gt;Warning: Cannot restore the file&lt;br&gt;&amp;quot;d:\oracle\ora92\rdbms\admin\utltzuv2.sql&amp;quot;&lt;br&gt;as OPatch can't find backup file, so it is backed up as&lt;br&gt;quot;d:\oracle\ora92\rdbms\admin\utltzuv2.sql_removed_5548107&amp;quot;&lt;br&gt;&lt;br&gt;Updating inventory...&lt;br&gt;&lt;br&gt;Back to applying patch 5548107...&lt;br&gt;&lt;br&gt;Backing up 2nd copy of comps.xml ...&lt;br&gt;&lt;br&gt;Applying patch 5548107...&lt;br&gt;&lt;br&gt;Patching jar files...&lt;br&gt;&lt;br&gt;Patching copy files...&lt;br&gt;&lt;br&gt;&lt;br&gt;&lt;br&gt;Inventory is good and does not have any dangling patches.&lt;br&gt;&lt;br&gt;&lt;br&gt;Updating inventory...&lt;br&gt;&lt;br&gt;Verifying patch...&lt;br&gt;Backing up comps.xml ...&lt;br&gt;&lt;br&gt;&lt;br&gt;OPatch succeeded.&lt;br&gt;OPatch returns with error code = 0&lt;br&gt;-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-&lt;/font&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;&lt;br /&gt;&lt;p align="justify"&gt;&lt;u&gt;&lt;b&gt;Optional:&lt;/b&gt;&lt;/u&gt; Patch 5548107 will create a file called "utltzuv2.sql" in the "ORACLE_HOME\rdbms\admin" folder, this script is to check if TIMESTAMP WITH TIME ZONE data is stored in the database. Refer to Metalink document "Usage of utltzuv2.sql before updating time zone files in Oracle 9 &lt;a href="https://metalink.oracle.com/metalink/plsql/showdoc?db=NOT&amp;id=396670.1"&gt;Note: 396670.1&lt;/a&gt;" for further details.&lt;br /&gt;&lt;p&gt;&lt;b&gt;&lt;u&gt;&lt;a name="4.2. Patch  5654905"&gt;4.2. Patch # 5654905&lt;/a&gt;&lt;/u&gt;&lt;/b&gt; [Critical patch update 9.2.0.7 Patch 15] &lt;br /&gt;&lt;p&gt;&lt;u&gt;&lt;b&gt;4.2.1. Patch the Oracle Home &lt;/b&gt;(Run once for each Oracle Home)&lt;/u&gt;:&lt;br /&gt;&lt;p&gt;&lt;table border="1" style="border-collapse: collapse" bordercolor="#111111" width="650" bgcolor="#808080"&gt;&lt;tr&gt;&lt;td width="645"&gt;&lt;font face="Courier" size="2"&gt;-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-&lt;br&gt;D:\&amp;gt;cd D:\5654905&lt;br&gt;&lt;br&gt;set ORACLE_HOME=D:\ORACLE\ORA92&lt;br&gt;&lt;br&gt;D:\5654905&amp;gt;opatch lsinventory&lt;br&gt;&lt;br&gt;Oracle Interim Patch Installer version 1.0.0.0.56&lt;br&gt;Copyright (c) 2006 Oracle Corporation. All Rights Reserved..&lt;br&gt;&lt;br&gt;We recommend you refer to the OPatch documentation under&lt;br&gt;OPatch/docs for usage reference. We also recommend using&lt;br&gt;the latest OPatch version. For the latest OPatch version&lt;br&gt;and other support related issues, please refer to document&lt;br&gt;293369.1 which is viewable from metalink.oracle.com&lt;br&gt;&lt;br&gt;Oracle Home : D:\ORACLE\ORA92&lt;br&gt;Oracle Home Inventory : D:\ORACLE\ORA92\inventory&lt;br&gt;Central Inventory : C:\Program Files\oracle\inventory&lt;br&gt;from : N/A&lt;br&gt;OUI location : D:\ORACLE\ORA92\oui&lt;br&gt;OUI shared library : D:\ORACLE\ORA92\oui\lib\win32\oraInstaller.dll&lt;br&gt;Java location : &amp;quot;D:\ORACLE\ORA92\jre\1.4.2\bin\java.exe&amp;quot;&lt;br&gt;Log file location : D:\ORACLE\ORA92/.patch_storage/&amp;lt;patch ID&amp;gt;/*.log&lt;br&gt;&lt;br&gt;Creating log file &amp;quot;D:\oracle\ora92\.patch_storage\LsInventory__02-28-2007_16-19-&lt;br&gt;55.log&amp;quot;&lt;br&gt;&lt;br&gt;Result:&lt;br&gt;&lt;br&gt;&lt;br&gt;Installed Patch List:&lt;br&gt;=====================&lt;br&gt;1) Patch 5548107 applied on Wed Feb 28 16:04:19 EST 2007&lt;br&gt;[ Base Bug(s): 5548107 ]&lt;br&gt;&lt;br&gt;&lt;br&gt;&lt;br&gt;&lt;br&gt;OPatch succeeded.&lt;br&gt;OPatch returns with error code = 0&lt;br&gt;&lt;br&gt;-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-&lt;br&gt;&lt;br&gt;D:\5654905&amp;gt;opatch apply&lt;br&gt;&lt;br&gt;Oracle Interim Patch Installer version 1.0.0.0.56&lt;br&gt;Copyright (c) 2006 Oracle Corporation. All Rights Reserved..&lt;br&gt;&lt;br&gt;We recommend you refer to the OPatch documentation under&lt;br&gt;OPatch/docs for usage reference. We also recommend using&lt;br&gt;the latest OPatch version. For the latest OPatch version&lt;br&gt;and other support related issues, please refer to document&lt;br&gt;293369.1 which is viewable from metalink.oracle.com&lt;br&gt;&lt;br&gt;Oracle Home : D:\ORACLE\ORA92&lt;br&gt;Oracle Home Inventory : D:\ORACLE\ORA92\inventory&lt;br&gt;Central Inventory : C:\Program Files\oracle\inventory&lt;br&gt;from : N/A&lt;br&gt;OUI location : D:\ORACLE\ORA92\oui&lt;br&gt;OUI shared library : D:\ORACLE\ORA92\oui\lib\win32\oraInstaller.dll&lt;br&gt;Java location : &amp;quot;D:\ORACLE\ORA92\jre\1.4.2\bin\java.exe&amp;quot;&lt;br&gt;Log file location : D:\ORACLE\ORA92/.patch_storage/&amp;lt;patch ID&amp;gt;/*.log&lt;br&gt;&lt;br&gt;Creating log file &amp;quot;D:\oracle\ora92\.patch_storage\5654905\Apply_5654905_02-28-20&lt;br&gt;07_16-21-12.log&amp;quot;&lt;br&gt;&lt;br&gt;Backing up comps.xml ...&lt;br&gt;&lt;br&gt;OPatch detected non-cluster Oracle Home from the inventory and will patch the local system only.&lt;br&gt;&lt;br&gt;&lt;br&gt;Please shut down Oracle instances running out of this ORACLE_HOME&lt;br&gt;(Oracle Home = d:\oracle\ora92)&lt;br&gt;Is this system ready for updating?&lt;br&gt;Please respond Y|N &amp;gt;&lt;br&gt;Y&lt;br&gt;Executing the Apply pre-patch script (D:\5654905\custom\scripts\pre.bat)...&lt;br&gt;Applying patch 5654905...&lt;br&gt;&lt;br&gt;Patching jar files...&lt;br&gt;&lt;br&gt;Patching copy files...&lt;br&gt;&lt;br&gt;Creating new directory &amp;quot;d:\oracle\ora92\cpu\cpujan2007\owa_all\30&amp;quot;&lt;br&gt;Creating new directory &amp;quot;d:\oracle\ora92\cpu\cpujan2007\owa_all\90&amp;quot;&lt;br&gt;Creating new directory &amp;quot;d:\oracle\ora92\cpu\cpujan2007\owa_all\101&amp;quot;&lt;br&gt;Creating file to hold list of directories that were mkdir'ed: &amp;quot;D:\oracle\ora92\.patch_storage\5654905\opatch_dirs_created.lst&amp;quot;&lt;br&gt;&lt;br&gt;&lt;br&gt;Inventory is good and does not have any dangling patches.&lt;br&gt;&lt;br&gt;&lt;br&gt;Updating inventory...&lt;br&gt;&lt;br&gt;Verifying patch...&lt;br&gt;Backing up comps.xml ...&lt;br&gt;&lt;br&gt;*****************************************************************&lt;br&gt;&lt;br&gt;** ATTENTION **&lt;br&gt;&lt;br&gt;** **&lt;br&gt;&lt;br&gt;** Please note that the Security Patch Installation (Patch Deinstallation) is **&lt;br&gt;&lt;br&gt;** not complete until all the Post Installation (Post Deinstallation) **&lt;br&gt;&lt;br&gt;** instructions noted in the Readme accompanying this patch, have been **&lt;br&gt;&lt;br&gt;** successfully completed. **&lt;br&gt;&lt;br&gt;** **&lt;br&gt;&lt;br&gt;*****************************************************************&lt;br&gt;&lt;br&gt;*****************************************************************&lt;br&gt;&lt;br&gt;Executing the Apply post-patch script (D:\5654905\custom\scripts\post.bat)...&lt;br&gt;&lt;br&gt;OPatch succeeded.&lt;br&gt;OPatch returns with error code = 0&lt;br&gt;-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-&lt;br&gt;D:\5654905&amp;gt;cscript //nologo remove_demo.js&lt;br&gt;ORACLE_HOME is set to D:\ORACLE\ORA92&lt;br&gt;This script will remove the Vulnerable OHS Demos %ORACLE_HOME%/Apache/Apache/fcgi-bin/echo*&lt;br&gt;Please note that you will NOT be able to restore these demos after removing,&lt;br&gt;if you may want to restore these demos, please manually backup all the files under&lt;br&gt;%ORACLE_HOME%/Apache/Apache/fcgi-bin/ directory, and then rerun remove_demo.js&lt;br&gt;Continue to remove the Vulnerable OHS Demos? Please respond Y|[N] =&amp;gt;&lt;br&gt;Y&lt;br&gt;Removing the Vulnerable OHS Demos...&lt;br&gt;Patch Installation Script Completed&lt;br&gt;-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-&lt;/font&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;&lt;br /&gt;&lt;u&gt;&lt;b&gt;&lt;a name="4.2.2. Patch the Databases"&gt;4.2.2. Patch the Databases &lt;/a&gt;(run for each database if multiple instances running)&lt;/b&gt;&lt;/u&gt;&lt;br /&gt;&lt;p&gt;&lt;u&gt;&lt;b&gt;4.2.2.1. Database: TESTORCL&lt;/b&gt;&lt;/u&gt;&lt;br /&gt;&lt;p&gt;&lt;table border="1" style="border-collapse: collapse" bordercolor="#111111" width="650" bgcolor="#808080"&gt;&lt;tr&gt;&lt;td width="645"&gt;&lt;font face="Courier" size="2"&gt;&lt;p&gt;C:\&amp;gt;net start OracleOra92TNSListener&lt;br&gt;The OracleOra92TNSListener service is starting.&lt;br&gt;The OracleOra92TNSListener service was started successfully.&lt;br&gt;&lt;br&gt;C:\&amp;gt;net start OracleServiceTESTORCL&lt;br&gt;The OracleServiceTESTORCL service is starting.&lt;br&gt;The OracleServiceTESTORCL service was started successfully.&lt;br&gt;&lt;br&gt;C:\&amp;gt;D:&lt;br&gt;&lt;br&gt;D:\&amp;gt;cd D:\oracle\ora92\cpu\cpujan2007&lt;br&gt;&lt;br&gt;D:\oracle\ora92\cpu\cpujan2007&amp;gt;sqlplus &amp;quot;sys/&amp;lt;password&amp;gt;@TESTORCL as sysdba&amp;quot;&lt;br&gt;&lt;br&gt;SQL*Plus: Release 9.2.0.7.0 - Production on Wed Feb 28 16:35:05 2007&lt;br&gt;&lt;br&gt;Copyright (c) 1982, 2002, Oracle Corporation. All rights reserved.&lt;br&gt;&lt;br&gt;Connected to an idle instance.&lt;br&gt;&lt;br&gt;SQL&amp;gt; startup&lt;br&gt;ORACLE instance started.&lt;br&gt;&lt;br&gt;Total System Global Area 630268612 bytes&lt;br&gt;Fixed Size 455364 bytes&lt;br&gt;Variable Size 285212672 bytes&lt;br&gt;Database Buffers 343932928 bytes&lt;br&gt;Redo Buffers 667648 bytes&lt;br&gt;Database mounted.&lt;br&gt;Database opened.&lt;br&gt;-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-&lt;br&gt;&lt;br&gt;@catcpu.sql&lt;br&gt;...&lt;br&gt;...&lt;br&gt;No. of Invalid Objects is :50&lt;br&gt;Please refer to README.html to for instructions on validating these objects&lt;br&gt;Logfile for the current catcpu.sql session is : APPLY_SDE_28Feb2007_16_36_40.log&lt;br&gt;&lt;br&gt;not spooling currently&lt;br&gt;&lt;br&gt;SQL&amp;gt; select status,count(*) from dba_objects group by status order by 1;&lt;br&gt;&lt;br&gt;STATUS COUNT(*)&lt;br&gt;------- ----------&lt;br&gt;INVALID 60&lt;br&gt;VALID 33031&lt;br&gt;&lt;br&gt;SQL&amp;gt; exit&lt;br&gt;Disconnected from Oracle9i Enterprise Edition Release 9.2.0.7.0 - Production&lt;br&gt;With the OLAP and Oracle Data Mining options&lt;br&gt;JServer Release 9.2.0.7.0 - Production&lt;br&gt;&lt;br&gt;D:\oracle\ora92\cpu\cpujan2007&amp;gt;cd ../..&lt;br&gt;&lt;br&gt;D:\oracle\ora92&amp;gt;cd rdbms/admin&lt;br&gt;&lt;br&gt;D:\oracle\ora92\rdbms\admin&amp;gt; sqlplus &amp;quot;sys/&amp;lt;password&amp;gt;@TESTORCL as sysdba&amp;quot;&lt;br&gt;&lt;br&gt;SQL*Plus: Release 9.2.0.7.0 - Production on Wed Feb 28 16:43:07 2007&lt;br&gt;&lt;br&gt;Copyright (c) 1982, 2002, Oracle Corporation. All rights reserved.&lt;br&gt;&lt;br&gt;&lt;br&gt;Connected to:&lt;br&gt;Oracle9i Enterprise Edition Release 9.2.0.7.0 - Production&lt;br&gt;With the OLAP and Oracle Data Mining options&lt;br&gt;JServer Release 9.2.0.7.0 - Production&lt;br&gt;&lt;br&gt;-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-&lt;br&gt;&lt;br&gt;SQL&amp;gt; @utlrp.sql&lt;br&gt;&lt;br&gt;PL/SQL procedure successfully completed.&lt;br&gt;&lt;br&gt;Table created.&lt;br&gt;...&lt;br&gt;...&lt;br&gt;PL/SQL procedure successfully completed.&lt;br&gt;&lt;br&gt;SQL&amp;gt; select status,count(*) from dba_objects group by status order by 1;&lt;br&gt;&lt;br&gt;STATUS COUNT(*)&lt;br&gt;------- ----------&lt;br&gt;INVALID 2&lt;br&gt;VALID 33079&lt;br&gt;&lt;br&gt;SQL&amp;gt; column owner format a15&lt;br&gt;SQL&amp;gt; column object_name format a25&lt;br&gt;SQL&amp;gt; column object_type format a25&lt;br&gt;SQL&amp;gt; select owner,object_name, object_type from dba_objects where status &amp;lt;&amp;gt; &lt;br&gt;'VALID' order by 1,2,3;&lt;br&gt;&lt;br&gt;OWNER OBJECT_NAME OBJECT_TYPE&lt;br&gt;--------------- ------------------------- -------------------------&lt;br&gt;TEST_ATT P_UPD_SALE_PRICE PROCEDURE&lt;br&gt;TEST_BTT P_UPD_SALE_PRICE PROCEDURE&lt;br&gt;&lt;/font&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;&lt;br /&gt;&lt;u&gt;&lt;b&gt;Shutdown and Restart TESTORCL database, and start ArcSDE Service esri_sde&lt;br /&gt;&lt;/b&gt;&lt;/u&gt;&lt;br /&gt;&lt;table border="1" style="border-collapse: collapse" bordercolor="#111111" width="650" bgcolor="#808080"&gt;&lt;tr&gt;&lt;td width="645"&gt;&lt;font face="Courier" size="2"&gt;&lt;p&gt;SQL&amp;gt; shutdown immediate;&lt;br&gt;Database closed.&lt;br&gt;Database dismounted.&lt;br&gt;ORACLE instance shut down.&lt;br&gt;SQL&amp;gt; startup&lt;br&gt;ORACLE instance started.&lt;br&gt;&lt;br&gt;Total System Global Area 630268612 bytes&lt;br&gt;Fixed Size 455364 bytes&lt;br&gt;Variable Size 285212672 bytes&lt;br&gt;Database Buffers 343932928 bytes&lt;br&gt;Redo Buffers 667648 bytes&lt;br&gt;Database mounted.&lt;br&gt;Database opened.&lt;br&gt;SQL&amp;gt; exit&lt;br&gt;Disconnected from Oracle9i Enterprise Edition Release 9.2.0.7.0 - Production&lt;br&gt;With the OLAP and Oracle Data Mining options&lt;br&gt;JServer Release 9.2.0.7.0 - Production&lt;br&gt;&lt;br&gt;D:\oracle\ora92\rdbms\admin&amp;gt;set ORACLE_SID=TESTORCL&lt;br&gt;&lt;br&gt;D:\oracle\ora92\rdbms\admin&amp;gt;set SDEHOME=C:\esri_sde\ArcSDE\ora9iexe&lt;br&gt;&lt;br&gt;D:\oracle\ora92\rdbms\admin&amp;gt;sdemon -o start -i esri_sde -p &amp;lt;password&amp;gt;&lt;br&gt;ArcSDE Instance esri_sde started Wed Feb 28 16:53:16 2007&lt;/p&gt;&lt;/font&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;&lt;br /&gt;&lt;p align="justify"&gt;&lt;u&gt;&lt;b&gt;Testing: &lt;/b&gt;&lt;/u&gt;Using ArcCatalog, connect to Vector (esri_sde) and see if the connection succeeds and able to view the layers. Tested and it worked.&lt;br /&gt;&lt;p&gt;&lt;u&gt;&lt;b&gt;&lt;a name="4.3. Patch  5047902"&gt;4.3. Patch # 5047902&lt;/a&gt;&lt;/b&gt;&lt;/u&gt; [Oracle JVM TimeZone - Interim Patch for bug 5047902]&lt;br /&gt;&lt;p&gt;&lt;u&gt;&lt;b&gt;4.3.1.&lt;/b&gt;&lt;/u&gt; Shutdown all ArcSDE Services and Oracle Databases [as described in section 3.2 through 3.4].&lt;br /&gt;&lt;p align="justify"&gt;&lt;u&gt;&lt;b&gt;4.3.2.&lt;/b&gt;&lt;/u&gt; Move file "orajox9java_util.dll" from "D:\oracle\ora92\javavm\admin" to some other (backup) folder and ensure that the file is backed up and not present in "ORACLE_HOME\javavm\admin" folder.&lt;br /&gt;&lt;p&gt;&lt;b&gt;&lt;u&gt;4.3.3. Patch the Oracle Home (Run only once for an Oracle Home): &lt;/u&gt;&lt;/b&gt;&lt;br /&gt;&lt;p&gt;&lt;table border="1" style="border-collapse: collapse" bordercolor="#111111" width="650" bgcolor="#808080"&gt;&lt;tr&gt;&lt;td width="645"&gt;&lt;font face="Courier" size="2"&gt;&lt;p&gt;D:\5654905&amp;gt;cd ../5047902&lt;br&gt;&lt;br&gt;D:\5047902&amp;gt;opatch apply&lt;br&gt;&lt;br&gt;Oracle Interim Patch Installer version 1.0.0.0.56&lt;br&gt;Copyright (c) 2006 Oracle Corporation. All Rights Reserved..&lt;br&gt;&lt;br&gt;We recommend you refer to the OPatch documentation under&lt;br&gt;OPatch/docs for usage reference. We also recommend using&lt;br&gt;the latest OPatch version. For the latest OPatch version&lt;br&gt;and other support related issues, please refer to document&lt;br&gt;293369.1 which is viewable from metalink.oracle.com&lt;br&gt;&lt;br&gt;Oracle Home : D:\ORACLE\ORA92&lt;br&gt;Oracle Home Inventory : D:\ORACLE\ORA92\inventory&lt;br&gt;Central Inventory : C:\Program Files\oracle\inventory&lt;br&gt;from : N/A&lt;br&gt;OUI location : D:\ORACLE\ORA92\oui&lt;br&gt;OUI shared library : D:\ORACLE\ORA92\oui\lib\win32\oraInstaller.dll&lt;br&gt;Java location : &amp;quot;D:\ORACLE\ORA92\jre\1.4.2\bin\java.exe&amp;quot;&lt;br&gt;Log file location : D:\ORACLE\ORA92/.patch_storage/&amp;lt;patch ID&amp;gt;/*.log&lt;br&gt;&lt;br&gt;Creating log file &amp;quot;D:\oracle\ora92\.patch_storage\5047902\Apply_5047902_02-28-20&lt;br&gt;07_17-53-12.log&amp;quot;&lt;br&gt;&lt;br&gt;Backing up comps.xml ...&lt;br&gt;&lt;br&gt;OPatch detected non-cluster Oracle Home from the inventory and will patch the lo&lt;br&gt;cal system only.&lt;br&gt;&lt;br&gt;&lt;br&gt;Please shut down Oracle instances running out of this ORACLE_HOME&lt;br&gt;(Oracle Home = d:\oracle\ora92)&lt;br&gt;Is this system ready for updating?&lt;br&gt;Please respond Y|N &amp;gt;&lt;br&gt;Y&lt;br&gt;Applying patch 5047902...&lt;br&gt;&lt;br&gt;Patching jar files...&lt;br&gt;&lt;br&gt;Patching copy files...&lt;br&gt;&lt;br&gt;&lt;br&gt;&lt;br&gt;Inventory is good and does not have any dangling patches.&lt;br&gt;&lt;br&gt;&lt;br&gt;Updating inventory...&lt;br&gt;&lt;br&gt;Verifying patch...&lt;br&gt;Backing up comps.xml ...&lt;br&gt;&lt;br&gt;&lt;br&gt;OPatch succeeded.&lt;br&gt;OPatch returns with error code = 0&lt;br&gt;&lt;br&gt;D:\5047902&amp;gt;opatch lsinventory&lt;br&gt;&lt;br&gt;Oracle Interim Patch Installer version 1.0.0.0.56&lt;br&gt;Copyright (c) 2006 Oracle Corporation. All Rights Reserved..&lt;br&gt;&lt;br&gt;We recommend you refer to the OPatch documentation under&lt;br&gt;OPatch/docs for usage reference. We also recommend using&lt;br&gt;the latest OPatch version. For the latest OPatch version&lt;br&gt;and other support related issues, please refer to document&lt;br&gt;293369.1 which is viewable from metalink.oracle.com&lt;br&gt;&lt;br&gt;Oracle Home : D:\ORACLE\ORA92&lt;br&gt;Oracle Home Inventory : D:\ORACLE\ORA92\inventory&lt;br&gt;Central Inventory : C:\Program Files\oracle\inventory&lt;br&gt;from : N/A&lt;br&gt;OUI location : D:\ORACLE\ORA92\oui&lt;br&gt;OUI shared library : D:\ORACLE\ORA92\oui\lib\win32\oraInstaller.dll&lt;br&gt;Java location : &amp;quot;D:\ORACLE\ORA92\jre\1.4.2\bin\java.exe&amp;quot;&lt;br&gt;Log file location : D:\ORACLE\ORA92/.patch_storage/&amp;lt;patch ID&amp;gt;/*.log&lt;br&gt;&lt;br&gt;Creating log file &amp;quot;D:\oracle\ora92\.patch_storage\LsInventory__02-28-2007_17-55-&lt;br&gt;09.log&amp;quot;&lt;br&gt;&lt;br&gt;Result:&lt;br&gt;&lt;br&gt;&lt;br&gt;Installed Patch List:&lt;br&gt;=====================&lt;br&gt;1) Patch 5047902 applied on Wed Feb 28 17:54:56 EST 2007&lt;br&gt;[ Base Bug(s): 5047902 ]&lt;br&gt;2) Patch 5654905 applied on Wed Feb 28 16:24:22 EST 2007&lt;br&gt;[ Base Bug(s): 4605400 4315431 3801082 3721136 4741071 4572340 5211863 444&lt;br&gt;8018 4192148 4049345 4047167 4544805 4908162 5411847 2838218 4928723 5250979 404&lt;br&gt;7969 5059488 3975758 4589659 4872999 3344331 4523125 3350337 4162272 4925103 412&lt;br&gt;4059 5242644 5064363 5500873 4708037 5250980 5064365 4379241 4632780 4547641 475&lt;br&gt;1923 4751528 5225794 4499035 5654905 4547566 5188596 4748597 5689875 3125250 462&lt;br&gt;5102 2701372 5021708 5049060 3904125 4523371 4083461 5049062 4656033 5212539 324&lt;br&gt;3584 3667025 4721492 3807408 3396162 4947132 4950942 4964703 4754842 4684373 456&lt;br&gt;7733 2595474 4519477 4567971 3967276 4715022 2816302 4312390 4107544 4329304 501&lt;br&gt;5557 4427475 4607458 4007599 4134994 4536817 4248629 4573980 4923667 4434689 457&lt;br&gt;0598 4917666 4287891 4409977 3799129 4294948 4627859 4718976 4969880 4869694 400&lt;br&gt;8013 4689959 5025840 3101559 4900129 3098032 5249142 4285404 4308824 4369235 463&lt;br&gt;2494 4618715 3429960 4592382 4335559 3984145 3684772 3857781 4687386 4288876 461&lt;br&gt;0323 5116414 3281270 4036921 4253914 4121749 5290940 5490841 4257473 4446528 454&lt;br&gt;8339 3328894 3937981 4449595 4398475 4727589 3879892 4402255 3206617 4369410 518&lt;br&gt;8321 4486132 4207529 3351594 5490931 4727517 4523577 5694714 4593537 3816595 493&lt;br&gt;9157 5382965 4567854 4579590 4659781 4939797 4529007 4275234 2709343 5045474 432&lt;br&gt;2477 4627335 3383661 4695511 2467239 4483951 4188472 4658188 3889156 4599763 469&lt;br&gt;7938 ]&lt;br&gt;3) Patch 5548107 applied on Wed Feb 28 16:04:19 EST 2007&lt;br&gt;[ Base Bug(s): 5548107 ]&lt;br&gt;&lt;br&gt;&lt;br&gt;&lt;br&gt;&lt;br&gt;OPatch succeeded.&lt;br&gt;OPatch returns with error code = 0&lt;/p&gt;&lt;/font&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;&lt;br /&gt;&lt;u&gt;&lt;b&gt;4.3.4.&lt;/b&gt;&lt;/u&gt; Startup Oracle Databases and respective ArcSDE Services [use section 4.2.2.1. for startup command usage] and below Create JAVA in each databases.&lt;p&gt;&lt;table border="1" style="border-collapse: collapse" bordercolor="#111111" width="650" bgcolor="#808080"&gt;&lt;tr&gt;&lt;td width="645"&gt;&lt;font face="Courier" size="2"&gt;&lt;p&gt;D:\oracle\ora92\rdbms\admin&amp;gt;sqlplus &amp;quot;sys/&amp;lt;password&amp;gt;@TESTORCL as sysdba&amp;quot;&lt;br&gt;&lt;br&gt;SQL*Plus: Release 9.2.0.7.0 - Production on Wed Feb 28 18:01:33 2007&lt;br&gt;&lt;br&gt;Copyright (c) 1982, 2002, Oracle Corporation. All rights reserved.&lt;br&gt;&lt;br&gt;&lt;br&gt;Connected to:&lt;br&gt;Oracle9i Enterprise Edition Release 9.2.0.7.0 - Production&lt;br&gt;With the OLAP and Oracle Data Mining options&lt;br&gt;JServer Release 9.2.0.7.0 - Production&lt;br&gt;&lt;br&gt;SQL&amp;gt; CREATE OR REPLACE JAVA SYSTEM&lt;br&gt;2 /&lt;br&gt;&lt;br&gt;Java created. &lt;/p&gt;&lt;/font&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;&lt;br /&gt;&lt;u&gt;&lt;b&gt;4.3.5.&lt;/b&gt;&lt;/u&gt; Make ArcSDE and Oracle Services "Startup Type" to "Automatic" if they were originally "Automatic" (refer section 3.1).&lt;br /&gt;&lt;p align="justify"&gt;&lt;u&gt;&lt;b&gt;&lt;a name="5. Final Testing"&gt;&lt;span style="font-size:130%;"&gt;5. Final Testing&lt;/span&gt;&lt;/a&gt;&lt;span style="font-size:130%;"&gt;:&lt;/span&gt;&lt;/b&gt;&lt;/u&gt; Shutdown ArcSDE Services and Oracle Databases, reboot the machine, once the machine comes up, startup Oracle Database and ArcSDE Services and connect it from ArcCatalog and other front end applications.&lt;p&gt;&lt;u&gt;&lt;b&gt;&lt;a name="Part 2 - Install DST Patches in Oracle 9.2.0.7 Client Machines"&gt;&lt;br /&gt;&lt;span style="font-size:130%;"&gt;Part 2 - Install DST Patches in Oracle 9.2.0.7 Client Machines&lt;/span&gt;&lt;/a&gt;&lt;/b&gt;&lt;/u&gt;&lt;br /&gt;&lt;p align="justify"&gt;1. Backup/move (create a folder, example "old_28Feb2007") the existing "timezlrg.dat" and "timezone.dat" files present in "ORACLE_HOME\oracore\zoneinfo" to the new folder ("old_28Feb2007").&lt;br /&gt;&lt;p align="justify"&gt;2. Locate the new "timezlrg.dat", "timezone.dat" and "readme.txt" in the "...5654905\files\oracore\zoneinfo" folder where Patch 5654905 is unzipped (or copy it from the DB server where the patch has already been installed) and copy it to "ORACLE_HOME\oracore\zoneinfo".&lt;br /&gt;&lt;p align="right"&gt;&lt;table border="1" cellpadding="0" cellspacing="0" style="border-collapse: collapse" bordercolor="#111111" width="350" bgcolor="#006666"&gt;&lt;tr&gt;&lt;td width="100"&gt;  Author:&lt;/td&gt;&lt;td width="250"&gt;Babu Rangasamy&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td width="100"&gt;Title:&lt;/td&gt;&lt;td width="250"&gt;   GIS and Database Consultant&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td width="100"&gt;Created Date:&lt;/td&gt;&lt;td width="250"&gt;    March 1, 2007&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td width="100"&gt;Contact:&lt;/td&gt;&lt;td width="250"&gt;    Babu.Rangasamy[at]gmail.com&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/2639035620819724618-719374054577934041?l=babumani.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://babumani.blogspot.com/feeds/719374054577934041/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=2639035620819724618&amp;postID=719374054577934041' title='1 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/2639035620819724618/posts/default/719374054577934041'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/2639035620819724618/posts/default/719374054577934041'/><link rel='alternate' type='text/html' href='http://babumani.blogspot.com/2007/03/installation-of-oracle-dst-2007-patches.html' title='Installation of Oracle DST 2007 Patches in Oracle 9.2.0.7 Database and Client Machines'/><author><name>babumani</name><uri>http://www.blogger.com/profile/08434916381222486044</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>1</thr:total></entry><entry><id>tag:blogger.com,1999:blog-2639035620819724618.post-8612245274537267015</id><published>2007-02-08T16:21:00.000-05:00</published><updated>2007-03-12T11:27:55.690-05:00</updated><title type='text'>Impact of DST 2007 (Day Light Saving) on Oracle Databases</title><content type='html'>&lt;p align="justify"&gt;&lt;u&gt;&lt;b&gt;&lt;span style="font-size:130%;"&gt;Daylight Saving Time (DST) - USA - 2007&lt;/span&gt;&lt;/b&gt;&lt;/u&gt;&lt;p&gt;&lt;u&gt;&lt;b&gt;Introduction:&lt;/b&gt;&lt;/u&gt; As per the Energy Policy Act of 2005, DST will start from 2 a.m. on the 2nd Sunday in March and end at 2 a.m. on First Sunday in November [Earlier it used to start at 2 a.m. 1st Sunday in April and end at 2 a.m. Last Sunday in October]. &lt;/p&gt;&lt;p&gt;&lt;u&gt;&lt;b&gt;Spring Forward&lt;/b&gt;&lt;/u&gt;: On 2nd Sunday in March, clock will leap ahead from 1:59 a.m. to 3:00 a.m.&lt;br /&gt;&lt;p&gt;&lt;u&gt;&lt;b&gt;Fall Back:&lt;/b&gt;&lt;/u&gt; On 1st Sunday in November, clock will move back from 1:59 a.m. to 1:00 a.m.&lt;/p&gt;&lt;p align="justify"&gt;&lt;u&gt;&lt;b&gt;Countries Affected:&lt;/b&gt;&lt;/u&gt; Canada and Bermuda are making similar changes to be consistent with USA time changes. Computers and applications running in other countries (who don't follow DST) having associated with computers and applications running in the DST implemented counties could also be affected.&lt;/p&gt;&lt;p align="justify"&gt;&lt;u&gt;&lt;b&gt;Operating System&lt;/b&gt;&lt;/u&gt;: Once the required patch is applied, the system clock will automatically adjust its system time at the beginning and end of DST. Any dependent applications running on the OS will obtain the system time from the system clock. &lt;/p&gt;&lt;p&gt;Microsoft Daylight Saving Time: &lt;a href="http://support.microsoft.com/gp/cp_dst" target="_blank"&gt;Help and Support Center&lt;/a&gt;&lt;/p&gt;&lt;p align="justify"&gt;&lt;strong&gt;&lt;u&gt;How it affects the Oracle Database?&lt;/u&gt;&lt;/strong&gt;: Time zone and DST are used in Oracle database at the below two areas. Hence 2 patches are available, 1 for Time zone files and other for OJVM.&lt;/p&gt;&lt;p align="justify"&gt;&lt;b&gt;&lt;u&gt;[1] Time Zone:&lt;/u&gt; &lt;/b&gt;Applicable only for Oracle 9.x and 10.x. There are two datatypes &lt;b&gt;TIMESTAMP WITH LOCAL TIME ZONE [TSLTZ]&lt;/b&gt; and &lt;b&gt;TIMESTAMP WITH TIME ZONE [TSTZ]&lt;/b&gt; and a function &lt;b&gt;TZ_OFFSET&lt;/b&gt; which obtains their time-zone information from Oracle's time-zone file which comes as a part of Oracle database installation.&lt;/p&gt;&lt;p align="justify"&gt;&lt;u&gt;&lt;b&gt;[1a] Database Server Side:&lt;/b&gt;&lt;/u&gt; &lt;/p&gt;&lt;p align="justify"&gt;If your database uses any of the above (datatypes &lt;b&gt;or/and&lt;/b&gt; functions) &lt;b&gt;and&lt;/b&gt; uses the affected time zones, &lt;b&gt;then patch is required&lt;/b&gt;, otherwise patch is not necessary. A script is available to assess the use of time zone in the database.&lt;/p&gt;&lt;p align="justify"&gt;&lt;u&gt;&lt;b&gt;[1b] Client Side:&lt;/b&gt;&lt;/u&gt; If &lt;b&gt;all&lt;/b&gt; the below conditions are met, then time zone file install is required:-&lt;br /&gt;- connects to the affected database&lt;br /&gt;- time zone data type used by client&lt;br /&gt;- client uses the affected time zone &lt;/p&gt;&lt;p align="justify"&gt;&lt;u&gt;Refer Below Metalink documents:-&lt;/u&gt;&lt;br /&gt;- Effects on client and middle-tier of applying time zone patches on the Oracle Database &lt;a href="https://metalink.oracle.com/metalink/plsql/showdoc?db=NOT&amp;id=396426.1" target="_blank"&gt;Note:396426.1&lt;/a&gt;&lt;br /&gt;- Workarounds when Database time zone patches are not available for your patchset &lt;a href="https://metalink.oracle.com/metalink/plsql/showdoc?db=NOT&amp;amp;id=396387.1" target="_blank"&gt;Note:396387.1&lt;/a&gt;&lt;/p&gt;&lt;p align="justify"&gt;&lt;u&gt;&lt;b&gt;[2] Oracle Java Virtual Machine (OJVM)&lt;/b&gt;&lt;/u&gt; uses time-zone information which is stored in its database. Need to install the patch only on the database side if OJVM is installed, applicable for Oracle database versions from 8.1.7.4 to 10.2.0.3. &lt;p&gt;Here is a typical (9.2) query to check whether OJVM is installed in your database:- &lt;p&gt;&lt;table border="1" style="border-collapse: collapse" bordercolor="#111111" width="650" bgcolor="#808080"&gt;&lt;tr&gt;&lt;td width="645"&gt;&lt;font face="Courier" size="2"&gt;column owner format a10&lt;br&gt;SELECT object_type,&lt;br&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;owner,&lt;br&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;status,&lt;br&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;COUNT(*)&lt;br&gt;&amp;nbsp;FROM dba_objects&lt;br&gt;WHERE object_type LIKE '%JAVA%'&lt;br&gt;GROUP BY object_type,owner,status;&lt;br&gt;OBJECT_TYPE&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; OWNER&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;STATUS&amp;nbsp; COUNT(*)&lt;br&gt;------------------ ---------- ------- ----------&lt;br&gt;JAVA DATA&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; SYS&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; VALID&amp;nbsp;&amp;nbsp; 288&lt;br&gt;JAVA CLASS&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; SYS&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; VALID&amp;nbsp;&amp;nbsp; 9080&lt;br&gt;JAVA CLASS&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; SYS&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; INVALID 1&lt;br&gt;JAVA CLASS&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; ORDSYS&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; VALID&amp;nbsp;&amp;nbsp; 870&lt;br&gt;JAVA CLASS&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; ORDSYS&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; INVALID 12&lt;br&gt;JAVA SOURCE&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; SYS&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; VALID&amp;nbsp;&amp;nbsp; 8&lt;br&gt;JAVA SOURCE&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; ORDSYS&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; VALID&amp;nbsp;&amp;nbsp; 8&lt;br&gt;JAVA RESOURCE&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; SYS&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; VALID&amp;nbsp;&amp;nbsp; 180&lt;br&gt;JAVA RESOURCE&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; ORDSYS&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; VALID&amp;nbsp;&amp;nbsp; 16&lt;p&gt;9 rows selected&lt;/font&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;&lt;br /&gt;Refer to Metalink &lt;a href="https://metalink.oracle.com/metalink/plsql/showdoc?db=NOT&amp;id=397770.1&amp;amp;blackframe=1" target="_blank"&gt;Note:397770.1&lt;/a&gt; [How to Correctly Check if the Oracle JVM is Installed in the Database].&lt;p&gt;&lt;u&gt;&lt;b&gt;[3] Here are the things that you got to do:-&lt;/b&gt;&lt;/u&gt;&lt;/p&gt;&lt;p&gt;[3a] Backup your client and server. &lt;p&gt;[3b] Run re_tz_views.sql [Refer to Metalink &lt;a href="https://metalink.oracle.com/metalink/plsql/showdoc?db=NOT&amp;id=412971.1&amp;amp;blackframe=1" target="_blank"&gt;Note:412971.1&lt;/a&gt; - SCRIPT: cre_tz_views.sql - Assess Time Zone usage in a&lt;br /&gt;Database]&lt;p&gt;&lt;table border="1" style="border-collapse: collapse" bordercolor="#111111" width="650" bgcolor="#808080"&gt;&lt;tr&gt;&lt;td width="645"&gt;&lt;font face="Courier" size="2"&gt;@cre_tz_views.sql&lt;p&gt;spool cre_tz_views_output.txt&lt;p&gt;select * from TZ$TSLTZ_TAB_COLS;&lt;br&gt;select * from TZ$TSLTZ_VW_COLS;&lt;br&gt;select * from TZ$NAMED_TSTZ_TAB_COLS;&lt;br&gt;select * from TZ$NAMED_TSTZ_VW_COLS;&lt;br&gt;select * from TZ$ARGUMENTS;&lt;br&gt;select * from TZ$DBTIMEZONE;&lt;br&gt;select * from TZ$OVERVIEW;&lt;br&gt;select * from TZ$SOURCE;&lt;br&gt;&lt;p&gt;spool off&lt;p&gt;drop function TZ$NAMED_TSTZ_VW_COLS_FN ;&lt;br&gt;drop view TZ$TSLTZ_TAB_COLS ;&lt;br&gt;drop view TZ$TSLTZ_VW_COLS ;&lt;br&gt;drop view TZ$ARGUMENTS ;&lt;br&gt;drop view TZ$SOURCE ;&lt;br&gt;drop view TZ$DBTIMEZONE;&lt;br&gt;drop function TZ$NAMED_TSTZ_TAB_COLS_FN;&lt;br&gt;drop type TSTZ_NAMED_TABLE;&lt;br&gt;drop view TZ$NAMED_TSTZ_TAB_COLS;&lt;br&gt;drop view TZ$NAMED_TSTZ_VW_COLS ;&lt;br&gt;drop view TZ$OVERVIEW ;&lt;/font&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;&lt;br&gt;&lt;table border="1" style="border-collapse: collapse" bordercolor="#111111" width="1300" bgcolor="#808080"&gt;&lt;tr&gt;&lt;td width="1300"&gt;&lt;font face="Courier" size="2"&gt;DBTIMEZONE&lt;br&gt;---------- &lt;br&gt;-04:00 &lt;br&gt;&lt;br&gt;USAGE_TYPE&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; VALUE&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; DESCRIPTION &lt;br&gt;--------------------------- ---------- ------------------------------------------------------------------------&lt;br&gt;DBTIMEZONE&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; -04:00&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; Database Time Zone, if this is an 'offset' then not affected by DST &lt;br&gt;NAMED_TSTZ_TABLE_USE_NONSYS 0&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; Number of TSTZ columns using named time zones in tables not owned by SYS &lt;br&gt;NAMED_TSTZ_TABLE_USE_SYS&amp;nbsp;&amp;nbsp;&amp;nbsp; 0&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; Number of TSTZ columns using named time zones in tables owned by SYS &lt;br&gt;NAMED_TSTZ_VIEW_USE_NONSYS&amp;nbsp; 0&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; Number of TSTZ columns using named time zones in views not owned by SYS &lt;br&gt;NAMED_TSTZ_VIEW_USE_SYS&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 0&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; Number of TSTZ columns using named time zones in views owned by SYS &lt;br&gt;TSLTZ_TABLE_USE&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 0&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; Number of TSLTZ columns used in tables &lt;br&gt;TSLTZ_VIEW_USE&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 0&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; Number of TSLTZ columns used in views &lt;br&gt;TZ_ARGUMENTS&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 0&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; Number of PL/SQL objects with Time Zone arguments &lt;br&gt;&lt;br&gt;OWNER&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; NAME&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; TYPE&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; LINE&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; TEXT &lt;br&gt;--------------- ------------------------------ ------------ ---------- -------------------------------------------------------------------------------------------&lt;br&gt;BABU&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; TESTXSP_STORE_DDL&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; PROCEDURE&amp;nbsp;&amp;nbsp;&amp;nbsp; 25&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; updatedate=systimestamp,RESOURCE_TYPE=IN_RESOURCE_TYPE&lt;br&gt;BABU&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; TESTXSP_STORE_DML&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; PROCEDURE&amp;nbsp;&amp;nbsp;&amp;nbsp; 39&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; IN_BABU_SERVICE,IN_SERVICE_TYPE,IN_ONLINK,IN_CONTENT_TYPE,systimestamp, IN_RESOURCE_TYPE ); &lt;br&gt;BABU&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; CREATE_ONLINE_DOCUMENT &amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; PROCEDURE&amp;nbsp;&amp;nbsp;&amp;nbsp; 13&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; insert into TEST_TAB (ACTTIME) values (systimestamp); &lt;br&gt;BABU_RW&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; B_UPDATE_APPL_ALERT_UPDATE&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; TRIGGER&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 5&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; SELECT SYSTIMESTAMP INTO :NEW.LAST_UPDATE_STARTED FROM dual; &lt;br&gt;BABU_ADMIN&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; B_INSERT_SERVICE_TXT&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; TRIGGER&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 13&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; SELECT SYSTIMESTAMP INTO :NEW.TIME_STAMP FROM dual; &lt;br&gt;BABU_ADMIN&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; B_UPDT_WEB_SERVICES_TXT&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; TRIGGER&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 2&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; select sysdate into :new.timestamp from dual; &lt;br&gt;BABU_ADMIN&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; B_INSRT_WEB_SERVICES_TXT&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; TRIGGER&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 2&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; select sysdate into :new.timestamp from dual; &lt;br&gt;BABU_ADMIN&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; PKG_SERVICE&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; PACKAGE BODY 18&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; || 'TO_TIMESTAMP(''' || start_date_in || ''',''MM/DD/YYYY HH24:MI:SS'')' || ' AND ' &lt;br&gt;BABU_ADMIN&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; PKG_SERVICE&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; PACKAGE BODY 19&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; || 'TO_TIMESTAMP(''' || end_date_in || ''',''MM/DD/YYYY HH24:MI:SS'')'&amp;nbsp; &lt;/font&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;&lt;br /&gt;&lt;p align="justify"&gt;[3c] Identify the correct "utltzuv2.sql" [this script only checks stored TIMESTAMP WITH TIME ZONE data in the database, but NOT the TIMESTAMP WITH LOCAL TIME ZONE data], download it [Refer Table 1 in Metalink&lt;a href="https://metalink.oracle.com/metalink/plsql/ml2_documents.showDocument?p_database_id=NOT&amp;p_id=359145.1" target="_blank"&gt; Note:359145.1&lt;/a&gt; - Impact of 2007 USA daylight saving changes on the Oracle database] and run the "utltzuv2.sql" to check the if TSTZ datatype is used in any tables in the database. &lt;/p&gt;&lt;p&gt;&lt;u&gt;For 9.2.0.7&lt;/u&gt;, download Patch and install patch &lt;a href="http://updates.oracle.com/download/5548107.html" target="_blank"&gt; 5548107&lt;/a&gt; (also to get the utltzuv2.sql script).&lt;p&gt;Refer to "Usage of utltzuv2.sql before updating time zone files in Oracle 9 &lt;a href="https://metalink.oracle.com/metalink/plsql/showdoc?db=NOT&amp;amp;id=396670.1" target="_blank"&gt;Note:396670.1&lt;/a&gt;"&lt;p&gt;&lt;table border="1" style="border-collapse: collapse" bordercolor="#111111" width="650" bgcolor="#808080"&gt;&lt;tr&gt;&lt;td width="645"&gt;&lt;font face="Courier" size="2"&gt;SQL&amp;gt; @utltzuv2.sql&lt;br&gt;&lt;br&gt;You current timezone version is 1! &lt;br&gt;Query sys.sys_tzuv2_temptab table to see if any TIMEZONE data is affected by version 3 transition rules &lt;br&gt;&lt;br&gt;PL/SQL procedure successfully completed.&lt;/font&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;&lt;br /&gt;&lt;p&gt;[3d] Save TSTZ data as varchar2.&lt;p&gt;[3e] Apply patch [Refer Table 2 and 3 in Metalink &lt;a href="https://metalink.oracle.com/metalink/plsql/ml2_documents.showDocument?p_database_id=NOT&amp;p_id=359145.1" target="_blank"&gt;Note:359145.1&lt;/a&gt;&lt;br /&gt;- Impact of 2007 USA daylight saving changes on the Oracle database]&lt;br /&gt;[&lt;u&gt;For 9.2.0.7&lt;/u&gt; DB TimeZone, use Patch bundle 15 (&lt;a href="http://updates.oracle.com/download/5654905.html" target="_blank"&gt;bug 5654905&lt;/a&gt;) or later]&lt;br /&gt;[&lt;u&gt;For 9.2.0.7 OJVM&lt;/u&gt;, use JVM Timezone Patch &lt;a href="http://updates.oracle.com/ARULink/PatchDetails/handle_plat_lang_change?release=8092070&amp;amp;patch_num=5047902" target="_blank"&gt;5047902&lt;/a&gt;]&lt;br /&gt;&lt;p&gt;[3f] Restore back to TSTZ datatype&lt;p&gt;[3g] Apply fixes to the clients and middle-tiers.&lt;p&gt;[3h] Work on already existing TSLTZ data.&lt;p&gt;[3i] Apply patch for OJVM.&lt;/p&gt;&lt;p&gt;&lt;u&gt;&lt;b&gt;References:&lt;/b&gt;&lt;/u&gt; &lt;br&gt;1. Impact of 2007 USA daylight saving changes on the Oracle database - &lt;a href="https://metalink.oracle.com/metalink/plsql/ml2_documents.showDocument?p_database_id=NOT&amp;p_id=359145.1" target="_blank"&gt;Note:359145.1&lt;/a&gt;&lt;br&gt;2. How to Determine Whether Time Zone Changes Will Affect Your Database - &lt;a href="https://metalink.oracle.com/metalink/plsql/showdoc?db=NOT&amp;amp;id=406410.1" target="_blank"&gt;Note:406410.1&lt;/a&gt;&lt;br&gt;3. SCRIPT: cre_tz_views.sql - Assess Time Zone usage in a Database - &lt;a href="https://metalink.oracle.com/metalink/plsql/showdoc?db=NOT&amp;id=412971.1" target="_blank"&gt;Note:412971.1&lt;/a&gt;&lt;br&gt;4. USA 2007 Daylight Saving Time (DST) Compliance for Oracle Server Technologies Products &lt;a href="https://metalink.oracle.com/metalink/plsql/showdoc?db=NOT&amp;amp;id=397281.1" target="_blank"&gt;Note:397281.1&lt;/a&gt;&lt;br&gt;5. Timestamps &amp; time zones - Frequently Asked Questions &lt;a href="https://metalink.oracle.com/metalink/plsql/showdoc?db=NOT&amp;amp;id=340512.1" target="_blank"&gt;Note:340512.1 &lt;/a&gt;&lt;br /&gt;&lt;p&gt;&lt;br /&gt;Click here for a step-by-step documentation on &amp;quot;&lt;a target="_blank" href="http://babumani.blogspot.com/2007/03/installation-of-oracle-dst-2007-patches.html"&gt;Installation of Oracle DST 2007 Patches in Oracle 9.2.0.7 Database and Client Machines&lt;/a&gt;&amp;quot;&lt;br /&gt;&lt;p align="right"&gt;&lt;table border="1" cellpadding="0" cellspacing="0" style="border-collapse: collapse" bordercolor="#111111" width="350" bgcolor="#336699"&gt;&lt;tr&gt;&lt;td width="100"&gt;  Author:&lt;/td&gt;&lt;td width="250"&gt;Babu Rangasamy&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td width="100"&gt;Title:&lt;/td&gt;&lt;td width="250"&gt;   GIS and Database Consultant&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td width="100"&gt;Created Date:&lt;/td&gt;&lt;td width="250"&gt;    February 8, 2007&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td width="100"&gt;Contact:&lt;/td&gt;&lt;td width="250"&gt;    Babu.Rangasamy[at]gmail.com&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/2639035620819724618-8612245274537267015?l=babumani.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://babumani.blogspot.com/feeds/8612245274537267015/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=2639035620819724618&amp;postID=8612245274537267015' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/2639035620819724618/posts/default/8612245274537267015'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/2639035620819724618/posts/default/8612245274537267015'/><link rel='alternate' type='text/html' href='http://babumani.blogspot.com/2007/02/impact-of-dst-2007-day-light-saving-on.html' title='Impact of DST 2007 (Day Light Saving) on Oracle Databases'/><author><name>babumani</name><uri>http://www.blogger.com/profile/08434916381222486044</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-2639035620819724618.post-2147745607172475793</id><published>2006-12-07T16:30:00.000-05:00</published><updated>2006-12-07T16:40:56.153-05:00</updated><title type='text'>Oracle Shared Server (Erstwhile Multi-Threaded Server) and ORA-4031 Error on Large Pool</title><content type='html'>&lt;u&gt;Environemnt:&lt;/u&gt; Oracle 9.2, Windows 2000 Server.&lt;br /&gt;&lt;b&gt;Basic MTS Configuration:-&lt;/b&gt; Include the following 2 parameters in the init.ora:-&lt;br /&gt;&lt;span style="font-family:Courier New;font-size:85%;"&gt;DISPATCHERS="(ADDRESS=(PROTOCOL=TCP)(HOST=db_server_ip_address))(DISPATCHERS=2)"&lt;br /&gt;SHARED_SERVERS = 20&lt;/span&gt;&lt;p&gt;&lt;/p&gt;&lt;br /&gt;&lt;u&gt;Note:&lt;/u&gt;&lt;br /&gt;&lt;u&gt;DISPATCHERS (Required to set):&lt;/u&gt; Oracle recommends a ratio of 1 DISPATCHER for every 1000 connections,&lt;br /&gt;here I have allocated 2 DISPATCHERS to be on the safer side and it can handle up to 2000 connections.&lt;br /&gt;&lt;u&gt;SHARED_SERVERS (Optional):&lt;/u&gt; Database server uses 1 shared server for every 20 connections, so 20 will support 200 sessions, which is fair enough for this database requirement. &lt;p&gt;&lt;/p&gt;&lt;hr /&gt;&lt;br /&gt;&lt;b&gt;&lt;u&gt;Troubleshooting: ORA-4031 Errors&lt;/u&gt;&lt;/b&gt;&lt;p&gt;&lt;/p&gt;&lt;u&gt;Received the below ORA-4031 Error at the client side:-&lt;/u&gt;&lt;p&gt;&lt;/p&gt;&lt;span style="font-family:Courier New;font-size:85%;"&gt;ORA-4031: unable to allocate %s bytes of&lt;br /&gt;shared memory ("%s","%s","%s","%s")&lt;/span&gt;&lt;p&gt;&lt;/p&gt;&lt;u&gt;Noticed following error in the Alert.log of a dedicated server (non&lt;br /&gt;multi-threaded server), where a job runs and used a database link, which is&lt;br /&gt;connect to a multi-threaded server:-&lt;/u&gt;&lt;p&gt;&lt;/p&gt;&lt;span style="font-family:Courier New;font-size:85%;"&gt;ORA-04031: unable to allocate 64 bytes of&lt;br /&gt;shared memory ("large pool","unknown object","session heap","trigger condition&lt;br /&gt;node")&lt;/span&gt;&lt;p&gt;&lt;/p&gt;&lt;u&gt;No errors noted in the Alert.log of MTS server, database functioning&lt;br /&gt;normal, accepting user connections, but following were noted in the trace files&lt;br /&gt;(SID_s001_2076.trc) of user_dump_dest:-&lt;/u&gt;&lt;p&gt;&lt;/p&gt;&lt;span style="font-family:Courier New;font-size:85%;"&gt;Dump file f:\oracle\admin\&amp;lt;sid&amp;gt;\udump\&amp;lt;sid&amp;gt;_s000_2056.trc&lt;br /&gt;Thu Nov 09 19:35:43 2006&lt;br /&gt;ORACLE V9.2.0.6.0 - Production vsnsta=0&lt;br /&gt;vsnsql=12 vsnxtr=3&lt;br /&gt;Windows 2000 Version 5.0 Service Pack 4, CPU type 586&lt;br /&gt;Oracle9i Enterprise Edition Release 9.2.0.6.0 - Production&lt;br /&gt;With the Partitioning, OLAP and Oracle Data Mining options&lt;br /&gt;JServer Release 9.2.0.6.0 - Production&lt;br /&gt;Windows 2000 Version 5.0 Service Pack 4, CPU type 586&lt;br /&gt;Instance name: &amp;lt;sid&amp;gt;&lt;br /&gt;&lt;br /&gt;Redo thread mounted by this instance: 1&lt;br /&gt;&lt;br /&gt;Oracle process number: 10&lt;br /&gt;&lt;br /&gt;Windows thread id: 2056, image: ORACLE.EXE&lt;br /&gt;&lt;br /&gt;*** 2006-11-09 19:35:43.048&lt;br /&gt;*** SESSION ID:(16.4) 2006-11-09 19:35:43.001&lt;br /&gt;=================================&lt;br /&gt;Begin 4031 Diagnostic Information&lt;br /&gt;=================================&lt;br /&gt;The following information assists Oracle in diagnosing&lt;br /&gt;causes of ORA-4031 errors. This trace may be disabled&lt;br /&gt;by setting the init.ora parameter _4031_dump_bitvec = 0&lt;br /&gt;======================================&lt;br /&gt;Allocation Request Summary Information&lt;br /&gt;======================================&lt;br /&gt;Current information setting: 00654fff&lt;br /&gt;Dump Interval=300 seconds SGA Heap Dump Interval=3600 seconds&lt;br /&gt;Last Dump Time=11/09/2006 19:35:41&lt;br /&gt;Allocation request for: sort key&lt;br /&gt;Heap: 58B34B04, size: 8192&lt;br /&gt;******************************************************&lt;br /&gt;HEAP DUMP heap name="large pool" desc=02170098&lt;br /&gt;extent sz=0xfc4 alt=100 het=32767 rec=9 flg=-126 opc=0&lt;br /&gt;parent=00000000 owner=00000000 nex=00000000 xsz=0x0&lt;br /&gt;******************************************************&lt;br /&gt;HEAP DUMP heap name="sort subheap" desc=58B34B04&lt;br /&gt;extent sz=0x2024 alt=32767 het=32767 rec=0 flg=2 opc=2&lt;br /&gt;parent=55F9F3AC owner=00000000 nex=00000000 xsz=0x1&lt;br /&gt;Subheap has 1871424 bytes of memory allocated&lt;br /&gt;====================&lt;br /&gt;Process State Object&lt;br /&gt;====================&lt;br /&gt;----------------------------------------&lt;br /&gt;SO: 5A59A1A4, type: 2, owner: 00000000, flag: INIT/-/-/0x00&lt;br /&gt;(process) Oracle pid=10, calls cur/top: 5A705014/5A705014, flag: (40) MS SERVER&lt;br /&gt;int error: 0, call error: 0, sess error: 0, txn error 0&lt;br /&gt;(post info) last post received: 0 0 139&lt;br /&gt;last post received-location: kmcmbf: not KMCVCFTOS&lt;br /&gt;last process to post me: 5a59f358 1 128&lt;br /&gt;last post sent: 0 0 146&lt;br /&gt;last post sent-location: kmcpdp&lt;br /&gt;last process posted by me: 5a59f358 1 128&lt;br /&gt;(latch info) wait_event=0 bits=0&lt;br /&gt;Process Group: DEFAULT, pseudo proc: 5A5F8F10&lt;br /&gt;O/S info: user: SYSTEM, term: &amp;lt;server_host_name&amp;gt;, ospid: 2056&lt;br /&gt;OSD pid info: Windows thread id: 2056, image: ORACLE.EXE&lt;br /&gt;=========================&lt;br /&gt;User Session State Object&lt;br /&gt;=========================&lt;br /&gt;----------------------------------------&lt;br /&gt;SO: 5A6068B4, type: 4, owner: 5BAE7D58, flag: INIT/-/-/0x00&lt;br /&gt;(session) trans: 00000000, creator: 5BAE7D58, flag: (1000e5) USR/- BSY/-/-/-/-/-&lt;br /&gt;DID: 0001-000B-00000008, short-term DID: 0000-0000-00000000&lt;br /&gt;txn branch: 00000000&lt;br /&gt;oct: 3, prv: 0, sql: 67908120, psql: 67908120, user: 50/RTT&lt;br /&gt;O/S info: user: &amp;lt;OS User&amp;gt;, term: &amp;lt;Client_Hostname&amp;gt;, ospid: 2892:2560, machine:&lt;br /&gt;&amp;lt;domain&amp;gt;\&amp;lt;hostname&amp;gt;&lt;br /&gt;program: &amp;lt;program_name&amp;gt;&lt;br /&gt;application name: &amp;lt;app name&amp;gt;, hash value=0&lt;br /&gt;last wait for 'SQL*Net message to client' blocking sess=0x0 seq=24275 wait_time=6&lt;br /&gt;driver id=4d545300, #bytes=1, =0&lt;br /&gt;temporary object counter: 0&lt;br /&gt;...No current library cache object being loaded&lt;br /&gt;===========================&lt;br /&gt;Current Instatiation Object&lt;br /&gt;===========================&lt;br /&gt;-------------------------------------&lt;br /&gt;INSTANTIATION OBJECT: object=576F3410&lt;br /&gt;type="cursor"[2] lock=659E4EF0 handle=67908120 body=00000000 level=0&lt;br /&gt;flags=FST[60] executions=0&lt;br /&gt;cursor name:&lt;br /&gt;SQL Query...............&lt;br /&gt;child pin: 5bd992b0, child lock: 5bdd363c, parent lock: 659e4ef0&lt;br /&gt;xscflg: 80110476, parent handle: 67908120, xscfl2: 7a00009&lt;br /&gt;Dumping Literal Information&lt;br /&gt;Bind Pos: 8, Bind Len: 21, Bind Val:&lt;br /&gt;nxt: 4.0x00000660 nxt: 3.0x00000470 nxt: 2.0x000007d0 nxt: 1.0x00000304&lt;br /&gt;Cursor frame allocation dump:&lt;br /&gt;frm: -------- Comment -------- Size Seg Off&lt;br /&gt;bhp size: 172/560&lt;br /&gt;whp size: 1887880/1895664&lt;br /&gt;Dump of CURRENT WORK HEAP:&lt;/span&gt;&lt;p&gt;&lt;/p&gt;&lt;hr /&gt;&lt;br /&gt;Since database is functioning normal and accepting user connections, its not&lt;br /&gt;so critical to find an immediate solution, but the above heap in the trace file&lt;br /&gt;causes some concern. Based on the Oracle's METALINK document&lt;br /&gt;&lt;a href="https://metalink.oracle.com/metalink/plsql/ml2_documents.showDocument?p_database_id=NOT&amp;p_id=223153.1"&gt;&lt;br /&gt;ORA-4031 from LARGE POOL when running with SHARED SERVER Configuration in 9i&lt;/a&gt;,&lt;br /&gt;(ID: 223153.1), increased LARGE_POOL_SIZE from 70M to 300M, decreased&lt;br /&gt;SHARED_POOL_SIZE &amp;amp; SHARED_POOL_RESERVED_SIZE from 200M &amp;amp; 20M to 150M &amp; 15M&lt;br /&gt;respectively. After the changes, init.ora will look like below:-&lt;p&gt;&lt;/p&gt;&lt;span style="font-family:Courier New;font-size:85%;"&gt;SGA_MAX_SIZE=1400M&lt;br /&gt;PGA_AGGREGATE_TARGET=600M&lt;br /&gt;DB_16K_CACHE_SIZE=400M&lt;br /&gt;DB_CACHE_SIZE=400M&lt;br /&gt;&lt;b&gt;LARGE_POOL_SIZE=300M&lt;/b&gt;&lt;br /&gt;&lt;b&gt;SHARED_POOL_SIZE=150M&lt;br /&gt;SHARED_POOL_RESERVED_SIZE=15M&lt;/b&gt;&lt;br /&gt;JAVA_POOL_SIZE=40M&lt;br /&gt;HASH_AREA_SIZE=4M&lt;br /&gt;SORT_AREA_RETAINED_SIZE=2M&lt;br /&gt;SORT_AREA_SIZE=2M&lt;br /&gt;DB_BLOCK_SIZE=8192&lt;br /&gt;DB_FILE_MULTIBLOCK_READ_COUNT=16&lt;br /&gt;DISPATCHERS='(ADDRESS=(PROTOCOL=TCP)(HOST=db_server_ip_address))(DISPATCHERS=2)'&lt;br /&gt;LOG_BUFFER=1M&lt;br /&gt;OPEN_CURSORS=300&lt;br /&gt;QUERY_REWRITE_ENABLED='FALSE'&lt;br /&gt;SESSION_CACHED_CURSORS=50&lt;br /&gt;SESSIONS=340&lt;br /&gt;PROCESSES=400&lt;br /&gt;SHARED_SERVERS=20&lt;/span&gt;&lt;p&gt;&lt;/p&gt;&lt;u&gt;About LARGE_POOL:&lt;/u&gt; It is a part of SGA, doesn't use LRU list, not a part of SHARED_POOL. Used by&lt;br /&gt;Oracle Shared Server (MTS) for UGA and RMAN if used. If LARGE_POOL is not set, then MTS will use memory from SHARED_POOL.&lt;br /&gt;&lt;br /&gt;Use &lt;span style="font-family:Courier New;font-size:85%;"&gt;V$SGASTAT, V$SGA_DYNAMIC_COMPONENTS and V$SGA &lt;/span&gt; to find info about SGA and run the below query to check the summary of SGA:-&lt;br /&gt;&lt;span style="font-family:Courier New;font-size:85%;"&gt;&lt;br /&gt;SELECT * FROM v$sgastat&lt;br /&gt;    WHERE pool ='large pool';&lt;br /&gt;SELECT NVL(POOL,NAME) POOL_NAME,&lt;br /&gt;    ROUND(SUM(BYTES)/1024/1024,2) MBYTES&lt;br /&gt;FROM V$SGASTAT GROUP BY NVL(POOL,NAME) ORDER BY 2 DESC;&lt;br /&gt;&lt;br /&gt;COLUMN component FORMAT A15&lt;br /&gt;SELECT component,&lt;br /&gt;    current_size/1024/1024 CURRENT_SIZE_MB,&lt;br /&gt;    granule_size/1024/1024 GRANULE_SIZE_MB&lt;br /&gt;FROM v$sga_dynamic_components;&lt;br /&gt;&lt;br /&gt;SELECT name,&lt;br /&gt;    ROUND((value)/1024/1024,2) MBYTES&lt;br /&gt;FROM v$sga ORDER BY 2 DESC; &lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;hr /&gt;&lt;br /&gt;&lt;u&gt;Note&lt;/u&gt;: Requires logon to access Oracle Metalink documents.&lt;u&gt;Reference: Configuration&lt;/u&gt;&lt;br /&gt;1) &lt;a href="http://download-east.oracle.com/docs/cd/B10501_01/server.920/a96521/manproc.htm#13880"&gt;&lt;br /&gt;Oracle9i Database Administrator's Guide - Configuring Oracle for the Shared Server - Chapter 5&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;2) &lt;a href="http://download-east.oracle.com/docs/cd/B10501_01/network.920/a96580/mts.htm#453787"&gt;&lt;br /&gt;Net Services Administrator's Guide - Chapter 14 - Configuring Shared Server&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;3) Oracle Metalink Subject:&lt;br /&gt;&lt;a href="https://metalink.oracle.com/metalink/plsql/ml2_documents.showDocument?p_database_id=NOT&amp;p_id=1005259.6"&gt;Multi-Threaded Server (MTS) Diagnostics&lt;/a&gt;, Doc ID:  1005259.6&lt;br /&gt;&lt;br /&gt;&lt;u&gt;Reference: Troubleshooting and Tuning&lt;/u&gt;&lt;br /&gt;&lt;br /&gt;4) &lt;a href="http://download-east.oracle.com/docs/cd/B10501_01/server.920/a96533/memory.htm#45298"&gt;Oracle9i Database Performance Tuning Guide -&lt;br /&gt;Chapter 14 - Memory Configuration and Use - Tuning the Large Pool and Shared&lt;br /&gt;Pool for the Shared Server Architecture&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;5) &lt;a href="http://download-east.oracle.com/docs/cd/B10501_01/server.920/a96533/memory.htm#45298"&gt;Oracle9i Database Performance Tuning Guide -&lt;br /&gt;Chapter 14 - Memory Configuration and Use -&lt;br /&gt;Configuring and Using the Shared Pool and Large Pool&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;6) Oracle Metalink Subject:&lt;br /&gt;&lt;a href="https://metalink.oracle.com/metalink/plsql/ml2_documents.showDocument?p_database_id=NOT&amp;amp;p_id=223153.1"&gt;&lt;br /&gt;ORA-4031 from LARGE POOL when running with SHARED SERVER Configuration in 9i&lt;/a&gt;,&lt;br /&gt;Doc ID: 223153.1&lt;br /&gt;&lt;br /&gt;7) Oracle Metalink Subject:&lt;br /&gt;&lt;a href="https://metalink.oracle.com/metalink/plsql/ml2_documents.showDocument?p_database_id=NOT&amp;p_id=146599.1"&gt;Diagnosing and Resolving Error ORA-04031&lt;/a&gt;, Doc ID:146599.1&lt;br /&gt;&lt;br /&gt;8) Oracle Metalink Subject:&lt;br /&gt;&lt;a href="https://metalink.oracle.com/metalink/plsql/ml2_documents.showDocument?p_database_id=NOT&amp;amp;p_id=62140.1"&gt;Fundamentals of the Large Pool&lt;/a&gt;, Doc ID:62140.1&lt;br /&gt;&lt;br /&gt;9) Oracle Metalink Subject:&lt;br /&gt;&lt;a href="https://metalink.oracle.com/metalink/plsql/ml2_documents.showDocument?p_database_id=NOT&amp;amp;p_id=1058003.6"&gt;ORA-4031 AND ORA-600 [1113] USING MTS AND LARGE_POOL_SIZE&lt;/a&gt;, Doc ID:1058003.6&lt;br /&gt;&lt;br /&gt;&lt;p&gt;&lt;/p&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/2639035620819724618-2147745607172475793?l=babumani.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://babumani.blogspot.com/feeds/2147745607172475793/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=2639035620819724618&amp;postID=2147745607172475793' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/2639035620819724618/posts/default/2147745607172475793'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/2639035620819724618/posts/default/2147745607172475793'/><link rel='alternate' type='text/html' href='http://babumani.blogspot.com/2006/12/oracle-shared-server-erstwhile-multi.html' title='Oracle Shared Server (Erstwhile Multi-Threaded Server) and ORA-4031 Error on Large Pool'/><author><name>babumani</name><uri>http://www.blogger.com/profile/08434916381222486044</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-2639035620819724618.post-425810623389049934</id><published>2006-12-05T15:20:00.000-05:00</published><updated>2006-12-06T14:01:42.147-05:00</updated><title type='text'>Caching Objects in Shared Pool</title><content type='html'>&lt;u&gt;Introduction:&lt;/u&gt;&lt;br /&gt;This document is about KEEPing frequently used database objects like PROCEDURES, PACKAGES, SEQUENCES, TRIGGERS and CURSORS in the SHARED_POOL of SGA. Caching/KEEPing frequently &lt;br /&gt;used objects in SHARED POOL will help improve the database performance. &lt;br /&gt;&lt;br /&gt;&lt;u&gt;Tested Environment:&lt;/u&gt; Oracle 9.2, Windows 2000 Server.&lt;br /&gt;&lt;br /&gt;&lt;u&gt;Connect to the database as sys:-&lt;/u&gt;&lt;br /&gt;&lt;font face="Courier" size="2"&gt;SQL&gt; connect sys/**** as sysdba &lt;/font&gt;&lt;br /&gt;&lt;br /&gt;&lt;u&gt;Step#1: Create a table sp_obj_tab to hold the objects that need to be cached:-&lt;/u&gt;&lt;br /&gt;&lt;br /&gt;&lt;font face="Courier" size="2"&gt;SQL&gt; CREATE TABLE sys.sp_obj_tab (&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;objownr VARCHAR2(64),&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;objname VARCHAR2(1000),&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;objtype CHAR(1),&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;listdte DATE,&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;keepdte DATE,&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;remarks CHAR(30));&lt;/font&gt;&lt;br /&gt;&lt;br /&gt;&lt;u&gt;Step#2: Take a look at script shared_pool_mgmt.SQL and run it, which will create a package called shared_pool_mgmt:-&lt;/u&gt;&lt;br /&gt;&lt;br /&gt;&lt;font face="Courier" size="2"&gt;SQL&gt; @shared_pool_mgmt.SQL&lt;br /&gt;&lt;br /&gt;&lt;u&gt;Step#3: Create the below triggers which runs during database startup and shutdown:-&lt;/u&gt;&lt;br /&gt;&lt;br /&gt;SQL&gt; CREATE OR REPLACE TRIGGER db_shutdown_sp_obj_list&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;BEFORE SHUTDOWN ON DATABASE&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;BEGIN&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;sys.SHARED_POOL_MGMT.list_obj_table;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;END;&lt;/font&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;/&lt;br /&gt;&lt;br /&gt;&lt;font face="Courier" size="2"&gt;SQL&gt; CREATE OR REPLACE TRIGGER db_startup_sp_obj_keep&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;AFTER STARTUP ON DATABASE&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;BEGIN&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;sys.SHARED_POOL_MGMT.keep_obj_startup;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;END;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;/&lt;/font&gt;&lt;br /&gt;&lt;br /&gt;&lt;u&gt;Step#4: Schedule a dbms job that runs at regular intervals, the below once runs at 5 pm every day:-&lt;/u&gt;&lt;br /&gt;&lt;br /&gt;&lt;font face="Courier" size="2"&gt;SQL&gt; VARIABLE JOBNO NUMBER;&lt;br /&gt;&lt;br /&gt;SQL&gt; BEGIN&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;DBMS_JOB.SUBMIT(JOB=&gt;:JOBNO,&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;WHAT=&gt;'shared_pool_mgmt.keep_obj_periodic;',&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;NEXT_DATE=&gt;TRUNC(SYSDATE)+1+17/24,&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;INTERVAL=&gt;'TRUNC(SYSDATE)+1+17/24');&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;COMMIT; &lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;END;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;/&lt;br /&gt;&lt;br /&gt;SQL&gt; PRINT JOBNO;&lt;/font&gt;&lt;br /&gt;&lt;br /&gt;&lt;hr&gt;&lt;br /&gt;&lt;u&gt;Below is the script, mentioned in Step#2, copy and paste it in a file called shared_pool_mgmt.SQL :-&lt;/u&gt;&lt;br /&gt;&lt;br /&gt;&lt;font face="Courier" size="2"&gt;CREATE OR REPLACE PACKAGE shared_pool_mgmt AS &lt;br /&gt;---------------------------------------------------&lt;br /&gt;---- Name: SHARED_POOL_MGMT &lt;br /&gt;---- Schema: SYS &lt;br /&gt;---- Created by: BabuMani &lt;br /&gt;---- Created on: Dec-05-2006 &lt;br /&gt;-- Description: This package helps database  &lt;br /&gt;-- administrators to KEEP frequently used database&lt;br /&gt;-- objects like PROCEDURES, PACKAGES, SEQUENCES,  &lt;br /&gt;-- TRIGGERS and CURSORS in the SHARED_POOL of SGA. &lt;br /&gt;---------------------------------------------------&lt;br /&gt;PROCEDURE list_obj_table; &lt;br /&gt;-- PROCEDURE LIST_OBJ_TABLE: Identifies the top 10 &lt;br /&gt;-- objects based on various system resource &lt;br /&gt;-- consuming factors and writes them in a table &lt;br /&gt;-- called SP_OBJ_TAB. This table is populated &lt;br /&gt;-- during database shutdown. This procedure is run&lt;br /&gt;-- using database shutdown trigger (BEFORE &lt;br /&gt;-- SHUTDOWN ON DATABASE). &lt;br /&gt;---------------------------------------------------&lt;br /&gt;PROCEDURE keep_obj_startup; &lt;br /&gt;-- PROCEDURE KEEP_OBJ_STARTUP: Reads the objects &lt;br /&gt;-- listed in table SP_OBJ_TAB during database  &lt;br /&gt;-- startup and KEEP them (except CURSORS)in &lt;br /&gt;-- SHARED_POOL. This procedure is run using &lt;br /&gt;-- database startup trigger (AFTER STARTUP ON &lt;br /&gt;-- DATABASE). &lt;br /&gt;---------------------------------------------------&lt;br /&gt;PROCEDURE keep_obj_periodic; &lt;br /&gt;-- PROCEDURE KEEP_OBJ_PERIODIC: It refreshes the &lt;br /&gt;-- list of objects in table SP_OBJ_TAB and KEEP &lt;br /&gt;-- them (including CURSORS) in SHARED_POOL. &lt;br /&gt;-- Suggested to run this procedure at scheduled &lt;br /&gt;-- intervals. &lt;br /&gt;---------------------------------------------------&lt;br /&gt;END shared_pool_mgmt; &lt;br /&gt;/ &lt;br /&gt; &lt;br /&gt;CREATE OR REPLACE PACKAGE BODY shared_pool_mgmt AS   &lt;br /&gt; &lt;br /&gt;PROCEDURE list_obj_table IS &lt;br /&gt;PRAGMA AUTONOMOUS_TRANSACTION; &lt;br /&gt;&amp;nbsp;BEGIN &lt;br /&gt;&amp;nbsp;&amp;nbsp;DELETE FROM sys.sp_obj_tab; &lt;br /&gt;&amp;nbsp;&amp;nbsp;COMMIT; &lt;br /&gt;&amp;nbsp;&amp;nbsp;INSERT /*DO NOT PIN*/ INTO sys.sp_obj_tab (objownr,objname,objtype,listdte,remarks) &lt;br /&gt;&amp;nbsp;&amp;nbsp;SELECT DISTINCT owner,name,DECODE(type,'TRIGGER','R','P'),SYSDATE,'Listed to Keep in Shared Pool' &lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;FROM v$db_object_cache   &lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;WHERE type IN ('PACKAGE','PROCEDURE','PACKAGE BODY','TRIGGER')  &lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;AND loads &gt;= 1 AND executions &gt; 0 &lt;br /&gt;&amp;nbsp;&amp;nbsp;UNION &lt;br /&gt;&amp;nbsp;&amp;nbsp;SELECT DISTINCT owner,name,'Q',SYSDATE,'Listed to Keep in Shared Pool'  &lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;FROM v$db_object_cache   &lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;WHERE type = 'SEQUENCE'  &lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;AND loads &gt;= 1 ; &lt;br /&gt;&amp;nbsp;&amp;nbsp;INSERT /*DO NOT PIN*/ INTO sys.sp_obj_tab (objownr,objname,objtype,listdte,remarks) &lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;SELECT * FROM  &lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;(SELECT address||','||hash_value,SUBSTR(sql_text,1,40),'C',SYSDATE,'Listed to Keep in Shared Pool'  &lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;FROM v$sqlarea  &lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;WHERE sql_text NOT LIKE '%/*DO NOT PIN*/%' &lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;AND loads &gt; 0  &lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;AND executions &gt; 0  &lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;ORDER BY executions DESC) &lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;WHERE ROWNUM&lt;=10 &lt;br /&gt;&amp;nbsp;&amp;nbsp;UNION &lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;SELECT * FROM  &lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;(SELECT address||','||hash_value,SUBSTR(sql_text,1,40),'C',SYSDATE,'Listed to Keep in Shared Pool'  &lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;FROM v$sqlarea  &lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;WHERE sql_text NOT LIKE '%/*DO NOT PIN*/%' &lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;AND loads &gt; 0  &lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;AND executions &gt; 0  &lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;ORDER BY loads DESC) &lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;WHERE ROWNUM&lt;=10 &lt;br /&gt;&amp;nbsp;&amp;nbsp;UNION &lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;SELECT * FROM  &lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;(SELECT address||','||hash_value,SUBSTR(sql_text,1,40),'C',SYSDATE,'Listed to Keep in Shared Pool'  &lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;FROM v$sqlarea  &lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;WHERE sql_text NOT LIKE '%/*DO NOT PIN*/%' &lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;AND loads &gt; 0  &lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;AND executions &gt; 0  &lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;ORDER BY buffer_gets DESC) &lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;WHERE ROWNUM&lt;=10 &lt;br /&gt;&amp;nbsp;&amp;nbsp;UNION &lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;SELECT * FROM  &lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;(SELECT address||','||hash_value,SUBSTR(sql_text,1,40),'C',SYSDATE,'Listed to Keep in Shared Pool'  &lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;FROM v$sqlarea  &lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;WHERE sql_text NOT LIKE '%/*DO NOT PIN*/%' &lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;AND loads &gt; 0  &lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;AND executions &gt; 0  &lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;ORDER BY disk_reads DESC) &lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;WHERE ROWNUM&lt;=10 &lt;br /&gt;&amp;nbsp;&amp;nbsp;UNION &lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;SELECT * FROM  &lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;(SELECT address||','||hash_value,SUBSTR(sql_text,1,40),'C',SYSDATE,'Listed to Keep in Shared Pool'  &lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;FROM v$sqlarea  &lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;WHERE sql_text NOT LIKE '%/*DO NOT PIN*/%' &lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;AND loads &gt; 0  &lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;AND executions &gt; 0  &lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;ORDER BY sharable_mem DESC) &lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;WHERE ROWNUM&lt;=10; &lt;br /&gt;&amp;nbsp;&amp;nbsp;COMMIT; &lt;br /&gt;&amp;nbsp;END list_obj_table;&lt;br /&gt;&lt;br /&gt;&amp;nbsp;PROCEDURE keep_obj_startup IS &lt;br /&gt;&amp;nbsp;&amp;nbsp;PRAGMA AUTONOMOUS_TRANSACTION; &lt;br /&gt;&amp;nbsp;&amp;nbsp;own VARCHAR2(64); &lt;br /&gt;&amp;nbsp;&amp;nbsp;nam VARCHAR2(1000); &lt;br /&gt;&amp;nbsp;&amp;nbsp;typ VARCHAR2(1); &lt;br /&gt;&amp;nbsp;&amp;nbsp;CURSOR cur1 IS &lt;br /&gt;&amp;nbsp;&amp;nbsp;SELECT objownr, objname, objtype FROM SYS.sp_obj_tab WHERE objtype&lt;&gt;'C'; &lt;br /&gt;&amp;nbsp;BEGIN &lt;br /&gt;&amp;nbsp;&amp;nbsp;OPEN cur1; &lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;LOOP &lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;FETCH cur1 into own, nam, typ; &lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;EXIT WHEN cur1%NOTFOUND; &lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;SYS.DBMS_SHARED_POOL.KEEP(''|| own || '.' || nam || '',''||typ||''); &lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;UPDATE sys.sp_obj_tab SET remarks='Listed n Kept in Shared Pool', keepdte=SYSDATE WHERE objownr=own AND objname=nam AND objtype=typ; &lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;COMMIT; &lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;END LOOP; &lt;br /&gt;&amp;nbsp;&amp;nbsp;CLOSE cur1; &lt;br /&gt;&amp;nbsp;END keep_obj_startup; &lt;br /&gt;&lt;br /&gt;&amp;nbsp;PROCEDURE keep_obj_periodic IS &lt;br /&gt;&amp;nbsp;&amp;nbsp;PRAGMA AUTONOMOUS_TRANSACTION; &lt;br /&gt;&amp;nbsp;&amp;nbsp;own VARCHAR2(64); &lt;br /&gt;&amp;nbsp;&amp;nbsp;nam VARCHAR2(1000); &lt;br /&gt;&amp;nbsp;&amp;nbsp;typ VARCHAR2(1); &lt;br /&gt;&amp;nbsp;&amp;nbsp;CURSOR cur2 IS &lt;br /&gt;&amp;nbsp;&amp;nbsp;SELECT objownr, objname, objtype FROM SYS.sp_obj_tab; &lt;br /&gt;&amp;nbsp;BEGIN &lt;br /&gt;&amp;nbsp;&amp;nbsp;shared_pool_mgmt.list_obj_table; &lt;br /&gt;&amp;nbsp;&amp;nbsp;OPEN cur2; &lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;LOOP &lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;FETCH cur2 INTO own, nam, typ; &lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;EXIT WHEN cur2%NOTFOUND; &lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;IF typ='C' THEN &lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;SYS.dbms_shared_pool.keep(''|| own ||'',''||typ||''); &lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;ELSE &lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;SYS.dbms_shared_pool.keep(''|| own || '.' || nam || '',''||typ||''); &lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;END IF; &lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;UPDATE SYS.sp_obj_tab SET remarks='Listed n Kept in Shared Pool', keepdte=SYSDATE WHERE objownr=own AND objname=nam AND objtype=typ; &lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;COMMIT; &lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;END LOOP; &lt;br /&gt;&amp;nbsp;&amp;nbsp;CLOSE cur2; &lt;br /&gt;&amp;nbsp;END keep_obj_periodic; &lt;br /&gt;&lt;br /&gt;END shared_pool_mgmt; &lt;br /&gt;/&lt;br /&gt;&lt;br /&gt;&lt;hr&gt;&lt;br /&gt;&lt;u&gt;Below are some Handy-Dandy queries:-&lt;/u&gt;&lt;br /&gt;&lt;br /&gt;COLUMN pool FORMAT A25&lt;br /&gt;&lt;br /&gt;SELECT pool||(' -- Total') POOL,ROUND(SUM(bytes)/1024/1024) MB FROM v$sgastat WHERE pool IS NOT NULL GROUP BY pool &lt;br /&gt;UNION&lt;br /&gt;SELECT pool||(' --- Free') POOL,ROUND(SUM(bytes)/1024/1024) MB FROM v$sgastat WHERE name='free memory' AND pool IS NOT NULL GROUP BY pool;&lt;br /&gt;&lt;br /&gt;SELECT type,COUNT(*) COUNT FROM v$db_object_cache WHERE kept='YES' GROUP BY type ORDER BY 2 ;&lt;br /&gt;&lt;br /&gt;SELECT DECODE(objtype,'R','Trigger','P','Package','C','Cursor','Q','Sequence',objtype) OBJTYPE, COUNT(*) COUNT FROM sp_obj_tab GROUP BY objtype ORDER BY 2 ;&lt;br /&gt;&lt;br /&gt;COMPUTE SUM LABEL 'TOTAL ' OF COUNT ON REPORT &lt;br /&gt;COMPUTE SUM LABEL 'TOTAL ' OF SHARABLE_MEM_K ON REPORT &lt;br /&gt;BREAK ON REPORT &lt;br /&gt;&lt;br /&gt;SELECT type,COUNT(*) COUNT, round(sum(SHARABLE_MEM)/1024) SHARABLE_MEM_K FROM v$db_object_cache WHERE kept='YES' GROUP BY type ORDER BY 2 ;&lt;br /&gt;&lt;br /&gt;&lt;u&gt;&lt;b&gt;Library Cache Hit Ratio:&lt;/b&gt;&lt;/u&gt;&lt;br /&gt; &lt;br /&gt;COMPUTE SUM LABEL 'TOTAL' OF PINHITS ON REPORT &lt;br /&gt;COMPUTE SUM LABEL 'TOTAL' OF PINS ON REPORT &lt;br /&gt;BREAK ON REPORT &lt;br /&gt;&amp;nbsp;&amp;nbspSELECT namespace &lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;, pins &lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;, pinhits &lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;, reloads &lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;, invalidations &lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; FROM v$librarycache &lt;br /&gt; ORDER BY namespace;&lt;br /&gt;&lt;br /&gt;CLEAR COMPUTE &lt;br /&gt;CLEAR BREAK&lt;br /&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;SELECT sum(pinhits) pinhits,  &lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;sum(pins) pins,  &lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;round((sum(pinhits)/sum(pins))*100,2) LIBRARY_CACHE_HIT_RATIO &lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;FROM v$librarycache &lt;br /&gt;ORDER BY namespace; &lt;br /&gt;&lt;br /&gt;&lt;u&gt;&lt;b&gt;Dictionary Cache (Row Cache) Hit Ratio:&lt;/b&gt;&lt;/u&gt;&lt;br /&gt;&lt;br /&gt;column parameter format a25&lt;br /&gt;column RATIO format 999.9&lt;br /&gt;column UPDATES format 999,999,999&lt;br /&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;SELECT parameter&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;, SUM(gets) gets&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;, SUM(getmisses) getmisses&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;, 100*SUM(gets - getmisses) / SUM(gets)  RATIO&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;, SUM(modifications)                     UPDATES&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;FROM v$rowcache&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;WHERE gets &gt; 0&lt;br /&gt;GROUP BY parameter;&lt;br /&gt; &lt;br /&gt;SELECT ROUND((SUM(gets - getmisses - fixed)) / SUM(gets)*100,2) "ROW CACHE" FROM v$rowcache;&lt;br /&gt;&lt;br /&gt;&lt;/font&gt;&lt;br /&gt;&lt;hr&gt;&lt;br /&gt;&lt;br /&gt;Reference: &lt;br /&gt;&lt;a href="http://download-east.oracle.com/docs/cd/B10501_01/server.920/a96533/memory.htm#30971"&gt;Oracle9i Database Performance Tuning Guide and Reference - Chapter 14 - Memory Configuration and Use - &lt;br /&gt;Configuring and Using the Shared Pool and Large Pool&lt;/a&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/2639035620819724618-425810623389049934?l=babumani.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://babumani.blogspot.com/feeds/425810623389049934/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=2639035620819724618&amp;postID=425810623389049934' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/2639035620819724618/posts/default/425810623389049934'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/2639035620819724618/posts/default/425810623389049934'/><link rel='alternate' type='text/html' href='http://babumani.blogspot.com/2006/12/caching-objects-in-shared-pool.html' title='Caching Objects in Shared Pool'/><author><name>babumani</name><uri>http://www.blogger.com/profile/08434916381222486044</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry></feed>
