Function useODBCWorkspace()
'ODBCワークスペースを使ったデモ
'========================================================================
'ODBCワークスペースでレコードを全てデバッグ出力する
  Dim wks As Workspace, con As Connection
  Dim qdf As QueryDef, rs As Recordset
  Dim SQL As String, conStr As String

'ODBCワークスペースを開きPostgreSQLへ接続します
  Debug.Print "PostgreSQLへ接続しています."
  conStr = "ODBC;DATABASE=TEST;UID=postgres;FILEDSN=TEST;"
  Set wks = CreateWorkspace("", "admin", "", dbUseODBC)
  Set con = wks.OpenConnection("", dbDriverNoPrompt, False, conStr)
  
  Debug.Print "QueryDefからレコードセットを開いています."
    SQL = "SELECT * FROM zaiko ;"
    Set qdf = con.CreateQueryDef("", SQL)
    Set rs = qdf.OpenRecordset
    
      Debug.Print "レコードセットのデータを全て表示します."
      Do Until rs.EOF
        Debug.Print rs!hinmei & " => " & rs!zaiko
        rs.MoveNext
      Loop
  
  rs.Close

'また、QueryDefでSQLを発行し、データを更新します
    Debug.Print "SQLを発行します."
    SQL = "UPDATE zaiko SET zaiko = 100 WHERE hinmei = 'green' ;"
    qdf.SQL = SQL
    qdf.Execute
      Debug.Print qdf.RecordsAffected & "件のレコードを更新しました."
  qdf.Close

'もう一度レコードセットを開いて変更を確認します
    Debug.Print "再びレコードセットを開いています."
    SQL = "SELECT * FROM zaiko ;"
    Set qdf = con.CreateQueryDef("", SQL)
    qdf.SQL = SQL
    Set rs = qdf.OpenRecordset
    
      Debug.Print "もう一度レコードセットのデータを表示します."
      Do Until rs.EOF
        Debug.Print rs!hinmei & " => " & rs!zaiko
        rs.MoveNext
      Loop
  
  rs.Close

  qdf.Close
  con.Close
  wks.Close

  Debug.Print "デモ終了."
End Function