Errore runtine DB

di il
5 risposte

Errore runtine DB

Buongiorno,
ho un form con due listbox con riferimento alla stessa tabella di un file mdb ma di due campi diversi (una ordinata con i record normalmente, l'altra ordinata senza avere dupilcati).
Nell'eseguire il programma in lettura va tutto bene, ma in scrittura mi da erro di run-time "3027", Database o oggetto in sola lettura.
Public Function ApriDB_DatabaseProgrammi()
On Error GoTo RigaErrore
Set DB = OpenDatabase(App.Path & "\DBPROGRAMMI.mdb", False, False, "; pwd=1234")
Set rs = DB.OpenRecordset("SELECT * FROM Programmi ORDER BY nomeprogramma") 'ordino i record
Set rs = DB.OpenRecordset("SELECT DISTINCT categoriaprogramma FROM Programmi") 'ordino i record senza duplicati
Exit Function
RigaErrore:
errormsg = MsgBox("Impossibile trovare programmus.mdb!", vbCritical, "Errore")
End
End Function

5 Risposte

  • Re: Errore runtine DB

    Il DISTINCT rende readonly il recordset. Quindi non puoi.

    E scrivere due Set rs uno di seguito all'altro non ha alcun senso perché il secondo sostituisce il primo.
  • Re: Errore runtine DB

    Ok..., ma come posso risolvere?
  • Re: Errore runtine DB

    Non so cosa devi risolvere
  • Re: Errore runtine DB

    Volevo un consiglio su come risolvere il problema in scrittura.
  • Re: Errore runtine DB

    Ma qual è il problema? Non hai mostrato codice in cui scrivi.

    Stai utilizzando VB6 a DAO, prodotti obsoleti che non si usano da decenni. Fra l'altro non li conosci affatto, neanche nelle loro basi e non riesci a spiegare cosa vuoi fare oltre al fatto che non segui neanche i consigli che ti si danno. E' un mix di problemi che non permette di darti molte indicazioni.

    Semplicemente non modifichi dati di un recordset derivato da una DISTINCT. Devi usare un altro tipo di recordset ma non si sa dove, come, in quale momento del programma devi modificare quei dati (quali dati)?? Che dirti ?
Devi accedere o registrarti per scrivere nel forum
5 risposte