Visual Basic - PROCEDIMIENTO ALMACENADO

Life is soft - evento anual de software empresarial
 
Vista:

PROCEDIMIENTO ALMACENADO

Publicado por anmaroso (29 intervenciones) el 02/08/2002 18:27:43
Alguien me puede informar sobre un error que me sale al ejecutar en una aplicación de visual basic, un procedimiento almacenado, basado en una consulta de actualización que funciona bien en access97, pero que al ejecutarlo en visual basic me dice que la operación debe usar una consulta actualizable. La conexión en con el proveedor M. Jet 4.00 OLE DB Provider.
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:PROCEDIMIENTO ALMACENADO

Publicado por Vic (141 intervenciones) el 02/08/2002 19:08:03
No se muy bien como estás haciendo la actualización, pero cuando defines una consulta en una base de datos, puede ser de solo lectura ( una SnapShot ), o de lectura y escritura ( una DynaSet, por ejemplo ).
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:PROCEDIMIENTO ALMACENADO

Publicado por anmaroso (29 intervenciones) el 02/08/2002 19:18:05
Pero en la base de datos si la ejecuto, si funciona y me actualiza bien.
Es en la aplicación de visual basic donde no funciona, si sería de lectura no funcionaría en la base de datos.
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:PROCEDIMIENTO ALMACENADO

Publicado por Vic (141 intervenciones) el 03/08/2002 23:58:44
Si la consulta está guardada en la base de datos, no puedo explicar porque te hace eso, pero lo que si puedes es generar una consulta nueva desde código, y eliminarla cuando no la necesites. Ahí va un ejemplo. Espero que te sirva:

Dim EspacioDeTrabajo As Workspace
Dim BaseDatos as DataBase
Dim Consulta as Recordset
Dim Dato as String

'Genera un espacio de trabajo
Set EspacioDeTrabajo = DBEngine.Workspaces(0)

'Abre la base de datos en ese espacio de trabajo
Set BaseDatos = EspacioDeTrabajo.OpenDatabase( "C:\Datos.mdb")

'Genera una consulta modificable formada por los nombres de clientes
Set Consulta = BaseDatos.OpenRecordset("SELECT Nombre FROM Clientes;", dbOpenDynaset)

'Genera una consulta de lectura formada por los nombres de clientes
Set Consulta = BaseDatos.OpenRecordset("SELECT Nombre FROM Clientes;", dbSnapShot)

'Para acceder a los datos:
Consulta.Movefirst
Datos=Consulta.Nombre

'Para cerrar la consulta:
Consulta.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

RE:PROCEDIMIENTO ALMACENADO

Publicado por anmaroso (29 intervenciones) el 06/08/2002 19:38:52
Ese tipo de consultas si que me funcionan, el problemas viene al ejecutar una consulta de actualización de datos de una tabla vinculada a una bas de datos dbf, que no funciona ni por código, ni por procedimiento almacenado, según el mensaje de error requiere de una consulta actualizable. Debe de ser un problema del controlador del servidos de datos, pues la consulta se ejecuta perfectamente en access97. Me han recomendado instalar el access2000, que no lo quería instalar porque había oido que daba muchos problemas con visual basic, total que lo he instalado y ahora la consulta no funciona ni al ejecutarla desde access2000. La verdad es que ya no sé ni por donde tirar. No sé si me podrías ayudar, de cualquier forma MUCHAS GRACIAS, por tus molestias.
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