初日 最新 目次 MAIL HOME


*-- To Tell The Truth --*
Cruz
MAIL
HOME

My追加

2002年01月31日(木)
今さらですがUPDATE

UPDATEのSQL文だけしか紹介していませんでしたね。
覚書き日記・・・。



で、気を取り直して

UPDATE




============= 参考部分 =============

// COMの初期化処理
::CoInitialize(NULL);

try{
 // ADOオブジェクトの生成
 m_pConnect.CreateInstance(__uuidof(Connection));

 // データベースへの接続
 m_pConnect->Open(
    _bstr_t(gDB.cpServerName),
    _bstr_t(gDB.cpUserID),
    _bstr_t(gDB.cpPassword),
    adConnectUnspecified);

 // UPDATE文作成
 SetUpdate(); // private関数
 _bstr_t bstrQuery(cpSQLStr);
 _variant_t vRecsAffected(0L);


 m_pConnect->BeginTrans();

 // UPDATE実行
 m_pConnect->Execute(bstrQuery,
        &vRecsAffected,
        adOptionUnspecified);

 m_pConnect->CommitTrans();


 }
 catch (_com_error &e)
 {
  dump_com_error(e, hWnd);
  return FALSE;
 }

 return TRUE;

=============

とまぁ、こんなもんです。

1レコードづつの更新なので、Executeで実行しています。
CommitTrans();Commitですね。
BeginTrans();は、実行前ってことでExecute直前にしておきました。