INSERT decimale waarde in double-veld

Overzicht Reageren

Sponsored by: Vacatures door Monsterboard

Wout van der Burg

Wout van der Burg

15/08/2008 09:19:00
Quote Anchor link
Hallo,

Ik probeer een numerieke waarde met decimalen in mijn database te stoppen. Het veld waar deze in moet komen is van het datatype 'double'. Nu probeerde ik dit op volgende manieren, maar allen werkten niet;

INSERT INTO arprsw (inkp_verp) VALUES (3,25)
INSERT INTO arprsw (inkp_verp) VALUES ('3,25')
INSERT INTO arprsw (inkp_verp) VALUES ("3,25")
INSERT INTO arprsw (inkp_verp) VALUES (`3,25`)
INSERT INTO arprsw (inkp_verp) VALUES (3.25)
INSERT INTO arprsw (inkp_verp) VALUES ('3.25')
INSERT INTO arprsw (inkp_verp) VALUES ("3.25")
INSERT INTO arprsw (inkp_verp) VALUES (`3.25`)

Wanneer ik deze query uitvoer;
INSERT INTO arprsw (inkp_verp) VALUES (3,25)

Doet hij het wel (error: insert values does not match field count), alleen ziet hij het getal aan voor twee waarden door de komma :(... Voor de rest krijg ik of een 'Error in assignment' of een 'syntaxerror'

Ik kan ook niet direct een SQL-functie vinden waarmee ik uit de voeten kan

Ik maak gebruik van een Btrieve Pervasive-2000 database, de db van ons boekhoudpakket.

Weet iemand hoe ik dit op kan lossen?
 
PHP hulp

PHP hulp

02/03/2024 18:44:23
 
- wes  -

- wes -

15/08/2008 09:34:00
Quote Anchor link
welke opmaak heeft je double veld? (waardes in phpmyadmin)
 
- wes  -

- wes -

15/08/2008 09:34:00
Quote Anchor link
*
Gewijzigd op 01/01/1970 01:00:00 door - wes -
 
- wes  -

- wes -

15/08/2008 09:34:00
Quote Anchor link
*
Gewijzigd op 01/01/1970 01:00:00 door - wes -
 
Wout van der Burg

Wout van der Burg

15/08/2008 09:39:00
Quote Anchor link
Een keer zal genoeg zijn haha :)

Er is geen PHPmyAdmin, gezien de DB die ik gebruik..

De opmaak is DOUBLE(6,3)

Overigens de query veranderen in;
INSERT INTO arprsw (inkp_verp) VALUES (3,250) of
INSERT INTO arprsw (inkp_verp) VALUES (3.250)

of op elke andere manier maakt geen verschil.. :(

In PHPmyAdmin en MySQL werkt de volgende query wel;

INSERT INTO `test` ( `id` , `price` ) VALUES ('1', '3.56');

Ik kom er zojuist achter dat een UPDATE query wel stand houd :S ;

UPDATE "arprsw" SET "inkp_verp" = 3.35 WHERE artcode = '1410.0130'

Dit maakt het dat ik er nu helemaal geen snars meer van snap :)
Ik heb volledige rechten over mijn database, dus dit zal het probleem niet vormen
Gewijzigd op 01/01/1970 01:00:00 door Wout van der Burg
 
Frank -

Frank -

15/08/2008 10:49:00
Quote Anchor link
Dat je in NL een komma gebruikt om decimalen aan te geven, leuk en aardig, maar vergeet die onzin verder maar. In de rest van de wereld, en dan vooral in de wiskunde en wat daaraan is gerelateerd, gebruikt men de punt.

PMA is verder gewoon ruk, die herschrijft jouw queries, daar kan dus ook best wel iets fout in gaan.

3.35 is de juiste notatie voor een getal met 2 decimalen.
 
Wout van der Burg

Wout van der Burg

15/08/2008 11:01:00
Quote Anchor link
Klopt, maar in de UPDATE query pakt hij het getal met de punt ook gewoon, maar de INSERT query gaat over z'n nek.. :( geen idee waarom
 
Wout van der Burg

Wout van der Burg

18/08/2008 15:34:00
Quote Anchor link
Ik heb reeds contact opgenomen met Pervasive. Ik wacht nu reactie af :).

Indien er nog ideeen zijn, hoor ik ze graag :)
 
Wout van der Burg

Wout van der Burg

22/08/2008 08:14:00
Quote Anchor link
Stelletje gekken van Pervasive vragen $750,- per serviceticket... :(

Indien er nog ideeen zijn, hoor ik ze graag :)
 
Robert Deiman

Robert Deiman

22/08/2008 08:29:00
Quote Anchor link
Zoals ik je begrijp Wout, werkt een query wel in PHPmyAdmin. Tussen de uitvoer van query's in PHPmyAdmin of via een webpagina die je zelf hebt gemaakt zit eigenlijk geen verschil.

Echo je query eens die mis gaat, zet error_reporting op E_ALL en controleer of er niet iets anders mis gaat.

Komt de waarde voor de float uit een formulier? Dan kan het zijn dat die hem nog als "string" ziet, en dat je er met $var = (float)$_POST['double']; nog kan omzetten naar een geldig getal?
 
Wout van der Burg

Wout van der Burg

07/10/2008 12:28:00
Quote Anchor link
Sorry, ben lang niet meer aan dit project toegekomen, maar we gaan maar weer verder.

@Robert Deiman:
Ik doe deze query niet in PHP-omgeving, maar rechtsreeks in mijn DBMS (Pervasive Control Center). Ik kan ook niet overstappen naar een andere DB, omdat we binnen onze intranetomgeving verbinding maken met onze ERP-software welke ondersteunt wordt door Pervasive Btrieve... Dit zodat we een gebruiksvriendelijke omegving hebben voor medewerkers met gegevens die altijd up-to-date zijn.
 
Gerben Jacobs

Gerben Jacobs

07/10/2008 14:37:00
Quote Anchor link
Is 't niet misschien zo dat DBMS niet iets toe laat als:
INSERT INTO arprsw (inkp_verp) VALUES (3.25)

Maar dat je alle velden moet benoemen?
 



Overzicht Reageren

 
 

Om de gebruiksvriendelijkheid van onze website en diensten te optimaliseren maken wij gebruik van cookies. Deze cookies gebruiken wij voor functionaliteiten, analytische gegevens en marketing doeleinden. U vindt meer informatie in onze privacy statement.