I noticed this because for some words it returned the wrong etymology. So I noticed that the query returns many results instead of one. the table has about 60000 entries.
so here is my mysql query:
conMySQL.ConnectionString = "Provider=MSDASQL; DRIVER={MySQL ODBC 3.51 Driver};SERVER=" & MYSQLserverIP & ";Port=" & MYSQLserverPort & ";DATABASE=" & MYSQLserverDB & ";UID=" & MYSQLserverUser & ";PASSWORD=" & MYSQLserverPass & ";OPTION=3;Connect Timeout=1;"
conMySQL.Open
If conMySQL.State = 1 Then
recMySQL.Open "SELECT * FROM tEtymology WHERE sLemma='" & sLemma & "'", conMySQL, adOpenStatic, adLockReadOnly
If Not (recMySQL.EOF And recMySQL.BOF) Then
recMySQL.MoveFirst
strReturn = sLemma & "<br>" & recMySQL.Fields("id").Value & "#" & recMySQL.Fields("sLemma").Value & "#" & recMySQL.Fields("sEtymology").Value
recMySQL.MoveNext
strReturn = strReturn & "<br>" & recMySQL.Fields("id").Value & "#" & recMySQL.Fields("sLemma").Value & "#" & recMySQL.Fields("sEtymology").Value
End If
End If
for example, for the Lemma "μπότα" the result is:
μπότα
34288#μπότα#[<μσν. μπότα < γαλλ. botte]
38505#οπότε#[<αρχ. ὁπόταν, με επίδραση του ὅτε]
this happens for many words, not only for the one you see here. I tried removing the index in the sLemma field ( thought that the indexed entry is a hashed value and due to collision it becomes the same ), but no change. I also tried changing the collation of the sLemma column but nothing changed.
so what i understand from this is that for mysql μπότα=μπότα and μπότα=οπότε which doesn't make any sense. There is only one entry "μπότα" in the sLemma column.
Any ideas ?
edit: here is how the entries look in phpmyadmin

you may think it's the same entry ( the red ones with the IDs mentioned here ) but if you zoom the image you will see they are different letters ( first and last letter ).
sLemmahave a unique constraint on it?