ado批量执行sql mysql_C++ 使用 ADO 批量操作数据库
使用ADO操作數據庫時,如果想要批量插入數據,或者修改數據,可以參考下面的代碼:_RecordsetPtr pRecord;
pRecord.CreateInstance("ADODB.Recordset");
pRecord->CursorLocation = adUseClient;
CString strSQL = L"SELECT * FROM table_name";
try
{
pRecord->Open(_bstr_t(strSQL), pConnection.GetInterfacePtr(), adOpenStatic, adLockBatchOptimistic, adCmdText);
while(!pRecord->AdoEOF)
{
strValue = L"my name is xxx";
pRecord->PutCollect(_variant_t((Long)(0)), _variant_t(strValue));
pRecord->PutCollect("name",_variant_t(strValue));
pRecord->MoveNext();
}
pRecord->UpdateBatch(adAffectAll);
pRecord->Close();
pRecord.Release();
}
catch(_com_error &e)
{
OutputDebugString(e.Description());
}
關鍵點:使用本地游標庫提供的客戶端的游標pRecord->CursorLocation = adUseClient;
pRecord 的 Open 函數中設置 LockType 為 adLockBatchOptimistic 。
使用 PutCollect 函數綁定值到指定的字段。
如果想添加一行新的數據使用 AddNew 函數。pRecord->AddNew();
最后使用 UpdateBatch 函數提交數據。pRecord->UpdateBatch(adAffectAll);
如果 UpdateBatch 失敗,使用 CancelBatch 取消提交。pRecord->CancelBatch(adAffectAll);
總結
以上是生活随笔為你收集整理的ado批量执行sql mysql_C++ 使用 ADO 批量操作数据库的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: access期刊可以重投几次_又被拒稿了
- 下一篇: mysql的还原_MySQL 还原