2017-12-09 16 views
1

のための範囲値のうち、私はテーブルのMySQL Workbenchは小数

create table Oceny_projekty 
(
    OProj_Id    int not null comment '', 
    ID_Projektu   int comment '', 
    ID_Studenta   int comment '', 
    OProj_Ocena   decimal(1,1) comment '', 
    OProj_Data   date comment '', 
    primary key (OProj_Id) 
); 

を作成し、PowerDesignerの

insert into Oceny_projekty (OProj_Id, ID_Projektu, ID_Studenta, OProj_Ocena, OProj_Data) 
    values (2, 18, 10, '2.5', '1857-12-25'); 

によって生成されたサンプルデータでそれを埋めるために望んでいたと私はこれを持っている:

Oceny_projektyに挿入する(OProj_Id、ID_Projektu、ID_Studenta、 OProj_Ocena、OProj_Data)値(2,18,10、 '2.5'、 「1857年12月25日」)エラー コード:列の範囲の値のうち、1264「OProj_Ocena」行1

どのように私は小数を受け入れることができコマンドを変更することができますか? (整数は問題ありません) MySQL Workbench 6.3、PowerDesignerの使用16.6

ありがとうございます!

+0

https://dev.mysql.com/doc/refman/5.7/en/precision-math-decimal-characteristics.html –

+2

[10進数型の範囲外エラー]の可能な複製(https:// stackoverflow。 COM/questions/33348508/mysql-decimal-type-out-of-range-error) –

+0

特定のテストデータプロファイルをOProj_oCena列に関連付けましたか?それは引用符の間に数字を生成することは奇妙に思えます。 – pascal

答えて

1

OProj_Ocenadecimal(1,1)と宣言すると、0桁の数字(precision - scale = 1 - 1 = 0)と1小数点以下の桁があることを意味します。値は0, 0.1, 0.2 ... 0.9しか格納できません。

必要なデータ型はおそらくdecimal(2,1)です。

+1

ここではSQL Fiddleです:http://www.sqlfiddle.com/#!9/2de41b。 –