Hace mucho ratón que no toco lo que es la suite de Visual Studio .NET, y quería hacer algo como lo siguiente, pero no me funciona...
Tengo esta función que ejecuta la query y devuelve un objeto SqlDataReader
Function EjecutarQueryResultados(ByVal sSQL As String) As SqlDataReader
Connect()
Dim objSqlDataReader As SqlDataReader
objSqlCommand = New SqlCommand(sSQL, objConnection)
Try
objSqlDataReader = objSqlCommand.ExecuteReader()
Disconnect()
Catch ex As Exception
msgError(ex.Message)
Disconnect()
End Try
Return objSqlDataReader
End Function
Ahora cuando quiero ejecutar una query y recorrer el SqlDataReader, me dice que esta cerrado.
objSqlDataReader = EjecutarQueryResultados("SELECT * FROM dbo.tblTipoUsuario;")
While objSqlDataReader.Read()
Dim i As Integer = 0
For i = 0 To objSqlDataReader.FieldCount - 1
TextBox1.Text &= objSqlDataReader(i) & "-"
Next
End While
EDIT: PERDÓN, ERA PORQUE CERRABA LA CONEXIÓN...
Era lo que iba a decir justamente, el sqldatareader se utiliza para trabajar en ambientes conectados a la bbdd, si quieres estar desconectado puedes hacerlo con un dataadapter
Saludos
Algún ejemplillo?
http://www.elguille.info/NET/ADONET/cadena_de_conexion_para_conectar_a_una_base_de_sql_server.htm
http://www.elguille.info/net/ADONET/transacciones_simples_dataadapter.aspx
Es muy simple, basta tirar la consulta con SqlDataAdapter, y luego los datos en un DataTable, el mismo objeto SqlDataAdapter te provee de métodos para eliminar, modificar, insertar valores en base a esos que tienes en memoria :P
Saludos