sql_query insert 시 반올림되는 현상 질문
본문
안녕하세요.
sql_query("insert `테이블` set `1` = '$result_no1', `2` = '$result_no2', `3` = '$result_no3', `4` = '$result_no4', `value` = '$result_no5'");
이런식으로 쿼리를 날려주는데, 1,2,3,4 컬럼의 값이
9046.96000000
이런 형태입니다. 그런데 쿼리문을 실행하고 DB를 확인해보니 1로 되어있더군요 ㅠ
반올림이 된것 같은데.. 어떻게 해결방법 없을까요
감사합니다.
!-->답변 5
$result_no4 = print_r($json[0][4]);
print_r은 출력문인데 이렇게 하는 이유가 있나요?
$result_no4 = $json[0][4];
이렇게 하세요.
들어가는 값이 문제가 아니라 해당 테이블의 자료형이 문제일 가능성이 높네요
해당 테이블에서 int형이면 doblue이나 float 또는 decimal 형태로 바꿔주셔야 합니다
컬럼의 형식을 살펴보세요. int 인지 확인해 보세요.
http://www.incodom.kr/DB_-_%EB%8D%B0%EC%9D%B4%ED%84%B0_%ED%83%80%EC%9E%85/MYSQL
https://www.php.net/manual/en/function.print-r.php
print_r은 사용할 필요가 없네요
<?php
$result_no1 = $json[0][1];
$result_no2 = $json[0][2];
$result_no3 = $json[0][3];
$result_no4 = $json[0][4];
$result_no5 = $json[0][5];
sql_query("insert `테이블` set `1` = '$result_no1', `2` = '$result_no2', `3` = '$result_no3', `4` = '$result_no4', `value` = '$result_no5'");
로 해보세요
!-->반올림 된 것이 아니고 print_r( ) 함수가 TRUE 를 반환해서 1 이 들어 간 듯.
답변을 작성하시기 전에 로그인 해주세요.