반응형

mysql에서 update 쿼리를 날렸을 때 다음과 같은 에러가 나는 경우가 있다. 

Caused by: com.mysql.jdbc.MysqlDataTruncation: Data truncation: Truncated incorrect DOUBLE value: '-Infinity'

워니는 조건문에 필드 데이터가 비교할 수 없는 데이터가 존재해서 그런는 듯하다. 

나같은 경우는 IFNULL을 이용해서 해결하였다. 

ex) 

update [테이블명] set abc='abc' where field > 10  //이전

update [테이블명] set abc='abc' where IFNULL(field, 0) > 10 //이후



혹은 다른 사이트에서는 

update [테이블명] set abc='abc' and cde = 'cde' where field > 10 //이전

update [테이블명] set abc='abc' , cde = 'cde' where field > 10  //이후



and를 ,로 바꿔주라고 말하는 경우가 있는데 

나의 경우는 이미 , 였는데 해결이 되지 않아 ifnull 함수를 이용해서 해결하였다.

728x90
반응형

에러내용
 which is not functionally dependent on columns in GROUP BY clause; this is incompatible with sql_mode=only_full_group_by

수정사항

1) cd /etc/mysql/mysql.conf.d

2) vi mysqld.cnf

- 다음 내용 추가
[mysqld]  
sql_mode = STRICT_TRANS_TABLES,NO_ZERO_IN_DATE,NO_ZERO_DATE,ERROR_FOR_DIVISION_BY_ZERO,NO_AUTO_CREATE_USER,NO_ENGINE_SUBSTITUTION

3) 서버 재시작
service mysql restart

728x90
반응형

Excel에서는 일부 PIN(개인 식별 번호), 전화 번호, 신용 카드 번호, 제품 코드 또는 우편 번호처럼 0으로 시작하는 숫자를 입력하면 맨 앞의 0이 제거됩니다. 숫자를 입력하거나 붙여 넣기 전에 셀에 텍스트 서식을 적용하면 이 문제를 방지할 수 있습니다. 방법은 다음과 같습니다.

  1. 워크시트에서 데이터를 추가할 셀을 선택합니다.

  2.  탭에서 숫자 서식 >텍스트를 클릭합니다.

  1. 서식이 지정된 셀에 숫자를 입력하거나 붙여 넣습니다.

팁: 12자리 이상의 숫자의 경우 숫자 서식을 적용합니다. 그렇지 않으면 Excel Online에서 자동으로 공학용 서식을 적용하고 15번째 자리 뒤에 오는 숫자를 모두 0으로 변환합니다.

 

[출처]https://support.office.com/ko-kr/article/%EB%A7%A8-excel-online%EC%97%90%EC%84%9C-0%EC%9D%84-%EC%9C%A0%EC%A7%80-%ED%95%98%EB%8F%84%EB%A1%9D-%EC%88%AB%EC%9E%90-%EC%84%9C%EC%8B%9D-%EC%A7%80%EC%A0%95-633401e5-f2ad-4ac7-afef-05ed58b1c9a1

728x90

+ Recent posts