Vous ne trouvez pas de réponse à votre problème ? Alors posez la question dans le forum. Souvenez-vous qu'il n'y a jamais de question bête, mais rester dans l'ignorance parce que l'on n'ose pas poser une question, ça c'est une erreur !

Sujet : 'tite question sur une connexion access [ Archives Visual Basic / Bases de données ] (mell01)

lundi 13 juin 2005 à 16:59:40 | 'tite question sur une connexion access

mell01

Bonjour ,
voila j ai un pb: je vien de créer une connexion simple avec ma bd en utilisant ADODB, apparament la connexion fonctionne mais mon enregistrement est tjs vide
Si qql a une idée ca ferait plais,
merci merci


lundi 13 juin 2005 à 18:49:11 | Re : 'tite question sur une connexion access

greg38bj

j'aimerais bien t'aider, mais j'ai pas assez d'infos ...
si tu veux mail moi ton debut de projet à
greg38bj2005@free.fr

@ +

lundi 13 juin 2005 à 22:16:29 | Re : 'tite question sur une connexion access

ssmiling

Réponse acceptée !

salut

Copie ce code dans un nouveau module de classe, crée ton objet ... et récupère ton recordset en sortie !!

_______________________________________________________________

'Chaine de connexion à Access
Const StrCNN = "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=C:\tabase.mdb;user id=admin; password=;"

Dim CNN As ADODB.Connection 

'****************** ouverture de la connexion à l'initialisation de l'objet ****************

Private Sub Class_Initialize()
   
    On Error Resume Next                    '* prise en compte d'une erreur de connexion
   
    Set CNN = New ADODB.Connection          '* instanciation de la connexion
   
    CNN.ConnectionString = StrCNN           '* StrCNN variable publique définie plus haut
    CNN.Open                                '* ouverture de la connexion
   
    If Err.Number <> 0 Then
        MsgBox "Connexion à la base de données impossible" & vbCrLf & Err.Description, vbExclamation, "ERREUR DE CONNEXION"
    End If

End Sub


'******************* fermeture de la connexion à la destruction de l'objet ****************

Private Sub Class_Terminate()
   
    CNN.Close                               '* fermeture de la connexion
    Set CNN = Nothing                       '* destruction de la connexion

End Sub


'************** ICI TU METS TA FONCTION'********************************************************************************************


Public Function Ta_Fonction(tes_paramètres as parametres) As type_résultat

    Dim strSQL As String
    Dim cmd As New ADODB.Command
    Dim rs As New ADODB.Recordset
   
    On Error Resume Next
   
    cmd.ActiveConnection = CNN                '* affectation de la connexion à la                                                               commande
    cmd.CommandType = adCmdText        '* définition du type de commande
   
    rs.CursorLocation = adUseClient    '3      réglage du curseur
    rs.CursorType = adOpenStatic       '3
    rs.LockType = adLockReadOnly       '1
   
    strSQL = "SELECT tes_données FROM ta_table WHERE condition"
        
    cmd.CommandText = strSQL        '* définition de la requête
    rs.Open cmd                     'cmd en paramètre de l'ouverture du RS

'***********************************************
If Err.Number <> 0 Then                       '*   teste un éventuel plantage
    MsgBox cmd.CommandText & Err.Description  '*
End If                                        '*
'***********************************************

    If Not rs.EOF Then                 '* teste si le RS n'est pas vide
        rs.MoveFirst
        Ta_Fonction = rs(0)
    End If

    rs.Close
    Set rs = Nothing
    Set cmd = Nothing
   
End Function



Si tu as besoin de plus d'explication ... n'hésite pas, je me sers aussi pas mal des forums pour essayer de progresser :-)

 Private void Ssmiling


mardi 14 juin 2005 à 11:20:05 | Re : 'tite question sur une connexion access

mell01

merci ca marche nikel (m si j ai pas vraiment compris la différence...)

j ai juste un autre petit pb (si je peux abuser un peu), moi j ai une procédure et pas une fct ;en parametre je voulais lui passer une form mais imposible , je te met le code concerné tu pourra peut être me conseiller  :

Public Sub fournisseur(frm As Form)
...
If Not rs.EOF Then                
        rs.MoveFirst
        Dim i As Integer
        For i = 0 To rs.EOF
            frm.ComboF.AddItem (rs(i))
        Next
    End If
