Newsgroup: it.comp.www.asp
Titolo: Parametri per l'apertura del recordset

Salve a tutti,
vorrei sapere a cosa corrispondono i valori che vengono di solito indicati
al termine di un'istruzione di apertura del recordset, es:
rs.Open "SELECT ........... ", conn, 3, 3
a cosa corrispondono 3 e 3?
I valori cambiano a seconda che il record sia aperto in lettura o scrittura?
Altro dubbio:
le istruzioni del tipo rs.close e conn.close (dove rs e conn sono
rispettivamente il recordset e la connessione al database) sono necessarie o
superflue?
In un manuale ho visto aggiungere anche
set rs=nothing
set conn=nothing
sono necessarie?
Grazie.
--
Posted from 
intserver.pc.unicatt.it
 [193.205.43.243]
via Mailgate.ORG Server - 
http://www.mailgate.org


Inizio dall'ultima domanda: teoricamente se non inserisci queste istruzioni
dovrebbe essere il Server a cancellare queste risorse utilizzate dopo
qualche tempo. E' buona regola inserirle tu manualmente per essere sicuro(?)
di liberare immediatamente le risorse per le altre mansioni del server.
rs.Open "SELECT ........... ", conn, 3, 3
Gli ultimi due parametri sono il CursorType e il LockType.
Questi dati te li prendo pari pari a della documentazione che ho (scusa
eventuali errori: sono quasi le 2 di notte e le idee non sono più tanto
chiare ;-) )
Questi sono i valori del CursorType e il loro significato:
Cursore di Default (valore 0): definisce un cursore statico che permette
solo spostamente in avanti nel database e non tiene traccia dei record
aggiunti, cancellati o midificate in quel momento da altri utenti.
Cursore KeySet (valore 1): definisce un cursore che può spostarsi in avanti
e indietro nel database e può vedere le modifiche effettuate da altri utenti
in quel momento, ma non può vedere aggiunte o cancellazioni.
Cursori Dinamici (valore 2): definisce un cursore in grado di spostarsi in
avanti e indietro nel database e di vedere tutte le modifiche, cancellazioni
o aggiunte.
Cursori Statici (valore 3): definisce un cursore in grado di spostarsi in
avanti o indietro ma che non permette di vedere nessuna modifica.
Il LockType ha questi valori:
AdLockReadOnly (valore 1): i dati possono essere solo letti.
AdLockPessimistic (valore 2): i dati vengono bloccati alla prima modifica da
parte di un utente, e nessun altro è in grado di apporre modifiche finché
l'utente non termina le sue operazioni.
AdLockOptmistic (valore 3): viene creato un buffer temporaneo dove vengono
inserite le modifiche dell'utente, mentre il database originale viene
mantenuto intatto per gli accessi di altri utenti. Solo quando viene
lanciato il comando Update il buffer viene trasferito nel database.
Ciao!
Andrew

 >Cursore di Default (valore 0): definisce un cursore statico che permette
 >solo spostamente in avanti nel database e non tiene traccia dei record
 >aggiunti, cancellati o midificate in quel momento da altri utenti.
 >Cursore KeySet (valore 1): definisce un cursore che può spostarsi in avanti
 >e indietro nel database e può vedere le modifiche effettuate da altri utenti
 >in quel momento, ma non può vedere aggiunte o cancellazioni.
 >Cursori Dinamici (valore 2): definisce un cursore in grado di spostarsi in
 >avanti e indietro nel database e di vedere tutte le modifiche, cancellazioni
 >o aggiunte.
 >Cursori Statici (valore 3): definisce un cursore in grado di spostarsi in
 >avanti o indietro ma che non permette di vedere nessuna modifica.
Grazie per la risposta,
per quanto riguarda i cursori quale tipo viene utilizzato di solito?
In quali casi può essere utile la possibilità di spostarsi indietro nel 
database?
 >AdLockReadOnly (valore 1): i dati possono essere solo letti.
 >AdLockPessimistic (valore 2): i dati vengono bloccati alla prima modifica da
 >parte di un utente, e nessun altro è in grado di apporre modifiche finché
 >l'utente non termina le sue operazioni.
 >AdLockOptmistic (valore 3): viene creato un buffer temporaneo dove vengono
 >inserite le modifiche dell'utente, mentre il database originale viene
 >mantenuto intatto per gli accessi di altri utenti. Solo quando viene
 >lanciato il comando Update il buffer viene trasferito nel database.
Se è necessario scrivere su un database condiviso l'opzione migliore mi 
sembra "AdLockOptmistic ", quando potrebbe servire la "AdLockPessimistic"?
Grazie.
Eugenio.


Eugenio.
AdLockPessimistic può essere utile in aggiornamenti pesanti (cancelli,
modifichi o aggiungi moltissimi record), perché il metodo "AdLockOptmistic"
creerebbe un buffer in momoria che abbasserebbe le prestazioni del Server
(mi sembra di averlo letto da qualche parte) per occupazione di memoria e
altro (cosa che il pessimistic non fa anche se nessun utente potrà accedere
al database).
Spero di esserti stato utile!
Ciao!
Andrew

................
 >La possibilità di spostarsi indietro può essere utile in caso di
 >aggiornamenti particolari, ad esempio: lettura del record 34, scrivere il
 >cntenuto di questo record nel 35 e cancellazione del record 34 (è raro che
 >si abbia queste necessità).
Non equivale a cancellare il record 35?
 >AdLockPessimistic può essere utile in aggiornamenti pesanti (cancelli,
 >modifichi o aggiungi moltissimi record), perché il metodo "AdLockOptmistic"
 >creerebbe un buffer in momoria che abbasserebbe le prestazioni del Server
 >(mi sembra di averlo letto da qualche parte) per occupazione di memoria e
 >altro (cosa che il pessimistic non fa anche se nessun utente potrà accedere
 >al database).
 >Spero di esserti stato utile!
Sì, grazie 1000



Sě, mi sono accorto dopo della sciocchezza, era solo un esempio per farti
capire. Forse č meglio dire cosě: se effettui piů operazioni con piů di una
richiesta di record o modifica devi usare questo tipo di cursori.
;-)
Ciao!
Andrew