Just write it as a full where statement:
.where("creation_dt < CAST ('1 week' AS INTERVAL)")

Otherwise the second argument will be auto-escape as a protection against SQL injection

On 01 Mar 2007, at 15:32, David HM Spector wrote:

I'm ttrying to use the ContentQueryManager to find out the rate of change of entries into one of my tables... I am using the following query:

private ContentQueryManager<Venue> mVenueManager = new ContentQueryManager<Venue>(mDatasource, Venue.class); NewVenuesThisWeek = mVenueManager.count (mVenueManager.getCountQuery().where("creation_dt", "<", "CAST ('1 week' AS INTERVAL)"));


I get back a syntax error from the postgres driver -- notice that the single quotes around 1 week have been turned into double quotes, oddly however the error from the low level driver shows the correct quoting; I tried a few variations of quoting the single quotes but the quotes got multiplied ''' turns into '''' in the compiled query, etc ...

(I've tried the query select count(*) from venue where creation_dt < CAST ('1 week'as INTERVAL); by hand in phpPgAdmin and it returns the expected results)

What am I missing?

_DHMS

Error while executing the SQL 'SELECT count(*) FROM venue WHERE creation_dt = 'CAST (''1 week'' AS INTERVAL)''.

at com.uwyn.rife.database.DbPreparedStatement executeQuery ( DbPreparedStatement.java : 196 ) at com.uwyn.rife.database.DbQueryManager executeQuery ( DbQueryManager.java : 197 ) at com.uwyn.rife.database.DbQueryManager executeHasResultRows ( DbQueryManager.java : 274 ) at com.uwyn.rife.database.DbQueryManager executeGetFirstInt ( DbQueryManager.java : 830 ) at com.uwyn.rife.database.DbQueryManager executeGetFirstInt ( DbQueryManager.java : 789 ) at com.uwyn.rife.database.querymanagers.generic.AbstractGenericQueryManag er _count ( AbstractGenericQueryManager.java : 962 ) at com.uwyn.rife.database.querymanagers.generic.databasedrivers.generic count ( generic.java : 153 ) at com.uwyn.rife.database.querymanagers.generic.GenericQueryManagerDelega te count ( GenericQueryManagerDelegate.java : 169 ) at com.zeitgeist.nela.elements.VenueStatsBox processElement ( VenueStatsBox.java : 39 ) at com.uwyn.rife.engine.ElementContext processContext ( ElementContext.java : 447 ) at com.uwyn.rife.engine.RequestState service ( RequestState.java : 350 ) at com.uwyn.rife.engine.ElementContext processEmbeddedElement ( ElementContext.java : 4106 ) at com.uwyn.rife.engine.ElementContext processEmbeddedElementsEarly ( ElementContext.java : 1163 ) at com.uwyn.rife.engine.EngineTemplateInitializer initialize ( EngineTemplateInitializer.java : 37 ) at com.uwyn.rife.template.AbstractTemplate initialize ( AbstractTemplate.java : 1102 ) at com.uwyn.rife.template.TemplateFactory get ( TemplateFactory.java : 445 ) at com.uwyn.rife.engine.elements.PrintTemplate getTemplate ( PrintTemplate.java : 75 )
21 more ...

org.postgresql.util.PSQLException

ERROR: invalid input syntax for type timestamp: "CAST ('1 week' AS INTERVAL)"

at org.postgresql.core.v3.QueryExecutorImpl receiveErrorResponse ( QueryExecutorImpl.java : 1525 ) at org.postgresql.core.v3.QueryExecutorImpl processResults ( QueryExecutorImpl.java : 1309 ) at org.postgresql.core.v3.QueryExecutorImpl execute ( QueryExecutorImpl.java : 188 ) at org.postgresql.jdbc2.AbstractJdbc2Statement execute ( AbstractJdbc2Statement.java : 452 ) at org.postgresql.jdbc2.AbstractJdbc2Statement executeWithFlags ( AbstractJdbc2Statement.java : 354 ) at org.postgresql.jdbc2.AbstractJdbc2Statement executeQuery ( AbstractJdbc2Statement.java : 258 ) at com.uwyn.rife.database.DbPreparedStatement executeQuery ( DbPreparedStatement.java : 187 ) at com.uwyn.rife.database.DbQueryManager executeQuery ( DbQueryManager.java : 197 ) at com.uwyn.rife.database.DbQueryManager executeHasResultRows ( DbQueryManager.java : 274 ) at com.uwyn.rife.database.DbQueryManager executeGetFirstInt ( DbQueryManager.java : 830 ) at com.uwyn.rife.database.DbQueryManager executeGetFirstInt ( DbQueryManager.java : 789 ) at com.uwyn.rife.database.querymanagers.generic.AbstractGenericQueryManag er _count ( AbstractGenericQueryManager.java : 962 ) at com.uwyn.rife.database.querymanagers.generic.databasedrivers.generic count ( generic.java : 153 ) at com.uwyn.rife.database.querymanagers.generic.GenericQueryManagerDelega te count ( GenericQueryManagerDelegate.java : 169 ) at com.zeitgeist.nela.elements.VenueStatsBox processElement ( VenueStatsBox.java : 39 ) at com.uwyn.rife.engine.ElementContext processContext ( ElementContext.java : 447 ) at com.uwyn.rife.engine.RequestState service ( RequestState.java : 350 )
27 more ...

---------------------------------------------------------------------- ---------------------
                                          David HM Spector
spector (at) zeitgeist.com http://www.zeitgeist.com/ voice: +1 631.261.5013 fax: +1 212.656.1443
                                                    ~ ~ ~
"New and stirring things are belittled because if they are not belittled, the humiliating question arises, 'Why then are you not taking part in them?'" --H. G. Wells

_______________________________________________
Rife-users mailing list
[email protected]
http://lists.uwyn.com/mailman/listinfo/rife-users

--
Geert Bevin
Uwyn "Use what you need" - http://uwyn.com
RIFE Java application framework - http://rifers.org
Music and words - http://gbevin.com


_______________________________________________
Rife-users mailing list
[email protected]
http://lists.uwyn.com/mailman/listinfo/rife-users

Reply via email to