1
내가 뭘하려고하면 SQL 쿼리를 통해 온라인 서버에서 일부 데이터를 가져온 다음 레코드를 수정하는 레코드 집합을 반복합니다.ADODB 레코드 집합의 레코드 편집
나는 레코드 수정하려고 오류 얻을 : ". 여러 단계 작업을하는 동안 오류가 발생했습니다 각 상태 값을 확인하십시오."
을
내 질문 : 쿼리에서 가져온 레코드 세트의 레코드를 수정하는 방법이 있습니까?
이 경우 필드 1이 특정 기준을 충족하면 필드 2가 수정됩니다.
당신의 SQL이 수행되지Dim adoConn As ADODB.Connection
Dim locRS As New ADODB.Recordset, proRS As ADODB.Recordset
Dim strConnection As String
Set getSQL = New ADODB.Recordset
'Set Objects
Set adoConn = New ADODB.Connection
'Specify connection string
strConnection = "User ID=xxx; Password=xxx;Data Source=xxx;Provider=OraOLEDB.Oracle"
'Open the connection
adoConn.Open (strConnection)
'Set up recordset properties
getSQL.CursorType = adOpenStatic
getSQL.CursorLocation = adUseClient
getSQL.LockType = adLockBatchOptimistic
'Import the data
getSQL.Open "SELECT FIELD1, FIELD2 FROM TABLE", adoConn, adOpenStatic, adLockOptimistic
Set getSQL.ActiveConnection = Nothing
getSql.Update
'Loop through data
getSQL.MoveFirst
Do While Not stockRS.EOF
'If cetrain condition is met then modify the null column
if getSQL!FIELD1=CRITERIA then
'Error here
getSQL!FIELD2="SOME STRING"
End If
getSQL.MoveNext
Loop
'Close
adoConn.Close
Set adoConn = Nothing
아직 없습니다. 심지어 레코드를 딥 복사하려고했습니다 ([link] (http://stackoverflow.com/questions/25553594/deep-copy-or-clone-an-adodb-recordset-in-vba)). 그러나 아직도 아무것도. 필드 속성이 아닌가요? –
다른 문제를 발견했습니다. pls는 업데이트 된 답변을 확인합니다. – nempnett
여전히 작동하지 않는 경우 모든 권장 사항을 통합 한 최신 버전의 코드를 게시 할 수 있으므로 다시 살펴볼 수 있습니다. – nempnett