MySQL out-of-range-Wert für decimal-Spalte
Nach der Suche, fand ich viel aus dem Bereich Probleme mit Leuten, die nicht wissen, dass die erste Ziffer, m, in decimal(m,n) ist die Summe der Ziffern. Das ist aber nicht mein problem.
Für die Spalte, in der Frage habe ich Folgendes:
Field | Type | Null | Key | Default | Extra
preco | decimal(50,2) unsigned | NO | | 0.00 |
Die Einstellung dezimal(50,2) ist weit mehr, als ich wirklich wollen oder benötigen. Ich wirklich nur wollen 10 Ziffern insgesamt. Ein Preis, also alles, was über 100 Millionen ist wohl lächerlich, so decimal(10,2) wäre wahrscheinlich besser geeignet. Aber MySQL Ist nicht zu akzeptieren, die folgende Abfrage:
INSERT INTO `produto` (`tipo_id`, `preco`, `qtd`, `opcao1`) VALUES (110, '77888555.43', '10', 'Azul')
Ich habe versucht, die Abfrage über CodeIgniter, phpMyAdmin und direkt in die MySQL command line client. Ich habe auch versucht es ohne die Zitate auf den dezimalen Wert, aber ich bekomme immer den gleichen Fehler:
"Out of range value for column 'preco' in Zeile 2"
Du musst angemeldet sein, um einen Kommentar abzugeben.
Ich habe es versucht mit SQLyog, es funktioniert perfekt. Ich versuchte beide Möglichkeiten in SQLyog direkt über der Tabelle der Registerkarte "Daten" und mithilfe von Query. Es ist einfach nur die Arbeit. es scheint, es ist kein problem in Dezimal Angebot, aber problem ist, dass einige, wo sonst. Siehe die screenshots angehängt
Direkt über der Tabelle der Registerkarte "Daten"
Durch insert-Abfrage
Tabelle Struktur
Hoffe, es hilft...
Sie senden den Wert für
preco
als string akzeptiert wird, die durch MySQL in der gleichen Weise, wie ein numerischen Wert.