| auteur : David Pedehourcq | Il y a en fait 2 moyens de récupérer les données d'une requette :
On les récupère sous forme de flux en lecture seule, en avant seulement, à l'aide d'un datareader.
On les stocke en mémoire dans une structure appellée dataset, facilitant ainsi l'ajout, la mise à jours et la suppression des données.
Que vous utilisiez l'une ou l'autre des méthodes, leduke à rédigé 2 excellents articles qui vous permettrons de récupérer les données résultants d'une requette.
|
lien : Les objets DataAdapter et Dataset dans ADO.NET
lien : ADO.NET : Connection, Command et DataReader
|
| auteur : David Pedehourcq | Voici un exemple ou l'on crée et on remplis un DataTable en code-behind
Dim tuple As DataRow
Dim table As new DataTable
Dim col1 As New DataColumn (" Col1 " , GetType (System. Double ))
Dim col2 As New DataColumn (" Col " , GetType (System. String ))
table. Columns . Add (col1)
table. Columns . Add (col2)
tuple = table. NewRow ()
tuple. Item (0) = 1
tuple. Item (1) = " Première tuple de mon datatable "
table. Rows . Add (tuple)
tuple = table. NewRow ()
tuple. Item (0) = 2
tuple. Item (1) = " deuxième tuple de mon datatable "
table. Rows . Add (tuple)
|
|
lien : Cours d'ADO.NET
|
| auteur : Morpheus |
Pour pouvoir exécuter une procédure stockée, vous devez utiliser un objet SqlCommand et indiquer à sa propriété CommandType que vous désirez utiliser une procédure stockée.
Dim cmd As SqlCommand = New SqlCommand ()
cmd. CommandType = CommandType. StoredProcedure
cmd. CommandText = " CustOrderHist "
|
|
| auteur : abelman |
Pour exécuter une requête contenant une quote simple, il faut utiliser les requêtes paramétrées.
On peut aussi faire plus simple en doublant les quotes avant d'exécuter la requête.
Dim sql As String = " SELECT * FROM pasta WHERE name = 'aujourd''hui' "
Dim name As String = " aujourd'hui "
sql = " SELECT * FROM pasta WHERE name = " + name. Replace (" ' " , " '' " )
|
|
| auteur : abelman |
Il est possible de passer des paramètres à des requêtes SQL.
Exemple avec SQL Server
Imports System. Data . SqlClient
Dim connectString As String = " database=equities;server=JV01;User ID=samfisher;pwd=echelon "
Dim connection As SqlConnection = New SqlConnection (connectString)
connection. Open ()
Dim command As SqlCommand = New SqlCommand (" SELECT * FROM usr_contract WHERE " + _
" ctr_ref = @contract AND ctr_exg_ref = @exg " , _
connection)
command. Parameters . Add (New SqlParameter (" @contract " , SqlDbType. VarChar , 5))
command. Parameters (" @contract " ). Value = " FTE "
command. Parameters . Add (New SqlParameter (" @exg " , SqlDbType. VarChar , 8))
command. Parameters (" @exg " ). Value = " SBF "
Dim reader As SqlDataReader = command. ExecuteReader ()
Dim row As Object ()
While reader. Read ()
If row Is Nothing Then
row = New Object (reader. FieldCount - 1) {}
End If
reader. GetValues (row)
For i As Integer = 0 To row. GetLength (0) - 1
If Not row (i) Is DBNull. Value Then
Console. Write (row (i))
Else
Console. Write (" NULL " )
End If
If i < row. GetUpperBound (0) Then
Console. Write (" | " )
End If
Next
Console. WriteLine ()
End While
reader. Close ()
connection. Close ()
|
|
| auteur : abelman |
On utilise la méthode ExecuteNonQuery de l'objet Command.
Exemple avec SqlServer
Dim connectString As String = " database=derivatives;server=SRV01;User ID=samfisher;pwd=echelon "
Dim connection As SqlConnection = new SqlConnection (connectString)
connection. Open ()
Dim command As SqlCommand = new SqlCommand (" UPDATE usr_contract set ctr_n = ctr_n + 1 " , connection)
Dim affectedrows As Integer = command. ExecuteNonQuery ()
Console. WriteLine (" Nombre de lignes affectées {0} " , affectedrows)
connection. Close ()
|
Consulter la page cours pour ADO.NET
|
| auteur : abelman |
On utilise les objets Command et DataReader.
Exemple avec SQL Server
Trace. Listeners . Add (New TextWriterTraceListener (Console. Out ))
Dim connectString As String = " database=test;server=SRV01;User ID=samfisher;pwd=echelon "
Dim connection As SqlConnection = New SqlConnection (connectString)
connection. Open ()
Dim command As SqlCommand = New SqlCommand (" SELECT * FROM usr_contract " , connection)
Dim reader As SqlDataReader = command. ExecuteReader
Dim row As Object () = Nothing
While reader. Read
If row Is Nothing Then
row = New Object (reader. FieldCount ) {}
End If
reader. GetValues (row)
Dim i As Integer = 0
While i < row. GetLength (0)
If Not row (i) Is Nothing AndAlso Not (row (i) Is DBNull. Value ) Then
Trace. Write (row (i). ToString ())
Else
Trace. Write (" NULL " )
End If
If i < row. GetUpperBound (0) Then
Trace. Write (" | " )
End If
i = i + 1
End While
Trace. Write (vbCrLf )
End While
reader. Close ()
connection. Close ()
|
|
Consultez les autres F.A.Q's
Les sources présentés sur cette pages sont libre de droits,
et vous pouvez les utiliser à votre convenance. Par contre cette page de présentation de ces sources constitue une oeuvre intellectuelle protégée par les droits d'auteurs.
Copyright ©2007
Developpez LLC. Tout droits réservés Developpez LLC.
Aucune reproduction, même partielle, ne peut être faite de ce site et de
l'ensemble de son contenu : textes, documents et images sans l'autorisation
expresse de Developpez LLC. Sinon vous encourez selon la loi jusqu'à 3 ans
de prison et jusqu'à 300 000 E de dommages et intérets.
Cette page est déposée à la SACD.
|