salve a tutti altro giorno altri problemi vorrei chiedervi
come faccio a lanciare più select contemporaneamente?
se non occorreva separarle da un ; e poi occorreva un comando ?
qualcuno sa aiutarmi?
![]()
salve a tutti altro giorno altri problemi vorrei chiedervi
come faccio a lanciare più select contemporaneamente?
se non occorreva separarle da un ; e poi occorreva un comando ?
qualcuno sa aiutarmi?
![]()
se intendi piu' select da passare al datadapter per riempire piu' tabelle in in colpo solo basta separare le select con un ;
es.
dim m_dap as new sqldatadapter("select * from ordini; select * from prodotti", m_conn)
Saluti a tutti
Riccardo
Purtroppo non mi funziona devo lanciare delle query come nel codice sottostante se stampo la query su SQlserver funziona ma se la provo nella pagina mi si ferma alla prima select qualcuno sa aiutarmi?
non miriconosce mVal,mVal2
-----------------------
dbLocale = New SqlClient.SqlConnection("server=(Local);uid=sa;pwd =;Initial Catalog=Orione_BenchMarking;")
cmTmp2 = New SqlClient.SqlCommand(sqlstr, dbLocale)
sql="select * from tab1 "
sql1="select avg(valori) as Mval from tab1 where valori >0"
sql2="select avg(valori2)as Mval2 from tab1 where valori2 >0"
sqlstr=sql & ";" & sql1 & ";" & sql2
daTmp = New SqlClient.SqlDataAdapter
cmTmp = New SqlClient.SqlCommand(sqlstr, dbLocale)
Try
dbLocale.Open()
drTmp = cmTmp.ExecuteReader()
drTmp.Read()
nome= drTmp("nome")
mVal= drTmp("mVal")
mVal2= drTmp("mVa2")
Catch objEx As Exception
Finally
drTmp.Close()
dbLocale.Close()
End Try
-------------------------
nel mio post parlavo di dataadapter. Nel tuo codice un dataadapter c'e' ma dopo avergli dato la vitaOriginariamente inviato da burrett
Purtroppo non mi funziona devo lanciare delle query come nel codice sottostante se stampo la query su SQlserver funziona ma se la provo nella pagina mi si ferma alla prima select qualcuno sa aiutarmi?non lo usi. Puoi farne anche a meno. Nel caso vuoi usare appunto un datareader devi utilizzare il metodo nextresult del datareader che appunto finito di ciclare sul primo set di risultati passa al secondo e cosi via.
Saluti a tutti
Riccardo
Salve a tutti scusate se rompo ma devo fini entro stasera e sono andato in pallone per una stronzata.
con questa sub devo far risolvere piu query e poi assegnare i valori a della label
però non mi riesce a d andare alla seconda query qualcuno sa spiegarmi l'errore?
grazie!!!!!!!11
'************************
Private Sub prova(ByVal MinIndice, ByVal MaxIndice)
Dim MInd(100) As String
Dim campo As New Label
Dim indice(100) As String
InMin = MinIndice
InMax = MaxIndice
dbLocale = New SqlClient.SqlConnection("server=(Local);uid=sa;pwd =;Initial Catalog=Orione_BenchMarking;")
cmTmp = New SqlClient.SqlCommand(sqlstr, dbLocale)
For i = InMin To InMax
sqlstr += "select "
sqlstr += "AVG(indice" & (i) & ") as MInd" & (i)
sqlstr += " FROM INDICIAZIENDA where indice" & i & " >0 and anno=" & anno & " and semestre=" & semestre & " and codice= '" & codice & "'"
If i <> InMax Then sqlstr += ";"
Next
daTmp = New SqlClient.SqlDataAdapter
cmTmp = New SqlClient.SqlCommand(sqlstr, dbLocale)
Try
dbLocale.Open()
drTmp = cmTmp.ExecuteReader()
drTmp.Read()
For i = InMin To InMax
Dim val As String = "MInd" & i
MRat(i) = drTmp(val)
drTmp.NextResult()
Next
Catch objEx As Exception
Finally
drTmp.Close()
dbLocale.Close()
End Try
....
...
...
end sub
'************************
Ho risolto mancava il ciclo per il datareader posto il codice giusto per chi può essere utile.
'*********
Private Sub prova(ByVal MinIndice, ByVal MaxIndice)
Dim MInd(100) As String
Dim campo As New Label
Dim indice(100) As String
InMin = MinIndice
InMax = MaxIndice
dbLocale = New SqlClient.SqlConnection("server=(Local);uid=sa;pwd =;Initial Catalog=Orione_BenchMarking;")
cmTmp = New SqlClient.SqlCommand(sqlstr, dbLocale)
For i = InMin To InMax
sqlstr += "select "
sqlstr += "AVG(indice" & (i) & ") as MInd" & (i)
sqlstr += " FROM INDICIAZIENDA where indice" & i & " >0 and anno=" & anno & " and semestre=" & semestre & " and codice= '" & codice & "'"
If i <> InMax Then sqlstr += ";"
Next
daTmp = New SqlClient.SqlDataAdapter
cmTmp = New SqlClient.SqlCommand(sqlstr, dbLocale)
'Try
dbLocale.Open()
drTmp = cmTmp.ExecuteReader()
For i = InMin To InMax
drTmp.Read()
Dim val As String = "MInd" & i
'If i > 1 Then drTmp.NextResult()
MInd(i) = convertDbl(drTmp(val))
drTmp.NextResult()
Next
'Catch objEx As Exception
'Finally
drTmp.Close()
dbLocale.Close()
' End Try
'**********