[pgsql-jp: 29022] Re: VBA+ODBCでトランザクションを行うには

Hiroshi Saito saito @ inetrt.skcapi.co.jp
2003年 2月 12日 (水) 22:57:34 JST


さいとうです。

> 脱線したのでsubject:を付け替えました。

脱線ついでにDAOでも試してみました。
結果、同じようにうまく行ってます。

※DAOでは
BeginTrans->SQL_AUTOCOMMIT_OFF
CommitTrans->SQL_AUTOCOMMIT_ON
で動作しますね。
(なんか昔うまくいかなかったような??最近VBA使ってないもので)

ここまでいくと、ADO,RDOと・どなたかまともなサンプル出ますかね。(^_^;)

ここからVBA--------------------------------------------------------------

Private Sub PostgreSQL_Update()

    Dim wks As Workspace
    Dim con As Connection
    Dim que As QueryDef
    Dim dns As String
    dns = "ODBC;DATABASE=saito;UID=saito;PWD=;DSN=PostgreSQL;"
    Set wks = CreateWorkspace("", "saito", "", dbUseODBC)
    Set con = wks.OpenConnection("", dbDriverComplete, False, dns)
    Set que = con.CreateQueryDef("", "insert into saito values('SAITO');")
    que.Execute

    MsgBox "INSERT"

    wks.BeginTrans

    Set que = con.CreateQueryDef("", "update saito set xxx = 'したよ' where
xxx = 'SAITO';")
    que.Execute
    MsgBox "トランザクション内更新中です。他で覗いてみてね。"

    wks.CommitTrans

    MsgBox "トランザクションの外にでました。"

    con.Close
    wks.Close

End Sub





pgsql-jp メーリングリストの案内