Hi all,

I just checked it against hypersonic. It works! 
But I'd also prefer not to implement for numeric columns.

IMO ssing 
crit.addSql("upper( INTERNAL_PRODUCT_ID) like '%" + new Integer(
theProductModel.getInternalProductID() ).toString() + "%'" );

is a reasonable workaround.

just my 0.02 EUR

Thomas

> -----Original Message-----
> From: Gibbs, Tim [mailto:[EMAIL PROTECTED]
> Sent: Thursday, February 27, 2003 2:16 PM
> To: 'OJB Users List'
> Subject: RE: addLike and integer fields
> 
> 
> 
> 
> If I am not mistaken, the use of LIKE operators on numeric 
> columns is not
> part of the standard SQL92 implementation.  Both Oracle and 
> MySQL implement
> this as an extension.  If it is a platform specific extension 
> then it is
> probably not reasonable to expect OJB to explicitly support it.
> 
> just my $0.02 worth.
> 
> Tim
> 
> 
> -----Original Message-----
> From: Charles Anthony [mailto:[EMAIL PROTECTED]
> Sent: Thursday, February 27, 2003 6:41 AM
> To: 'OJB Users List'
> Subject: RE: addLike and integer fields
> 
> 
> Hi,
> 
> I have to say that I am not convinced that you can/should be 
> doing a "Like"
> on an Integer field. I'm fairly certain that on many 
> databases you can only
> do Like on a VARCHAR field. I'm not sure that it makes any 
> logical sense to
> do Like on anything but a VARCHAR, let alone whether OJB 
> should support it.
> 
> Cheers,
> 
> Charles.
> 
> >-----Original Message-----
> >From: O'Reilly John [mailto:[EMAIL PROTECTED]
> >Sent: 27 February 2003 11:06
> >To: 'OJB Users List'
> >Subject: RE: addLike and integer fields
> >
> >
> >A workaround for the problem mentioned below is to use addSql:
> >
> >crit.addSql("upper( INTERNAL_PRODUCT_ID) like '%" + new Integer(
> >theProductModel.getInternalProductID() ).toString() + "%'" );
> >
> >Note that in this case you have to use the actual db column 
> >name.  Is this
> >the only solution?
> >
> >Rgds,
> >John
> >
> >
> >-----Original Message-----
> >From: O'Reilly John [mailto:[EMAIL PROTECTED]
> >Sent: 26 February 2003 15:22
> >To: 'OJB Users List'
> >Subject: addLike and integer fields
> >
> >
> >Hi,
> >
> >Is there an issue in OJB with performing like queries with 
> >integer fields.
> >I'm trying to use the following criteria:
> >
> >crit.addLike( "internalProductID", "%" +
> >Integer.toString(theProductModel.getInternalProductID()) + "%" );
> >
> >Query query = new QueryByCriteria(ProductModel.class, crit, true);
> >Collection lListOfProducts = getBroker().getCollectionByQuery(query);
> >
> >The field descriptor is as follows:
> >
> ><field-descriptor name="internalProductID" 
> column="INTERNAL_PRODUCT_ID"
> >jdbc-type="INTEGER"
> >                                   primarykey="true"
> >                                   autoincrement="true"
> >                                   sequence-name="product_id_seq"/>
> >
> >When I run the code I above I get an exception (strack trace 
> >shown below).
> >There isn't any issue when I run something like the following 
> >sql directly:
> >
> >select * from products where internal_product_id like '%25%'
> >
> >Also, the above works fine for 'VARCHAR' fields.
> >
> >Thanks,
> >John
> >
> >java.lang.ClassCastException: java.lang.String       at
> >oracle.jdbc.driver.OraclePreparedStatement.setObject(OraclePrep
> >aredStatement
> >.java:2021)  at
> >oracle.jdbc.driver.OraclePreparedStatement.setObject(OraclePrep
> >aredStatement
> >.java:2102)  at
> >com.p6spy.engine.spy.P6PreparedStatement.setObject(P6PreparedSt
> >atement.java:
> >282)         at
> >org.apache.ojb.broker.platforms.PlatformDefaultImpl.setObjectFo
> >rStatement(Pl
> >atformDefaultImpl.java:229)  at
> >org.apache.ojb.broker.platforms.PlatformOracleImpl.setObjectFor
> >Statement(Pla
> >tformOracleImpl.java:126)    at
> >org.apache.ojb.broker.accesslayer.StatementManager.bindStatemen
> >tValue(Statem
> >entManager.java:258)         at
> >org.apache.ojb.broker.accesslayer.StatementManager.bindStatemen
> >t(StatementMa
> >nager.java:297)      at
> >org.apache.ojb.broker.accesslayer.StatementManager.bindSelectio
> >nCriteria(Sta
> >tementManager.java:490)      at
> >org.apache.ojb.broker.accesslayer.StatementManager.bindStatemen
> >t(StatementMa
> >nager.java:451)      at
> >org.apache.ojb.broker.accesslayer.JdbcAccessImpl.executeQuery(J
> >dbcAccessImpl
> >.java:258)   at
> >org.apache.ojb.broker.accesslayer.RsIterator.<init>(RsIterator.
> >java:175)
> >at
> >org.apache.ojb.broker.singlevm.RsIteratorFactoryImpl.createRsIt
> >erator(RsIter
> >atorFactoryImpl.java:95)     at
> >org.apache.ojb.broker.singlevm.PersistenceBrokerImpl.getRsItera
> >torFromQuery(
> >PersistenceBrokerImpl.java:2146)     at
> >org.apache.ojb.broker.singlevm.PersistenceBrokerImpl.getIterato
> >rFromQuery(Pe
> >rsistenceBrokerImpl.java:1550)       at
> >org.apache.ojb.broker.singlevm.PersistenceBrokerImpl.getCollect
> >ionByQuery(Pe
> >rsistenceBrokerImpl.java:1235)       at
> >org.apache.ojb.broker.singlevm.PersistenceBrokerImpl.getCollect
> >ionByQuery(Pe
> >rsistenceBrokerImpl.java:1363)       at
> >org.apache.ojb.broker.singlevm.PersistenceBrokerImpl.getCollect
> >ionByQuery(Pe
> >rsistenceBrokerImpl.java:1389)       at
> >org.apache.ojb.broker.singlevm.PersistenceBrokerImpl.getCollect
> >ionByQuery(Pe
> >rsistenceBrokerImpl.java:1376)       at
> >org.apache.ojb.broker.singlevm.DelegatingPersistenceBroker.getC
> >ollectionByQu
> >ery(DelegatingPersistenceBroker.java:294)    at
> >ie.mcps.product.dao.ProductDAO.searchForProduct(ProductDAO.java:509)
> >***************************************************************
> >*********
> >This e-mail and any files transmitted with it are confidential 
> >and may be
> >privileged and are intended solely for the individual named/ 
> >for the use of
> >the individual or entity to whom they are addressed.If you 
> are not the
> >intended addressee, you should not disseminate, distribute 
> or copy this
> >e-mail.Please notify the sender immediately if you have 
> >received this e-mail
> >by mistake and delete this e-mail from your system.If you are not the
> >intended recipient, you are notified that reviewing, 
> >disclosing, copying,
> >distributing or taking any action in reliance on the contents 
> >of this e-mail
> >is strictly prohibited.Please note that any views or opinions 
> >expressed in
> >this e-mail are solely those of the author and do not 
> >necessarily represent
> >those of Traventec Limited.E-mail transmission cannot be 
> >guaranteed to be
> >secure or error-free as information could be intercepted, 
> >corrupted, lost,
> >destroyed, or arrive late or incomplete.Traventec Limited 
> >therefore does not
> >accept liability for any errors or omissions in the contents of this
> >message, which arise as a result of e-mail transmission.The 
> >recipient should
> >check this e-mail and any attachments for the presence of 
> viruses.This
> >e-mail has been swept for computer viruses however Traventec 
> >Limited accepts
> >no liability for any damage caused by any virus transmitted by 
> >this e-mail.
> >
> >---------------------------------------------------------------------
> >To unsubscribe, e-mail: [EMAIL PROTECTED]
> >For additional commands, e-mail: [EMAIL PROTECTED]
> >***************************************************************
> >*********
> >This e-mail and any files transmitted with it are confidential 
> >and may be
> >privileged and are intended solely for the individual named/ 
> >for the use of
> >the individual or entity to whom they are addressed.If you 
> are not the
> >intended addressee, you should not disseminate, distribute 
> or copy this
> >e-mail.Please notify the sender immediately if you have 
> >received this e-mail
> >by mistake and delete this e-mail from your system.If you are not the
> >intended recipient, you are notified that reviewing, 
> >disclosing, copying,
> >distributing or taking any action in reliance on the contents 
> >of this e-mail
> >is strictly prohibited.Please note that any views or opinions 
> >expressed in
> >this e-mail are solely those of the author and do not 
> >necessarily represent
> >those of Traventec Limited.E-mail transmission cannot be 
> >guaranteed to be
> >secure or error-free as information could be intercepted, 
> >corrupted, lost,
> >destroyed, or arrive late or incomplete.Traventec Limited 
> >therefore does not
> >accept liability for any errors or omissions in the contents of this
> >message, which arise as a result of e-mail transmission.The 
> >recipient should
> >check this e-mail and any attachments for the presence of 
> viruses.This
> >e-mail has been swept for computer viruses however Traventec 
> >Limited accepts
> >no liability for any damage caused by any virus transmitted by 
> >this e-mail.
> >
> >---------------------------------------------------------------------
> >To unsubscribe, e-mail: [EMAIL PROTECTED]
> >For additional commands, e-mail: [EMAIL PROTECTED]
> >
> 
> 
> This email and any attachments are strictly confidential and 
> are intended
> solely for the addressee. If you are not the intended 
> recipient you must
> not disclose, forward, copy or take any action in reliance on 
> this message
> or its attachments. If you have received this email in error 
> please notify
> the sender as soon as possible and delete it from your 
> computer systems.
> Any views or opinions presented are solely those of the 
> author and do not
> necessarily reflect those of HPD Software Limited or its affiliates.
> 
>  At present the integrity of email across the internet cannot 
> be guaranteed
> and messages sent via this medium are potentially at risk.  
> All liability
> is excluded to the extent permitted by law for any claims 
> arising as a re-
> sult of the use of this medium to transmit information by or to 
> HPD Software Limited or its affiliates.
> 
> 
> 
> ---------------------------------------------------------------------
> To unsubscribe, e-mail: [EMAIL PROTECTED]
> For additional commands, e-mail: [EMAIL PROTECTED]
> 
> 
> <font face="Times New Roman" size="3">
> <p>-----------------------------------------------------------
> -------------------</p>
> <p> This e-mail may be privileged and/or confidential, and 
> the sender does not waive any related rights and obligations. 
> Any distribution, use or copying of this e-mail or the 
> information it contains by other than an intended recipient 
> is unauthorized. If you received this e-mail in error, please 
> advise me (by return e-mail or otherwise) immediately.</p>
> <p> Ce courriel est confidentiel et prot�g�. L'exp�diteur ne 
> renonce pas aux droits et obligations qui s'y rapportent. 
> Toute diffusion, utilisation ou copie de ce message ou des 
> renseignements qu'il contient par une personne autre que le 
> (les) destinataire(s) d�sign�(s) est interdite. Si vous 
> recevez ce courriel par erreur, veuillez m'en aviser 
> imm�diatement, par retour de courriel ou par un autre moyen.</p>
> <p>====================================================</p>
> </font>
> 
> 


---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]

Reply via email to