URGENTE: SERVIDOR COM ACESS

ESLEYSANCHES 07/06/2007 13:02:16
#220195
Não, não há necessidade de mudar todo o programa, se você utiliza ADO, basta alterar a STRING de conexão para MySQL como abaixo:

Driver={MySQL ODBC 3.51 Driver};Server=data.domain.com;Port=3306;Database=myDataBase;User=myUsername;Password=myPassword;Option=3;


E quanto as consultas não precisa mudar tbm pois o MySQL usa SQL também para consultas.

Quanto ao banco de dados, você perguntou como conerter para o MySQL certo ? Bem acima eu coloquei o link do programa, ele converte base de dados ACCESS para MySQL, abaixo segue ele novamente:


Caso já tenha uma base access esse vai te ajudar a converter para MySQL
http://superdownloads.uol.com.br/download/64/access-to-mysql/

Espero que te ajude !!
Abraços !!
ESLEYSANCHES 07/06/2007 13:03:20
#220197
Caso queira ver mais STRINGS de conexão visite o site abaixo:

http://www.connectionstrings.com/

T+
Abraços !!
USUARIO.EXCLUIDOS 07/06/2007 13:10:41
#220200
bom.. eu uso consultas desse tipo como segue abaixo

Set TBCidades = BancoDeDados.OpenRecordset("select * from Cidades where codigo_cidade=" & lblCod & "")
AtualizaFormulario


daria pra mudar de banco de dados sem precisar mudar isso?

ESLEYSANCHES 07/06/2007 13:56:08
#220201
Abaixo há um exemplo completo utilizando banco de dados MySQL, apenas mude conforme suas necessidades:


Dim CONEXAO, RS
Set CONEXAO = CreateObject("ADODB.Connection")
Set RS = CreateObject("ADODB.Recordset")

CONEXAO.open "Driver={MySQL ODBC 3.51 Driver};Server=200.189.82.82;Port=3306;Database=base_de_dados;User=root;Password=123456;Option=3;"

RS.Open "SELECT * FROM cidades WHERE codigo_cidade='" & lblCod.caption & "'", CONEXAO

'e para fazer a leitura normal, assim:
Msgbox(RS("codigo_cidade"))



Basicamente acima é uma conexão ADO, só que para não ficar abrindo conexão e o programa acabar ficando lento, declare em um form os seguintes códigos:


'Exemplo para não brir diversas conexões e deixar o programa ou servidor MySQL lento:
'ANTES Acesse a opção Projects->References e selecione a opção "Microsoft ActiveX Data Objects 2.1" para adicionar a Referencia ADO ao projeto

Public CONEXAO as New ADODB.Connection
Public RS as New ADODB.Recordset

Public Function CONECTA()

On error goto ERRO
CONEXAO.open "Driver={MySQL ODBC 3.51 Driver};Server=200.189.82.82;Port=3306;Database=base_de_dados;User=root;Password=123456;Option=3;"
exit function

'Caso ocorra erro venha para cá
ERRO:
MsgBox("Ocorreu um erro na conexão. Erro número " & err.number & " descrição: " & err.Description),vbcritical, "Erro na conexão"
End

End Function


Depois do módulo acima no inicio do primeiro formulario basta adicionar:

Call CONECTA

Se ocorrer algum erro o mesmo já é exibido e o programa é finalizado, caso não ocorra erro o programa continua normalmente. Depois para as consultas basta abrir o Recordset fazer as consultas puxar os dados e fechar para não ocorrer erro usando o exemplo:

RS.Open "sua consulta SQL aqui", CONEXAO

Espero que te ajude !!
Abraços !!
USUARIO.EXCLUIDOS 07/06/2007 18:34:15
#220213
Esley, fii ... Ela usa DAO ... laskou tudo !

Honestamente isto de fato acontece com alguns programas, escolhemos uma tecnologia e vamos esticando até onde é possivel.

Sugiro que inclusive antes de disponibilizar o sistema pela WEB substitua a tecnologia de acesso a dados de DAO para ADO.
Isto por si só vai permitir uma escolha mais ampla pois TODOS BDs aceitam ADO e os que eventualmnte também aceitarem DAO não tem recebido otimizações e nem atualizações neste tipo de conexão.

