Appeler une requete access par vb

cs_nicobou Messages postés 10 Date d'inscription mercredi 11 octobre 2000 Statut Membre Dernière intervention 2 mai 2003 - 13 févr. 2002 à 14:24
FENETRES Messages postés 196 Date d'inscription jeudi 15 juillet 2004 Statut Membre Dernière intervention 14 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 ?

Merci :big)

5 réponses

pioubzh Messages postés 14 Date d'inscription lundi 11 février 2002 Statut Membre Dernière intervention 15 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

Bon courage.
0
pioubzh Messages postés 14 Date d'inscription lundi 11 février 2002 Statut Membre Dernière intervention 15 septembre 2007
13 févr. 2002 à 21:24
Une erreur s'est glissée dans ma réponse précédente.

En effet ce n'est pas : DATA.DatabaseName.Execute SQL

MAIS

DATA.Database.Execute SQL

Désolé !!!!! A+ ;-)
0
cs_nicobou Messages postés 10 Date d'inscription mercredi 11 octobre 2000 Statut Membre Dernière intervention 2 mai 2003
18 févr. 2002 à 12:11
Merci c'est sympa
A+ [:-$]
0
FENETRES Messages postés 196 Date d'inscription jeudi 15 juillet 2004 Statut Membre Dernière intervention 14 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
0

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

Posez votre question
FENETRES Messages postés 196 Date d'inscription jeudi 15 juillet 2004 Statut Membre Dernière intervention 14 avril 2009
26 oct. 2004 à 11:24
Fenêtres
----------------------------------
Err. de frappe : "qryAjoutSession" commprend 4 arguments en entrée
0
Rejoignez-nous