Ciao ragazzi
Il mio problemino è questo:
ho un recordset di Ado; eseguo l'apertura e ne verifico lo stato, dopodichè se vado a fare il .MoveLast o il .Recordcount mi va' in errore.
L'errore per il MoveLast è: 'Il set di righe non supporta operazioni di recupero all'indietro.'
Mentre per il Recordcount mi restituisce -1.
Il codice originario è questo:
ho provato a impostare la proprietà Cursortype su Static ma non ha funzionato lo stesso. Così ho scritto l'apertura diversamente e nonostante il cursortype Static l'errore non se ne è andato.codice:... strSql = "exec sp_fkeys '" + ElencoTabelle(indTab) + "'" adoRsSql = adoConn.Execute(strSql) ' verifica che il recordset sia aperto If adoRsSql.State = 1 Then If Not adoRsSql.EOF Then adoRsSql.MoveLast() adoRsSql.MoveFirst() PBar_Avanzamento.Maximum = adoRsSql.RecordCount ... End If End If
Ecco la seconda soluzione:
Il database è di SqlServer8 e la stored procedure "sp_fkeys" è di sistema. Restituisce le relazioni per la tabella indicata nel filtro della stringa sql.codice:... strSql = "exec sp_fkeys '" + ElencoTabelle(indTab) + "'" adoRsSql.Open(strSql, adoConn, ADODB.CursorTypeEnum.adOpenStatic)
Mi sapete dare qualche spiegazione?
Grazie a tutti
lady![]()



Rispondi quotando