테스트 사이트 - 개발 중인 베타 버전입니다

쿼리문은 실행되는데 db에서 변하는게 없습니다. 채택완료

코코코오린코코코오린 3년 전 조회 3,506

</p>

<p>$sql_update = "UPDATE g5_member_revenue SET give_ratio = $revenue_ratio WHERE mb_id = '$id' AND in_quarter = '$in_quarter'";          </p>

<p>                $result_revenue_update = sql_query($sql_update);</p>

<p>                $sql_update = "UPDATE g5_member_revenue SET this_revenue = $this_revenue WHERE mb_id = '$id' AND in_quarter = '$in_quarter'";          </p>

<p>                $result_revenue_update = sql_query($sql_update);</p>

<p>                $sql_update = "UPDATE g5_member_revenue SET total_revenue = $total_revenue WHERE mb_id = '$id' AND in_quarter = '$in_quarter'";          </p>

<p>                $result_revenue_update = sql_query($sql_update);</p>

<p>                $sql_update = "UPDATE g5_member_revenue SET give_day = $give_day WHERE mb_id = '$id' AND in_quarter = '$in_quarter'";          </p>

<p>                $result_revenue_update = sql_query($sql_update);</p>

<p>            }</p>

<p>            if($result_revenue_update === false) {</p>

<p>                echo '쿼리에러';</p>

<p>            }else{</p>

<p>                echo '쿼리성공';</p>

<p>            }</p>

<p>

 

위와 같이 작성했는데요. 쿼리성공이라고 뜨고 db에선 변하는 게 없습니다. 왜 이런지 아시나요?

댓글을 작성하려면 로그인이 필요합니다.

답변 3개

채택된 답변
+20 포인트
3년 전

쿼리문이 잘못되셨다는걸텐데 쿼리를 echo 로 찍어서 db프로그램에서 직접 실행해보세요.

그냥 봤을땐 set 값 넣는곳에 '' 해서 안감싸준게 걸리긴하네요. 

로그인 후 평가할 수 있습니다

답변에 대한 댓글 1개

코코코오린코코코오린
3년 전
'' 감싸니까 되네요..후 감사합니다

댓글을 작성하려면 로그인이 필요합니다.

3년 전

쿼리는 한번만 실행 하도록 만들면 되는데 쿼리문을 이렇게 만들어서  서버에 부하를 주고 느리게 만들 일 있나요?

 

$result_revenue_update = sql_query("UPDATE g5_member_revenue SET give_ratio = '$revenue_ratio',  this_revenue = '$this_revenue' ,total_revenue = '$total_revenue', give_day = '$give_day'

WHERE mb_id = '$id' AND in_quarter = '$in_quarter' ", true);

 

마지막에 true 넣어보면 쿼리문에 문제가 있다면 에러코드가 나옵니다  

로그인 후 평가할 수 있습니다

답변에 대한 댓글 1개

코코코오린코코코오린
3년 전
와... 대박입니다.. 감사해요

댓글을 작성하려면 로그인이 필요합니다.

3년 전

0 개 행에 반영되어도 틀린건 아니니까요

 

근데 쿼리는 다섯개인데 체크 하는건 한번만 하는건가요?

 

각 쿼리를 직접 돌려보세요

로그인 후 평가할 수 있습니다

답변에 대한 댓글 2개

코코코오린코코코오린
3년 전
빈값체크도 해봐야겠군요. 감사합니다 각 쿼리에도 넣어봐야겟어요
코코코오린코코코오린
3년 전
각 쿼리를 체크 해보았는데요. 쿼리성공이라 출력되는군요.

그래서 else if에 sql_num_rows($result_revenue_update > 0) echo '빈값X'; 도 출력이 되네요

댓글을 작성하려면 로그인이 필요합니다.

답변을 작성하려면 로그인이 필요합니다.

로그인