Aula 50 - Leitura de Dados com SqlDataReader e ResultSet
Enquanto os comandos DML (INSERT, UPDATE, DELETE) utilizam o método ExecuteNonQuery() para alterar dados sem retornar tabelas, a instrução SQL SELECT exige um mecanismo especializado para capturar e ler os registros retornados pelo SGBD. No ecossistema C# (ADO.NET), utilizamos a classe SqlDataReader combinada com o método ExecuteReader() da classe SqlCommand . No Java (JDBC), utilizamos a interface ResultSet combinada com o método executeQuery() do PreparedStatement . Tanto o SqlDataReader quanto o ResultSet funcionam através do conceito de Cursor Somente Leitura e Somente Avanço (Read-Only, Forward-Only): O cursor posiciona-se inicialmente antes da primeira linha do conjunto de dados retornado. O método Read() (C#) ou next() (Java) avança o cursor para a próxima linha. Ele retorna um valor booleano ( true se existir uma próxima linha válida, ou false quando atingir o fim dos registros). O percurso em todos os registros lidos é realizado utilizando a estrutura de repetição ...