2017-12-09 52 views
1

에 대한 범위 값에서 나는 테이블MySQL의 워크 벤치는 진수

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) 
); 

을 만들고 파워 디자이너

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일') 오류 코드 : 행 1 I 소수점 숫자를 받아 들일 수 명령을 수정하는 방법

에서 'OProj_Ocena'열의 범위 값의 1264 아웃? (정수는 문제가 없습니다) 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. –