commons-user mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Amol Kulkarni <amolkul...@gmail.com>
Subject Re: [dbutils] Issue when using more than 1 parameter in query
Date Thu, 19 Nov 2015 08:23:57 GMT
Thank you all for your response . as we are unable to determine problem, we
have moved back to plain jdbc for this.

On Wed, Nov 18, 2015 at 5:03 PM, Amol Kulkarni <amolkulkar@gmail.com> wrote:

> I think so, the problem is with dbutils to query this particular table. If
> there was something in debug logs to see why getParameterMetaData() is
> throwing error when used with dbutils , we could pinpoint the issue.
>
> On Wed, Nov 18, 2015 at 4:59 PM, Benedikt Ritter <britter@apache.org>
> wrote:
>
>> Hello Amol,
>>
>> 2015-11-17 9:07 GMT+01:00 Amol Kulkarni <amolkulkar@gmail.com>:
>>
>> > We tested this code with standalone app.The  stmt.getParameterMetaData()
>> > in QueryRunner.java  is throwing error. We asked DBA , but he does not
>> see
>> > any query in logs coming. He is the debug. We add QueryRunner.java in
>> > classpath so that we can debug / put some sys outs.
>> >
>> > query coming here is SELECT * FROM DIGITAL_CERTIFICATE_CACHE     WHERE
>> > CERT_STATUS=? AND CERT_USAGE=?
>> > params coming here is I
>> > java.sql.SQLSyntaxErrorException: ORA-00942: table or view does not
>> exist
>> >
>> >     at oracle.jdbc.driver.T4CTTIoer.processError(T4CTTIoer.java:450)
>> >     at oracle.jdbc.driver.T4CTTIoer.processError(T4CTTIoer.java:392)
>> >     at oracle.jdbc.driver.T4CTTIoer.processError(T4CTTIoer.java:385)
>> >     at oracle.jdbc.driver.T4CTTIfun.processError(T4CTTIfun.java:938)
>> >     at oracle.jdbc.driver.T4CTTIfun.receive(T4CTTIfun.java:655)
>> >     at oracle.jdbc.driver.T4CTTIfun.doRPC(T4CTTIfun.java:249)
>> >     at oracle.jdbc.driver.T4C8Odscrarr.doODNY(T4C8Odscrarr.java:96)
>> >     at
>> >
>> >
>> oracle.jdbc.driver.T4CPreparedStatement.doDescribe(T4CPreparedStatement.java:719)
>> >     at
>> > oracle.jdbc.driver.OracleStatement.describe(OracleStatement.java:4223)
>> >     at
>> >
>> >
>> oracle.jdbc.driver.OracleResultSetMetaData.<init>(OracleResultSetMetaData.java:52)
>> >     at
>> >
>> >
>> oracle.jdbc.driver.OracleStatement.getResultSetMetaData(OracleStatement.java:4206)
>> >     at
>> >
>> >
>> oracle.jdbc.driver.OraclePreparedStatement.getMetaData(OraclePreparedStatement.java:4603)
>> >     at
>> >
>> >
>> oracle.jdbc.driver.OraclePreparedStatementWrapper.getMetaData(OraclePreparedStatementWrapper.java:1510)
>> >     at
>> >
>> >
>> oracle.jdbc.driver.OracleParameterMetaData.getParameterMetaData(OracleParameterMetaData.java:70)
>> >     at
>> >
>> >
>> oracle.jdbc.driver.OraclePreparedStatement.getParameterMetaData(OraclePreparedStatement.java:11621)
>> >     at
>> >
>> >
>> oracle.jdbc.driver.OraclePreparedStatementWrapper.getParameterMetaData(OraclePreparedStatementWrapper.java:1552)
>> >     at
>> >
>> >
>> com.npower.dpi.services.util.AbstractQueryRunner.fillStatement(AbstractQueryRunner.java:228)
>> >     at
>> com.npower.dpi.services.util.QueryRunner.query(QueryRunner.java:351)
>> >     at
>> com.npower.dpi.services.util.QueryRunner.query(QueryRunner.java:215)
>> >     at com.npower.dpi.services.util.test.main(test.java:63)
>> >
>> > If we put a try catch block around stmt.getParameterMetaData() in
>> > AbstractQueryRunner.fillStatement() which eats this error, then we get a
>> > proper result back. So I think the query is not executed as before that
>> > only an exception is thrown. So what could be an issue in getting
>> > metadata.
>> >
>>
>> I'm not sure I can follow. Do you think there is a problem in dbutils?
>>
>> Benedikt
>>
>>
>> >
>> >
>> >
>> > On Tue, Nov 17, 2015 at 12:35 PM, Benedikt Ritter <britter@apache.org>
>> > wrote:
>> >
>> > > Hello Amol,
>> > >
>> > > can you see the query being sent to your database in the query log?
>> Maybe
>> > > it is different from what you're expecting.
>> > >
>> > > Benedikt
>> > >
>> > > 2015-11-17 7:23 GMT+01:00 Amol Kulkarni <amolkulkar@gmail.com>:
>> > >
>> > > > Yes it does work when done through sql developer command line , also
>> > > tried
>> > > > from sql plus it works. The problem occurs only through dbutils.
>> > > >
>> > > > On Tue, Nov 17, 2015 at 12:33 AM, Benedikt Ritter <
>> britter@apache.org>
>> > > > wrote:
>> > > >
>> > > > > Hello Amol,
>> > > > >
>> > > > > 2015-11-10 21:03 GMT+01:00 Amol Kulkarni <amolkulkar@gmail.com>:
>> > > > >
>> > > > > > Hi,
>> > > > > >
>> > > > > > I am getting a ORA-00942: table or view does not exist when
I
>> query
>> > > > using
>> > > > > > dbutils api with 2 parameters. My enviroment si WAS 8.5.5
and
>> > oracle
>> > > db
>> > > > > 11g
>> > > > > >
>> > > > > > I am using dbutils1.6 to make db calls. The problem occurs
if I
>> > send
>> > > > two
>> > > > > > query parameters like SELECT * FROM  DIGITAL_CERTIFICATE_CACHE
>> > WHERE
>> > > > > > CERT_SUBJECT_NAME=? AND CERT_STATUS=? Parameters:
>> > > > > [70-B3-D5-1F-30-4E-DF-20,
>> > > > > > I] . If I send only one SELECT * FROM  DIGITAL_CERTIFICATE_CACHE
>> > > WHERE
>> > > > > > CERT_SUBJECT_NAME=? Parameters: [70-B3-D5-1F-30-4E-DF-20]
then
>> > query
>> > > > > > returns  and application is working. My dbutils code is
as
>> follows
>> > > > > >
>> > > > > >
>> > > > > >
>> > > > > >    QueryRunner run = new QueryRunner(${DataSource});
>> > > > > >             // getting Query from propertues file to
>> fetchBySubject
>> > > > > >             String sqlquery = PropertyFileUtil
>> > > > > >                     .getPropertyValue("fetchbysubject.sql");
>> > > > > > [fetchbysubject.sql = SELECT * FROM DIGITAL_CERTIFICATE_CACHE
>> WHERE
>> > > > > > CERT_SUBJECT_NAME=? AND CERT_STATUS=?]
>> > > > > >             // preparing instance for Custom ResultSetHandler
to
>> > > > process
>> > > > > >             // ResultSet
>> > > > > >             ResultSetHandler<List<DigitalCertificateCache>>
>> > handler =
>> > > > new
>> > > > > > DPIServicesDAOResultSetHandler();
>> > > > > >             results = run.query(sqlquery, handler, new Object[]
>> {
>> > > > > > subjectname,
>> > > > > >                     "I" });
>> > > > > >
>> > > > > >
>> > > > > >
>> > > > > > Can somebody please point the problem.
>> > > > > >
>> > > > >
>> > > > > Does it work, when you run the query via the command line?
>> > > > >
>> > > > > Regards,
>> > > > > Benedikt
>> > > > >
>> > > > >
>> > > > > --
>> > > > > http://people.apache.org/~britter/
>> > > > > http://www.systemoutprintln.de/
>> > > > > http://twitter.com/BenediktRitter
>> > > > > http://github.com/britter
>> > > > >
>> > > >
>> > >
>> > >
>> > >
>> > > --
>> > > http://people.apache.org/~britter/
>> > > http://www.systemoutprintln.de/
>> > > http://twitter.com/BenediktRitter
>> > > http://github.com/britter
>> > >
>> >
>>
>>
>>
>> --
>> http://people.apache.org/~britter/
>> http://www.systemoutprintln.de/
>> http://twitter.com/BenediktRitter
>> http://github.com/britter
>>
>
>

Mime
  • Unnamed multipart/alternative (inline, None, 0 bytes)
View raw message