Pb requete MySQL avec VB.Net

Signaler
Messages postés
5
Date d'inscription
jeudi 10 juin 2004
Statut
Membre
Dernière intervention
10 février 2006
-
Messages postés
5
Date d'inscription
jeudi 10 juin 2004
Statut
Membre
Dernière intervention
10 février 2006
-
bonjour a tous,
je suis en train de développer un logiciel dans le cadre d'un projet universitaire en VB.Net.
voici ma situation :
j'ai une base de données MySQL, dans mon prog, la connection a la BD fonctionne sans pb.
mon problème est dans la requete que je veux exécuter sur cette base.

ds la variable r je mets la requete (comme vous pouvez le voir elle n'est pas très petite).
lorsque j'exécute le prog, j'ai l'erreur suivante :
"ERROR [23000] [MySQL][ODBC 3.51 Driver][mysqld-4.1.9-max]Erreur de syntaxe près de '' à la ligne 1"
a la ligne : data_adapt.Fill(dataset, "vehicule")

par contre, si je mets un requete simple (comme "select * from vehicule;"), ça fonctionne!

voici donc mon code :

connexion est un module qui me sert a la connection et a la deco de la BD MySQL
cnxLoc -> variable d'ouverture et fermeture de la connection

connexion.OuvrirConnexion()
Dim data_adapt As Microsoft.Data.Odbc.OdbcDataAdapter
Dim dataset As New DataSet()
Dim Matable As DataTable
Dim r As String
Dim d As Date
d = Me.date_location.Value.Date 'l'utilisateur selectionne une date

r = "select * from vehicule where permis like '" & Me.cmb_permis.Text & "' and plaque not in (select plaque from location where date < #" & d.Year & "/" & d.Month & "/" & d.Day & "# and dateretour > #" & d.Year & "/" & d.Month & "/" & d.Day & "#);"

data_adapt = New OdbcDataAdapter(r, connexion.cnxLoc)
connexion.FermerConnexion()
data_adapt.Fill(dataset, "vehicule")
Matable = dataset.Tables("vehicule")
Me.data_vehicule.DataSource = Matable
Me.data_vehicule.Refresh()

'fin extrait code

j'espère que vous pourriez m'aider a résoudre ce pb,
d'avance merci!!!

5 réponses

Messages postés
506
Date d'inscription
vendredi 30 juillet 2004
Statut
Membre
Dernière intervention
3 mars 2008
2
euh pourkoi tu fermes ta connexion avant de faire data_adapt.Fill(dataset, "vehicule") ???

Rollerman
Messages postés
5
Date d'inscription
jeudi 10 juin 2004
Statut
Membre
Dernière intervention
10 février 2006

j'ai utilisé ce code (modifié niveau driver bien sur) en stage sur une BD Access, et cela passait sans pb.

je vais essayer de fermer la connection après la recup des valeur ce soir.
Messages postés
5
Date d'inscription
jeudi 10 juin 2004
Statut
Membre
Dernière intervention
10 février 2006

c'est bon, j'ai trouvé le pb!

c'était le # de chaque cotés des dates, je les avais utilisé car sous access ils sont necessaires.
mais sous MySQL ils ne sont pas necessaire!
Messages postés
506
Date d'inscription
vendredi 30 juillet 2004
Statut
Membre
Dernière intervention
3 mars 2008
2
les # c une invention microsoft :)

Rollerman
Messages postés
5
Date d'inscription
jeudi 10 juin 2004
Statut
Membre
Dernière intervention
10 février 2006

oui, toujours a mettre son grain de sel où il faut pas...