Solved

Web Service Logging - How do I log oracle query text

Posted on 2011-02-15
4
873 Views
Last Modified: 2012-05-11
I have a web service that is returning an ORA-000942: table or view does not exist error.
I would like to find out which table it was querying.  How do I get the web service to either return the table name or else log the sql that it was using?

SD.LLBLGen.Pro.ORMSupportClasses.ORMQueryExecutionException: An exception was caught during the execution of a retrieval query: ORA-00942: table or view does not exist. Check InnerException, QueryExecuted and Parameters of this exception to examine the cause of this exception. ---> Oracle.DataAccess.Client.OracleException: ORA-00942: table or view does not exist
   at Oracle.DataAccess.Client.OracleException.HandleErrorHelper(Int32 errCode, OracleConnection conn, IntPtr opsErrCtx, OpoSqlValCtx* pOpoSqlValCtx, Object src, String procedure)
   at Oracle.DataAccess.Client.OracleException.HandleError(Int32 errCode, OracleConnection conn, String procedure, IntPtr opsErrCtx, OpoSqlValCtx* pOpoSqlValCtx, Object src)
   at Oracle.DataAccess.Client.OracleCommand.ExecuteReader(Boolean requery, Boolean fillRequest, CommandBehavior behavior)
   at Oracle.DataAccess.Client.OracleCommand.ExecuteDbDataReader(CommandBehavior behavior)
   at System.Data.Common.DbCommand.System.Data.IDbCommand.ExecuteReader(CommandBehavior behavior)
   at SD.LLBLGen.Pro.ORMSupportClasses.RetrievalQuery.Execute(CommandBehavior behavior)
   --- End of inner exception stack trace ---

The web service was writting using visual studio .NET  (visual basic)
0
Comment
Question by:fowlow
  • 2
  • 2
4 Comments
 
LVL 76

Expert Comment

by:slightwv (䄆 Netminder)
ID: 34898403
Let me guess: You don't have access to the source code.

Are you allowed to decompile the code to extract the SQL?

If none of that is an option, you will likely need to turn on Oracle tracing.  This is usually troublesome to get set up but is possible.  

If you want to try this route:  What version of the Oracle client are you using?
0
 

Author Comment

by:fowlow
ID: 34898609
Actually I do have the source code and the software should be able to view the tables. 9I have confirmed this by logging into the database as the webservice user and confirming that it can read all the tables. However, I don't know which table is giving the ORA error.  
0
 
LVL 76

Accepted Solution

by:
slightwv (䄆 Netminder) earned 500 total points
ID: 34898718
The code must be referencing some table that user cannot see in the database in question.  

Does the code call any stored procedures/functions that might be the one actually generating the error?

Can you connect your development environment to the database generating the error and debug the code?
0
 

Author Comment

by:fowlow
ID: 34899733
I ran the code through the debugger and it stopped when trying to add an entry to a logging table.  That led me to determine that the database was missing a synonym to the table as it resided in a separate schema.

Issue resolved.
Thanks
Tim
0

Featured Post

Free Tool: Postgres Monitoring System

A PHP and Perl based system to collect and display usage statistics from PostgreSQL databases.

One of a set of tools we are providing to everyone as a way of saying thank you for being a part of the community.

Question has a verified solution.

If you are experiencing a similar issue, please ask a related question

Suggested Solutions

Title # Comments Views Activity
How to connect SQL Server from my Oracle database? 11 127
Oracle SQL - Query help 7 66
Oracle Insert not working 10 30
Oracle Distributed Transaction Lock Error ORA-01591 8 51
The Confluence of Individual Knowledge and the Collective Intelligence At this writing (summer 2013) the term API (http://dictionary.reference.com/browse/API?s=t) has made its way into the popular lexicon of the English language.  A few years ago, …
New Relic recently released its Synthetics product that allows for the creation of performance monitors that periodically test a site's performance. If you wish to test an interactive workflow New Relic employs Selenium WebDriverJS to run those test…
This video shows how to copy a database user from one database to another user DBMS_METADATA.  It also shows how to copy a user's permissions and discusses password hash differences between Oracle 10g and 11g.
This video shows how to set up a shell script to accept a positional parameter when called, pass that to a SQL script, accept the output from the statement back and then manipulate it in the Shell.

789 members asked questions and received personalized solutions in the past 7 days.

Join the community of 500,000 technology professionals and ask your questions.

Join & Ask a Question