2009-12-07 7 views
1

HI,vb6에서 두 레코드 집합을 비교하십시오.

레코드 집합 rs1과 rs2가 vb6에 있습니다. 나는 rs1의 각 레코드를 rs2의 각 레코드와 비교하려고합니다. rs1의 rtn (열)이 rs2의 rtn과 같으면 date = now 및 claim = c를 설정합니다.

이것은 내가해야 할 일입니다. rs1의 각 행과 rs2의 각 행을 비교하는 방법 나를 도와주세요.

답변

1
당신이 다음 유사한 필드를 반복 할 수 있습니다 각 필드를 비교해야하는 경우이 가정

rs1.MoveFirst 
While not rs1.EOF 
    rs2.MoveFirst 
    While not rs2.EOF 
     'Do your comparisons here' 
     if rs1("colum").value = rs2("column").value then 
      'do other stuff 
     end if 
     rs2.MoveNext 
    Wend 
rs1.MoveNext 
Wend 

다음 레코드가 가지고있는 유사한 내부 및 외부 루프에서 모두 레코드를 통해

그냥 루프 같은 순서

Dim i as integer 
for i = 0 to rs1.Fields.Count -1 
    if rs.fields(i).Value = rs2.fields(i).value then 
     'DO other stuff' 
    End if 
Next i 
0

에서 같은 분야 훨씬 더 나은 솔루션 대신 각 일치하지 않는 행은 단일 쿼리에서 반환하도록 코드의 쿼리/SQL의 비교를하는 것입니다. 예를 들어

SELECT T1.*,T2.* 
FROM T1,T2 
WHERE (T1.ID=T2.ID) AND 
    ((T1.Field1<>T2.Field1) OR (T1.Field2<>T2.Field2) ...) 
관련 문제