seoi_nage
Messages postés3Date d'inscriptiondimanche 11 juillet 2004StatutMembreDernière intervention20 août 2004
-
18 août 2004 à 00:17
seoi_nage
Messages postés3Date d'inscriptiondimanche 11 juillet 2004StatutMembreDernière intervention20 août 2004
-
20 août 2004 à 23:26
Bonjour,
J'ai réalisé un petit programme qui exécute des procédures stockées SQL server 2000 depuis vbnet, là pas de problème.
Par contre, j'aimerais savoir s'il y a un moyen de retourner les messages de l'analyseur de requêtes SQL server dans vbnet.
seoi_nage
Messages postés3Date d'inscriptiondimanche 11 juillet 2004StatutMembreDernière intervention20 août 2004 18 août 2004 à 18:47
Je te remercie sgrant d'avoir répondu à ma demande, mais ce n'est pas celle que j'attends. Toutefois ton astuce me servira surement dans d'autres circonstances.
Mea-culpa car ma question n'était peut être pas assez précise:
j'aimerais obtenir, lorsque j'exécute une procédure stockée via vbnet, le nombre de lignes affectées à l'action des SELECT, INSERT...qui se trouvent dans la procédure (sans modifier les procédures stockées).
Exemple pour une procédure stockée ou il y aurait deux INSERT à l'intérieur et après l'exécution de cette dernière dans l'anlyseur de requête, on voit dans la partie message :
seoi_nage
Messages postés3Date d'inscriptiondimanche 11 juillet 2004StatutMembreDernière intervention20 août 2004 20 août 2004 à 23:26
MERCI sg de me consacrer une partie de ton temps...
J'ai un peu près trouvé ce que je voulais sans toucher aux procédures stockées. Ci-dessous une solution .net
C'est avec : nbAffect = sComm.ExecuteNonQuery()
que j'arrive à retourner le nombre de lignes affectées. Le seul problème si j'ai plusieurs INSERT,UPDATE...il me retourne le total c'est déjà pas mal mais j'aurais aimé qu'il me retourne le détail
voici ma solution, elle est surement loin dêtre parfaite mais je commence juste à mettre le nez dans .net. Si quelqu'un à une meilleur solution je reste ouverte...
Private Sub Connecte()
Dim sConn As New SqlClient.SqlConnection
Dim sComm As New SqlClient.SqlCommand
Dim chBase As String
Dim chLog As String
Dim chMdp As String
Dim chServeur As String
Dim nbAffect As Int32
Dim i As Integer
If nbAffect < 1 Then
txtResul.Text = "Précédure exécutée !" &vbCrLf&vbCrLf & _
"Aucune(s) ligne(s) affectée(s) par cette procédure"
Else
txtResul.Text = "Opération réussie !" & vbCrLf & vbCrLf & _
nbAffect & " ligne(s) affectée(s)"
End If
Cursor = Cursors.Default
sConn.Close()
Catch sEcep As SqlClient.SqlException
For i = 0 To sEcep.Errors.Count - 1
MessageBox.Show("Index #" &i&ControlChars.NewLine & _
"Error: " & sEcep.Errors(i).ToString() &controlChars.NewLine, "Erreur connexion", MessageBoxButtons.OK, MessageBoxIcon.Error)
Next i
Cursor = Cursors.Default
sConn.Close()
Exit Sub
End Try