VB_ACCESS_REMOTO

FERRAZ 06/11/2013 09:46:04
#430781
Marcelo, tudo bem.

Viu esta é minha conecxão em um form main para um banco access;


Option Explicit
Global Cnn As ADODB.Connection
Global rs As ADODB.Recordset
Global Fechar As Boolean
Private Sub Main()
[ô]===============================================================================================
[ô]Aqui eu uso um form main no projeto e nele eu trato as variaveis de conecxao com o banco de dados.
[ô]Logo em seguida eu torno a criar as variaveis que fazem as manipulacoes no bando de dados.
[ô]===============================================================================================
Dim ConectaAccess As String

Load MDINMEng
MDINMEng.Show
DoEvents

Set Cnn = New ADODB.Connection

Set Cnn = CreateObject([Ô]ADODB.Connection[Ô])
ConectaAccess = [Ô]Driver={Microsoft Access Driver (*.mdb)};Dbq=\\192.168.0.29\C\BdNM\BdSuapePE.mdb;Uid=Administrador; Pwd=306442[Ô]
[ô]ConectaAccess = [Ô]Driver={Microsoft Access Driver (*.mdb)};Dbq=C:\BdNM\BdSuapePE.mdb;Uid=Administrador; Pwd=306442[Ô]
Cnn.Open ConectaAccess

Set rs = New ADODB.Recordset
Cnn.CursorLocation = adUseClient
rs.CursorType = adOpenDynamic
rs.LockType = adLockOptimistic
[ô]=====================================================================================
End Sub

Aqui é como eu trato o longin dos usuários;

Private Sub Form_Load()
[ô]===============================================================================================
[ô]Aqui eu uso um form main no projeto e nele eu trato as variaveis de conecxao com o banco de dados.
[ô]Logo em seguida eu torno a criar as variaveis que fazem as manipulacoes no bando de dados.
[ô]===============================================================================================

Dim ConectaAccess As String

Load MDINMEng
MDINMEng.Show
DoEvents

Set Cnn = New ADODB.Connection

Set Cnn = CreateObject([Ô]ADODB.Connection[Ô])
ConectaAccess = [Ô]Driver={Microsoft Access Driver (*.mdb)};Dbq=\\192.168.0.29\C\BdNM\BdSuapePE.mdb;Uid=Administrador; Pwd=306442[Ô]
[ô]ConectaAccess = [Ô]Driver={Microsoft Access Driver (*.mdb)};Dbq=C:\BdNM\BdSuapePE.mdb;Uid=Administrador; Pwd=306442[Ô]
Cnn.Open ConectaAccess

Set rs = New ADODB.Recordset
Cnn.CursorLocation = adUseServer
rs.CursorType = adOpenDynamic
rs.LockType = adLockOptimistic

Dim SQL As String

SQL = [Ô]SELECT * FROM TbUsuario[Ô]
Set rs = Cnn.Execute(SQL)

rs.MoveFirst
Do While Not rs.EOF
CmbUser.AddItem rs!Nome
CmbUser.ItemData(CmbUser.NewIndex) = rs!Registro
rs.MoveNext
Loop
End Sub

Eu visitei o site da(o) Oracle e baixei veja;

. mysql-5.6.14-win32

. mysql-connector-odbc-5.2.6-win32

Favor existe uma possibilidade de importar minhas tabelas direto do access para o mysql, eu já tentei fazer isto e não conseguir, talvez por falta de experiência, é possível ? eu quero hospedar meu banco para fazer os testes remotos, estou querendo ver como vai se comportar o banco nas núvens, digo em servidor online.
MARCELO.TREZE 06/11/2013 12:30:59
#430795
colega primeiramente você fez correto em baixar a ultima versão do conector, porém a oracle ainda está ajustando este conector e alguns casos ele tem gerado problemas, então baixe o odbc driver 5.1.13 não haverá muita diferença.

http://dev.mysql.com/downloads/connector/odbc/5.1.html#downloads

a string de conexão só muda aqui

ConectaAccess = [Ô]Driver={Microsoft Access Driver (*.mdb)};Dbq=\\192.168.0.29\C\BdNM\BdSuapePE.mdb;Uid=Administrador; Pwd=306442[Ô]


ConectaMysql = [Ô]DRIVER={MySQL ODBC 5.1 DRIVER};Server=192.168.0.29;Port=3306;Database=Nome_do_Banco;UID=Administrador;PWD=sua_senha;Option=3;[Ô]
Cnn.Open ConectaMysql

quanto a migrar seus dados, eu confesso que procurei e não achei nada que fizesse isso (pega o banco do jeito que está no Access e transfere para o MYSQL), então fiz o seguinte criei o banco no mysql com os campos compativeis, criei um form com duas conexoes uma com o access e outra com o mysql.

neste form coloquei um combo (onde eu selecionava a tabela) um MSFLexGrid e dois botoes (Listar access e Salvar Mysql)

então funcionou assim eu seleciona a tabela no combo (lembrando que no mysql eu criei um banco exatamente igual ao access ou seja os mesmo nomes de tabelas e campos) esta seleção servia tanto para o access quanto para o mysql, então criei uma query que listava os dados de todas as colunas da do access no flexgrid, ai basta eu clicar no botão salvar e ja ia pro mysql.

veja bem quando eu fiz isso fiz meio na pressa, rs mas isso pode ser feito automatizando o processo.


FERRAZ 06/11/2013 13:15:02
#430798
Marcelo, ok,

obrigado pela orientação no drive. Viu eu vou fazendo as tabelas na mão mesmo, isso vai me ajudar a ficar mais amigo do mysql e seu trabalho em conectar access e mysql adorei, agora eu vou hospedar o banco quando eu deixar ele redondo, eu pergunto aqui no site agente pode hospedar o banco mysql para o que eu quero, sem problemas ou você teria outra idéia.

fico grato.
FERRAZ 07/11/2013 17:53:03
#430865
Marcelo e a todos obrigado.

Em um futuro próximo falaremos novamente, pois acho que agora tenho muito trabalho pela frente.
Página 2 de 2 [14 registro(s)]
Tópico encerrado , respostas não são mais permitidas