Transferer données Oracle vers table access

Résolu
Bonjour,

Voici mon problème,

j'ai une table vide sous acess nommée TEST avec pour champs ID ; LIBELLE

indemne pour une table Oracle sauf que celle ci est remplie...

Je voulais savoir comment fait-on pour transférer les données de ma table Oracle vers ma table access...

Merci
Configuration: Windows 2000
Internet Explorer 6.0

2 réponses

  1. Deux étapes:

    Primo, attacher la table Oracle (Ca doit marcher avec comme type ODBC Database) et ensuite une requête Ajout qui copie les donnée sde ta table attachée à ta table Access!
    0
    1. Coucou
      désolé du retard, pou répondre, voila ce que j'ai fait, ça marche ...

      Public Function transfertOracle_test()
      Dim connect As ADODB.Connection ' connect = crée connection vers base oracle
      Dim Commande As ADODB.Command 'commande = effectue commende sur la base
      Dim rst As DAO.Recordset, rst_test As ADODB.Recordset ' rst_test = recordset pour base Oracle
      ' DAO = Recordset pour access, ADODB = recordset pour Oracle
      Dim code As String, code_precedent As String, code_pgc As String
      Dim code_frais As String, marque As String
      Dim position As Integer, nboccurence As Integer
      Set db = CurrentDb
      
      Set connect = New ADODB.Connection ' créer connection sur oracle
      
      connect.Open "DSI_TEST", "DSI_TEST", "DSI_TEST"
      'ouvre connection
      connect.CursorLocation = adUseClient
      
      
      
      Set Commande = New ADODB.Command ' créer sur access  ce qui permet de faire des commandes sur oracle
      Commande.CommandType = adCmdText
      ' la commande sera en format texte
      
      Set Commande.ActiveConnection = connect
      ' la connection de la commande est la connection connect
      Commande.CommandText = "delete from TEST_EMILIE" ' suppresion des données dans la table oracle
      ' ordre sql donné
      Commande.Execute
      
      
      
      '________________________________________________________
      'insere données d'une table access vers une table oracle I
      '________________________________________________________I
      
      Set rst = db.OpenRecordset("select * FROM TEST_EMILIE")
      ' je selectionne les enregistrements de la table access
      Do While Not rst.EOF ' je fais une boucle sur les enregistrement de la table access
      
      Commande.CommandText = "insert into TEST_EMILIE(ID,LIBELLE) values (" & rst!id & ",'" & rst!LIBELLE & "')"
      'j'insere dans la table oracle
      Commande.Execute
      rst.MoveNext
      Loop
      Set rst = Nothing
      
      
      'Mise à jour dans la table oracle ( facultatif)
      'je supprime dans la table access si mise a jours et dans la oracle puis réinsersion dans la table access
      db.Execute "delete * from TEST_EMILIE"
      Commande.CommandText = "update TEST_EMILIE set LIBELLE='OYE' WHERE ID='1'"
      Commande.Execute
      Commande.CommandText = "insert into TEST_EMILIE(ID,LIBELLE) values ('45','BUENAS')"
      Commande.Execute
      
      '________________________________________________________
      'insere données d'une table oracle vers une table access I
      '________________________________________________________I
      
      'ATTENTION : pour requete oracle : utiliser : "commande.comandtext =" puis "commande.Execute"
      
      
      Commande.CommandText = "select * from TEST_EMILIE"
      'je selectionne dans la table oracle
      Set rst2 = Commande.Execute
      
      
      Do While Not rst2.EOF ' je fais une boucle sur tout les enregistrements de la table oracle
      db.Execute "insert into TEST_EMILIE(ID,LIBELLE) values (" & rst2!id & ",'" & rst2!LIBELLE & "')"
      'j'insere dans la table access
      rst2.MoveNext
      Loop
      Set rst2 = Nothing
      
      
      End Function
      1