Requête SQL
Résolu
softlane
Messages postés
33
Date d'inscription
Statut
Membre
Dernière intervention
-
softlane Messages postés 33 Date d'inscription Statut Membre Dernière intervention -
softlane Messages postés 33 Date d'inscription Statut Membre Dernière intervention -
Bonjour,
Je développe une application en VB.net et lors de l'exécution, je reçois le message d'erreur suivant: "Type de données incompatible dans l'expression du critère" je voudrais savoir qu'est-ce qui pose problème.
Je signale que c'est une application de gestion des vacation et je souhaite remplir le datagrid à partir du nom de l'enseignant et de la date de vacation. cette date qui est comprise entre la valeur du DateTimePicker1 et celle du DateTimePicker2 présents sur le formulaire.
Voici la partie de code qui pose problème. (la ligne en gras et italique)
Private Sub ComboBox1_SelectedIndexChanged(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles ComboBox1.SelectedIndexChanged
'Chargement des données dans le datagrid
connexion.ConnectionString = "Provider= Microsoft.jet.OLEDB.4.0; Data Source=C:\Users\Cheick Adam DIABY\Documents\bdgestion.mdb"
connexion.Open()
'"SELECT * FROM Vacations,Enseignants where nom +' '+ prénoms='" & ComboBox1.SelectedItem & "' and Vacations.matricule= Enseignants.matricule"
Str = "SELECT * FROM Vacations,Enseignants where [nom] +' '+ [prénoms]= '" & ComboBox1.SelectedItem & "' and (date_vacation between '" & DateTimePicker1.Value & "' and '" & DateTimePicker2.Value & "' )and Vacations.matricule= Enseignants.matricule"
Dim da As New DataTable
Dim oLdbDataAdapter As New OleDbDataAdapter(Str, connexion)
oLdbDataAdapter.Fill(da)
DataGridView1.AutoGenerateColumns = True
DataGridView1.DataSource = da
DataGridView1.Refresh()
connexion.Close()
End Sub
Mon application marche a part ce problème.
merci de m'aider.
Je développe une application en VB.net et lors de l'exécution, je reçois le message d'erreur suivant: "Type de données incompatible dans l'expression du critère" je voudrais savoir qu'est-ce qui pose problème.
Je signale que c'est une application de gestion des vacation et je souhaite remplir le datagrid à partir du nom de l'enseignant et de la date de vacation. cette date qui est comprise entre la valeur du DateTimePicker1 et celle du DateTimePicker2 présents sur le formulaire.
Voici la partie de code qui pose problème. (la ligne en gras et italique)
Private Sub ComboBox1_SelectedIndexChanged(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles ComboBox1.SelectedIndexChanged
'Chargement des données dans le datagrid
connexion.ConnectionString = "Provider= Microsoft.jet.OLEDB.4.0; Data Source=C:\Users\Cheick Adam DIABY\Documents\bdgestion.mdb"
connexion.Open()
'"SELECT * FROM Vacations,Enseignants where nom +' '+ prénoms='" & ComboBox1.SelectedItem & "' and Vacations.matricule= Enseignants.matricule"
Str = "SELECT * FROM Vacations,Enseignants where [nom] +' '+ [prénoms]= '" & ComboBox1.SelectedItem & "' and (date_vacation between '" & DateTimePicker1.Value & "' and '" & DateTimePicker2.Value & "' )and Vacations.matricule= Enseignants.matricule"
Dim da As New DataTable
Dim oLdbDataAdapter As New OleDbDataAdapter(Str, connexion)
oLdbDataAdapter.Fill(da)
DataGridView1.AutoGenerateColumns = True
DataGridView1.DataSource = da
DataGridView1.Refresh()
connexion.Close()
End Sub
Mon application marche a part ce problème.
merci de m'aider.
A voir également:
- Requête SQL
- Logiciel sql - Télécharger - Bases de données
- Sql lister les tables ✓ - Forum Programmation
- Requête bloquée par le pare-feu applicatif claranet webfence ✓ - Forum Réseaux sociaux
- Jointure sql ✓ - Forum MySQL
- Erreur lors de l'envoi de la requête facebook - Forum Facebook
3 réponses
Bonjour
je ne connais pas grand chose en .net, mais ce ne serait pas [nom] &' ' & [prénoms] au lieu de [nom] +' '+ [prénoms] ?
La concaténation des chaîne, c'est plutôt & que +, je crois
je ne connais pas grand chose en .net, mais ce ne serait pas [nom] &' ' & [prénoms] au lieu de [nom] +' '+ [prénoms] ?
La concaténation des chaîne, c'est plutôt & que +, je crois
slt
'" & DateTimePicker2.Value & "' )and Vacations.matricule= Enseignants.matricule"
fait aussi attention à la separation du ) et du and sinon problème
cdlt.
'" & DateTimePicker2.Value & "' )and Vacations.matricule= Enseignants.matricule"
fait aussi attention à la separation du ) et du and sinon problème
cdlt.
Je tiens à vous remercier les gars. j'ai réussi à trouver une solution à mon problème et pour ceux que ça aiderait, voici le code qu'il fallait taper:
"SELECT * FROM Vacations,Enseignants where [nom] +' '+ [prénoms]= ' " & ComboBox1.SelectedItem & " ' and date_vacation between #" & DateTimePicker1.Value & "# and #" & DateTimePicker2.Value & "# and Vacations.matricule= Enseignants.matricule"
Comme quoi pour les dates, à la place des ' (côtes) il faut mettre des # (dièses)
Merci beaucoup pour votre contribution sans laquelle je n'y serai jamais arrivé.
"SELECT * FROM Vacations,Enseignants where [nom] +' '+ [prénoms]= ' " & ComboBox1.SelectedItem & " ' and date_vacation between #" & DateTimePicker1.Value & "# and #" & DateTimePicker2.Value & "# and Vacations.matricule= Enseignants.matricule"
Comme quoi pour les dates, à la place des ' (côtes) il faut mettre des # (dièses)
Merci beaucoup pour votre contribution sans laquelle je n'y serai jamais arrivé.