Permalänk

Decimaler i MySql fält?????

Hur f*n får man decimaler att funka i MySql ?!

Kör phpmyadmin och får det inte å funka.. har prövat div fälttyper och både "." och ","...

Visa signatur

Josef was here | http://www.jdsight.net

Permalänk
Medlem

Hur menar du? Datan i cellerna, namnen på tabellerna?

Visa signatur

Old math teachers never die, they just tend to infinity.

Permalänk
Hedersmedlem

Vilka fälttyper har du provat med och vad är det som inte funkar?

Permalänk
Medlem

Du kan använda t.ex. DECIMAL eller FLOAT som fälttyp, beroende på vad du ska spara där.
Dokumentationen på www.mysql.com är bra. Använd den.

Permalänk

jag har prövat DECIMAL och FLOAT...

ingen av dom funkar..

Jag vill alltså lagra ett tal tex: "12,50"..

Visa signatur

Josef was here | http://www.jdsight.net

Permalänk
Medlem

CREATE TABLE test_table (test_field DECIMAL(5,2)) INSERT INTO test_table (test_field) VALUES ("12.50")

Permalänk
Medlem

http://www.mysql.com/doc/en/Column_types.html

Citat:

FLOAT[(M,D)] [UNSIGNED] [ZEROFILL]
A small (single-precision) floating-point number. Allowable values are -3.402823466E+38 to -1.175494351E-38, 0, and 1.175494351E-38 to 3.402823466E+38. If UNSIGNED is specified, negative values are disallowed. The M is the display width and D is the number of decimals. FLOAT without arguments or FLOAT(X) (where X is in the range from 0 to 24) stands for a single-precision floating-point number.
-
DECIMAL[(M[,D])] [UNSIGNED] [ZEROFILL]
An unpacked floating-point number. Behaves like a CHAR column: ``unpacked'' means the number is stored as a string, using one character for each digit of the value. The decimal point and, for negative numbers, the `-' sign, are not counted in M (but space for these is reserved). If D is 0, values will have no decimal point or fractional part. The maximum range of DECIMAL values is the same as for DOUBLE, but the actual range for a given DECIMAL column may be constrained by the choice of M and D. If UNSIGNED is specified, negative values are disallowed. If D is omitted, the default is 0. If M is omitted, the default is 10. Prior to MySQL Version 3.23, the M argument must include the space needed for the sign and the decimal point.

Antar att du gjort precis som det står i dokumentationen för att skapa fältet och använda det? Och det ska vara "12.50", inte "12,50".

Visa signatur

Äntligen har jag fått svar på om vandrande pinnar kan gäspa. Det kan de inte. Ett av världens stora mysterier är löst.

Permalänk

det är just det att jag har prövat både Decimal och float med både punkt och komma.. det funkade inte... ganska sär!!

Visa signatur

Josef was here | http://www.jdsight.net

Permalänk
Medlem

Hur skrev du då?
Hata 20s-spärren för inlägg... ;]

Visa signatur

Äntligen har jag fått svar på om vandrande pinnar kan gäspa. Det kan de inte. Ett av världens stora mysterier är löst.

Permalänk
Hedersmedlem

Men du säger ju inte vad det är som inte funkar! Alltså, på vilket sätt funkar det inte?

Permalänk
Citat:

Ursprungligen inskrivet av Kennel
Men du säger ju inte vad det är som inte funkar! Alltså, på vilket sätt funkar det inte?

har du läst vad jag skrev i första inlägget?!

problemet är som så, att det inte går att spara decimaler. inte med fälttypen decimal eller float vilket jag ser som mycket konstigt..

avnänder phpmyadmin för att editer poster m.m

Visa signatur

Josef was here | http://www.jdsight.net

Permalänk
Medlem

Får du inget felmeddelande när du försöker spara värdet?

Visa signatur

Signatur?

Permalänk
Medlem

jag har inga problem med decimaler...
kolla så att ditt fältnamn är valid.

Visa signatur
Permalänk
Medlem

Alltså. "det går inte att spara decimaler". Nu fattar jag precis vad du får för felmeddelanden, hur ditt fält ser ut, hur talet du försöker spara ser ut, vad som sparas etc. Mycket bra beskrivning. Du fattar väl själv att "det går inte spara decimaler. jag har provat float och dec" inte är tillräckligt mycket info för att vi ska kunan hjälpa dig. Såvida vi inte gissar, men vem fan orkar gissa sig fram till felet när det räcker att du talar om lite mer så att någon vet exakt vad som är fel.

Visa signatur

Äntligen har jag fått svar på om vandrande pinnar kan gäspa. Det kan de inte. Ett av världens stora mysterier är löst.

Permalänk

jaja,, du kan alltså läsa mellan raderna.. spelar ingenroll...

får inget fel eller nått det blir inga decimaler bara...

talet 12.50 blir 12

punkt eller komma gör ingen skillnad

Visa signatur

Josef was here | http://www.jdsight.net

Permalänk
Medlem

Det jag tror du missar är att du specifierar inte hur många decimaler du vill ha i fältet när du skapar det.
Läs filigrans citat, du har nog bara ögnat igenom de två rubrikerna som säger FLOAT och DECIMAL. Här kommer en liten analys:

DECIMAL[(M[,D])] [UNSIGNED] [ZEROFILL]
- Med detta så menas att det finns 2 stycken parametrar för DECIMAL när man skapar den. M är hur många siffror som ska synas (har jag fattat det som) och D är hur många decimaler som ska finnas.

If D is 0, values will have no decimal point or fractional part.
- Det som står här är att om man inte fyller i vad D ska vara så får den värdet 0. Och 0 decimaler är ju som du förhoppningsvis vet heltal.

Så, för att få säg 2 decimaler och 11 synliga siffror så trycker du för att skapa ett fält, skriver in ett lämpligt namn, väljer Decimal och sen kommer det fantastiska: Du skriver in 11,2 i Längd/Värden.
Voila!

Permalänk

tackar för hjälpen!

Visa signatur

Josef was here | http://www.jdsight.net