• Das Erstellen neuer Accounts wurde ausgesetzt. Bei berechtigtem Interesse bitte Kontaktaufnahme über die üblichen Wege. Beste Grüße der Admin

SQL´er hergehört

Redpadz

New member
Hi,

Ich krieg grade nen Qualmkopf über nem SQL-Ausdruck. Es handelt sich um eine Microsoft-Jet-Datenbank über Access. Dort möchte ich, daß der Preis mit 2 Stellen nach dem Komma angegeben wird, auch dann wenn es sich um z.B. 20,00 handelt.
Ich kann machen was ich will, aber ich krieg immer nur eine Stelle bei Doppelnull. Meine Anweisung lautet:

$sql = "INSERT INTO Artikel (ARTIKEL_NR,MENGE,ARTIKELBEZEICHNUNG,PREIS,WAEHRUNG) VALUES ('$ARTIKEL_NR','$MENGE','$ARTIKELBEZEICHNUNG',CSTR($PREIS),'$WAEHRUNG')";

DECIMAL wird von Jet-Datenbanken nicht unterstützt. Und ich weiß nicht mehr, was da noch faul sein könnte. auch CSTR($PREIS,2) geht nicht (da kommt die Fehlermeldung....Falsche Anzahl von Argumenten). Die Datenbank läuft übrigens....fals das was zu sagen hat auf einem Apache.

Im voraus danke,
Cu
Redpadz
 
hallo,

ich kann dir nur von asp sagen wie es da geht:

du formatierst die ausgaben einfach mit
formatnumber(meinezahl,anzahldernachkommstellen)
die einstellung der nachkommastellen in der db können
unter umständen deiner serverseitigen sprache egal sein.

vielleicht gibts sowas bei php auch

gruss

Alex
 
geht nicht

Hi!

Diese Variante hatte ich auch schon probiert. Das funktioniert allerdins nicht. In der Literatur steht dazu, daß das allerdings nicht am Perl sondern an der Access-Datenbank liegt....

Hat noch jemand nen Vorschlag?

Mfg
Redpadz
 
eingestellt ist....

Hi!

Also eingestellt ist nichts. Ich bemühe mich, das Access überhaupt nicht zu öffnen (derzeit nur zu Kontrollzwecken). Die komplette Datenbank wird aus Perl heraus programmiert. Das Zahlenformat der Problemzelle ist NUMBER, also Zahlenfeld. Vielleicht kann ich bereist im CREATE-Befehl einen Wert einstellen?

$sql = "CREATE TABLE Artikel (ARTIKEL_NR COUNTER,MENGE NUMBER,ARTIKELBEZEICHNUNG CHAR, PREIS NUMBER, WAEHRUNG CHAR)

Währungsformat akzeptiert Access an der Stelle nicht, also muß ich dem PREIS NUMBER zuweisen. Hat jemand ne Lösung?

Mfg
Redpadz
 
standardmäßig ist in einem number-feld in access integer
eingestellt. der wert sollte aber vom typ double sein

gruss

Alex
 
Zurück
Oben