Prezados,
Para tentar copiar dados de uma views do mysql para uma tabela no access utilizando drive odbc, utilizei o seguinte exemplo (autor FreiNando):
DoCmd.Hourglass True
Dim Con As New ADODB.Connection
Dim rstADO As New ADODB.Recordset
Dim rstDao As DAO.Recordset
Con.ConnectionString = "DRIVER={MySQL ODBC 5.2 Unicode Driver};SERVER=mysql5.porta80.com.br;PORT=3306;" _
& ";DATABASE=coosaude;UID=coosaude;PASSWORD=coop14@@;OPTION=3;"
Con.Open
rstADO.Open "SELECT * FROM vw_resumo_ch_horaria WHERE dt_registro Between Date(Forms!PlanilhaTipoPontoData!DataInicial) and Date(Forms!PlanilhaTipoPontoData!DataFinal)and cd_lotacao =" & Forms!PlanilhaPesquisa.Vinculo & ", Con, adOpenStatic, adLockOptimistic"
Set rstDao = CurrentDb.OpenRecordset("SELECT * FROM vw_resumo_ch_horaria1")
Do Until rstADO.EOF
rstDao.AddNew
'copiar os campos, registo por registo
rstDao("dt_registro").Value = rstADO("dt_registro").Value
rstDao("de_setor").Value = rstADO("de_setor").Value
rstDao("nr_matricula").Value = rstADO("nr_matricula").Value
rstDao("cd_lotacao").Value = rstADO("cd_lotacao").Value
rstDao("cd_vinculo").Value = rstADO("cd_vinculo").Value
rstDao("Diruno").Value = rstADO("Diurno").Value
rstDao("Noturno").Value = rstADO("Noturno").Value
rstDao("Diurno FDS").Value = rstADO("Diurno FDS").Value
rstDao("Nourno FDS").Value = rstADO("Noturno FDS").Value
rstDao.Update
rstADO.MoveNext
Loop
Con.Close
DoCmd.Hourglass False
Entretanto o código não funciona e retorna a seguinte mensagem:
A conexão não pode ser usada para realizar essa operação. Ela está fechada ou é inválida nesse contexto.
Grata pela atenção!!!
Para tentar copiar dados de uma views do mysql para uma tabela no access utilizando drive odbc, utilizei o seguinte exemplo (autor FreiNando):
DoCmd.Hourglass True
Dim Con As New ADODB.Connection
Dim rstADO As New ADODB.Recordset
Dim rstDao As DAO.Recordset
Con.ConnectionString = "DRIVER={MySQL ODBC 5.2 Unicode Driver};SERVER=mysql5.porta80.com.br;PORT=3306;" _
& ";DATABASE=coosaude;UID=coosaude;PASSWORD=coop14@@;OPTION=3;"
Con.Open
rstADO.Open "SELECT * FROM vw_resumo_ch_horaria WHERE dt_registro Between Date(Forms!PlanilhaTipoPontoData!DataInicial) and Date(Forms!PlanilhaTipoPontoData!DataFinal)and cd_lotacao =" & Forms!PlanilhaPesquisa.Vinculo & ", Con, adOpenStatic, adLockOptimistic"
Set rstDao = CurrentDb.OpenRecordset("SELECT * FROM vw_resumo_ch_horaria1")
Do Until rstADO.EOF
rstDao.AddNew
'copiar os campos, registo por registo
rstDao("dt_registro").Value = rstADO("dt_registro").Value
rstDao("de_setor").Value = rstADO("de_setor").Value
rstDao("nr_matricula").Value = rstADO("nr_matricula").Value
rstDao("cd_lotacao").Value = rstADO("cd_lotacao").Value
rstDao("cd_vinculo").Value = rstADO("cd_vinculo").Value
rstDao("Diruno").Value = rstADO("Diurno").Value
rstDao("Noturno").Value = rstADO("Noturno").Value
rstDao("Diurno FDS").Value = rstADO("Diurno FDS").Value
rstDao("Nourno FDS").Value = rstADO("Noturno FDS").Value
rstDao.Update
rstADO.MoveNext
Loop
Con.Close
DoCmd.Hourglass False
Entretanto o código não funciona e retorna a seguinte mensagem:
A conexão não pode ser usada para realizar essa operação. Ela está fechada ou é inválida nesse contexto.
Grata pela atenção!!!