Hi Christophe,
Bug reports are always appreciated. Thank you. These all look like
valid problems (except #4 of course -- please post this to the list so
that everyone can use it; it may go into a future release).
Thom
Christophe NIGAUD wrote:
>
> Hello,
>
> Firstly thanks for your great work on instantDB. It's really kind to have an
> easy-to-install database like this.
>
> i notice some problems using 3.26 idb...
>
> 1) Between : between clause doesn't work very kindly with negative numbers.
> Tries
>
> "select myvalue from mytable where myvalue between -1 and 2" generate an
> SQLException.
>
> we must put single quote like this :
> "select myvalue from mytable where myvalue between '-1' and 2"
>
> but its not really the right syntax for a integer value, isn't it ?
>
> 2) null values : relating to general comportment of any database like sybase,
> oracle or my sql
>
> doing such sql in an empty table
> "select max(id) from mytable"
> should return null value. and instantDB does it. ok.
>
> but doing such sql with the same empty table
> "select max(id)+1 from mytable"
> should although return a null value to.
> but instantDB return -2147483647 !
>
> 3) again null values :
>
> we can't do this : "select null from mytable" (generate SQLException)
> that would be fine if we could.
>
> 4) i give you a sql function ifnull(int, int, int) i made. Work's like
> isNull(int, int) sybase function but with an added 3rd parameters.
> i think this is usefull in managing identity columns like the following sql :
>
> select ifnull(max(id), 1, max(id)+1) from mytable
>
> to use it like isnull(int, int) sybase function, put the 1rst param into the
> 3rd param, like
> select ifnull(max(id), 1, max(id)) from mytable
>
> if you want, extends it with long values fonctionality.
>
> 5) your management of 'sql' function doesn't really work with aggregate
> functions...
>
> example on a table with n rows (n>=2):
>
> "select mod(6,2) from mytable" return n rows with a value of 0. ok
> "select max(id) from mytable" return one row with a value of 5 for example.
> ok
> but
> "select mod(max(id),2) from mytable" return n rows with a value of 1. which
> is wrong.
> it should return me one row with a value of 1.
>
> Again, thanks for your work.
> yours faithfully.
-----------------------------------------------------------------------------
To unsubscribe from this mailing list, send email to majordomo@enhydra.org
with the text "unsubscribe instantdb" in the body of the email.
If you have other questions regarding this mailing list, send email to
the list admin at owner-instantdb@enhydra.org.
|