...
et pour l'appeler dans une feuille externe au module

Dim c As New cn
c.fournisseur (modifier)

voila si ta le courage...
merci a plus


mardi 14 juin 2005 à 22:04:37 | Re : 'tite question sur une connexion access

ssmiling

Salut Mell  :-)

heureux que ça t'ai servi ...

pour ta sub, faut savoir que ton rs.EOF il te renvoie un booléen, vrai ou faux, alors pas cool de le mettre dans le For.

Après, ton frm.comboF.additem(rs(i)) il te remplit une combo à une seule colonne, si tu en as plusieurs faut loucher vers la propriété .list(a,b) de ta combo, ou mieux un rs.getrows()

j'espère avoir répondu à tes attentes...

Bonne soirée (ou bonne journée selon l'heure à lakelle tu lis ce message)

 Private void Ssmiling




Cette discussion est classé dans : access, connexion, question, tite


Répondre à ce message

Sujets en rapport avec ce message

question sur la connexion a une requête access par vb [ par vinci05 ] vincent j'aurai besoin d'information sur la manière de procéder pour se connecter à une requête access par visual basic. merci d'avance problème de connexion à access via visual basic [ par vinci05 ] vincent bonjour j'ai un problème de connexion à access. j'ai mis le code suivant Dim Dat_base As Database Set Dat_base = DBEngine.OpenDatabase("P:\G URGENT connexion base de donnée access [ par le manche ] dans ma connexion que veut dire AdOpenstatic on ma dit c'est un curseur statique,dont toutes les modifications ne sont pas visibles,copie statique d'e Access vers CSV avec ADODB ? helppp ! [ par sky56253 ] Bonjour, Je suis confronté à un petit problème, et étant assez nouveau en VB, si vous pouviez m'aiguiller ce serait génial !! Je dois en fait, créer Access vers CSV avec ADODB ? helppp ! [ par sky56253 ] Bonjour, Je suis confronté à un petit problème, et étant assez nouveau en VB, si vous pouviez m'aiguiller ce serait génial !! Je dois en fait, créer Access vers CSV avec ADODB ? helppp ! [ par sky56253 ] Bonjour, Je suis confronté à un petit problème, et étant assez nouveau en VB, si vous pouviez m'aiguiller ce serait génial !! Je dois en fait, créer Access vers CSV avec ADODB ? helppp ! [ par sky56253 ] Bonjour, Je suis confronté à un petit problème, et étant assez nouveau en VB, si vous pouviez m'aiguiller ce serait génial !! Je dois en fait, créer Access vers CSV avec ADODB ? help !!! [ par sky56253 ] Bonjour, Je suis confronté à un petit problème, et étant assez nouveau en VB, si vous pouviez m'aiguiller ce serait génial !! Je dois en fait, créer Pb connexion Adodb sous access [ par ThePooh ] BonjourJe développe depuis peu sous vb.netJ'ai migrée un projet vb6 en vb.net pour en faire un service windowsMon soucis s'est que m'a connexion Adodb requetes parametrees access [ par Lenaik ] Salut,J'ai une question assez urgente. Je travaille en ce moment sur access pour mettre en place un systeme efficace pour la recherche de livres dans


Nos sponsors

Sondage...

CalendriCode

Décembre 2008
LMMJVSD
1234567
891011121314
15161718192021
22232425262728
293031    

Consulter la suite du CalendriCode

Appels d'offres

Téléchargements

Logiciels à télécharger sur le même thème :



Développement réalisé par Nicolas SOREL (Nix) avec l'aide de : Cyril DURAND et Emmanuel BAÏSE, Merci à Vincent pour ses précieux conseils
CodeS-SourceS.com© Toute reproduction même partielle est interdite sauf accord écrit du Webmaster
CodeS-SourceS.com© est une marque déposée tous droits réservés
Temps d'éxécution de la page : 0,343 sec

Google Coop CodeS-SourceS Google Coop CodeS-SourceS


Certaines images présentes sur le site (notament certains avatars) sont issues des collections IconShock, donc si vous souhaitez utiliser ces icons vous devez les acheter, ne les copiez pas et ne utilisez pas dans vos sites et applications sans les avoir commandé.