Access 데이터베이스가 있으며 AS400 테이블의 레코드를 반환하는 통과 쿼리를 사용하고 있습니다. 연결 문자열 및 통과 쿼리가 잘 작동하지만 지금은 DB 내 로컬 테이블에 p-t 쿼리의 결과를 채우려고하고 내 코드가 시간 초과되었습니다. 이것은 ADO에서의 첫 번째 시도이기 때문에 "나는 내가하는 일을 100 % 확신하지 못한다!"라고 내 코드를 부인합니다. 이걸 보면서 내가 잘못하고 있다는 것을 분명히 볼 수 있을까요? 어떤 방향으로도 감사하겠습니다. 미리 감사드립니다.패스 스루 쿼리에서 로컬 테이블로 레코드 추가
Sub mod_ADODBConnect()
Const NewTableName = "MyNewTable"
Dim cn As ADODB.Connection
Dim rs As ADODB.Recordset
Dim db As DAO.Database
Dim sSQL1 As String
Dim sSQL2 As String
sSQL1 = "SELECT ITMNUM, ITMDS, ITPKDS, MJCMCD, SBCMCD, STATUS, PRITIN, OGEXDT from PDBLLIB007.BLPMST07"
sSQL2 = "INSERT INTO ' & NewTableName & ' SELECT [" & sSQL1 & "].* from [" & sSQL1 & "]"
Set cn = New ADODB.Connection
cn.Open "Driver={Client Access ODBC Driver (32-bit)};" & _
"System=DC007; Uid=XXXXX; Pwd=XXXXXX; MgDSN=0; ConnType=2;" & _
"BlockSize=512; MaxFieldLen=2048; LazyClose=1; Prefetch=1; QueryTimeOut=0; Translate=1"
Set rs = New ADODB.Recordset
rs.Open sSQL1, cn, adOpenDynamic, adLockOptimistic
Do While Not rs.EOF
rs.MoveNext
Loop
Set db = CurrentDb
db.Execute ("sSQL2")
rs.Close
cn.Close
Set rs = Nothing
Set cn = Nothing
Set db = Nothing
End Sub
링크 된 테이블 (http://itknowledgeexchange.techtarget.com/itanswers/as400-data-to-ms-access-database/)을 고려 했습니까? – Fionnuala