잘되던 DB연동이 갑자기 무조건 결과값을 1만 뱉어내고 나와버리네요 ;;;...

· 2013-04-08 (월) 10:32:43 · 905 · 1
기존에 잘되던 로그 생성 에이전트 파일이 있는데 무조건 쿼리 결과값(nNum의 값)을 1로만 뱉어내고 나와버립니다.
원래는 15969, 19839 머 이런 큰 숫자값이 나와야 정상이었거든요. 소스 파일 건든거 하나도 없고, 서버주소만 바뀌었을 뿐인데...(주소도 제대로 바뀐거 확인했고요. init 설정파일에도 주소값 제대로 설정되어서 DB접속도 잘 됩니다. 다른 데이터들이나 쿼리문들은 다 정상적으로 주고받고요. 요놈만 말썽이네요;...)

다음은 소스입니다.

while(true)
{
bzero(Query,sizeof(Query));
sprintf(Query," select i_num from %s where dt_indate < DATE_FORMAT(DATE_ADD(NOW(), INTERVAL '-7' DAY), '%%Y-%%m-%%d 00:00:00') LIMIT 0, 100 ",_QUERY1_);

pDB->ExeQuery(Query);
pDB->StoreResult(&mrDataForRemove);

int nRows = mrDataForRemove.GetNumRows();
Print("Query : %s, Rows Count : %d",Query,nRows);
if(nRows <= 0) break;

for(int row=0;row < nRows;row++)
{
mrDataForRemove.FetchRow();
mrDataForRemove.GetData(1,nNum);

sprintf(Query," delete from %s where i_num = %d",_QUERY1_,nNum);
Print("DataRemove Query : %s", Query);
if(!pDB->ExeQuery(Query))
{
InsertErrorLog(Query);
bError = true;
break;
}

}
mrDataForRemove.FreeResult();
if(bError) break;
}
sleep(10);

기존에는 for문 안에서(nRows값은 현재 100입니다.) nNum의 숫자값만큼 반복문으로 다 뿌리고 나왔는데 무조건 mrDataForRemove.GetData(1,nNum); 이 함수에서 nNum 값이 1만 뿌리고는 반복문이 종료되는거 같습니다.


FetchRow()함수는
bool MysqlRes::FetchRow( )
{
if(!m_mysqlRes) return false;

m_mysqlRow = mysql_fetch_row(m_mysqlRes);
return true;
}
GetData함수는
bool MysqlRes::GetData( const int p_nIdx, int & p_nRetValue )
{
if(p_nIdx<1 || !m_mysqlRes) return false;

p_nRetValue = 0;
if(mysql_num_fields(m_mysqlRes)<p_nIdx) return false;
if(!m_mysqlRow[p_nIdx-1]) return false;

p_nRetValue = atoi(m_mysqlRow[p_nIdx-1]);

return true;

}

만약 쿼리문이 잘못되어 실행 실패라면 if(!pDB->ExeQuery(Query)) 이 루틴을 타고 들어가 에러로그파일에 값을 넣어야 하는데 에러로그 파일이 깨끗하고요. 도대체 뭐가 원인인지 잘 모르겠네요. ㅠ.ㅠ
|

댓글 1개

2013-04-08 (월) 20:54:25
select i_num from %s where dt_indate < DATE_FORMAT(DATE_ADD(NOW(), INTERVAL '-7' DAY), '%%Y-%%m-%%d 00:00:00') LIMIT 0, 100
이부분에서 날리신 쿼리문을 테이블명 넣어서 db에 직접 입력해 보세요
댓글을 작성하시려면 로그인이 필요합니다.

그누4 질문답변

66,531건

그누보드4 관련 질문은 QA 로 이전됩니다. QA 그누보드4 바로가기 기존 게시물은 열람만 가능합니다.

+
제목 글쓴이 날짜 조회
13-04-08 조회 1,657
13-04-08 조회 1,637
13-04-08 조회 885
13-04-08 조회 1,111
13-04-08 조회 1,676
13-04-08 조회 1,172
13-04-08 조회 1,902
13-04-08 조회 1,072
13-04-08 조회 2,003
13-04-08 조회 906
13-04-08 조회 2,965
13-04-08 조회 1,793
13-04-08 조회 4,010
13-04-08 조회 1,705
13-04-07 조회 1,780
13-04-07 조회 2,759
13-04-07 조회 1,073
13-04-07 조회 1,076
13-04-07 조회 1,766
13-04-07 조회 1,157