Connessione ad un database MSDE in vbnet

mercoledì 16 febbraio 2005 - 13.27

trinity Profilo | Guru

Ragazzi di seguito vi posto un mi codice che utilizzo per la connessione ad un database MSDE, ovviamente non ho scritto le varie dichiarazioni....

db.ConnectionString = "Persist Security Info=False;Data Source=zeus;Initial Catalog=invoice;User ID=sa;Password=pippo"
db.Open()
If db.State.Open = ConnectionState.Open Then
'****controllo programma registrato****
cmd = New SqlCommand("SELECT id_pc FROM info_licenza", db)
dr = cmd.ExecuteReader
If dr.Read() Then
eseguo operazione
End If
dr.Close()
cmd.Connection.Close()
db.Close()


la mia domanda è la seguente: lasciando aperto il programma dopo aver eseguito il codice sopra indicato, la connessione al command e al database è chiusa, allora mi sapete dire perchè se vado sul tools che utilizzo per gestire in windows i database msde (il tools si chiama DbaMGR2k) ed eseguo una storedprocedure su sp_who in questo modo:

use invoice
go
exec sp_who

mi indica che sono aperte 3 connssioni, 1 in funzione ed è il comando della stored, l'altre 2 mi vengono generate dal mio codice del software e sono in stato di sleeping. Ma se io, coem avete visto dal primo codice postato, la connessione al db è stata chiusa come mai mi rimangono 2 utenze aperte e perchè si generano 2 utente anzichè 1?

Vi prego datemi una mano ed una soluzione alle mie domande

Ciao
Fabio

LeonDom Profilo | Senior Member

Ciao Trinity,
il problema è presente anche in MySQL4.1.8, infatti se controlli le connessioni da MySQLAdministrator troverai l'utente connesso con il tuo programma che è in modalità sleep anche se ti sei disconnesso ed hai chiuso la connessione, più due utenti root ad esempio se entri con root in MySQLAdministrator.
Se poi chiudi il tuo programma l'utente viene chiuso.
Dovrebbe funzionare così anche con MSDE...
MySQL ho utilizzato altri sistemi per ovviare a questa concomitanza, mentre per MSDE sei vincolato al fatto delle 5 connessioni simultanee. Potresti fare una prova se non l'hai già fatta, e connettere altri 2 pc per vedere che succede...
La cosa ha suscitato qualche perplessità anche a me... comunque...

Aspettiamo la risposta di Brainkiller... sicuramente ci spiegherà il perché capita questa cosa....

trinity Profilo | Guru

ok,attendiamo la risposta di David,.
Inoltre ti dico che il mio collega con lo stesso software ma su un altro pc si connette in rete al database e mi escono altre 2 connessione che si riferiscono a lui. Ma!!!!!!

Ciao
Fabio

LeonDom Profilo | Senior Member

Potresti provare a sovraccaricare, prova ad entrare da un altro pc ancora e vedi cosa succede se è veramente limitato...

trinity Profilo | Guru

ho fatto delle ricerche su internet e ho trovato che l'msde prò avere a carico fino ad 8 connessioni contemporanee, superato questo limite non si blocca ma tutti i comandi vengono accodati...io voglio solo sapere e farmi spiegare tecnicamente perchè mi succede che si aprono due connessioni nella stored quando io realmente ne faccio solo una.

ciao

LeonDom Profilo | Senior Member

Attendiamo David...

Brainkiller Profilo | Guru

Ciao Trinity,
non ho idea devo chiedere anche io.

ciao
david

trinity Profilo | Guru

Se riesci a sapere qualche notizia fammi sapere
ciao
Partecipa anche tu! Registrati!
Hai bisogno di aiuto ?
Perchè non ti registri subito?

Dopo esserti registrato potrai chiedere
aiuto sul nostro Forum oppure aiutare gli altri

Consulta le Stanze disponibili.

Registrati ora !
Copyright © dotNetHell.it 2002-2024
Running on Windows Server 2008 R2 Standard, SQL Server 2012 & ASP.NET 3.5