IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

VBA Access Discussion :

[RDO] Convertir du RDO


Sujet :

VBA Access

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre émérite
    Inscrit en
    Décembre 2006
    Messages
    897
    Détails du profil
    Informations forums :
    Inscription : Décembre 2006
    Messages : 897
    Par défaut [RDO] Convertir du RDO
    Je recherche un moyen pour convertir du code RDO (Access 2) en ADO.

    Je n'ai pas trouvé de pages traitant du sujet (trop ancien !).

    Quelqu'un connait une source de renseignement ?

    Merci

  2. #2
    Membre chevronné
    Inscrit en
    Août 2007
    Messages
    360
    Détails du profil
    Informations forums :
    Inscription : Août 2007
    Messages : 360
    Par défaut
    Bonjour,

    Pourquoi veux-tu migrer en ADO et peux tu nous fournir un peu de code ?

    J'ai cherché un peu sur le net et trouvé ça :

    Comparaison RDO/ADO :

    Notez toutefois qu'ADO ne prend pas en charge actuellement toutes les fonctionnalités DAO. ADO inclut des fonctionnalités de type RDO pour interagir avec des sources de données OLE DB, additionnées de technologies à distance et DHTML.
    Lien :
    http://www.microsoft.com/france/msdn...cles/tch1.mspx

    Modèle RDO :

    Si vous êtes satisfait de votre application RDO, il n'est pas nécessaire d'en changer. Cependant, si vous devez étendre votre application pour accéder à d'autres types de données, vous pouvez envisager de la remanier pour utiliser ADO.
    Lien :
    http://msdn2.microsoft.com/fr-fr/library/bb469867.aspx

    Modèle ADO :

    Si vous envisagez d'évoluer vers ADO, il vous faudra juger si les caractéristiques et les avantages d'ADO sont suffisants pour justifier le coût de conversion du logiciel existant. Le code plus ancien écrit en RDO et DAO ne se convertira pas automatiquement en code ADO. Cependant, toutes les solutions que vous avez développées au préalable à l'aide d'autres stratégies d'accès aux données pourront finalement être mises en oeuvre à l'aide d'ADO. À long terme, vous devrez passer à ADO.
    Lien :
    http://www.microsoft.com/france/msdn...es/DA_ADO.mspx

    J'espère te faire avancer un peu...

    A+

  3. #3
    Membre émérite
    Inscrit en
    Décembre 2006
    Messages
    897
    Détails du profil
    Informations forums :
    Inscription : Décembre 2006
    Messages : 897
    Par défaut MErci
    Je cherche à convertir d'anciens codes.

    Je cherche surtout une liste des fonctions et de leurs fonctionnalités.

    Je dis quoi.
    En regardant vite fait cette page a ma préférence :
    http://www.microsoft.com/france/msdn...tartupRDO.mspx


    Merci.

  4. #4
    Membre chevronné
    Inscrit en
    Août 2007
    Messages
    360
    Détails du profil
    Informations forums :
    Inscription : Août 2007
    Messages : 360
    Par défaut
    Re,

    Voila ce que j'ai compris :

    RDO :

    Référence : Microsoft Remote Data Object 2.x ??

    Exemple (pris dans ta page) :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
     
    Sub ExempleExecute ()
     
    Dim cn As New rdoconnection
    Dim strSQL As String
     
    cn.CursorDriver = rdUseOdbc
    cn.Connect = "uid=sa;pwd=;server=MonServer;" _
     & "driver={SQL Server};" _
     & "database=pubs;dsn='';"
    cn.Establishconnection
     
    ' Il est nécessaire de retirer les commentaires sur les 2 lignes
    ' suivantes afin de pouvoir exécuter le même code plusieurs fois
    ' strSQL = "Drop Table TestData"
    ' cn.Execute strSQL
     
    ' Création d'une table dans la base Pubs
    strSQL = " CREATE TABLE TestData " _
     & " (ID integer identity NOT NULL, " _
     & " PName char(10) NULL," _
     & " State Char(2) NULL) " _
     & " CREATE UNIQUE INDEX " _
     & "TestDataIndex on TestData(ID)"
    cn.Execute strSQL
     
    ' Insertion d'enregistrements dans la table TestData
    strSQL = " Insert TestData (PName,State) Values('Virginie','CA')" _
     & " Insert TestData (PName,State) Values('Martine', 'WA')" _
     & " Insert TestData (PName,State) Values('David', 'CA')" _
     & " Insert TestData (PName,State) Values('Stéphane', 'CA')" _
     & " Insert TestData (PName,State) Values('Eric', 'TX')" _
     & " Insert TestData (PName,State) Values('Arnaud', 'TX')"
    cn.Execute strSQL
     
    Debug.Print cn.RowsAffected ' retourne 1 : 
    ' le dernier INSERT n'a affecté qu'une ligne
     
    cn.Close
     
    End Sub

    ADODB :

    Référence : Microsoft ActiveX Data Objects 2.x Library

    Modèle objet 2.1 :

    http://msdn.microsoft.com/library/fr...ensional10.asp

    Exemple :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
    44
    45
    46
    47
    48
    49
    50
    51
    52
    53
    54
    55
    56
    57
    58
    59
    60
    61
    62
    63
     
    Option Explicit
     
    Private oCnx                         As ADODB.Connection
    Public oFichier                      As Object
    Public oFichierATraiter              As Object
    Private wDateDeCreation              As Date
    Private wchaine                      As String
    Private strquery                     As String
    Private rst                          As ADODB.Recordset
     
    Public Function InitConnection() As Boolean
     
    On Error GoTo error
     
        Set oCnx = New ADODB.Connection
        oCnx.ConnectionString = "UID=sa;PWD=;DRIVER={SQL Server};Server=tartanpion\SQLEXPRESS;Database=trucmuche;"
        oCnx.Open
        InitConnection = True
        Exit Function
     
    error:
        InitConnection = False
        MsgBox "Erreur : " & vbCr & Err.Description, vbCritical
     
    End Function
     
    '============================================================================='
    ' FUNCTION : ExecSQL(...), Execute une requête SQL
    ' PARAMS :
    '   - query : Requête à exécuter
    '   - rst   : Variable permettant de stocker les enregistrements
    '============================================================================='
     
    Public Function ExecSQL(query As String, ByRef rst As ADODB.Recordset) As Boolean
     
    On Error GoTo ErrHandle
     
        Set rst = New ADODB.Recordset
        If (InitConnection()) Then
            'Initialisation du RecordSet
            If rst.State <> adStateClosed Then rst.Close
            'Ouvre une transaction pour ne pas à avoir à réaliser de commit en fin de traitement
            'oCnx.BeginTrans
            'Positionne le curseur côté client
            rst.CursorLocation = adUseClient
            'Vérifie que la connexion passée est bonne
            Set rst.ActiveConnection = oCnx
            'Exécute la requête
            rst.Open query, oCnx
            'Valide la transaction
            'oCnx.CommitTrans
            ExecSQL = True
            Exit Function
        Else
            'MsgBox "oups"
        End If
     
    ErrHandle:
      ExecSQL = False
      MsgBox "Erreur : " & vbCr & Err.Description, vbCritical
     
    End Function
    Je ne sais pas trop si je t'ai aidé...

    Je cherches un encore un exemple de fonctionnalités, comme ta page.

    A+

  5. #5
    Membre chevronné
    Inscrit en
    Août 2007
    Messages
    360
    Détails du profil
    Informations forums :
    Inscription : Août 2007
    Messages : 360
    Par défaut
    Re,

    Je pense que ça devrais pouvoir t'aider d'avantage :

    http://msdn2.microsoft.com/en-us/library/ms678086.aspx

    Je compatis à ta douleur pour la migration, lol...

    A+

  6. #6
    Membre chevronné
    Inscrit en
    Août 2007
    Messages
    360
    Détails du profil
    Informations forums :
    Inscription : Août 2007
    Messages : 360
    Par défaut
    RE,

    Ceci va certainement t'aider aussi :

    http://access.developpez.com/faq/?page=General#aideADO

    A+

Discussions similaires

  1. Connection RDO ACCESS
    Par foblar dans le forum VB 6 et antérieur
    Réponses: 1
    Dernier message: 22/08/2006, 21h43
  2. [VB][rdo] Strategie de suppression massive d'enregistrements
    Par Bicky dans le forum VB 6 et antérieur
    Réponses: 4
    Dernier message: 12/10/2005, 14h12
  3. Réponses: 4
    Dernier message: 06/06/2004, 12h07
  4. Réponses: 3
    Dernier message: 02/07/2003, 16h24
  5. convertir un nom long (win32) en format dos (8+3)
    Par kylekiller dans le forum Langage
    Réponses: 2
    Dernier message: 30/08/2002, 13h34

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo