Classe SqlCeDataReader
Fornece uma maneira de ler um fluxo apenas de encaminhamento de linhas de dados de uma fonte de dados. Esta classe não pode ser herdada.
Namespace: System.Data.SqlServerCe
Assembly: System.Data.SqlServerCe (em System.Data.SqlServerCe.dll)
Sintaxe
'Declaração
Public Class SqlCeDataReader _
Inherits DbDataReader
'Uso
Dim instance As SqlCeDataReader
public class SqlCeDataReader : DbDataReader
public ref class SqlCeDataReader : public DbDataReader
type SqlCeDataReader =
class
inherit DbDataReader
end
public class SqlCeDataReader extends DbDataReader
Comentários
Para criar um SqlCeDataReader, chame o método ExecuteReader do objeto SqlCeCommand, em vez de usar diretamente um construtor.
Enquanto o SqlCeDataReader está sendo usado, a SqlCeConnection associada está ocupada atendendo o SqlCeDataReader. Neste estado, você pode criar vários leitores na mesma conexão.
As alterações feitas a um conjunto de resultados por outro processo ou thread enquanto os dados são lidos podem ser visíveis para o usuário do SqlCeDataReader; contudo, o comportamento preciso depende do quando ocorrem.
IsClosed e RecordsAffected são as únicas propriedades que você pode chamar depois que o SqlCeDataReader é fechado. Apesar de ser possível acessar propriedade RecordsAffected a qualquer momento enquanto o SqlCeDataReader existir, sempre chame Close antes de retornar o valor de RecordsAffected para assegurar um valor de retorno preciso.
Exemplos
O exemplo a seguir cria uma SqlCeConnection, um SqlCeCommand e um SqlCeDataReader. O exemplo lê os dados e os grava no console; em seguida, fecha o SqlCeDataReader e a SqlCeConnection.
Dim conn As SqlCeConnection = Nothing
Dim cmd As SqlCeCommand = Nothing
Dim rdr As SqlCeDataReader = Nothing
Try
' Open the connection and create a SQL command
'
conn = New SqlCeConnection("Data Source = AdventureWorks.sdf")
conn.Open()
cmd = New SqlCeCommand("SELECT * FROM DimEmployee", conn)
rdr = cmd.ExecuteReader()
' Iterate through the results
'
While rdr.Read()
Dim employeeID As Integer = rdr.GetInt32(0) ' or: rdr["EmployeeKey"];
Dim lastName As String = rdr.GetString(5) ' or: rdr["FirstName"];
End While
' Always dispose data readers and commands as soon as practicable
'
rdr.Close()
cmd.Dispose()
Finally
' Close the connection when no longer needed
'
conn.Close()
End Try
SqlCeConnection conn = null;
SqlCeCommand cmd = null;
SqlCeDataReader rdr = null;
try
{
// Open the connection and create a SQL command
//
conn = new SqlCeConnection("Data Source = AdventureWorks.sdf");
conn.Open();
cmd = new SqlCeCommand("SELECT * FROM DimEmployee", conn);
rdr = cmd.ExecuteReader();
// Iterate through the results
//
while (rdr.Read())
{
int employeeID = rdr.GetInt32(0); // or: rdr["EmployeeKey"];
string lastName = rdr.GetString(5); // or: rdr["FirstName"];
}
// Always dispose data readers and commands as soon as practicable
//
rdr.Close();
cmd.Dispose();
}
finally
{
// Close the connection when no longer needed
//
conn.Close();
}
Hierarquia de herança
System. . :: . .Object
System. . :: . .MarshalByRefObject
System.Data.Common. . :: . .DbDataReader
System.Data.SqlServerCe..::..SqlCeDataReader
System.Data.SqlServerCe. . :: . .SqlCeResultSet
Segurança de thread
Any public static (Shared in Microsoft Visual Basic) members of this type are thread safe. Any instance members are not guaranteed to be thread safe.