It just read the first record for the sql2. but I want that the result of sql1 to compare with all all the result that we get for sql2. Here is the code.

vbcodePrivate Sub MatchImage_Click()
Dim DBConnect As New ADODB.Connection
Dim RSOpen As New ADODB.Recordset
Dim RSCheck As New ADODB.Recordset

Dim huruf1 As Integer, huruf2 As Integer
Dim PictureName As String, objek As String
Dim panjang1 As Integer, panjang2 As Integer
Dim data1 As String, data2 As String
Dim i As Integer, j As Integer, k As Integer
Dim sql1 As String, sql2 As String
Dim jumpanjang As Integer
Dim beza As Integer, jumbeza As Integer

Set DBConnect = New ADODB.Connection
DBConnect.Provider = "Microsoft.Jet.OLEDB.4.0"
DBConnect.Open "c:\Projek\Imej.mdb"

PictureName = CommonDialog1.FileName
objek = Replace(PictureName, "C:\Projek\marin\", "")
panjang1 = 0
panjang2 = 0

sql1 = "select Ciri from SenaraiImej where NamaFail='" & objek & "'"
RSOpen.Open sql1, DBConnect
data1 = RSOpen("Ciri")
panjang1 = Len(data1)
Text4.Text = panjang1

ReDim CiriImej1(1 To panjang1) As String
For i = 1 To panjang1
huruf1 = Mid(data1, i, 1)
CiriImej1(i) = huruf1
List1.AddItem huruf1
Next i

RSOpen.Close

sql2 = "select Ciri from SenaraiImej"
RSCheck.Open sql2, DBConnect

data2 = RSCheck("Ciri")
panjang2 = Len(data2)
Text5.Text = panjang2

ReDim CiriImej2(1 To panjang2) As String
For j = 1 To panjang2
huruf2 = Mid(data2, j, 1)
CiriImej2(j) = huruf2
List2.AddItem huruf2
Next
jumpanjang = panjang2
jumbeza = 0
For k = 1 To jumpanjang
If CiriImej1(k) = CiriImej2(k) Then
beza = 0
ElseIf CiriImej1(k) > CiriImej2(k) Then
beza = CiriImej1(k) - CiriImej2(k)
Else
beza = CiriImej2(k) - CiriImej1(k)
End If
jumbeza = jumbeza + beza
Next
Text6.Text = jumbeza
RSCheck.Close
End Sub
/vbcode