各位大虾:
用SQL查询ORACLE数据库表,然后一条条的读取数据写入文本文件。奇怪的是同样的sql和程序,有不同的结果。
比如正确应该有800万条记录左右,但是有时候生成的只要100多万条,但是又没有产生异常。如果重新生成则数目从100多万条~800万条不等。郁闷!
望牛人援手!
用SQL查询ORACLE数据库表,然后一条条的读取数据写入文本文件。奇怪的是同样的sql和程序,有不同的结果。
比如正确应该有800万条记录左右,但是有时候生成的只要100多万条,但是又没有产生异常。如果重新生成则数目从100多万条~800万条不等。郁闷!
望牛人援手!
nFieldCnt //查询字段数目
strSQL //查询sql语句
pFile //保存的文件指针
m_pdbOper //开发的数据库查询类
以下是代码
int nCount = 0;
string strTmp,strReocrd;
int nRet = m_pdbOper->query(nFieldCnt,strSQL);
if(nRet < 0)
{
m_pdbOper->releaseReocrd();
return -1; //查询失败
}
while(!m_pdbOper->isEnd())
{
strRecord = "";
for(int i=0;i<nFiledCnt; i++)
{
(*m_pdbOper) >> strTmp;
strRecord += strTmp;
}//for(int i=0;i<nFiledCnt; i++)
fput(strRecord.c_str(),pFile);
nCount ++;
}//while(!m_pdbOper->isEnd())
m_pdbOper->releaseRecord();
当数据量比较大(比如> 100万),就会出现同样的代码同样的sql导出的记录数目不一样
而且记录信息比较多,一般会有1~2G,压缩后几百M
有的时候能全,有的时候就很少的数据,又没有异常
痛苦呀,那位高人能指点!!!!
当数据量比较大(比如> 100万),就会出现同样的代码同样的sql导出的记录数目不一样