Sei que é dureza ter uma dúvida sair com mais 3 ou 4, mas quando fizer isto e estiver mais "atualizada" vai ficar mais fácil te ajudar.
ESLEYSANCHES 07/06/2007 21:23:43
#220231
Citação:

EMERSON_TADEU escreveu:
Esley, fii ... Ela usa DAO ... laskou tudo !

Honestamente isto de fato acontece com alguns programas, escolhemos uma tecnologia e vamos esticando até onde é possivel.

Sugiro que inclusive antes de disponibilizar o sistema pela WEB substitua a tecnologia de acesso a dados de DAO para ADO.
Isto por si só vai permitir uma escolha mais ampla pois TODOS BDs aceitam ADO e os que eventualmnte também aceitarem DAO não tem recebido otimizações e nem atualizações neste tipo de conexão.

Sei que é dureza ter uma dúvida sair com mais 3 ou 4, mas quando fizer isto e estiver mais atualizada vai ficar mais fácil te ajudar.



Laskou tudo ? rsrsrs, LASKOU, legal, nunca ouvi isso rsrs

pois é ... LASKOU (rsrs) mesmo. Ela teria qeu fazer uma migração para ADO e resumindo ... sim basicamente quase tudo do seu projeto seria alterado !!
USUARIO.EXCLUIDOS 07/06/2007 21:25:31
#220232
mas agora achu que vou ganhar um dinheirinho...depois quem sabe eu mudo.

hehe..

pois se nao vou levar muito tempo para publicar!!


MORDOR 07/06/2007 22:00:30
#220240
Citação:

LINY_FF escreveu:
mas agora achu que vou ganhar um dinheirinho...depois quem sabe eu mudo.

hehe..

pois se nao vou levar muito tempo para publicar!!




é, mas tome cuidado para não fechar o negócio e ser pega de surpresa, pois podem ocorrer diversos tipos de problemas ao passar a aplicação para Web, como uma simples degradação na performance até problemas mais graves. Por isso a importância de um programador levar em consideração a escalabilidade do projeto por mais simples que seja. Quando a migração de ambiente se faz necessária, ou você passa o aperto e incerteza da colega ou a faz de forma planejada e tranquila.
USUARIO.EXCLUIDOS 07/06/2007 22:17:05
#220244
acredito que depois de ganhar um dinheiro em cima do programa.. posso quem sabe começar a montar um grupo.. e quem sabe uma empresa..hehe


tipo, eu penso grande.. e achu que mesmo meu programa ser com banco em access ele pode dar muito sucessoo.. pois nao a concorrencia no mercado.

e por enquanto, sera pouco que precisarao de web para o controle da empresa;
USUARIO.EXCLUIDOS 12/06/2007 03:28:27
#220803
Aline, amiguinha ... estive preparando um material comparativo entre SQL Server X Access e lembrei de seu caso.
Embora eu soubesse de uma limitação do Access eu nunca tinha tentado aplicar uma solução assim como a sua e quero deixar claro que é IMPOSSIVEL vc fazer uma aplicação como planeja por que:

O cursor (processamento) das consultas SEMPRE será executado do lado do cliente pois o servidor funciona exclusivamente como file-server.
Isto implica no fato de que basicamente a qualquer select a tabela inteira envolvida e as junções utilizadas precisam percorrer a rede
[txt-color=#ff0000](WEB)[/txt-color] e serem executadas no micro solicitante, nem uma utilização ótima de indices salvam este desastre em caso de tabelas com grande volume de dados pois elas inteiras vão do mesmo jeito.
Imaginou o que vai acontecer quando tiver só 2 MB de registros e um colega quiser utilizar o sistema de modem 56 KBps ? .... 15 min de dowload para executar : "SELECT * FROM cliente WHERE id_cliente=1" (Não vem só o registro, vem a tabela inteira e filtra na máquina que solicita a query !!!)


Eskece isto que vc tava Pensando !!

Com servidor ASP funciona por que o .mdb fica na mesma máquina do IIS (serviço ASP) então não percorre dados pela rede !

Posso não ter resolvido seu caso, mas que deixei claro que esta tecnologia não vinga deixei !!

Artigo ACCESS X SQL SERVER
para outras limitações e maiores detalhes sobre o que expliquei.
Página 2 de 2 [20 registro(s)]
Tópico encerrado , respostas não são mais permitidas