Re: help with odd DBI perpare/execute errors

William Bulley <[email protected]>
Newsgroups gmane.comp.lang.perl.modules.dbi.general
Message-ID <[email protected]>
According to "Martin J. Evans" <[email protected]> on Wed, 06/03/15 at 09:48:
> 
> Sounds ok but the error is "invalid string"
> 
> ORA-0911
> You tried to execute a SQL statement that included a special character.
> 
> http://www.techonthenet.com/oracle/errors/ora00911.php
> lists various causes.

Yep, I've been all over the net looking for this issue.  I am not
doing anything wrong -- the "invalid string" is the darn "?"!!!


DBD::Oracle::db prepare failed: ORA-00911: invalid character
(DBD ERROR: error possibly near <*> indicator at char 370 in '
        select distinct s.ITEMIDNUM,
                c.STATUSDES,
                s.ADDRESS128BIT,
                s.PREFIX_LEN,
                s.ENDADDRESS128BIT,
                s.CREATED_USER,
                to_char(s.CREATED_DATE, 'YYYY-MM-DD HH24:MI:SS'),
                i.ITEMDES,
                i.COMMENTS,
                s.RESERVEDFOR,
                s.AGGREGATE_STATUS,
                i.STATUSCD,
                i.ITEMNAME
        from UMNET_ONLINE.IP6NET s, UMNET_ONLINE.ITEM i, UMNET_ONLINE.STATUS_CODE c
        where i.PARENTITEMIDNUM = <*>?
          and i.ITEMIDNUM = s.ITEMIDNUM
          and i.STATUSCD = c.STATUSCD
          and i.ITEMCATCD like 'IPv6'
union
        select distinct s.ITEMIDNUM,
                c.ITEMRELTYPDES,
                s.ADDRESS128BIT,
                s.PREFIX_LEN,
                s.ENDADDRESS128BIT,
                s.CREATED_USER,
...'

You can see the error complaining about the question mark above.
There is a second question mark in the second select statement.

> I'm not sure I'd trust that - doesn't that mean you are
> expecting stdin and stout to be in order.

Yes, and they are.

> If you can easily do it I would stick an eval around it and
> trap it that way. Also, if you trap it you can print the SQL using
> http://search.cpan.org/~timb/DBI-1.633/DBI.pm#Statement
> and the parameters using
> http://search.cpan.org/~timb/DBI-1.633/DBI.pm#ParamValues

I'll have to look into that.  But recall this: I am not getting
to the execute() statement.  The above error is on the prepare()
statment.  This is so very confusing to me...

> I would not bother changing from ? to named - I seriously doubt this is the issue.

And you can see from the above that the question mark is back
in the mix.

> http://search.cpan.org/~pythian/DBD-Oracle-1.74/lib/DBD/Oracle.pm#ora_verbose
> 
> Can be set in the connect attributes.

Thanks.  :-)

> If I were you I'd try and simply the original case down as much as
> possible but getting a trace with ora_verbose might help identify the problem.

Okay, I'll try that next.

Regards,

web...

-- 

 /"\   ASCII RIBBON          / William Bulley
 \ /   CAMPAIGN AGAINST     / 
  X    HTML E-MAIL AND     / E-MAIL: [email protected]
 / \   LISTSERV POSTINGS  /

72 characters width template ----------------------------------------->|
lmpx.com only provides a reader for public news (NNTP) servers. It is not affiliated with the servers or forums shown here and is not responsible for the content of articles, which is written by their respective authors.