La Web del Programador: Comunidad de Programadores
 
    Pregunta:  48560 - SQL 7 VISUAL BASIC .NET ADO
Autor:  Thepanch Salcido
sucede que estoy usando VIsual basic .net con un servidor SQL 7 montado localmente, haciendo una conexion estatica mediante un ODBC, tengo dos cosas que no he podido solucionar, primero, en el ODBC cuando lo hago que inicie sesion localmente mediante la cuenta de windows (en la maquina que esta instalado el SQL) me permite realizar todas las acciones correctamente mediante la aplicacion visual basic, pero si le digo en el ODBC que inicie sesion con una cuenta (que previamente di de alta en SQL con todos los permisos) no me permite realizar nada, si se conecta y todo, pero no hace nada, esa es la primera, la segunda es que estoy haciendo una consulta mediante un adodb.conection y un adodb.recordset, igualo lo que hace la pruebaRecord (que es del tipo recordset)=conection.execute(comandoSQL), todo lo hace bien, y puedo recorrer mis registros mediante un boton hacia adelante, pero al querer hacerlo hacia atras me marca un error de que no puede, y me manda un COMexp o algo asi el tipo de error, cual creen que sea el problema?
Gracias

  Respuesta:  Federico Vidal
Yo como veo que sabes recuperar registros, te sugiero que los guardes en uno de las colecciones que te comento:

Puedes crear un objeto con los campos(ID, nombre, apellido) con sus propertys o métodos get y set y crear un array de ese objeto.
Meterlo en un collection:
Dim c as new collection

c.add(objCampos,objCampos.id) '<< así podrás recuperar ese objeto tan solo poniendo, ejem:

c("111").nombre

También puedes recurrir al típico hashtable, que es idéntico al collection, pero con algunas variantes, pero terminaras haciendo lo mismo

Y lo que te recomiendo a nivel de Autorrealización.
DataSet. Partiendo de la idea que tu tabla tiene 3 campos(id,nombre, apellidos)

Dim ds as new Dataset
dim dc as datacolumns

ds.Tables.Add("valores")
With ds.Tables("valores")
dc = .Columns.Add("id", GetType(Int32)) '<dc = .Columns.Add("nombre", GetType(String))
dc.maximunlenght = 10 '<< solo se le puede dar tamaño a los string
dc = .Columns.Add("Apellido", GetType(String))
dc.maximunlenght = 40
end with

'Listo nuestro dataset, ahora a llenarlo de cosas bonitas
dim o() as object = {2,"Fede","Vidal"}
ds.table(0).AddvaloresRow(o())

Y para recuperar los datos tienes muchas maneras, pero con esto ya tienes para empezar. A partir de aquí esto coser y cantar, te lo digo por experiencia, lo mas difícil es saber para que sirve y como hacerlo útil.
Saludos