Pb requete MySQL avec VB.Net

fred_59 Messages postés 5 Date d'inscription jeudi 10 juin 2004 Statut Membre Dernière intervention 10 février 2006 - 8 févr. 2006 à 15:08
fred_59 Messages postés 5 Date d'inscription jeudi 10 juin 2004 Statut Membre Dernière intervention 10 février 2006 - 10 févr. 2006 à 20:44
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

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

Rollerman
0
fred_59 Messages postés 5 Date d'inscription jeudi 10 juin 2004 Statut Membre Dernière intervention 10 février 2006
9 févr. 2006 à 13:47
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.
0
fred_59 Messages postés 5 Date d'inscription jeudi 10 juin 2004 Statut Membre Dernière intervention 10 février 2006
9 févr. 2006 à 18:39
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!
0
olixelle Messages postés 506 Date d'inscription vendredi 30 juillet 2004 Statut Membre Dernière intervention 3 mars 2008 2
9 févr. 2006 à 19:11
les # c une invention microsoft :)

Rollerman
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
fred_59 Messages postés 5 Date d'inscription jeudi 10 juin 2004 Statut Membre Dernière intervention 10 février 2006
10 févr. 2006 à 20:44
oui, toujours a mettre son grain de sel où il faut pas...
0
Rejoignez-nous