最近我在将wav文件存入SQL的一个image字段之后,觉得无法知道存入的数据是否正确,所以读出来,结果读出来的数据完全不对。请问有没有什么方法能知道存入字段的数据是否正确呢?
读取代码如下:
pConnection->ConnectionString="Provider=SQLOLEDB.1;Integrated Security=SSPI;Persist Security Info=False;Initial Catalog=SERVER";
hr = pConnection->Open("","","",adConnectUnspecified);
       
pRs->Open("select * from aa",_variant_t((IDispatch*)pConnection),
              adOpenStatic,adLockOptimistic,adCmdText);
       
long lDataLength = pRs->Fields->GetItem("aa")->ActualSize;
varBLOB = pRs->Fields->GetItem("aa")->GetChunk(lDataLength);
if(varBLOB.vt == (VT_ARRAY | VT_UI1))        
{
BYTE *pBuf = new BYTE[lDataLength];
             SafeArrayAccessData(varBLOB.parray,(void **)pBuf); 

CString strFileName = "d:\\temp.wav";

CFile outFile(strFileName,CFile::modeCreate|CFile::modeWrite);
int len = sizeof(*pBuf);
outFile.Write(pBuf,lDataLength);

            outFile.Close();           
            SafeArrayUnaccessData (varBLOB.parray);
delete []pBuf;
}
pRs->Close();
pConnection->Close();