4
« en: Viernes 24 de Enero de 2003, 21:55 »
Te da error porque la instruccion SQL que estas construyendo es una consulta de "accion" y no devuelve ningun registro y por lo tanto no puedes almacenarla en un recordset.
Para este tipo de instrucciones SQL (insert into,delete from,update .. set, etc.) que no devuelven ningun registro sino que efectuan cambios(por eso se llaman de accion) directamente en la/-s tabla/-s de la/-s base/-s de datos debes utilizar el objeto QUERYDEF viendo que estas utilizando una referencia a DAO.
Este objeto tiene muy basicamente una propiedad y un metodo que usaras muy frecuentemente. Bueno no me enrollo mas
lee:
Set MiDb = OpenDatabase(app.path & "Cosicas.mdb")
'La cadena SQL
'Importante: la tabla donde insertas los datos debe estar creada
'Ademas revisa la sentencia INSERT INTO que te adjunto
strSQL = "INTO MiTabla (id_título, título, tipo, id_editor, precio) " & _
VALUES ('BU9876', 'Crear páginas Web', 'negocios', '1389', '29.99')
' Si lo que quieres es crear una nueva tabla y anexar los datos que te interesen (aqui la tabla no debe existir)
'strSQL="SELECT * INTO NuevaTabla from TablaOrigen [where]"
Set qdf = MiDb.CreateQueryDef("MiQuery", strSQL)
qdf.Execute dbFailOnError ' que no insertara los datos en la tabla si se produce un error
Espero que te haya servido de ayuda Chao AinhoaB)