2021년 4월 29일 목요일

MariaDB - DataError 1264 - " Out of range value for column 'col_name' at row 1"

 MariaDB - DataError 1264 -  " Out of range value for column 'col_name' at row 1"

원인 - 해당 data column의 data type이 제공하는 크기를 넘어서 발생하는 문제

DataError: (1264, "Out of range value for column 'volume' at row 1")

재현
=CREATE TABLE IF NOT EXISTS kusee(code VARCHAR(20),price FLOAT(20,10),PRIMARY KEY (code))
=DESC kusee


=INSERT INTO kusee(code,price) VALUES ('apple',1660000000000000000.0)
==총 19자리

=FLOAT(20.10)에서도 발생하는 근거
===FLOAT(20.10)의 의미는 허용 자리수가 아니라 보여주는 Display width 를 의미함

해결책
==data type 을 DOUBLE 로 변경해서 해결함

=CREATE TABLE IF NOT EXISTS kusee(code VARCHAR(20),price DOUBLE,PRIMARY KEY (code))

=INSERT INTO kusee(code,price) VALUES ('apple',16600000000000000000.0)
==20자리

=SELECT * FROM kusee



댓글 없음:

댓글 쓰기