FWIW, I've seen Oracle automatically/silently convert numbers to
varchars before, too (999 => '999').  This works great until your
numbers start having letters in them.  :-)


On Mon, Apr 28, 2008 at 3:36 AM, Andrus Adamchik <[EMAIL PROTECTED]> wrote:
>
>  On Apr 28, 2008, at 12:14 AM, Kevin Menard wrote:
>
>
> > Having said that, I was looking more into how DataObjectUtils handles
> String values and it looks like it handles the conversion fairly well in the
> absence of type information.  I'll have to look into it more though.  If
> that be the case, your initial reaction may have been well-founded.
> >
>
>  My suspicion without reviewing the algorithm, is that it will miss objects
> cached in memory, as it doesn't do any type conversion by itself, an an
> ObjectId "equals" method implementation depends on correct value(s) type
> (ObjectId is used as an object map key throughout Cayenne). So it will query
> the database every time, and if the DB is ok with matching numerics against
> varchars, it will produce correct results. If not - this will result in a
> server-side SQLException. Again, going from memory, I think MySQL will work,
> PostgreSQL will break. But that's worth double-checking.
>
>  Andrus
>
>

Reply via email to