Como conectar a uma base de dados mysql na web
Bom dia Pessoal, tenho uma base de da dos na web em my sql.. tenho o delpi 7 quero desenvolver um aplicativo para acessar essa base de dados, com qual componente acesso... sou iniciante em progamação
Indimbh
Curtidas 0
Respostas
Anderh
28/08/2006
Os componentes da biblioteca Zeos são muito bons.
http://sourceforge.net/projects/zeoslib
Uso os componentes da Zeos há 3 anos; se mostram bem eficientes e de fácil utilização. Recomendo.
http://sourceforge.net/projects/zeoslib
Uso os componentes da Zeos há 3 anos; se mostram bem eficientes e de fácil utilização. Recomendo.
GOSTEI 0
Indimbh
28/08/2006
Migão até tentei mas não consegui instalar esse componente
quanto tento instalar da o seguinte erro
Required package ´ZCommon5´ not found
vc tem um passo a passo de como instalar
quanto tento instalar da o seguinte erro
Required package ´ZCommon5´ not found
vc tem um passo a passo de como instalar
GOSTEI 0
Anderh
28/08/2006
Tem um install.txt que explica no arquivo:
WINDOWS INSTALL
1. Unpack the archive with components
2. Copy libmysql.dll and/or libpq.dll into your
Windows/System directory.
For PostgreSQL v7.2, copy libpq721.dll over libpq.dll
in windows/System directory and modify Zeos.inc to define
parameter PGSQL72.
3. Edit Zeos.inc file. You may set there you language,
maximum quantity of supported memo fields, etc.
4. Add to Delphi Library Path pathes to XXX, XXX\common, XXX\dbase,
where XXX - ZeosDBO directory.
5. Compile and install library in Delphi 3.0, 4.0, 5.0 and
C++ Builder 4.0 with the same version of dpk file.
Install dpk files in the next sequence:
ZCommonXXX, ZDbwareXXX, { ZMySqlXXX | ZPgSqlXXX | ZIbSqlXXX
| ZMsSqlXXX | ZOraSqlXXX }
LINUX INSTALL
1. Unpack the archive with components
2. Unpack XXX/kylix/desprop50562.tar.gz into kylix/lib directory
(Files dbdesign.dcp and std.dcp should be there).
For support PostgreSQL or MySql servers must be intalled
mysql-shared-xxx.rpm or postgresql-libs-xxx.rpm packages
or this servers must be compilled and installed with client shared
libraries.
3. Edit Zeos.inc file. You may set there you language,
maximum quantity of supported memo fields, etc.
4. Add to Kylix Library Path pathes to XXX, XXX\common, XXX\dbase,
where XXX - ZeosDBO directory.
5. Check pathes to shared libraries in ZLibXXSql.pas
6. Compile and install dpk files in the next sequence:
ZCommonK, ZDbwareK, { ZMySqlK | ZPgSqlK | ZIbSqlK}
WINDOWS INSTALL
1. Unpack the archive with components
2. Copy libmysql.dll and/or libpq.dll into your
Windows/System directory.
For PostgreSQL v7.2, copy libpq721.dll over libpq.dll
in windows/System directory and modify Zeos.inc to define
parameter PGSQL72.
3. Edit Zeos.inc file. You may set there you language,
maximum quantity of supported memo fields, etc.
4. Add to Delphi Library Path pathes to XXX, XXX\common, XXX\dbase,
where XXX - ZeosDBO directory.
5. Compile and install library in Delphi 3.0, 4.0, 5.0 and
C++ Builder 4.0 with the same version of dpk file.
Install dpk files in the next sequence:
ZCommonXXX, ZDbwareXXX, { ZMySqlXXX | ZPgSqlXXX | ZIbSqlXXX
| ZMsSqlXXX | ZOraSqlXXX }
LINUX INSTALL
1. Unpack the archive with components
2. Unpack XXX/kylix/desprop50562.tar.gz into kylix/lib directory
(Files dbdesign.dcp and std.dcp should be there).
For support PostgreSQL or MySql servers must be intalled
mysql-shared-xxx.rpm or postgresql-libs-xxx.rpm packages
or this servers must be compilled and installed with client shared
libraries.
3. Edit Zeos.inc file. You may set there you language,
maximum quantity of supported memo fields, etc.
4. Add to Kylix Library Path pathes to XXX, XXX\common, XXX\dbase,
where XXX - ZeosDBO directory.
5. Check pathes to shared libraries in ZLibXXSql.pas
6. Compile and install dpk files in the next sequence:
ZCommonK, ZDbwareK, { ZMySqlK | ZPgSqlK | ZIbSqlK}
GOSTEI 0
Asales
28/08/2006
Resolvi reavivar este tópico porque estou com um problema semelhante: trabalho em parceria com um programador de PHP que possui um sistema que acessa o banco de dados MySQL hospedado em um servidor.
Estou precisando desenvolver um módulo para meu sistema em Delphi que acesse a mesma base de dados e gostaria de ajuda para iniciar o desenvolvimento.
Estou utilizando:
- Delphi 2007
- MySQL 5 instalado
Dúvidas:
1 - Para acessar a base de dados na internet (no caso estaria, utilizando dbexpress) basta configurar o IP do servidor onde está hospedado a base de dados no hostname da conexão?
2 - A ZeosLib (que data de 2001) funciona sem problemas no Delphi 2007 para acessar o MySQL?
3 - Na opinião de quem já testou, qual o melhor (ou menos complicado): ZeosLib ou DBExpress?
4 - Com o programa desenvolvido e acessando a base de dados:
4.1 - Tenho que ter todo o MySQL instalado na máquina em que o programa estiver rodando para acessar a base de dados na internet? Ou somente as DLLs (libmysql.dll, dbxmysA30.dll) na pasta do programa garantem o acesso?
4.2 - Existe alguma forma ou componente que não necessite do MySQL instalado para acessar a base no servidor da internet?
Agradeço pelas ajuda.
Estou precisando desenvolver um módulo para meu sistema em Delphi que acesse a mesma base de dados e gostaria de ajuda para iniciar o desenvolvimento.
Estou utilizando:
- Delphi 2007
- MySQL 5 instalado
Dúvidas:
1 - Para acessar a base de dados na internet (no caso estaria, utilizando dbexpress) basta configurar o IP do servidor onde está hospedado a base de dados no hostname da conexão?
2 - A ZeosLib (que data de 2001) funciona sem problemas no Delphi 2007 para acessar o MySQL?
3 - Na opinião de quem já testou, qual o melhor (ou menos complicado): ZeosLib ou DBExpress?
4 - Com o programa desenvolvido e acessando a base de dados:
4.1 - Tenho que ter todo o MySQL instalado na máquina em que o programa estiver rodando para acessar a base de dados na internet? Ou somente as DLLs (libmysql.dll, dbxmysA30.dll) na pasta do programa garantem o acesso?
4.2 - Existe alguma forma ou componente que não necessite do MySQL instalado para acessar a base no servidor da internet?
Agradeço pelas ajuda.
GOSTEI 0
Asales
28/08/2006
Consegui solucionar minha dúvida nº 1: basta configurar para acessar o banco de dados no servidor da internet.
Agora a 4 (rodar o programa em outro computador sem o mysql) está um problema:
Tentei a seguinte configuração:
GetDriverFunc=getSQLDriverMYSQL
LibraryName=dbxmysA30.dll
VendorLib=libmySQL.dll
Dlls copiadas para C:\Windows
o programa chega a tentar a conexão mas retorna a seguinte resposta:
´ Cannot connect to MySQL Server on ´localhost´ (10061) ´
O hostname, user, password estão corretos pq ele acessa sem problema no computador em que desenvolvi e que possui o MySQL instalado mas no outro (que não possui o MySQL) não consigo acessar.
Tenho que configurar algum arquivo .ini?
P.S.: o programa demora mesmo para acessar e abrir o banco de dados ou depende da conexão?
Agora a 4 (rodar o programa em outro computador sem o mysql) está um problema:
Tentei a seguinte configuração:
GetDriverFunc=getSQLDriverMYSQL
LibraryName=dbxmysA30.dll
VendorLib=libmySQL.dll
Dlls copiadas para C:\Windows
o programa chega a tentar a conexão mas retorna a seguinte resposta:
´ Cannot connect to MySQL Server on ´localhost´ (10061) ´
O hostname, user, password estão corretos pq ele acessa sem problema no computador em que desenvolvi e que possui o MySQL instalado mas no outro (que não possui o MySQL) não consigo acessar.
Tenho que configurar algum arquivo .ini?
P.S.: o programa demora mesmo para acessar e abrir o banco de dados ou depende da conexão?
GOSTEI 0
L1p3
28/08/2006
Galera, eu uso BDS2006 e faço da seguinte maneira:
Utilizo componetes: ADOConnection, ADOQuery e DataSource.
Utilizo o drive MySQL ODBC 3.51 Driver (é so instalar, molesa tem no site do MySQL).
E ai ficou facil... é so ir no ODBC e criar uma fonte de dados linkado para o site que está o banco, exemplo:
fonte: minhafonte
host: meusite.com.br
user: meuuser
password: meupass
database: minhadb
ps.: um segredinho para evitar erro é marcar na opcoes advanced a linha: return matching rows.
Ai é so configurar o ADOConnection para utilizar essa fonte de dados que você criou e pronto.
O problema que eu estou é o seguinte, acessar uns 10mil registros quando você da um ´open´ na tabela, fica muito lento (demora uns 3 a 5 segundos).
Espero ter ajudado vocês, e espero que vocês tenham alguma boa noticia para mim hehe
Abraços,
Felipe
Utilizo componetes: ADOConnection, ADOQuery e DataSource.
Utilizo o drive MySQL ODBC 3.51 Driver (é so instalar, molesa tem no site do MySQL).
E ai ficou facil... é so ir no ODBC e criar uma fonte de dados linkado para o site que está o banco, exemplo:
fonte: minhafonte
host: meusite.com.br
user: meuuser
password: meupass
database: minhadb
ps.: um segredinho para evitar erro é marcar na opcoes advanced a linha: return matching rows.
Ai é so configurar o ADOConnection para utilizar essa fonte de dados que você criou e pronto.
O problema que eu estou é o seguinte, acessar uns 10mil registros quando você da um ´open´ na tabela, fica muito lento (demora uns 3 a 5 segundos).
Espero ter ajudado vocês, e espero que vocês tenham alguma boa noticia para mim hehe
Abraços,
Felipe
GOSTEI 0
Vitor Rodrigues
28/08/2006
Consegui solucionar minha dúvida nº 1: basta configurar para acessar o banco de dados no servidor da internet.
Agora a 4 (rodar o programa em outro computador sem o mysql) está um problema:
Tentei a seguinte configuração:
GetDriverFunc=getSQLDriverMYSQL
LibraryName=dbxmysA30.dll
VendorLib=libmySQL.dll
Dlls copiadas para C:\Windows
o programa chega a tentar a conexão mas retorna a seguinte resposta:
´ Cannot connect to MySQL Server on ´localhost´ (10061) ´
O hostname, user, password estão corretos pq ele acessa sem problema no computador em que desenvolvi e que possui o MySQL instalado mas no outro (que não possui o MySQL) não consigo acessar.
Tenho que configurar algum arquivo .ini?
P.S.: o programa demora mesmo para acessar e abrir o banco de dados ou depende da conexão?
asales
creio que seu erro esta em deixar o hostname como ´localhost´ mesmo estando em outro micro. O MySQL é um SGDB e não um banco de dados comum como um accesss da vida. Para voce acessar ele remotamente ou seja de um computador aonde ele naum está instalado você tem que em hostname referenciar o nome da maquina ao qual vai conectar ou o ip.
Tipo:
hostname := ´192.168.254.252´;
ou
hostname := ´mysqlserver´;
Creio que assim voce conseguirá com sucesso sua conexão.
GOSTEI 0
Vitor Rodrigues
28/08/2006
´ Cannot connect to MySQL Server on ´localhost´ (10061) ´
Sua mensagem de erro é bem explicita nisso quando diz que ele naum conseguiu conectar ao mysql server em localhost.
O mysql quando instalado e configurado ele roda sempre na porta 3306 por padrao. Logo a conexão deve ser feita apontando para o ip ou o hostname da maquina aonda ta instalado o mysql e usando a porta de conexão do mesmo. Muito cuidado ao rodar em windows xp pois o mesmo tem firewall e será necessário liberar a porta do mysql para que outros consigam conectar ao banco. Quanto ao mesmo assunto o usuário só conseguirá conectar remotamente ao banco de dados se essa permissão for dada no banco por quem administra o mesmo.
Resumindo:
Hostname ou IP do computado ao qual está hospedado o mysqlServer;
Porta de acesso do servidor mysqlServer;
Liberação de porta do mysqlServer no caso de Windows XP;
Permissão de acesso remoto para usuario do banco de dados.
Espero que tenha clareado ai suas idéias.
Sua mensagem de erro é bem explicita nisso quando diz que ele naum conseguiu conectar ao mysql server em localhost.
O mysql quando instalado e configurado ele roda sempre na porta 3306 por padrao. Logo a conexão deve ser feita apontando para o ip ou o hostname da maquina aonda ta instalado o mysql e usando a porta de conexão do mesmo. Muito cuidado ao rodar em windows xp pois o mesmo tem firewall e será necessário liberar a porta do mysql para que outros consigam conectar ao banco. Quanto ao mesmo assunto o usuário só conseguirá conectar remotamente ao banco de dados se essa permissão for dada no banco por quem administra o mesmo.
Resumindo:
Hostname ou IP do computado ao qual está hospedado o mysqlServer;
Porta de acesso do servidor mysqlServer;
Liberação de porta do mysqlServer no caso de Windows XP;
Permissão de acesso remoto para usuario do banco de dados.
Espero que tenha clareado ai suas idéias.
GOSTEI 0