6 de agosto de 2020 - Frederico Marinho

Configurar conexão do PHP com SQL Server no Windows 10

Recentemente fizemos um projeto onde foi preciso conectar um site desenvolvido com OctoberCMS em um database SQL Server do sistema ERP do cliente, que por sinal não tinha API. Tenso, mas muito mais comum do que se imagina. A ideia seria relacionar alguns dados do site com uma tabela de associados do sistema interno da empresa. Um desafio interessante e relativamente simples, mas nunca é demais documentar essas configurações, não é mesmo?

Por razões óbvias o driver de conexão do PHP com o SQL Server não vem instalado por padrão, então é necessário encontrar a DLL correta e habilitar a configuração no PHP. Para essa publicação vamos fazer a configuração no XAMPP, que é o servidor que usamos em produção no ambiente Windows.

Por exemplo, ao tentar abrir a página com o código de conexão ao SQL Server, recebemos o seguinte erro:

Could not find driver é o erro que aparece quando o driver de conexão não está instalado no PHP.

Importante falar duas coisas:

  • Esse post não visa explicar como instalar o XAMPP nem preparar o servidor Apache+PHP+MySQL no Windows, estou contando que isso já esteja resolvido e vamos partir do ponto em que você precisa conectar ao SQL Server, somente.
  • Não tenho intenções de explicar como fazer a conexão com o SQL Server. Como estamos usando OctoberCMS que é baseado em Laravel, isso já está resolvido, só precisamos informar os dados de conexão com o servidor e pronto.

Baixando o driver

  1. O primeiro passo é baixar as famosas DLLs, diretamente no site da Microsoft. O arquivo exato é esse daqui.
  2. Após efetuar o download, descompacte os arquivos e copie-os no diretório ext. Como estamos usando o XAMPP, esse arquivo fica localizado em c:\xampp\php\ext.
  3. Em seguida, edite o arquivo c:\xampp\php\php.ini inserindo o código abaixo no final do arquivo, para configurar o driver de conexão com o Banco de Dados:

Versão x86

extension=php_pdo_sqlsrv_72_ts_x86.dll
extension=php_sqlsrv_72_ts_x86.dll

Versão x64

extension=php_pdo_sqlsrv_72_ts_x64.dll
extension=php_sqlsrv_72_ts_x64.dll

Nota: É necessário presta atenção ao inserir essas linhas no php.ini, verificando a versão do PHP e se a instalação é do tipo x86 ou x64. Pois o ’73’ do arquivo php_pdo_sqlsrv_73_ts_x86.dll se refere se a versão do PHP. Se você utilizar o PHP 7.2 em Windows 64 bits por exemplo, insira os arquivos php_pdo_sqlsrv_72_ts_x64 e php_sqlsrv_72_ts_x64.

Agora é só reiniciar o servidor Apache no XAMPP para usar o driver.

Instalar o ODBC driver para SQL Server

Se sua máquina já tiver o Office instalado no Windows provavelmente esse passo não será necessário para você, já que o driver ODBC é instalado junto. Caso você utilize Libreoffice ou WPS por exemplo (inclusive indico demais o uso do WPS), talvez seja necessário. Mas é bem simples.

Faça o download dele de acordo com a versão do seu SO. Segue direto para a versão x64 e para x86. Agora é só instalar e ser feliz!


Atualização 13/08/2020

Driver SQL Server para PHP 7.0 e 5.6

Ao descompactar o driver acima, você vai perceber que existem DLLs para as versões 7.2, 7.3 e 7.4 do PHP, mas não existem drivers da versão 7.0 e 5.6 do PHP.

Nesse caso, faço o download das versões 32 e 40 do driver nesse link.

Mesmo processo. Executar o arquivo para descompactar na pasta php/ext.

0

Desenvolvimento web / PHP / SQL

Deixe um comentário

O seu endereço de e-mail não será publicado. Campos obrigatórios são marcados com *