Icon View Thread

The following is the text of the current message along with any replies.
Messages 21 to 24 of 24 total
Thread DELETE WHERE IN SELECT gives EConvert error
Wed, Jun 28 2006 1:08 PMPermanent Link

Chris Erdal
"Tim Young [Elevate Software]" <timyoung@elevatesoft.com> wrote in
news:5D2C4CBA-0AA8-422F-B1F7-64C9FFAB7009@news.elevatesoft.com:

> It's the standard exception object used by Delphi for string to
> <datatype> exceptions.
>

Thanks for that, Tim, but can you see why my SQL should give that error
in this case? I like to understand errors that I throw, so I can avoid
them if possible.

SELECT loyNum
 FROM LoyersDus, Locations
 WHERE (loyLocation = locNum)
 AND (
      ((locDateFin <> NULL) AND
       (loyDate > CAST(CAST(EXTRACT(YEAR,locDateFin) AS CHAR(4))+
        '-'+CAST(EXTRACT(MONTH,locDateFin) AS CHAR(2))+
        '-01' AS DATE)))
      OR
      ((locDateDebut <> NULL) AND   
       (loyDate < CAST(CAST(EXTRACT(YEAR,locDateDebut) AS CHAR(4))+  
        '-'+CAST(EXTRACT(MONTH,locDateDebut) AS CHAR(2))+
        '-01' AS DATE))
     )

I've checked locDateDebut and locDateFin visually by doing a SELECT
DISTINCT <DateField>..WHERE <DateField> <> NULL ORDER BY 1 for each date
in turn, and all the values appear correct.

There are NULL values for locDateFin, so is it possible the order of
testing is not left-to-right in the SQL? Could that cause it?

--
Chris
Thu, Jun 29 2006 3:04 PMPermanent Link

Tim Young [Elevate Software]

Elevate Software, Inc.

Avatar

Email timyoung@elevatesoft.com

Chris,

<< Thanks for that, Tim, but can you see why my SQL should give that error
in this case? I like to understand errors that I throw, so I can avoid them
if possible. >>

Well, I looked at the DBISAM code, and for some reason we're doing
short-circuit evaluation, but it's doing it right-to-left and not
left-to-right.  I'm not sure why this was done this way at this point, but
there may be a reason so I'm going to have to withhold a decision on a
change until I can examine it in more detail.

--
Tim Young
Elevate Software
www.elevatesoft.com

Tue, Jul 4 2006 5:34 AMPermanent Link

Chris Erdal
"Tim Young [Elevate Software]" <timyoung@elevatesoft.com> wrote in
news:7B4D5D9B-9B47-4192-840D-F57FE68ED9A0@news.elevatesoft.com:

> Well, I looked at the DBISAM code, and for some reason we're doing
> short-circuit evaluation, but it's doing it right-to-left and not
> left-to-right.  I'm not sure why this was done this way at this point,
> but there may be a reason so I'm going to have to withhold a decision
> on a change until I can examine it in more detail.
>
Thanks.

I really appreciate the thoroughness of your support, particularly as I'm
not yet paid up - hopefully I'll be getting this application out the door
soon, so I can justify buying my copy of DBISAM!

--
Chris
Wed, Jul 5 2006 1:35 PMPermanent Link

Tim Young [Elevate Software]

Elevate Software, Inc.

Avatar

Email timyoung@elevatesoft.com

Chris,

<< I really appreciate the thoroughness of your support, particularly as I'm
not yet paid up - hopefully I'll be getting this application out the door
soon, so I can justify buying my copy of DBISAM! >>

No problem.  Many customers use the trial for development and pay when ready
to ship.  We're a very small shop and we know how tight money can be at
times. Smiley

--
Tim Young
Elevate Software
www.elevatesoft.com

« Previous PagePage 3 of 3
Jump to Page:  1 2 3
Image