Executer une requete sql sous VB (urgent)

Neo Bahamut Messages postés 16 Date d'inscription mardi 30 août 2005 Statut Membre Dernière intervention 27 septembre 2005 - 20 sept. 2005 à 10:42
Yuki59500 Messages postés 5 Date d'inscription mardi 15 janvier 2008 Statut Membre Dernière intervention 15 janvier 2008 - 15 janv. 2008 à 10:51
Bonjour a tous je souhaiterai avoir le code pour executer une requete sql sous VB.

Mon projet consiste à faire une base de données pour reserver un
camion! Les conditions sont que je ne dois en aucun cas ecrire sur ma
table (T_Location), mais creer une requete qui met a jours la table. De
plus si une date est deja prise il faut qu'il y est un message
d'erreur!! merci d'avance

25 réponses

Neo Bahamut Messages postés 16 Date d'inscription mardi 30 août 2005 Statut Membre Dernière intervention 27 septembre 2005
27 sept. 2005 à 14:06
Oui mais dans ma requete ca donne quoi??
0
PCPT Messages postés 13272 Date d'inscription lundi 13 décembre 2004 Statut Membre Dernière intervention 3 février 2018 47
27 sept. 2005 à 14:44
ummm...


<HR>
Dim DatD As String, DatF As String, ReqSql As String
DatD = Format(DateDebut, "MM\DD\YYYY")
DatF = Format(DateFin, "MM\DD\YYYY")
ReqSql = "SELECT T_Location.DateDebutReservation, T_Location.DateFinReservation " & _
"FROM T_Location " & _
"WHERE (T_Location.DateDebutReservation >= " & DatD & ")" & _
"AND (T_Location.DateDebutReservation <= " & DatF & ")" & _
"AND (T_Location.DateFinReservation >= " & DatD & ")" & _
"AND (T_Location.DateFinReservation <= " & DatF & ")"

<HR>

mais à mon avis, le problème ne vient pas du Format ...
(ps : je ne connais toujours pas plus VBA)

PCPT
0
PCPT Messages postés 13272 Date d'inscription lundi 13 décembre 2004 Statut Membre Dernière intervention 3 février 2018 47
27 sept. 2005 à 14:45
woups, j'ai oublié un espace devant chaque AND
0
Neo Bahamut Messages postés 16 Date d'inscription mardi 30 août 2005 Statut Membre Dernière intervention 27 septembre 2005
27 sept. 2005 à 15:27
Voila le code que j'ai!!





Option Compare Database

Option Explicit









Private Sub Commande16_Click()





Dim cnn As New ADODB.Connection, Requete As New ADODB.Recordset, RequeteMaj As New ADODB.Recordset





cnn.ConnectionString =
"Provider=Microsoft.Jet.OLEDB.4.0;Data
Source=C:\Travail\BaseDeDonnees\ReservationCamion.mdb"



cnn.Open



DateDebut = Format(DateDebut, "MM/DD/YYYY")

DateFin = Format(DateFin, "MM/DD/YYYY")





Requete.Open "SELECT
T_Location.DateDebutReservation, T_Location.DateFinReservation FROM
T_Location WHERE (((T_Location.DateDebutReservation) Between #" &
DateDebut & "# And #" & DateFin & "#) AND
((T_Location.DateFinReservation) Between #" & DateDebut & "#
And #" & DateFin & "#));", , cnn, adOpenDynamic,
adLockOptimistic





If Requete.BOF True And Requete.EOF True Then



MsgBox ("Reservation validé!!")

'executer la requete de mise a jour'



Else



Requete.MoveFirst



Do While Requete.EOF = False



Requete.MoveNext



Loop



Requete.Close



If Requete.RecordCount <> 0 Then



MsgBox ("Une reservation a deja été faite à cette date!!")

'affichage de la liste de reservation'

'retour au formulaire de saisie'

Else



MsgBox ("Reservation validé!!")

'executer la requete de mise a jour'



End If



End If







cnn.Close

End Sub



D'ou pourrait venir le probleme???
0

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

Posez votre question
Yuki59500 Messages postés 5 Date d'inscription mardi 15 janvier 2008 Statut Membre Dernière intervention 15 janvier 2008
15 janv. 2008 à 10:51
Salut, je vois pas pourquoi tu utilises un recordset qui pourrait être en BOF et EOF en même temps, celà voudrait dire que ta table contiendra uniquement un seul enregistrement.

De plus, les # ne servent pas à ta requête. Ensuite, le cnn.Open comporte des options supplémentaires à activer comme le "adCmdText", ...

Remplace aussi ton "Do While [...] Loop" par un "While [...] Wend" sinon tu vas t'exposer à des erreurs ou alors remplace leLoop par "Loop Until Requete.EOF". Si tu fais ainsi, enlève le "While Requete.EOF"

Après, je ne vois pas comment je pourrais t'aider plus...

Yuki vous souhaite d'être aussi chanceux qu'un Ecaflip, aussi fort qu'un Iop et aussi ponctuel qu'un Xelor
0
Rejoignez-nous