Devo leggere i dati di una tabella, questo è il mio codice:

codice:
conn.ConnectionString = "Data Source=.\SQLEXPRESS;AttachDbFilename=|DataDirectory|\Database.mdf;Integrated Security=True;User Instance=True"
        Dim SelMatricola As SqlCommand = New SqlCommand("SELECT (Matricola) FROM [PostIt]", conn)
        conn.Open()
        Dim reader As SqlDataReader = SelMatricola.ExecuteReader()
        If reader.HasRows = True Then
            Do While reader.Read()
                Matr.Text = reader.GetString(3).ToString
            Loop
        End If
        reader.Close()
        conn.Close()
Se come parametro di GetString indico 0 funziona, utilizzando parametri <> 0 mi dà errore. Presumo che il loop non lo esegua e quindi riesca a leggere solo il primo elemento della tabella.

Cosa sbaglio? Vi ringrazio in anticipo!