intanto tu sei sicuro che con la clausola WHERE che stai applicando otterrai un singolo record? (il campo "foto" mi lascia perplesso... cosa contiene? un codice foto? o cmq una chiave primaria dell'entità?)
Il problema è che se il record che ottieni nn è unico devi mettere i risultati da qlke parte, ad esempio in una ArrayList...
Io per adesso faccio finta che ottieni un solo record e che ti interessa avere nella variabile foto il percorso. potresti usare il seguente codice ad esempio:

Try
Dim Cn As New OleDbConnection(ConnString)
Cn.Open()
Dim sql As String = "SELECT * FROM AnamnesiAtleta where foto = '" + TextBox1.Text + "' "
Dim cmd As New OleDbCommand(sql, Cn)
Dim dr As OleDbDataReader = cmd.ExecuteReader
Do While dr.Read()
foto = dr.item("<NomeCampoPercorso>")
Loop
Cn.Close()
Return d
Catch ex As Exception
MsgBox(ex.Message & vbCrLf, MsgBoxStyle.Critical, "ERRORE!")
End Try

Come puoi vedere ho usato del codice un po' diverso per accedere ai dati del DB, ma puoi adattarlo alla tua modalità... così l'ho trovato! :-P

attendo notizie
ciao