Performance Issue: Retrieving records from Oracle Database
While retrieving data from Oracle database we are facing performance issues.
The query is returning 890 records and while displaying it on the jsp page, the page is taking almost 18 minutes for displaying records.
I have observed that cpu usage is 100% while processing the request.
Could any one advise what are the methods at DB end or Java end we can think of to avoid such issues.
Thanks
R.
passion_for_java wrote:
Will it make any difference if I select columns instead of ls.*
possibly, especially if there's a lot or data being returned.
Less data over the wire means a faster response,
You may also want to look at your database, is that outer join really needed? Does it perform? Are your indexes good?
A bad index (or a missing one) can kill query performance (we've seen performance of queries drop from seconds to hours when indexes got corrupted).
A missing index can cause full table scans, which of course kill performance if the table is large.
Similar Messages
-
Retrieving record from oracle DB very slow..pls help
Hi, i'm writing a VB code to retrieving records from Oracle DB Server version 8. I'm using VB Adodb to retrieve the records from various tables. Unfortunately one of the table are very slow to response, the table only contain around 204900 records. The SQL Statement to retrieve the records is a simple SQL Statement that contain WHERE clause only. Any issue that will make the retrieving time become slow? Is that a Indexing? Oracle Driver? Hardware Spec? Or any solution for me to improve the performance. Thanks!
Well, there are a few things to consider...
First, can you try executing your query via SQL*Plus? If there are database tuning problems, your query will be slow no matter where you run it.
Second, are you retrieving significantly more rows in this query than in your other queries? It can take a significant amount of time to retrieve records to the client, even if it's quick to select them.
Justin -
Performance issue - insert records from db2 tables
I have a table say emp in oracle database and i have the emp table in db2 database. My job is to pull all the records (million records) from db2 table to oracle emp table. My insert statement is like below. I am connecting to the db2 database using dblink.
insert into emp
select * from emp_db2, dept_db2
where emp_db2.dno = dept_db2.dno
and dept_db2.dno = 10;
The statement is still running. How to improve the performance ?
please suggest.
thanks,
VinodhVinodh2 wrote:
1.how much is your select query is taking? 1 day over . still running.
2.What is the row count from the query? 85632978 records
3.Whats your expected completion time? 30 minutes
I am not getting the explain plan because the query is still running.
do as below
SQL> set autotrace traceonly explain
SQL> select sysdate from dual;
Execution Plan
Plan hash value: 1388734953
| Id | Operation | Name | Rows | Cost (%CPU)| Time |
| 0 | SELECT STATEMENT | | 1 | 2 (0)| 00:00:01 |
| 1 | FAST DUAL | | 1 | 2 (0)| 00:00:01 |
----------------------------------------------------------------- -
Retrieving data from oracle database and displaying using servlets
//DataRetrieving.class file
import java.io.*;
import java.sql.*;
import javax.servlet.*;
import javax.servlet.http.*;
public class DataRetrieving extends HttpServlet{
public void doGet(HttpServletRequest request, HttpServletResponse response)throws
ServletException, IOException{
response.setContentType("text/html");
PrintWriter out = response.getWriter();
out.println("A program for connecting oracle database");
try
Class.forName("oracle.jdbc.driver.OracleDriver");
Connection con = DriverManager.getConnection("jdbc:oracle:thin:@localhost:1521:ORCL", "scott","tiger");
Statement stmt = con.createStatement();
ResultSet r = stmt.executeQuery ("SELECT ename,job,sal,comm,deptno FROM emp");
while ( r.next() )
String bar = r.getString("ename");
String bar1 = r.getString("job");
float bar2 = r.getInt("sal");
float bar3 = r.getInt("comm");
int bar4 = r.getInt("deptno");
//out.println(r.getString(0)+" "+r.getString("ename"));
out.println("hi");
out.println(bar1);
r.close();
stmt.close();
con.close();
catch (Exception e)
out.println("ERROR : " + e);
//web.xml file
<?xml version="1.0" encoding="ISO-8859-1"?>
<!--<!DOCTYPE web-app
PUBLIC "-//Sun Microsystems, Inc.//DTD Web Application 2.3//EN"
"http://java.sun.com/dtd/web-app_2_3.dtd"> -->
<web-app>
<servlet>
<servlet-name>Hello</servlet-name>
<servlet-class>DataRetrieving</servlet-class>
</servlet>
<servlet-mapping>
<servlet-name>Hello</servlet-name>
<url-pattern>/DataRetrieval</url-pattern>
</servlet-mapping>
</web-app>
while running the servlet , i am unable to retrieve the data
The error message i am getting is
A program for connecting oracle database
ERROR : java.lang.ClassNotFoundException: oracle.jdbc.driver.OracleDriver
after running the servlet.
what could be the problem?import java.io.*;
import java.sql.*;
import javax.servlet.*;
import javax.servlet.http.*;
public class myserv extends HttpServlet
public void doGet(HttpServletRequest req,HttpServletResponse res)throws ServletException,IOException
res.setContentType("text/html");
PrintWriter pw=res.getwriter();
pw.println("Connecting data base");
try
Class.forName("oracle.jdbc.driver.OracleDriver");
Connection con=Drivermanager.getConnection("jdbc:oracle:thin:@localhost:1521:orcl","scott","tiger");
Stamtenet st=con.createStament();
Resultset rs=con.executeQurey("select * from emp");
while(rs.next())
rs.getInt("empno")+" "+rs.getDouble("sal"));
}catch(Exception e)
} -
How to retrieve records from a database and display it in a jsp page.Help!!
Hello everyone ! im very new to this forum.Please help me to solve my problem
First i ll explain what is my requirement or needed.
Actually in my web page i have text box to enter start date and end date
and one list box to select the month .If user select or enter the dates in text box
accordingly the data from ms access database has to display in a jsp page.
Im using jsp and beans.
I tried returning ResultSet from bean but i get nothing display in my web page
instead it goes to error page (ErrorPage.jsp) which i handle in the jsp.
I tried many things but nothing work out please help me to attain a perfect
solution. I tried with my bean individually to check whether the result set has
values but i got NullPointerException . But the values which i passed or
available in the database.
I dint get any reply for my last post please reply atleast to this.
i get the date in the jsp page is by this way
int Year=Integer.parseInt(request.getParameter("year"));
int Month=Integer.parseInt(request.getParameter("month"));
int Day=Integer.parseInt(request.getParameter("day"));
String startdate=Day+"/"+Month+"/"+Year;
int Year1=Integer.parseInt(request.getParameter("year1"));
int Month1=Integer.parseInt(request.getParameter("month1"));
int Day1=Integer.parseInt(request.getParameter("day1"));
String enddate=Day1+"/"+Month1+"/"+Year1;But this to check my bean whether it return any result!
public void databaseConnection(String MTName,String startDate,String endDate)
try
java.text.SimpleDateFormat dateFormat=new java.text.SimpleDateFormat("dd/MM/yyyy");
java.util.Date fromDate=dateFormat.parse(startDate);
java.util.Date tillDate=dateFormat.parse(endDate);
java.sql.Date sqlFromDate=new java.sql.Date(fromDate.getTime());
java.sql.Date sqlTillDate=new java.sql.Date(tillDate.getTime());
String query1="select MTName,Date,MTLineCount from Main where MTName='"+MTName+"' and Date between '"+sqlFromDate+"' and '"+sqlTillDate+"' " ;
System.out.println(query1);
Class.forName(driver);
DriverManager.getConnection(url);
preparedStatement=connection.prepareStatement(query1);
preparedStatement.setString(1,"MTName");
preparedStatement.setDate(2,sqlFromDate);
preparedStatement.setDate(3,sqlTillDate);
resultSet=preparedStatement.executeQuery();
while(resultSet.next())
System.out.println(resultSet.getString(1));
System.out.println(resultSet.getDate(2));
System.out.println(resultSet.getInt(3));
catch (Exception e)
e.printStackTrace();
I Passed value from my main method is like thisl
databaseConnection("prasu","1/12/2005","31/12/2005");Please provide solutions or provide some sample codes!
Help!
Thanks in advance for repliesThanks for ur reply Mr.Rajasekhar
I tried as u said,
i tried without converting to sql date ,but still i din't get any results
java.text.SimpleDateFormat dateFormat=new java.text.SimpleDateFormat("dd/MM/yyyy");
java.util.Date fromDate=dateFormat.parse(startDate);
java.util.Date tillDate=dateFormat.parse(endDate);
String query1="select MTName,Date,MTLineCount from linecountdetails where mtname='"+MTName+"' and Date >='"+fromDate+"' and Date <='"+tillDate+"' " ;
System.out.println(query1);
//From main method
databaseConnection("prasu","1/12/2005","31/12/2005");I got the output as
---------- java ----------
select MTName,Date,MTLineCount from linecountdetails where mtname='prasu' and Date >='Thu Dec 01 00:00:00 GMT+05:30 2005' and Date <='Sat Dec 31 00:00:00 GMT+05:30 2005'
java.lang.NullPointerException
null
null
java.lang.NullPointerException
Output completed (4 sec consumed) - Normal TerminationThanks
Prasanna.B -
Java.sql : Cannot retrieve records from Oracle 9i with JDK 1.5
I think I'm doing everything right, but still the following code does not
return any rows. I have the classpath set correctly and ojdbc14.jar in
the path. I'm using jdk 1.5.
What am I missing? Any help greatly appreciated. Thanks!
Connection conn = null;
String serverName = "MySvr";
String portNumber = "1521";
String sid = "mySID";
String myURL = "jdbc:oracle:thin:@" + serverName + ":" + portNumber + ":" + sid;
logger.writeLog("URL: " + myURL);
String username = "scott";
String password = "tiger";
String query = "select 'test' from dual";
DriverManager.registerDriver(new oracle.jdbc.driver.OracleDriver());
conn = DriverManager.getConnection(myURL, username, password);
Statement stmt = conn.createStatement();
rs = stmt.executeQuery(query);
logger.writeLog("Cur Row : " + rs.getRow());
-----> returns 0
while (rs.next()) {
------> throws java.lang.NullPointerException
}I think I'm doing everything right, but still the following code does not
return any rows. JDBC didn't change from 1.4 to 1.5, so that's a red herring. It's you, not the JVM.
I have the classpath set correctly Really? A system CLASSPATH environment variable? I'd say that's wrong. Better to use the -classpath option on javac.exe when you compile and java.exe when you run.
and ojdbc14.jar in the path. You'd better mean CLASSPATH and not PATH. CLASSPATH is for the Java class loader; PATH is for the operating system. Don't get the two confused.
I'm using jdk 1.5. Irrelevant here.
What am I missing? Any help greatly appreciated. Thanks!I think you're using ResultSet incorrectly, because it's never null.
Try this:
// I'd externalize this so you could change it on the fly.
String driver = "oracle.jdbc.driver.OracleDriver";
String url = "jdbc:oracle:thin:@MySvr:1521:mySID";
// I hope you're not using the default username and password for real
String username = "scott";
String password = "tiger";
logger.writeLog("URL: " + url);
Connection conn = null;
Statement stmt = null;
ResultSet rs = null;
try
Class.forName(driver);
conn = DriverManager.getConnection(url, username, password);
String sql = "select 1 from dual";
stmt = conn.createStatement();
rs = stmt.executeQuery(sql);
int value;
while (rs.next())
value = rs.getInt(1);
catch (SQLException e)
e.printStackTrace();
finally
// I'd put all these in a utility class
try { if (rs != null) rs.close(); } catch (SQLException e) { logger.writeLog("could not close result set"); }
try { if (stmt != null) stmt.close(); } catch (SQLException e) { logger.writeLog("could not close statement"); }
try { if (conn != null) conn.close(); } catch (SQLException e) { logger.writeLog("could not close connection"); }
}Note: close your resources in a finally block. It's important, especially if you don't want to run out of Oracle cursors.
% -
How to store and retrieve blob data type in/from oracle database using JSP
how to store and retrieve blob data type in/from oracle database using JSP and not using servlet
thanksJSP? Why?
start here: [http://java.sun.com/developer/onlineTraining/JSPIntro/contents.html] -
Get username from session and retrieve records from database wit tat userna
hello..
i got a ChangePassword.jsp which i retrieve the username from session using bean to display on e page..
<jsp:getProperty name="UsernamePassword" property = "username"/>
but in my servlet, i wan to retrieve records from database with tat username..
i tot of coding
String username = (String)request.getSession().getAttribute("UsernamePassword");
and then use tat username to retrieve records.. but is that e right way? The page did not display and i got a CastingException..
Please help.If you are using the session inside a jsp, you can say "session" without having to declare it.String usernamePassword = (String) session.getAttribute("usernamePassword");However, right after you get this value, check if it is null:
if(usernamePassword==null)
// do sth like forward to error page
else
// continue processing
If it is null, then you are probably not setting it right in the first place. Make sure that in your servlet A you create a session, and before you return or forward to a jsp, that you actually set this value in the session like saying
session.setAttribute("usernamePassword", usernamePassword);
and it is case sensitive for the key. -
Passing Array of java objects to and from oracle database-Complete Example
Hi all ,
I am posting a working example of Passing Array of java objects to and from oracle database . I have struggled a lot to get it working and since finally its working , postinmg it here so that it coudl be helpful to the rest of the folks.
First thinsg first
i) Create a Java Value Object which you want to pass .
create or replace and compile java source named Person as
import java.sql.*;
import java.io.*;
public class Person implements SQLData
private String sql_type = "PERSON_T";
public int person_id;
public String person_name;
public Person () {}
public String getSQLTypeName() throws SQLException { return sql_type; }
public void readSQL(SQLInput stream, String typeName) throws SQLException
sql_type = typeName;
person_id = stream.readInt();
person_name = stream.readString();
public void writeSQL(SQLOutput stream) throws SQLException
stream.writeInt (person_id);
stream.writeString (person_name);
ii) Once you created a Java class compile this class in sql plus. Just Copy paste and run it in SQL .
you should see a message called "Java created."
iii) Now create your object Types
CREATE TYPE person_t AS OBJECT
EXTERNAL NAME 'Person' LANGUAGE JAVA
USING SQLData (
person_id NUMBER(9) EXTERNAL NAME 'person_id',
person_name VARCHAR2(30) EXTERNAL NAME 'person_name'
iv) Now create a table of Objects
CREATE TYPE person_tab IS TABLE OF person_t;
v) Now create your procedure . Ensure that you create dummy table called "person_test" for loggiing values.
create or replace
procedure give_me_an_array( p_array in person_tab,p_arrayout out person_tab)
as
l_person_id Number;
l_person_name Varchar2(200);
l_person person_t;
l_p_arrayout person_tab;
errm Varchar2(2000);
begin
l_p_arrayout := person_tab();
for i in 1 .. p_array.count
loop
l_p_arrayout.extend;
insert into person_test values(p_array(i).person_id, 'in Record '||p_array(i).person_name);
l_person_id := p_array(i).person_id;
l_person_name := p_array(i).person_name;
l_person := person_t(null,null);
l_person.person_id := l_person_id + 5;
l_person.person_name := 'Out Record ' ||l_person_name ;
l_p_arrayout(i) := l_person;
end loop;
p_arrayout := l_p_arrayout;
l_person_id := p_arrayout.count;
for i in 1 .. p_arrayout.count
loop
insert into person_test values(l_person_id, p_arrayout(i).person_name);
end loop;
commit;
EXCEPTION WHEN OTHERS THEN
errm := SQLERRM;
insert into person_test values(-1, errm);
commit;
end;
vi) Now finally create your java class which will invoke the pl/sql procedure and get the updated value array and then display it on your screen>Alternatively you can also check the "person_test" tbale
import java.util.Date;
import java.io.*;
import java.sql.*;
import oracle.sql.*;
import oracle.jdbc.driver.*;
import java.text.DateFormat;
import java.text.ParseException;
import java.text.SimpleDateFormat;
public class ArrayDemo
public static void passArray() throws SQLException
Connection conn = getConnection();
ArrayDemo a = new ArrayDemo();
Person pn1 = new Person();
pn1.person_id = 1;
pn1.person_name = "SunilKumar";
Person pn2 = new Person();
pn2.person_id = 2;
pn2.person_name = "Superb";
Person pn3 = new Person();
pn3.person_id = 31;
pn3.person_name = "Outstanding";
Person[] P_arr = {pn1, pn2, pn3};
Person[] P_arr_out = new Person[3];
ArrayDescriptor descriptor =
ArrayDescriptor.createDescriptor( "PERSON_TAB", conn );
ARRAY array_to_pass =
new ARRAY( descriptor, conn, P_arr);
OracleCallableStatement ps =
(OracleCallableStatement )conn.prepareCall
( "begin give_me_an_array(?,?); end;" );
ps.setARRAY( 1, array_to_pass );
ps.registerOutParameter( 2, OracleTypes.ARRAY,"PERSON_TAB" );
ps.execute();
oracle.sql.ARRAY returnArray = (oracle.sql.ARRAY)ps.getArray(2);
Object[] personDetails = (Object[]) returnArray.getArray();
Person person_record = new Person();
for (int i = 0; i < personDetails.length; i++) {
person_record = (Person)personDetails;
System.out.println( "row " + i + " = '" + person_record.person_name +"'" );
public static void main (String args[]){
try
ArrayDemo tfc = new ArrayDemo();
tfc.passArray();
catch(Exception e) {
e.printStackTrace();
public static Connection getConnection() {
try
Class.forName ("oracle.jdbc.OracleDriver");
return DriverManager.getConnection("jdbc:oracle:thin:@<<HostNanem>>:1523:VIS",
"username", "password");
catch(Exception SQLe) {
System.out.println("IN EXCEPTION BLOCK ");
return null;
and thats it. you are done.
Hope it atleast helps people to get started. Comments are appreciated. I can be reached at ([email protected]) or [email protected]
Thanks
Sunil.sHi Sunil,
I've a similar situation where I'm trying to insert Java objects in db using bulk insert. My issue is with performance for which I've created a new thread.
http://forum.java.sun.com/thread.jspa?threadID=5270260&tstart=30
I ran into your code and looked into it. You've used the Person object array and directly passing it to the oracle.sql.ARRAY constructor. Just curios if this works, cos my understanding is that you need to create a oracle.sql.STRUCT out of ur java object collection and pass it to the ARRAY constructor. I tried ur way but got this runtime exception.
java.sql.SQLException: Fail to convert to internal representation: JavaBulkInsertNew$Option@10bbf9e
at oracle.jdbc.driver.DatabaseError.throwSqlException(DatabaseError.java:112)
at oracle.jdbc.driver.DatabaseError.throwSqlException(DatabaseError.java:146)
at oracle.jdbc.oracore.OracleTypeADT.toDatum(OracleTypeADT.java:239)
at oracle.jdbc.oracore.OracleTypeADT.toDatumArray(OracleTypeADT.java:274)
at oracle.jdbc.oracore.OracleTypeUPT.toDatumArray(OracleTypeUPT.java:115)
at oracle.sql.ArrayDescriptor.toOracleArray(ArrayDescriptor.java:1314)
at oracle.sql.ARRAY.<init>(ARRAY.java:152)
at JavaBulkInsertNew.main(JavaBulkInsertNew.java:76)
Here's a code snippet I used :
Object optionVal[] = {optionArr[0]}; // optionArr[0] is an Option object which has three properties
oracle.sql.ArrayDescriptor empArrayDescriptor = oracle.sql.ArrayDescriptor.createDescriptor("TT_EMP_TEST",conn);
ARRAY empArray = new ARRAY(empArrayDescriptor,conn,optionVal);If you visit my thread, u'll see that I'm using STRUCT and then pass it to the ARRAY constructor, which works well, except for the performance issue.
I'll appreciate if you can provide some information.
Regards,
Shamik -
Failure to retrieve data from the database (Vendor Code 6550)
I am having a trouble with two of the 6 reports that I have created. I am using Crystal XI and Oracle 10g. The underlying database object is a stored procedure that accepts as input a start time as a TIMESTAMP, an end time as a TIMESTAMP and a furnace number as a number. I have a cursor ref as a return parameter.
When I run the stored procedure in Oracle I get the selected records and can view them on the screen.
When I refresh data on the report in Crystal XI developer, the designer asks me for the start and end time and furnace number. When I input these values the report displays properly.
When I launch the report from my VB .NET 2005 application I am asked for the username and the password for the database (this is another problem I need to solve as this information I put into the program seems to be ignored in my program) then I receive the following failure message:
Failure to retrieve data from the database (Vendor Code 6550)
When I launch the other reports, they only ask me for the username and password then they display the proper data.
The main difference between my other reports and the two that are returning the above failure code is that the other reports are to either tables or views. The two that don't work are tied to stored procedures. I there any way that I can solve this problem or at least get more information?
Any help would be greatly appreciated. Let me know if you need any other information.I have a similar problem, the only difference is that the crystal report error is only thrown when I try to load the sub reports at my web application. When I deploy my report to the Web application the main report loads up fine but when I try to launch the sub reports from the main report it can no longer load.
But when I use the Crystal report developer I am able to load the main report and it's associated sub reports without any issues.
My issue only occurs when I try to load the sub report in the web application. The following sections shows how my reports look like both in my .NET web application and also at the Crystal Report Development IDE.
Failure: Loading my Reports from .NET Web Application
1) When I load from the web application I am able to load the main report as per the print screen below.
2) When I try to click on the hyper links to enter the sub reports I am now able to load them, both sub reports cannot load and will throw the same error "
Failed to retrieve data from the database. Details: [Database Vendor Code:
6550 ] Failed to retrieve data from the database. Details: [Database Vendor
Code: 6550 ] Failed to retrieve data from the database. Error in File OAWR3011A
{CEC8A94A-4490-4640-95FB-2739A679978B}.rpt: Failed to retrieve data from the
database. Details: [Database Vendor Code: 6550 ] "
Success: Loading my Reports from Crystal Report Development Tool
1) This is my Main Report Loaded from the Crystal Report Development Tool, the first two hyperlinked fields are links to my sub reports, step number 2 and number 3 shows my sub reports when I load it using Crystal Report Developer
2) Sub Report 1 Loaded Successfully, when I click on the fields in the first link
3) Sub Report 2 loaded successfully when I click the second field hyper link -
How to access data in AS 400 from Oracle database
Hi
Could you please help me on accessing data in AS 400 from Oracle database? what are the main things to do? Any private documentation or any oracle metalink note please...Hi
Please find the details given below....Any body can help me on this please....
Issue Description: The stock status report to be developed at SATN has some information that is currently calculated and stored in the Fox/pro system. A real time ODBC needs to be done to the AS/400 system to retrieve values for the respective fields. This has never been tested before as it impacts many areas.
The DBA team need to work to establish such a relationship and a report needs to be written in Oracle to have this tested on a real time basis. Mapping needs to be developed on the Oracle side to grab the correct fields -
Hello,
I hope that is the right forum for this issue.
We have the application 'Lodestar' for some years.
The frond-end is ASP and the database is Oracle 9. Lodestar has its own backend language "Rules language". The crystal version is 10
Now we have a new version of Lodestar with ASP and ASP.NET, Oracle 11g and Crystal 11.
But when we run some reports with the new version we get the error "Failed to retrieve data from the database. Details: [Database Vendor Code: 1652 ] Failed to retrieve data from the database." When I google on this error then it seems that it has something todo with tablespace.
We have changed the tablespace volume from 32Gb to 100Gb, but we still get this error.
Has anybody an idea what the cause could be?
Error
<REPORT_ERROR>
<REPORT_NAME>G_GV_DEALLIST</REPORT_NAME>
<REPORT_TYPE>CRYSTAL</REPORT_TYPE>
<MESSAGE>Failed to retrieve data from the database. Details: [Database Vendor Code: 1652 ] Failed to retrieve data from the database. Error in File G_GV_DEALLIST{54DEAA95-37B9-495B-B7E8-76BC575FA75F} {A3D1B090-322B-47D3-A84F-F003FF482C48}.rpt: Failed to retrieve data from the database. Details: [Database Vendor Code: 1652 ]</MESSAGE>
<STACK_TRACE>at CrystalDecisions.ReportAppServer.ConvertDotNetToErom.ThrowDotNetException(Exception e) at CrystalDecisions.ReportSource.EromReportSourceBase.ExportToStream(ExportRequestContext reqContext) at CrystalDecisions.CrystalReports.Engine.FormatEngine.ExportToStream(ExportRequestContext reqContext) at CrystalDecisions.CrystalReports.Engine.ReportDocument.ExportToStream(ExportOptions options) at CrystalDecisions.CrystalReports.Engine.ReportDocument.ExportToStream(ExportFormatType formatType) at Lodestar.crComGen.crCrystalNet.crAppNet.crGenerateReport(String connectstr, String qualifier, String guid, String altconn, String login, String url, StreamWriter sw)</STACK_TRACE>
</REPORT_ERROR>
Thanks in advance.
With regards,
NicoThanks all for you're reaction.
Oke we have changed the temp space from 30 Gigs --> 200 Gigs, but still the problem occurs. To make the temp tablespace is not the good direction, this is what the dba'er told me.
I'm not a guru with SQL/Oracle, but what for me hard to understand is" why does it work with the old version and not with the new version anymore?
It is a very difficult view with unions (I'm not the developer of this view), and I think I'm gonna try to break-down this view in different small parts and try to find where it goes wrong. I don't see any other way to investigate this problem.
(I see now the reaction of upul indika.)
Edited by: user12054070 on 24-feb-2012 0:27 -
Failed to retrieve data from the database when adding jdbc datasource
I'm having problems adding some tables to the selected tables list using the database expert.
I get the error messages "Failed to retrieve data from the database" followed by "Unknown Database Connection Error".
I thought it may be a permissions issue as it only affects some tables, but I can access the same tables fine using the same user through Oracle SQL Developer.
The database is Oracle 10g Express Editions
Crystal version is 12.0.0.683
Running on Windows XP
Any suggestions would be much appreciated.Hi Stuart
Please refer SAP note 1218714 for this issue. The link to this article ia as follows:
https://www.sdn.sap.com/irj/servlet/prt/portal/prtroot/com.sap.km.cm.docs/oss_notes/sdn_oss_boj_erq/sap(bD1lbiZjPTAwMQ==)/bc/bsp/spn/scn_bosap/notes%7B6163636573733d36393736354636443646363436353344333933393338323636393736354637333631373036453646373436353733354636453735364436323635373233443330333033303331333233313338333733313334%7D.do
You can search for this note on the SDN site.
Hope this helps.
Thanks! -
Hello Friends,
The background is I am working as conversion manager and we move the data from oracle to SQL Server using SSMA and then we will apply the conversion logic and then move the data to system test ,UAT and Production.
Scenario:
Moving the 80 Million records from Conversion database to System Test database (Just for one transaction table) taking too long. Both the databases are in the same server.
Questions are…
What is best option?
IF we use the SSIS it’s very slow and taking 17 hours (some time it use to stuck and won’t allow us to do any process).
I am using my own script (Stored procedure) and it’s taking only 1 hour 40 Min. I would like know is there any better process to speed up and why the SSIS is taking too long.
When we move the data using SSIS do they commit inside after particular count? (or) is the Microsoft is committing all the records together after writing into Transaction Log
Thanks
Karthikeyan Jothihttp://www.dfarber.com/computer-consulting-blog.aspx?filterby=Copy%20hundreds%20of%20millions%20records%20in%20ms%20sql
Processing
hundreds of millions records can be done in less than an hour.
Best Regards,Uri Dimant SQL Server MVP,
http://sqlblog.com/blogs/uri_dimant/
MS SQL optimization: MS SQL Development and Optimization
MS SQL Consulting:
Large scale of database and data cleansing
Remote DBA Services:
Improves MS SQL Database Performance
SQL Server Integration Services:
Business Intelligence -
Update/Insert records from Oracle to MySQL
Hi team,
My application will insert/update records into Oracle database, I need to sync all of records into MySQL database. I designed a package to load data from Oracle to MySQL, the Oracle database use OLE DB component and MySQL database use ADO.NET.
How to insert new records into MySQL? If the old record exists, we also need to replace with new record. I did some research, someone suggest to create a stage table to handle this scenario, but I have 14 tables in this case. How to handle this scenario
with high performance?
If there is anything unclear, please let me know.
Thank you in advance.Finally, I created 14 tables as same as in our MySQL database system with prefix "updated" , they are use to store the updated records from Oracle system. All of new records we add a flag, the "1" means insert a new record into the system,
and the "0" means we should updated. So, I can use the conditional split component to split all of new records. The new records insert into the target table and the updated records insert into the "updated_table". Finally, we can add a
SQL Script task to run a update script to sync all of records.
I don't use Lookup Transformation because we must use Cache
Transform transformation in this case, the Cache connection manager to save the data to a cache file (.caw), it will hard to
trace the history data in the future.
In addition, I recommend to use ODBC connection if somebody face the similar scenario with me, there is a bug if we use ADO.NET to
load data from Oracle to MySQL by using SSIS. For more information, please refer the MSDN document: http://blogs.msdn.com/b/mattm/archive/2009/01/07/writing-to-a-mysql-database-from-ssis.aspx
@Arthur, thanks again for your input. Have a nice day! :)
Maybe you are looking for
-
Is it possible to create a word doc or excel in iPad Air
Is it possible to create a word doc or excel in iPad Air? Also is it possible to open or transfer documents from my computer to my iPad?
-
Adobe Photoshop Elements 12 Shutting Down
Whenever I open Adobe Photoshop Elements 12 it immediately shuts down and comes up with an error message. How do I fix this? And does it have anything to do with Windows 8?
-
Problem with select range for a character type field. Kindly Help! Urgent!
Hi Experts, I have to write a report to pull data from a table BUT000 for a selected range of BPEXT field values in selection screen. In the table BUT000, the BPEXT field is type char. Now what is happening is that if the user gives a range
-
Very Poor Quality Device Multiple Issues
I have Purchased this Slate 7 Tab with Great Hope and Trust that HP is a trusted Brand...but Very soon i realised that this is the worst product HP have Launched...Immediately after it started giving problem and since last 1 Year my TAB was in HP Ser
-
Clariffications in MM SUS Scenario with ECC 6.0 backend and SRM 5.0
Dear Team, We are implementing MM SUS Scenario with ECC 6.0 backend and SRM 5.0 We need to following clarifications 1 Once we create ASN in SUS, how to cancel the ASN. We are not able to see cancel button for ASNs 2 When we create GRN in ECC against