MaximoAccess

Caro Usuário, antes de postar pela primeira vez, leia as regras do fórum.

https://www.maximoaccess.com/t48-regras-do-forum

Obrigado

Administração


Participe do fórum, é rápido e fácil

MaximoAccess

Caro Usuário, antes de postar pela primeira vez, leia as regras do fórum.

https://www.maximoaccess.com/t48-regras-do-forum

Obrigado

Administração

MaximoAccess

Gostaria de reagir a esta mensagem? Crie uma conta em poucos cliques ou inicie sessão para continuar.

Dicas Ms Access, Exemplos Ms Access, Codigos VBA Ms Access, SQL Ms Access


2 participantes

    Conectando em uma Base Oracle e acrescentando dados a uma tabela

    avatar
    efgomes
    Novato
    Novato


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 16
    Registrado : 15/12/2011

    Conectando em uma Base Oracle e acrescentando dados a uma tabela Empty Conectando em uma Base Oracle e acrescentando dados a uma tabela

    Mensagem  efgomes 6/3/2018, 15:53

    Pessoal, boa tarde!

    Aqui no trabalho, eu fiz criei um Banco de Dados Access onde conecto em uma Base Oracle (com a ajuda da internet, é claro) e, estou tentando preencher uma tabela, nesse mesmo banco, com os dados provenientes do Banco de dados Oracle.
    O problema é o seguinte. Eu até conecto normalmente e acrescento dados a tabela, mas, isso é feito de um a um. Ou seja, se a consulta "retornar" 1000 registros, vou ter que "rodar" a Função igualmente 1000 vezes.
    Alguém pode me ajudar? Vou postar o código:



    Public Function Teste()

    Dim BancoDados As DAO.Database
    Dim RSteste As DAO.Recordset

    Set BancoDados = CurrentDb()
    Set RSteste = BancoDados.OpenRecordset("Tabela1", dbOpenDynaset)


    Dim strCon
     
    strCon = "Driver={Microsoft ODBC for Oracle};" & _
                "CONNECTSTRING=(DESCRIPTION=" & _
                "(ADDRESS=(PROTOCOL=TCP)" & _
                "(HOST=150.164.93.144)(PORT=1521))" & _
                "(CONNECT_DATA=(SID=sml)));uid=consulta;pwd=consulta;"
       
       Dim oCon As ADODB.Connection
       Set oCon = CreateObject("ADODB.Connection")
       Dim oRs As ADODB.Recordset
       Set oRs = CreateObject("ADODB.Recordset")
       oCon.Open strCon
       Set oRs = oCon.Execute("SELECT * FROM atendime")
       oRs.MoveFirst
         
     
    RSteste.AddNew
           
               RSteste("campo1") = oRs(0).Value
               RSteste("campo2") = oRs(1).Value

       oCon.Close
       Set oRs = Nothing
       set oCon = Nothing
               
    End Function
    good guy
    good guy
    Developer
    Developer


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 1304
    Registrado : 05/02/2010

    Conectando em uma Base Oracle e acrescentando dados a uma tabela Empty Conectando em uma Base Oracle e acrescentando dados a uma tabela

    Mensagem  good guy 6/3/2018, 19:50

    Olá gomes,

    Não trabalho com a biblioteca ADO mas se eu entendi bem o que você deseja é incluir uma tabela do ORACLE com 1000 registros no Access. Neste caso você tem que trabalhar com ADO para estabelecer uma conexão, mas a parte do SQL eu tenho o seguinte em DAO. Tente adaptar:

    Código:

    Private Sub cmdinserir_Click()
    Dim db As DAO.Database
    Dim rs As DAO.Recordset

    Set db = OpenRecordset("SuaTabela", dbOpenTable)

    CurrentDb.Execute " INSERT INTO SuaTabela1 " _
    & "SELECT * " _
    & "FROM SuaTabela2

        db.Close

        Set db = Nothing
        DoCmd.SetWarnings False
    End Sub

      Data/hora atual: 31/10/2024, 23:47