Visual Basic - VBy cursores de sql

Life is soft - evento anual de software empresarial
 
Vista:

VBy cursores de sql

Publicado por Seth (11 intervenciones) el 11/04/2005 19:56:14
Hola que tal, tengo un problema con un cursor.

En la aplicación hago busquedas por medio de un cursor, el cual guardo en una variable tipo string, y despues mando la siguiente instruccion:

set rs = conn.Execute(ssql)

la consulta puede traer, por ejemplo, 10 registros y los tengo que vaciar en una listview. El problema es que al querer llenar la lista, me marca un error diciendo que: "La operacion no esta permitida si el objeto esta cerrado", y el error me lo marca cuando quiero hacer un rs.EOF.

Que puedo hacer? ...Ayudenme porfavor
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder

RE:VBy cursores de sql

Publicado por Christian (675 intervenciones) el 11/04/2005 20:03:32
rs.Open
Antes de:
set rs = conn.Execute(ssql)
Luego:
rs.Close
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

Aclaración del asunto

Publicado por Esteban (1144 intervenciones) el 11/04/2005 23:35:55
Tienes 3 formas de setear un recordset:
1. Set rs = new ADODB.Recordset
2. Set rs = CreateObject("ADODB.Recordset")
3. Set rs = conn.Execute(SQL), también puede usarse un command de ado

Cuando instancias un recordset de la forma 3 no hace falta abrir antes el recordset, pero el problema viene con la forma que abres el cursor.

La mejor práctica del caso es:
- Utilizar la forma de instanciamiento 1 ó 2.
- Indicar el tipo de cursor, que sea de cliente: rs.cursorlocation = 3 o adUseClient
- Luego abrir el recordset: rs.open SQL, conn.

Espero que con eso se te solucione el problema.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

RE:Aclaración del asunto

Publicado por Seth (1 intervención) el 12/04/2005 00:11:12
Gracias Christian.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar