Oracle 8i-ORA-22979:
I am trying to go through the Sample Application in Oracle8i Application Developer's Guide - Object-Relational Features Release 2 (8.1.6).
In Implementing the Application Under the Object-Relational Model( Chapter 8) there is an insert statement at page 25 which inserts a row into a nested table in the LineItemList_ntab column of the row object in the purchaseOrder_objtab.
This statement is returning an error :
ORA-22979: cannot INSERT object view REF or user-defined REF
Does this mean that user-defined REF can not be stored in the nested table.
I would appreciate it very much if any one can throw some light.
Thanks,
Cheema
hi there,
how are you ?
I am trying to write an ordbms program for
my final project , would you please give
me weather you found any solution to your problem,
I am realy want to recover my problem,
so much thanks
shayan
Similar Messages
-
Oracle error ORA-01461when trying to insert into an ORACLE BLOB field
I am getting Oracle error ‘ORA-01461: can bind a LONG value only for insert into a LONG column' when trying to insert into an ORACLE BLOB field. The error occurs when trying to insert a large BLOB (JPG), but does not occur when inserting a small (<1K) picture BLOB.(JPG). Any ideas?
BTW, when using a SQL Server datasource using the same code.... everything works with no problems.
ORACLE version is 11.2.0.1
The ORACLE datasource is JDBC using Oracle's JDBC driver ojdbc6.jar v11.2.0.1 (I also have tried ojdbc5.jar v11.2.0.1; ojdbc5.jar v11.2.0.4; and ojdbc6.jar v11.2.0.4 with the same error result.)
Here is my code:
<cfset file_mime = Lcase(Right(postedXMLRoot.objname.XmlText, 3))>
<cfif file_mime EQ 'jpg'><cfset file_mime = 'jpeg'></cfif>
<cfset file_mime = 'data:image/' & file_mime & ';base64,'>
<cfset image64 = ImageReadBase64("#file_mime##postedXMLRoot.objbase64.XmlText#")>
<cfset ramfile = "ram://" & postedXMLRoot.objname.XmlText>
<cfimage action="write" source="#image64#" destination="#ramfile#" overwrite="true">
<cffile action="readbinary" file="#ramfile#" variable="image_bin">
<cffile action="delete" file="#ramfile#">
<cfquery name="InsertImage" datasource="#datasource#">
INSERT INTO test_images
image_blob
SELECT
<cfqueryparam value="#image_bin#" cfsqltype="CF_SQL_BLOB">
FROM dual
</cfquery>Can't you use "alter index <shema.spatial_index_name> rebuild ONLINE" ? Thanks. I could switch to "rebuild ONLINE" and see if that helps. Are there any potential adverse effects going forward, e.g. significantly longer rebuild than not using the ONLINE keyword, etc? Also wondering if spatial index operations (index type = DOMAIN) obey all the typical things you'd expect with "regular" indexes, e.g. B-TREE, etc.
-
Hi all,
I have an Windows XP OS with SP3.
I have installed the Oracle 11g server.
On trying to connect to the ODBC connection, i get the following error message:
Unable to connect SQL State=S1000 [Oracle][ODBC][Ora]ORA-12170: TNS: Connect timeout occured
On trying the tnsping,
TNS Ping Utility for 32-bit Windows: Version 11.1.0.6.0 - Production on 09-OCT-2
011 13:11:05
Copyright (c) 1997, 2007, Oracle. All rights reserved.
Used parameter files:
E:\app\Gautam\product\11.1.0\db_1\network\admin\sqlnet.ora
Used TNSNAMES adapter to resolve the alias
Attempting to contact (DESCRIPTION = (ADDRESS = (PROTOCOL = TCP)(HOST = 192.168.
5.207)(PORT = 1521)) (CONNECT_DATA = (SERVER = DEDICATED) (SERVICE_NAME = orcl))
TNS-12535: TNS:operation timed out
On trying to connect with SQL Developer, i get the following error:
Status: Failure - Test failed: Io Exception: The Network Adapter could not establish the connection
However i am able to connect to the same using SQL Plus
Another issue that occurs is that the Oracle Enterprise Manager shows the following error after a while:
Agent Connection to Instance
Status Failed
Details ORA-12505: TNS:listener does not currently know of SID given in connect descriptor (DBD ERROR: OCIServerAttach)
The following services are all up during this point of time:
OracleDBConsoleorcl
OracleOraDb11g_home1TNSListener
OracleServiceORCL
Any help in this regard will be very useful as this is hindering the progress of my work.
Thanks in advance for the help.
- Gautam841683 wrote:
Hi,
I did try and delete my listener.ora and then create a new one..
That did not solve my issue..
What are the steps for configuring the listener again.
Thanks for the response..
- Gautamno listener.ora file is required.
just do as below
lsnrctl start -
[Oracle][ODBC][Ora]ORA-01426: numeric overflow
I have a function get data from data base and do some calculating. I call this function from ASP web page. Some times I got the following error. But if I click refresh later. It's ok again. Any ideas?
[Oracle][ODBC][Ora]ORA-01426: numeric overflowCause: Evaluation of an value expression causes an overflow/underflow.
Action: Reduce the operands. -
Oracle returns ORA-03113 EOF error when using openquery in SQLServer 2005
Hi
Our Application runs batch process on every moring . One of jobs is to get all rows from an oracle database and put all data into MS Sql Server Tables. Usally It works fine But Sometimes during getting data from a certain table oracle raise Ora-03113 error during
getting data from MSSQL Server. we use mssql openquery clause to get data from oracle We just use OPENQUERY to get all data of oracle view( i.e Select * FROM OPENQUERY(LINKEDORACLESERVER , "SELECT * FROM SCV0XE") )
This Error comes once a month. So I don't have any idea why this error happens. I am using MSSQL 2005 SP2 , Oracle 9i 9.2.01
And I tested both microsoft provider and oracle ole provider. Both Driver failed
Any Solution or Advice will be appreciated...
Regards,
ParkHi bborie :
I think I encounter same problem as you, I schedule a job of MS SSIS to do data transfer from Oracle to MS sqlserver every morning. Bt MS SQL server report "ORA-03113 : end-of-file on communication channel error ".
And Oracle alertlog report "inbound connection timed out (ORA-3136)"
sqlnet.log list "TNS-12535: TNS:operation timed out"
does your problem solved ? -
---cmd prompt------------------------
H:\>sqlplus scott/tiger
SQL*Plus: Release 10.2.0.3.0 - Production on Sun Mar 28 16:54:53 2010
Copyright (c) 1982, 2006, Oracle. All Rights Reserved.
Connected to:
Oracle Database 10g Enterprise Edition Release 10.2.0.3.0 - Production
With the Partitioning, OLAP and Data Mining options
SQL>
-------------ASP -------------------------
<%@ Language="JScript" %>
<%
var uname=Request.Form("un");
var upwd=Request.Form("pwd");
Response.Write("User Name is " + uname + "<br>" + "password is " + upwd);
var sql = "select * from emp";
var conn = Server.CreateObject("ADODB.Connection");
var rs = Server.CreateObject("ADODB.Recordset");
conn.Open = "Driver={Oracle in OraDb10g_home1};DBQ=tcp;UID='uname';PWD='upwd';";
rs.Open(sql, conn, 3, 3);
%>
------------------Error------------------
User Name is scott
Password is tiger
Microsoft OLE DB Provider for ODBC Drivers error '80040e4d'
[Oracle][ODBC][Ora]ORA-01017: invalid username/password; logon denied
/prc/main.asp, line 11
variable uname has valid username that is 'scott' and variable upwd as valid password ie 'tiger' both entered by the user.
with the same username and password i am able to connect to the database from the command prompt.
but when i tried using odbc through ASP(javascript) i am getting above error.
and one more thing if i mention username and password directly in UID and PWD it works but when i pass it through variables it wont work.
since variables have username and password it has to take from it directly...........manually i cant give,dynamically it has to take.
plz help me out....how i can pass the parameter to that UID and PWD.
conn.Open = "Driver={Oracle in OraDb10g_home1};DBQ=tcp;UID='uname';PWD='upwd';";
help plz
conn.Open = "Driver={Oracle in OraDb10g_home1};DBQ=tcp;UID='uname';PWD='upwd';"; --- does not work
conn.Open = "Driver={Oracle in OraDb10g_home1};DBQ=tcp;UID=scott;PWD=tiger;"; --- works
but i want the 1st statement to work........since user gives the password and username dynamically.
Thanks
Veeresh Sconn.Open("DSN=tcp;UID="+uname+";PWD="+upwd+";");
this solved me
thanks for all who had vied this..
veeresh -
Using PreparedStatement and the Oracle Error ORA-1000
Hi,
I have a question about PreparedStatement objects that is not so simple to explain for me. What I would like to know is: if I use a PreparedStatement following traditional and generic steps:
1- PreparedStatement pStmt = Connection.prepareStatement(sQuery);
2- pStmt.setXXX(i,j);
n - pStmt.setXXX(i,j);
n+1 - ResultSet rs = pStmt.executeQuery();
n+2 - while(rs.next()){ ... retrive ResultSet data ... }
n+3 - rs.close()
n+4 - back to point number 2
and at the end (as you can see in the point numbered n+4), instead of closing the PreparedStatement pStmt using the close() method, I reuse the PreparedStatement pStmt comeing back to the point numebr 2 and setting again all its parameters with new values ... then ... what heppens in the Oracle database ? Has been the cursor (so the mamory area), associated to my PreparedStatement object pStmt, duplicated or is it the same ?
I know that Java allows you to do this kind of operations with PreparedStatement, and I know that in tha Java Documentation is explained to follow this strategy to optimize the execution time because in this way the same PreparedStatement is precompiled and prepared only once. But if I do a for loop following the steps explained before, after many iterations I have the error "ORA-1000: maximum open cursors exceeded". This error is the reason of my question. Does this error means that it's mandatory to close a PreparedStatement always, otherwise if you reuse it without closing it then the corresponding database cursor will be duplicated ? If it is so, then I think this is a contradiction with official java documentation ...
I'm using Oracle8i (version 8.1.7) and Oracle JDBC Thin Driver (Windows NT) for use with JDK 1.2.x. Moreover, in my database istance the parameter "maximum open cursor" is equal to 800 ...
Thank you very much for suggestions :-)There is no need to close a prepared statement or its resultset for every iteration.
After the first iteration in a loop, all subsequent executions of it will close the previous resultset. By adding close() method, you are making one extra costly call to the DB for no reason.
Following is the sample code.I know what you are saying. In fact at the beginning I wrote my code in the same way of your sample (see the code of my first post at the begin of this page).
But doing so, after thousand iterations of the loop, I had "Oracle Error ORA-1000 : maximun open cursor exeeded" even if in my database istance the parameter "maximum open cursor" is equal to 8000.
At this moment in my code, for each iteration, I close the PreparedStatement and in this way I don't have anymore the error :-((
So it seems that only in theory we can reuse a preparedStatement without closing it. In fact if we see the oracle system table "$open_cursor" (as Konrad Pietzka suggest me) we can find that, for each interation,
at our line code "rs = pstmt.executeQuery();" correspond a new cursor in the database: this means that for each method "pstmt.executeQuery()" the database open a new cursor and do not use the previous one as it should.
I posted a question two months ago to search if someone had the same problem (it seems that Konrad Pietzka had the same situation) and was able to explain me what is the cause.
The only reason I found by myself for this problem, is that probably the Oracle JDBC Thin Driver for Windows NT/2000 has some bugs... but I'm not sure ...
Thank you very much for you time !!
bye :-))
Fidalma -
Unable to connect SQLState=08004 Oracle ODBC Ora-12154
Hi Sir/Madam,
I am Wayne, I need your help to resolve my issue in oracle database 11g.
1. I installed Oracle 11g Personal Edition, Release 11.2.0.10, 64bits,
2. Test connection(oracle in oradb11g_home1) is successed in data source, odbc,
2. Then, I tried to connect this with Visual Basic(Visual Studio 2010), data connections, add connections, .net framework data provider for oracle,
3. but I received an error message as "Attempt to load Oracle client libraries threw BadImageFormatException."
4. Then, I download the ODAC(11.2.0.3.0) for 64bits, and installed,
5. I tried to test the connection, but failed with error message as stated above,
"Unable to connect SQLState=08004 Oracle ODBC Ora-12154: TNS:could not resolve the connect identifier specified"
Could you please give me a help on this, do I need to install ODAC for 11g Personal Edition ? Please advice accordingly, thanks.Hi;
Please review:
https://kr.forums.oracle.com/forums/thread.jspa?threadID=2309520
http://stackoverflow.com/questions/206055/oracle-ora-12154-tns-could-not-resolve-service-name-error
Regard
Helios -
Hi,
I am trying to insert an xml doc into a column of Oracle table which has a datatype CLOB in JSP. PFB my code that I am using --
int id = 100;
String st1 = "NEW";
String st2 = "WLR3_IN_1";
Date dt = new SimpleDateFormat("mm/dd/yyyy").parse("04/02/2008");
Class.forName("sun.jdbc.odbc.JdbcOdbcDriver");
con = DriverManager.getConnection("jdbc:odbc:CST Server","xmluser","xmluser");
String query = "INSERT INTO SEQ_API_MESSAGE_IN(SEQ_NO,MESSAGE_TEXT,STATUS,DIALECT,CREATED_TS) VALUES(?,?,?,?,?)";
out.println(6);
String fn = "C:/order.xml";
out.println(7);
PreparedStatement stmt = con.prepareStatement(query);
out.println(8);
File file = new File(fn);
out.println(9);
FileReader inputFileReader = new FileReader(file);
stmt.setInt(1,id);
stmt.setCharacterStream(2,inputFileReader, (long)file.length());
stmt.setString(3,st1);
stmt.setString(4,st2);
stmt.setDate(5,new java.sql.Date(dt.getTime()));
out.println(10);
if (stmt.executeUpdate() != 1) {
System.out.println("No record inserted.");
But I am getting an output in the form of an Oracle error - 5 6 7 8 9 10 [Oracle][ODBC][Ora]ORA-24801: illegal parameter value in OCI lob function
So all the statements are getting executed after which this Oracle error is thrown. Could you help me with this.
Thanks in anticipation.. :)As suggested I may try switching to JDBC instead of JDBC-ODBC bridge driver , but I also tried doing this to get the sysdate --
//Date dt = new SimpleDateFormat("mm/dd/yyyy").parse("04/02/2008");
String date = DateFormat.getInstance().format(new Date());
stmt.setString(5,date);
and now I am getting this error -- 5 6 7 8 9 10 [Oracle][ODBC][Ora]ORA-01843: not a valid month Hello1
Hello1 is coming from --
catch (SQLException sqle){
out.println(sqle.getMessage());
out.print("Hello1");
} -
Oracle Alert - ORA-1652 Unable to extend the Temp Segment
Hi Team,
During our DB Reorg we have received the Oracle Alert - ORA-1652 Unable to extend the Temp Segment by 15485 in tablespace :PSAPBTABI.
Our DBReorg got cancelled..
We would like to know how we can resolve the above error so that we can reschedule the DB Reorg activity..
Regds,
Satyanarayana NHi,
If you are using UNIX OS, the temp files are created as sparse file due to the OS functionality.
Altough you have assigned 49 GB the actual size will be very very less.
You can check the actula file size with du or df command. To remove these sparse condition you will need to perform certain steps.
Read this note and execute the steps given and then see the file size difference.
548221 - Temporary Files are created as sparse files
Do update the message if the OS is different.
Regards,
Nilesh -
Hello,
I'm using unixODBC with ODBC Oracle client 11 (Debian 7) to connect to Oracle database version 9.2.0.6 (Solaris 10), but show me this message:
[S1000][unixODBC][Oracle][ODBC][Ora]ORA-03134: Connections to this server version are no longer supported.
Note: I can connect to Oracle database version 10+.
Please can you help me.
Thank youAre you positive you're using version 11 Oracle client and 9206 database? That combination should work, and Ive never seen that error message occur for anything but the expected reason.
If you have MOS access you can check the client/database compatibility with the following note:
Client / Server / Interoperability Support Matrix For Different Oracle Versions (Doc ID 207303.1)
Hope it helps,
Greg -
Oracle/PLSQL: ORA-00932 ErrorError: ORA-00932: inconsistent datatypes
I am getting this error in a PL/SQL package, using SQL using the NVL function.
Oracle/PLSQL: ORA-00932 ErrorError: ORA-00932: inconsistent datatypes. Cause: You tried to perform an operation between two different datatypes, but the datatypes are not compatible.
I do not get this error on a 10.2.0.4 instance of the database running in Windows.
Anyone come accross this type of issue in 11g Rel.2 or after migrating from 10g to 11g??
Thanks.Dear user520935,
What are the contents of the package? Where do you exactly get that error?
http://ora-00932.ora-code.com/
Have you checked the metalink about it? There are lots of articles about it.
Ogan -
UPDATE problem - [Oracle][ODBC][Ora]ORA-01456
I try to UPDATE a table using following driver, url and syntax :
Class.forName("sun.jdbc.odbc.JdbcOdbcDriver"); // load driver
Connection conn = DriverManager.getConnection("jdbc:odbc:JDEV", "salgsinfo", "si"); // get connection
but receives this answer :
java.sql.SQLException: [Oracle][ODBC][Ora]ORA-01456: INSERT-, DELETE- or UPDATE-statements cannot be done in READ ONLY-transaction
the user is granted dba priviliges, what can i do ?
NielsORA-01456:may not perform insert/delete/update operation inside a READONLY transaction
Cause:A non-DDL INSERT/DELETE/UPDATE or SELECT FOR UPDATE operation was attempted.
Action:Commit or roll back the current transaction, then retry the operation. -
ORACLE 8에서의 ORA-1578 조치 방법(UPDATE)
제품 : ORACLE SERVER
작성날짜 : 2003-06-12
Oracle 8에서의 ORA-1578(Data Block Corruption) 조치 방법
<사전에 알아두어야 할 사항>
# Oracle 8의 ROWID
1. FORMAT : OOOOOOFFFBBBBBBSSS
* OOOOOO - data object number 로서 물리적인 segment의 id를 의미
* FFF - row가 위치한 datafile의 relative datafile number
* BBBBBB - file 내에서의 block id
* SSS - block 내에서의 row의 sequence number
2. 각 구성 요소는 64진법으로 표기되어 진다.
3. DBMS_ROWID Package는 ROWID를 10진법으로 변환하는 FUNCTION과 ROWID를
생성하는 FUNCTION을 포함하고 있다.( 자세한 내용은 BULLETIN 11366 참조)
# DBA_OBJECTS에서 OBJECT_ID와 DATA_OBJECT_ID
Oracle 8에서는 DBA_OBJECTS 안에 physical segment id를 의미하는
data_object_id column을 가지고 있다. 이 column의 값은 ROWID의 object id
를 구성하는데 사용된다.
이 column은 대부분 object_id 값과 동일하나 partitioned table과
clustered table안에서는 다를 수 있다.
Partitioned table에서는 partition이 다른 tablespace로 이동하였을 경
우 object_id는 예전과 동일하나 data_object_id는 달라 진다.
Clustered table에서는 반대로 data_object_id는 동일하나 object_id가 다
른 경우가 발생한다.
(자세한 내용은 Bulletin 11604 참조)
# RELATIVE DATAFILE NUMBER
8.x 의 relative datafile number는 특정 tablespace 내에서만 고유하다.
따라서 서로 다른 두개의 tablespace에 속한 datafile들이 동일한 relative
datafile number를 가질 수 있다.
8.x 에서는 tablespace 당 최대 1023개의 datafile을 사용. 전체 database 의
datafile 갯수가 1023개를 넘기 전까지는 file_id와 relative_fno는 동일한
값을 갖음.
# ROWID 생성
DBMS_ROWID Package의 DBMS_ROWID.ROWID_CREATE Function사용.
Syntax : Function dbms_rowid.rowid_create( rowid_type in number,
object_number in number,
relative_fno in number,
block_number in number,
row_number in number ) return rowid;
SQL> select dbms_rowid.rowid_create(1,10116,4,5948,0) CREATE_ROWID
from dual;
CREATE_ROWID
AAACeEAAEAAABc8AAA
< 해결 방법 >
1. HARDWARE 문제가 있다면 이를 먼저 해결한다.
2. DATA DICTIONARY 의 INDEX나 TABLE이 손상되었다면 FULL BACKUP으로부터 복구.
3. NON-DICTIONARY OBJECT일 경우
# INDEX가 손상된 경우: INDEX를 REBUILD하면 된다.
# TABLE이 손상된 경우:
* EXPORT BACKUP이 있다면 손상된 TABLE을 DROP하고 IMPORT.
* ARCHIVE MODE라면 해당 DATAFILE을 RESTORE하고 RECOVERY.
* 만약 BACKUP이 전혀 없다면 ROWID를 이용하여 손상된 BLOCK을 제외한
나머지 BLOCK의 ROW들만을 추출한다.
이것은 반드시 INDEX가 생성된 TABLE에 한해서만 적용 가능하다.
4. 손상된 BLOCK을 제외한 나머지 BLOCK의 ROW들을 추출하는 방법.
ERROR MESSAGE :
ORA-1578 "ORACLE data block corrupted (file # 4, block # 1562)
- file# 4는 absolute datafile number 임.
STEP 1 : 어떤 OBJECT에서 발생하였는가를 파악
SELECT owner, segment_name, segment_type , relative_fno, partition_name
FROM dba_extents
WHERE file_id = 4 AND
1562 BETWEEN block_id AND ( block_id + (blocks - 1)) ;
OWNER SEGMENT_NAME SEGMENT_TYPE RELATIVE_FNO PARTITION_NAME
SCOTT EMP TABLE 4
* RELATIVE_FNO 확인
* PARTITIONED TABLE인지 확인
STEP 2 : DATA_OBJECT_ID를 추출
SELECT DATA_OBJECT_ID
FROM dba_objects
WHERE owner = 'SCOTT' AND object_name = 'EMP'
[ AND partition_name = *EMP_PART_2* ] ;
DATA_OBJECT_ID
7033
* [ ] 안의 내용은 partitioned table일 경우에 추가되는 조건임.
STEP 3 : ROWID 생성
생성해야할 ROWID는 BLOCK 1562 와 BLOCK 1563의 각 첫 번째 ROWID들이다.
STEP 1,2에서 다음과 같은 정보를 얻었다.
OBJECT_NUMBER = 7033, RELATIVE_FNO= 4 , BLOCK-_NUMBER=1562
각 BLOCK의 ROW SEQUENCE NUMBER는 0 부터 시작하므로 ROWID는 다음과 같이 생성할 수 있다.
SQL> SELECT DBMS_ROWID.ROWID_CREATE(1,7033,4,1562,0) FROM DUAL;
DBMS_ROWID.ROWID_C
AAABt5AAEAAAAYaAAA
SQL> SELECT DBMS_ROWID.ROWID_CREATE(1,7033,4,1563,0) FROM DUAL;
DBMS_ROWID.ROWID_C
AAABt5AAEAAAAYbAAA
# 위 부분에서 기존의 BULLETIN(11340)은 잘못 되어 있다.
즉 기존의 BULLETIN에서는 BLOCK 1561 과 BLOCK 1563의 첫 번째
ROWID를 구해서 ROW를 추출하였다. 그러나 이렇게하면 BLOCK 1561의 ROW 들
이 누락되는 현상이 발생하게 된다. 그러므로 이러한 현상을 방지하기 위해서
는 BLOCK 1561의 첫 번째 ROWID가 아닌 BLOCK 1562의 첫번째 ROWID를 구해야
한다.
STEP 4 : ROW 추출
* 먼저 TEMPORARY TABLE을 만든다
SQL> CREATE TABLE TEMP AS SELECT * FROM EMP WHERE 1=2;
* 손상된 BLOCK 1562의 첫 번째 ROWID보다 작은 ROWID를 가진 ROW 추출
SQL>INSERT INTO TEMP
SELECT * FROM EMP
WHERE EMPNO > 0 AND ROWID < 'AAABt5AAEAAAAYaAAA' ;
* 손상된 BLOCK 1562의 마지막 ROWID보다 큰 ROWID를 가진 ROW 추출
SQL>INSERT INTO TEMP
SELECT * FROM EMP
WHERE EMPNO > 0 AND ROWID >= 'AAABt5AAEAAAAYbAAA' ;
* 기존의 TABLE을 DROP하고 TEMP TABLE을 RENAME한다.
위 INSERT시 WHERE 조건에 EMPNO > 0을 추가한 이유는 INDEX
에 의한 RANGE SCAN을 반드시 수행하도록 하기 위해서이다.
기존의 BULLETIN은 이 부분을 또한 간과하였다.
즉 WHERE 절에 ROWID만을 기술했을 경우 TABLE을 FULL SCAN하
지 않고 RANGE SCAN을 하기 위해서는 반드시 TABLE이
ANALYZE되어 있어야만 한다. TABLE이 ANALYZE되어 있지 않으
면 FULL SCAN을 하게 된다.
아래는 각각에 대한 EXECUTION PLAN이다.
TABLE ANALYZE를 하지 않은 상태
CASE 1 ) ROWID로 QUERY
SQL>select *
from imsiemp
where rowid < 'AAABwSAAEAAABGhAAJ';
Execution Plan
0 SELECT STATEMENT Optimizer=CHOOSE
1 0 TABLE ACCESS (FULL) OF 'IMSIEMP'
CASE 2 ) INDEX COLUMN & ROWID로 QUERY
SQL> select *
from imsiemp
where empno < 10 and rowid < 'AAABwSAAEAAABGhAAJ'
Execution Plan
0 SELECT STATEMENT Optimizer=CHOOSE
1 0 TABLE ACCESS (BY INDEX ROWID) OF 'IMSIEMP'
2 1 INDEX (RANGE SCAN) OF 'SYS_C003247' (UNIQUE)
TABLE ANALYZE가 수행된 상태
CASE 1) ROWID로 QUERY
SQL> select * from imsiemp where rowid < 'AAABwSAAEAAABGhAAJ'
Execution Plan
0 SELECT STATEMENT Optimizer=CHOOSE (Cost=36 Card=500 Bytes=19000)
1 0 TABLE ACCESS (BY ROWID RANGE) OF 'IMSIEMP' (Cost=36 Card=500 Bytes=19000)
CASE 2 ) INDEX COLUMN & ROWID로 QUERY
SQL> select *
from imsiemp
where empno < 10 and rowid < 'AAABwSAAEAAABGhAAJ';
Execution Plan
0 SELECT STATEMENT Optimizer=CHOOSE (Cost=3 Card=1 Bytes=38)
1 0 TABLE ACCESS (BY INDEX ROWID) OF 'IMSIEMP' (Cost=3 Card=1Bytes=38)
2 1 INDEX (RANGE SCAN) OF 'SYS_C003247' (UNIQUE) (Cost=2 Card=1)Let me give the details..
I1) I have installed 10.2.0.2 patch which is available in the service marketplace.
i have jus applied the patch after installing the oracle 10.2 software and its showing
10.2.0.2 in my status.
2) My kernel version is 239 (SAP R/3 4.7)
3) The env variables are give beolow.
DBMS_TYPE=ORA
DBS_ORA_SCHEMA=SAPR3
dbs_ora_tnsname=DEE
NLS_LANG=AMERICAN_AMERICA.WE8DEC
NUMBER_OF_PROCESSORS=8
ORACLE_HOME=D:\ORACLE\DEE\102
ORACLE_SID=DEE
OS=Windows_NT
Path=C:\Perl\bin\;D:\oracle\DEE\102\jre\1.4.2\bin\client;D:\oracle\DEE\102\jre\1
.4.2\bin;C:\Program Files\EMC\PowerPath\;C:\WINDOWS\system32;C:\WINDOWS;C:\WINDO
WS\System32\Wbem;C:\Program Files\Dell\SysMgt\RAC5;C:\Program Files\Dell\SysMgt\
oma\bin;C:\Program Files\Dell\SysMgt\oma\oldiags\bin;C:\Program Files\EMC\Navisp
here CLI;C:\Program Files\Resource Kit\;D:\Oracle92\Opatch;D:\Oracle92\Opatch;d:
\oracle\DEE\102;D:\usr\sap\DEE\sys\exe\run;D:\Oracle\DEE\102\BIN;d:\oracle92;d:\
oracle92\bin;D:\usr\sap\DEE\sys\exe\run;
SAPARCH=E:\oracle\DEE\saparch
SAPBACKUP=E:\oracle\DEE\sapbackup
SAPCHECK=E:\oracle\DEE\sapcheck
SAPDATA_HOME=E:\oracle\DEE
SAPEXE=D:\usr\sap\DEE\SYS\exe\run
SAPLOCALHOST=awnts151
SAPREORG=E:\oracle\DEE\sapreorg
SAPTRACE=E:\oracle\DEE\saptrace
SAPTRANSHOST=AWNTS151
TNS_ADMIN=D:\usr\sap\DEE\sys\profile\ORACLE
USERDNSDOMAIN=AUDCO9.AILVALVES.COM
USERDOMAIN=AUDCO9
USERNAME=deeadm
USERPROFILE=C:\Documents and Settings\deeadm
USE_KIT=OFF
4) Since there is no application server i have not installed oracle client.
5) Kernel version is 640.
Please help.
Thanks and regards,
siddhartha. -
Oracle Error :: ORA-12637 Packet receive failed
Hi buddies,
One of my staff's PC is receiving this error sometimes when she is trying to connect to the database and she is able to connect sometimes.
Oracle Error :: ORA-12637 Packet receive failed What could be the cause.
I tried replacing her tnsadmin with my tnsadmin and it didn't make a change, still able to connnect sometimes and sometimes not.
Able to connect using PL/SQL developer, but not using our customized application. (Everyone else are able to connect)
Is it network problem?
Please advice.
Thank You very much.
Alagu
Edited by: user645399 on Sep 16, 2009 8:37 PMAnd from this cut-and-paste the OP is supposed to take what actions to solve the problem? Please don't just post that which is one google away every time someone posts an ORA- exception. You make some valuable contributions here but just posting expanded text doesn't give someone a list of actions to take that will help them resolve the issue. Better the question is left unanswered so others will be more likely to offer help.
To the OP:
It is highly likely you have a network issue and the fact that it is isolated to a single machine makes it reasonably easy to fix. First try to figure out which component is failing. Go to the router or switch and swap wires between that client machine and another one that is working properly. Does the problem move? If not then swap the wires. Again does the problem move? Next the NIC card? What if you put another machine on the desk and put the original hard disk in it?
Sometimes it just isn't worth the effort so you just swap out the machine.
Intermittent problems are always hard to identify and fix. What is on your side is that this is only affecting a single user.
Maybe you are looking for
-
Help! Data recovery needed after lapse of thought... Suggestions please
All was going well with my Mini Server, but apart from the boot partition, I had no back-up plan in place which made me uncomfortable. So in seek of a performance upgrade and a back-up solution I ordered a larger 750GB HDD for bay 1 and a SSD for bay
-
SmartForms: Template: Box for Single Cell
Hi all, I am using template of one row and two Column, I want to draw a box around for Column(1,1), where don't want to draw any box around Column(1,2). Which pattern should i select so that i can achieve this? Thanks in advance.
-
How to change directory for VOD files
Hello.. My company has recently asked me to install the Adobe Streaming Server 4.0. I was wondering if it is possible to have the server software reside on the C: drive, while having my VOD files on seperate D: drive. The staff here wants to separa
-
27" iMac i7 won't startup after recent security update
My iMac does not boot properly since I installed the recent security update. All I get is the circle slash symbol. Anyone have a solution?
-
Adobe audition trying to run vst intruments
I have just upgraded to audition 3. I am trying to play my native instuments programs(b4, electrik piano, etc). How do I go about using these instruments in adobe and recording them into audition?