Comme j'ai galèré un bout de temps avant de comprendre comment on peut faire SIMPLEMENT des requètes SQL avec .NET, j'ai pensé que ces petits bouts de code pourraient intéresser du monde.
Source / Exemple :
Dim Da As New OleDb.OleDbDataAdapter()
Dim Cmd As New OleDb.OleDbCommand()
Dim Cnx As New OleDb.OleDbConnection("Provider=OraOLEDB.Oracle.1;Password=PWD;User ID=User;Data Source=src;")
Dim DtSeance As New DataTable()
Dim LaRequete As String
Da.SelectCommand = Cmd 'relation entre le DataAdapter et OleDbCommand
Cmd.Connection = Cnx ' relation entre OleDbCommand et OleDbConnection
LaRequete = "SELECT * FROM seance WHERE jour = to_date(" & Date.Today & ")"
Cmd.CommandText = LaRequete ' C'est pour l'exemple mais on peut mettre directement la requète ici ;)
Da.Fill(DtSeance) 'remplissage du DataTable
If (DtSeance.Rows.Count > 0) Then
txtTitre.Text = DtSeance.Rows(0).Item(0)
'Chaque tuple est choisi avec Rows(x)
'Chaque colonne est choisie avec Item(x)
End If
'Pour un INSERT ou un UPDATE
Cnx.Open() 'obligé d'ouvrir la connection
LaRequete = "UPDATE distribution SET idinscription = '" & sIdPersonne & "',numdossier = '" & sNoBadge & "',distribue = 'O',dateheuredist = sysdate, idsociete = '" & sIdSociete & "' WHERE codebarre = '" & sNoBillet & "'"
Cmd.CommandText = LaRequete
Cmd.ExecuteNonQuery() 'execute la requète sans retour, contrairement à ExecuteScalar()
Cnx.Close() 'ne pas oublier de la fermer...
Conclusion :
Voilà comme ça pas besoins de mettre de composants sur la page. Juste les zones de texte ou les tableaux.
On peut utiliser un DataGrid quand même. Il suffit de lui mettre en DataSource le nom de la DataTable.
Sinon on peut aussi utiliser ExecuteNonQuery() (ou Scalar) pour faire un SELECT mais ça n'a pas grande utilité.
Vous n'êtes pas encore membre ?
inscrivez-vous, c'est gratuit et ça prend moins d'une minute !
Les membres obtiennent plus de réponses que les utilisateurs anonymes.
Le fait d'être membre vous permet d'avoir un suivi détaillé de vos demandes et codes sources.
Le fait d'être membre vous permet d'avoir des options supplémentaires.