Login ProductsSalesSupportDownloadsAbout |
Home » Technical Support » DBISAM Technical Support » Support Forums » DBISAM General » View Thread |
Messages 1 to 7 of 7 total |
Problem with Nan Value into Table |
Wed, Aug 27 2008 5:58 AM | Permanent Link |
Stefano Gattuso | Hello, i am using Dbisam v4 with Delphi. In some way io have generate from my program some
NAN Value into a value. Now each time i try do something with the table i recive an error: INVALID FLOATING POINT OPERATION. For resolve that i have removed NAN value and Forced Index Rebild with dbsys. So now all work fine. But i need do that for like 100 table. There is a way for remove that? For example i have find a way to select just NAN value: select * from tbscontrino where sconto is NAN; //no valid sql select * from tbscontrino where sconto = NAN; //no valid sql select * from tbscontrino where sconto = 1/0; //show only null select * from tbscontrino where sconto = 0/1; //invalid floating point operation update tbscontrino set sconto =0 where sconto> 100 ; //invalid floating point operation I have try with some sql but nothing ..Help me plssss... Attachments: TBSCONTRINO.rar |
Wed, Aug 27 2008 10:37 AM | Permanent Link |
"Frans van Daalen" | "Stefano Gattuso" <stefano.gattuso@ixorateam.com> wrote in message news:320EE37B-CB27-4883-9CF4-CBA1CB36549B@news.elevatesoft.com... > Hello, i am using Dbisam v4 with Delphi. In some way io have generate from > my program some > NAN Value into a value. Now each time i try do something with the table i > recive an error: > INVALID FLOATING POINT OPERATION. > For resolve that i have removed NAN value and Forced Index Rebild with > dbsys. So now all > work fine. But i need do that for like 100 table. > There is a way for remove that? > For example i have find a way to select just NAN value: > select * from tbscontrino where sconto is NAN; //no valid sql > select * from tbscontrino where sconto = NAN; //no valid sql > select * from tbscontrino where sconto = 1/0; //show only null > select * from tbscontrino where sconto = 0/1; //invalid floating > point operation > update tbscontrino set sconto =0 where sconto> 100 ; //invalid > floating point operation > I have try with some sql but nothing ..Help me plssss... > euhh....NAN or NULL ? Like in select * from tbscontrino where sconto is NULL Frans PS Maybe next time without any attachments? Those can be posted in public.binaries |
Wed, Aug 27 2008 10:49 AM | Permanent Link |
Stefano Gattuso | NAN !!!!!!!!! ..... i have attach the table for show my problem.
NULL is not a problem. "Frans van Daalen" <Account@is.invalid> wrote: "Stefano Gattuso" <stefano.gattuso@ixorateam.com> wrote in message news:320EE37B-CB27-4883-9CF4-CBA1CB36549B@news.elevatesoft.com... > Hello, i am using Dbisam v4 with Delphi. In some way io have generate from > my program some > NAN Value into a value. Now each time i try do something with the table i > recive an error: > INVALID FLOATING POINT OPERATION. > For resolve that i have removed NAN value and Forced Index Rebild with > dbsys. So now all > work fine. But i need do that for like 100 table. > There is a way for remove that? > For example i have find a way to select just NAN value: > select * from tbscontrino where sconto is NAN; //no valid sql > select * from tbscontrino where sconto = NAN; //no valid sql > select * from tbscontrino where sconto = 1/0; //show only null > select * from tbscontrino where sconto = 0/1; //invalid floating > point operation > update tbscontrino set sconto =0 where sconto> 100 ; //invalid > floating point operation > I have try with some sql but nothing ..Help me plssss... > euhh....NAN or NULL ? Like in select * from tbscontrino where sconto is NULL Frans PS Maybe next time without any attachments? Those can be posted in public.binaries |
Wed, Aug 27 2008 11:30 AM | Permanent Link |
Roy Lambert NLH Associates Team Elevate | Stefano
>NAN !!!!!!!!! ..... i have attach the table for show my problem. >NULL is not a problem. In that case what is a NAN? A quick skim with google gives things like -------------------------------------------------------------------------------------------------------------------- Before MySQL 4.1.2, out-of-range numeric values such as -inf and inf, as well as NaN (not-a-number) values are dumped by mysqldump as NULL. ------------------------------------------------------------------------------------------------------------------- Eyeballing your table all of the data in sconto is either a number or blank (ie null) so I have no idea what is meant to be wrong or what you're trying to achieve. To comment on the statements you posted select * from tbscontrino where sconto is NAN; //no valid sql select * from tbscontrino where sconto = NAN; //no valid sql Neither DBISAM nor ElevateDB have anything called NAN select * from tbscontrino where sconto = 1/0; //show only null runs fine here (I would have expected it to blow up - division by zero not a good idea) select * from tbscontrino where sconto = 0/1; //invalid floating point operation runs fine here update tbscontrino set sconto =0 where sconto> 100 ; //invalid floating point operation runs fine here in DBSys but naturally no rows are altered Roy Lambert [Team Elevate] |
Wed, Aug 27 2008 1:53 PM | Permanent Link |
Tim Young [Elevate Software] Elevate Software, Inc. timyoung@elevatesoft.com | Stefano,
<< Hello, i am using Dbisam v4 with Delphi. In some way io have generate from my program some NAN Value into a value. Now each time i try do something with the table i recive an error: INVALID FLOATING POINT OPERATION. For resolve that i have removed NAN value and Forced Index Rebild with dbsys. So now all work fine. But i need do that for like 100 table. There is a way for remove that? >> Per my email response: The repair facilities in DBISAM do not repair data content issues, only structural issues. To fix data content issues, you must make the modifications yourself. Populating a table with NAN values is a data content issue. -- Tim Young Elevate Software www.elevatesoft.com |
Wed, Aug 27 2008 11:00 PM | Permanent Link |
"Don Patrick" | This worked for me in DBISYS if all you want to do is clear the sconto
field. update tbscontrino set sconto =0 where sconto> 1 or update tbscontrino set sconto =NULL where sconto> 1 "Stefano Gattuso" <stefano.gattuso@ixorateam.com> wrote in message news:320EE37B-CB27-4883-9CF4-CBA1CB36549B@news.elevatesoft.com... > update tbscontrino set sconto =0 where sconto> 100 ; //invalid floating point operation > I have try with some sql but nothing ..Help me plssss... |
Tue, Feb 22 2011 4:48 AM | Permanent Link |
Joerg Drechsler | I run into the same problem recently. The DBISAM DB accepts NAN values via Delphi programming but does not support the ANSI SQL 92 "IS [NOT] NAN" syntax.
I found that you can work around the IF(... THEN... ELSE...) or WHERE problems resulting from this by using a type CAST to CHAR, like in: IF( CAST(<fieldname> AS CHAR(3))='NAN' THEN NULL ELSE <fieldname> ) AS fieldname or SELECT | UPDATE ... WHERE CAST(<fieldname> AS CHAR(3))='NAN' |
This web page was last updated on Tuesday, September 17, 2024 at 04:19 AM | Privacy PolicySite Map © 2024 Elevate Software, Inc. All Rights Reserved Questions or comments ? E-mail us at info@elevatesoft.com |