Depois de procurar muito pra saber como conectar o MySQL 5 ao Delphi 7, encontrei no fórum da Devmedia uma resposta a esta dúvida, resolvi lapidar e transformá-lo em um artigo, pois creio que seja uma dúvida de vários desenvolvedores. Como todos nós sabemos os componentes da DBExpress
no Delphi 7 somente suporta até o MySQL 4.x, devemos então baixar uma dll que
nos servirá para esta conexão. Este artigo leva em consideração que você tenha instalado
o MySQL 5 em seu computador. Se acaso não estiver baixe-o
clicando aqui.
1. Faça o download do driver aqui.
Descompacte este arquivos e copie o arquivo dbxopenmysql50.dll para a pasta "C:\Arquivos de programas\Borland\Delphi7\Bin\".
2. Abra o arquivo dbxdrivers.ini localizado na pasta "C:\Arquivos de programas\Arquivos comuns\Borland Shared\DBExpress" com
o editor de sua preferência. Altere as seguinte linhas.
a) Na seção [Installed Drivers] adicione a seguinte linha.
MySQL50=1
b) E logo após esta seção adicione o seguinte conteúdo:
[MySQL50]
GetDriverFunc=getSQLDriverMYSQL50
LibraryName=dbxopenmysql50.dll
VendorLib=libmysql.dll
HostName=ServerName
Database=DBNAME
User_Name=user
Password=password
BlobSize=-1
ErrorResourceFile=
LocaleCode=0000
Salve e feche o arquivo.
3. Copie o arquivo libmySQL.dll localizando em "C:\Arquivos de programas\MySQL\MySQL Server 5.0\bin" para a pasta
"C:\Windows".
4. Abra o Delphi 7 e adicione uma SQLConection(DBExpress), SQLQuery(DBExpress), DataSetProvider(Data Access),
ClientDataSet(Data Access) e DataSource(Data Access).
Faça a ligacação com o banco de dados. Clique duplo no SQLConection, clique em add, selecione MySQL50 e de um nome a sua
conexão e OK, configure os parâmetros Hostname, Database, User e Password. De um ok nesta janela e altere a propriedade
LoginPrompt para False e Connected para True. Sua conexão estará feita, caso de erro revise os passos anteriores.
Ligue o SQLQuery ao SQLConection e digite na propriedade SQL.
select * from nome_da_tabela
Configure o DataSetProvider ao SqlQuery, o ClientDataset ao Provider e o DataSource ao ClientDataSet, de um duplo clique no
ClientDataSet e de um Ctrl + F para adicionar os campos agora você já estará podendo trabalhar com o MySQL 5 no Delphi 7.
Uma coisa curiosa que eu notei e que se o componente utilizado for SQLDataSet ao invés de um SQLQuery o mesmo só fará a
conexão com o MySQL 5 se a propriedade CommandType for uma ctQuery, se for ctTable ela listará todas as tabela do banco
porém ao tentar adicionar os campos no mesmo ele mostrará a seguinte menssagem "Incorrect DataBase Name", creio eu que seja
devido a própria estrutura do MySQL que não permite tal conexão. Espero ter ajudado.
Primeiramente gostaria de agredecer a Deus por poder escrever este artigo e depois ao fórum da Devmedia, pois foi através dele que tive a inspiração pra escrever este artigo.
Um Grande abraço e bom Desenvolvimento para todos ;)
Qualquer dúvida entre em contato comigo