オラクルからAccessにデータ追加
オラクルから、必要なデータを抜出し加工の為のDBをAccessで作成していますが、オラクルから抜き出したデータ(レコードセット)を、どうやってAccessのテーブルに書き込めばよいかがわかりません。
◎環境
Oracle:10g
Access:2010
◎現在の状況
Dim CON As New ADODB.Connection
Dim RS As ADODB.Recordset
Dim SQL As String
Dim i As Integer
'DB接続定義
CON.Open "DSN=DNS名;UID=ユーザー名;PWD=パスワード;"
'SQL文
SQL = "SELECT "
SQL = SQL & "カラム1,"
SQL = SQL & "カラム2,"
SQL = SQL & "カラム3"
SQL = SQL & "FROM オラクルテーブル名 "
SQL = SQL & "WHERE 抽出条件 "
SQL = SQL & "AND 抽出条件"
SQL = SQL & "GROUP BY カラム"
SET RS = CON.EXCUTE(SQL)
For i = 1 To 10
Debug.Print rs(カラム1) & rs(カラム2)
next i
ここまでは、オラクルのテーブルから、レコードセットにデータが取り込まれてます。
rs.close: SET RS = Nothing
con.close:SET CON=Nothing
end sub
案1
レコードセットのデータを、Access側のテーブルにループで回して、1行ずつデータ追加
案2
INTO句で直接、テーブル作成
調べていて、2通りのやり方があると思うのですが、どちらにしても、テーブルへの書き込み方がわかりません。
案1の場合、Access側のテーブルを開いてデータ追加する方法
※同時に2つのテーブルを開くことになるのでは?
案2の場合、SQL文はオラクルで処理する為の物なので、AccessテーブルのINTO句が使えるのか?
オラクルのテーブルをリンクする事も考えたのですが、実際動かすPCにはAccessRuntimeしかインストールしてませんので、オラクルのテーブルをリンクしてくれませんでした。
よい方法があれば、アドバイスを頂けたら幸いです。
お礼
回答ありがとうございます。 やはり手動で作成ですか… アクセスはテーブル定義をsqlファイルに おとしたりできないんでしょうか。 不精もんですみません。