Subject | Re: [IBO] select view crashes a remote Firebird Server |
---|---|
Author | Helen Borrie |
Post date | 2004-05-31T13:40Z |
At 01:25 PM 31/05/2004 +0000, you wrote:
value", i.e. a value of 0.
select nullif(0,0)... will return NULL
select nullif(3,0)... will return NULL
Select nullif(NULL,0) will return zero.
So, if the column contains NULL, you will be getting zero returned by your
expression - and hence the DivideByZero error.
So, do you see why this column is purposeless (as well as buggy)?
any joins in the DFM...
that will potentially involve DivideByZero. Extend that by all your
variables and you have a pretty large collection of potential crash situations.
Helen
>HelenNo, that's wrong. 0 and NULL are *not* the same thing!! 0 is a "specific
>
>According to Firebird_v15.108_ReleaseNotes.pdf document:
>
>NULLIF: Returns NULL for a sub-expression if it has a specific value,
>otherwise returns the value of the subexpression.
>
>So, for example:
>
>select nullif(0,0) from rdb$database -> returns NULL
>or
>select nullif(3,0) from rdb$database -> returns 3
value", i.e. a value of 0.
select nullif(0,0)... will return NULL
select nullif(3,0)... will return NULL
Select nullif(NULL,0) will return zero.
So, if the column contains NULL, you will be getting zero returned by your
expression - and hence the DivideByZero error.
So, do you see why this column is purposeless (as well as buggy)?
>Then:What are you talking about "the combination of the 2 selects"? I don't see
>
>select nominator/nullif(denominator, 0) from ....
>
>never will raise a DivideByZero exception because if the
>denominator=0, then nullif(denominator, 0) return NULL and
>nominator/nullif(denominator, 0) also returns NULL.
>
>
>Also, if I only use "select * from female", everything works ok,
>always. The problem is the combination of the 2 selects (female and
>herd).
any joins in the DFM...
>It is a very strange problem for me because it depends onThere are no "mysteries". However, you have five columns in this table
>several factors (combination of selects, number of fields in the
>view, type of fields, ....) Any change can minimize the error
>frequency. To reach to this example, where it always fail, I have
>spent a lot of days.
that will potentially involve DivideByZero. Extend that by all your
variables and you have a pretty large collection of potential crash situations.
Helen