cayenne-user mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Durchholz, Joachim" <Joachim.Durchh...@hennig-fahrzeugteile.de>
Subject RE: Modeling object queries
Date Fri, 30 Sep 2011 11:06:45 GMT
> If you are using the modeler, you can just say:
> 
> status = "Completed"
> 
> without escaping the quotes.

I can see how that happens, but I'd still suggest using single quotes.
Almost all database (with the notable exception of Mysql) use double quotes around table/column
names and similar. Single quotes are the universally-accepted SQL-standard delimiter for strings.

Reasons:
a) (Not sure if this holds water) If Modeler does not interpret the input but passes it through
unchanged, and the SQL backend you're using happens to use " for string delimiters, you'll
be in for a nasty surprise as soon as you swich to a more standard-compliant backend.
b) Even if Modeler interprets those quotes by itself, the Modeler team might decide that double
quotes should be interpreted as in the SQL standard. There might be very good reasons to do
that. Again, you'll be in for a nasty surprise.
c) If modeler interprets those quotes, you're hitting less-well-tested code paths inside Modeler,
triggering bugs with a higher probability. (This might actually be a good thing in your eyes,
depending on project status and policy.)
d) You might as well train yourself for using the right quotes, so you don't make silly mistakes
when writing SQL.

Just my experience with such things in general. I'm not currently using Modeler, so there
might be considerations that I couldn't know.

Regards,
Jo

Mime
View raw message