cs_nicobou
Messages postés10Date d'inscriptionmercredi 11 octobre 2000StatutMembreDernière intervention 2 mai 2003
-
13 févr. 2002 à 14:24
FENETRES
Messages postés196Date d'inscriptionjeudi 15 juillet 2004StatutMembreDernière intervention14 avril 2009
-
26 oct. 2004 à 11:24
bonjour,
Je souhaiterai exécuter une requete stockée dans ma table access à partir d'une commande VB. Je n'ai pas trouvé d'exemple.
D'autre part, mon idée est de passer des parametres à ma requête.
Auriez vous un petit bout de code ?
pioubzh
Messages postés14Date d'inscriptionlundi 11 février 2002StatutMembreDernière intervention15 septembre 2007 13 févr. 2002 à 16:21
La solution que je te propose est la suivante (mais pas forcément la meilleur)
- dans ton 'Form' met un control 'DATA' qui est relier à ta base de Donnée Access.
- Ecrit ensuite le code suivant : DATA.DatabaseName.Execute SQL
- SQL étant le code SQL de ta requête développer avec Access.
Ainsi tu exécute ta requête à partir de VB. ATTENTION, cette requête doit être une requête d'action (Création table / Mettre à jours / Ajout / Supprimer).
Pour ce qui est de passer des paramètres voir l'exemple ci-dessous :
- Requête de base avec un paramètre fixe
SQL = " DELETE T_OF.Date_Ctrl FROM T_OF WHERE (((T_OF.Date_Ctrl)<#1/1/2002#));"
DATA.DatabaseName.Execute SQL
Pour pouvoir intervenir sur le paramètre :
PARAM = "1/1/2002"
SQL = " DELETE T_OF.Date_Ctrl FROM T_OF WHERE (((T_OF.Date_Ctrl)<#" & PRAM & "#));"
DATA.DatabaseName.Execute SQL
FENETRES
Messages postés196Date d'inscriptionjeudi 15 juillet 2004StatutMembreDernière intervention14 avril 2009 26 oct. 2004 à 11:20
Fenêtres
-----------------------------------------------------------------------------
voici un exemple pour ADO (AdoCnn est la connexion active)
la requête stockée "qryAjoutSession" en commentaire comprend 2 arguments en entrée. Elle est appelée par son nom comme une méthode !
----------------------------------------------------------------------
With AdoCnn
.BeginTrans
' * Pour mémoire, exécute la requête stockée :
'qryAjoutSession = "INSERT INTO tblSessions (txtUtilisateur, txtNomHote, txtAdresseIP, txtAdresseMac, IndexConfig)
' SELECT TOP 1 [Nom utilisateur ] AS Expr1, [Nom d'hôte] AS Expr2, [Adresse IP] AS Expr3, [Adresse MAC] AS Expr4, tblConfigurations.IndexConfig
' FROM tblHabitats INNER JOIN tblConfigurations ON tblHabitats.IndexHabitat = tblConfigurations.IndexHabitat
' WHERE (((tblHabitats.blnActif)=True) AND ((tblConfigurations.blnActive)=True))"
Call .qryAjoutSession(Session.name, HostSettings(0), HostSettings(1), Session.MACAddress)
SQL = "SELECT Last([IndexSession]) FROM tblSessions " & _
"HAVING ([txtAdresseMac] = '" & Session.MACAddress & "' AND [txtUtilisateur] = '" & Session.name & "')"
Set rstIndexSession = .Execute(SQL, 1, adCmdText)
.CommitTrans
End With
Vous n’avez pas trouvé la réponse que vous recherchez ?