Como conectar no SQL Server utilizando o PHP (Xampp) e o driver PDO no Windows

Como conectar no SQL Server utilizando o PHP (Xampp) e o driver PDO no Windows
3 (60%) 2 votos

Olá pessoal!
Tudo certinho ?

Neste post, eu gostaria de demonstrar como conectar no SQL Server utilizando o PHP (Xampp) e o driver PDO no Windows. Muitas pessoas acabam passando por dificuldades para a instalação e configuração dos drivers, devido a pequenos detalhes técnicos que acabam não sendo observados e impossibilitam a conexão entre o PHP e o banco de dados SQL Server.

O primeiro passo para conseguir essa conexão é baixar o Microsoft® ODBC Driver 13.1 for SQL Server® para a sua máquina e realizar a instalação do driver.

O próximo passo é visualizar as informações do seu ambiente. Para isso, crie um arquivo chamado phpinfo.php na raiz do seu servidor web PHP (o diretório padrão é C:\xampp\htdocs), com o conteúdo abaixo:

Após visualizar esse arquivo no seu navegador web (http://localhost/phpinfo.php), você deverá observar uma tela como essa:

Neste tela, precisamos identificar as seguintes variáveis de ambiente:

  • Versão do PHP (no caso do exemplo, 7.1.1)
  • Arquitetura do PHP (no caso do exemplo, x86)
  • Localização do arquivo de configuração (php.ini)
  • Verificar se versão da compilação do PHP é TS (Thread-safe) ou NTS (Non Thread-safe) (no caso do exemplo, é TS)

Após identificar essas informações, vamos agora baixar o Microsoft Drivers for PHP for SQL Server, de acordo com a sua versão do PHP:

Relação entre versão do driver e versão do PHP

Versão do DriverVersão do PHPDownload do driver
4.3PHP 7.0 e PHP 7.1Baixar
4.0PHP 7.0Baixar
3.2PHP 5.6.4+ ou PHP 5.5.16+ ou PHP 5.4.32Baixar
3.1PHP 5.5.16+ ou PHP 5.4.32Baixar
3.0PHP 5.4.32 ou PHP 5.3.0Baixar
2.0PHP 5.3.0 ou PHP 5.2.4 ou PHP 5.2.13Baixar

Relação entre versão do driver e versão do driver ODBC

Versão do DriverVersão do Driver ODBC Driver ou SQL Server Native Client
4.3Microsoft ODBC Driver 11 for SQL Server
ou Microsoft ODBC Driver 13.1 for SQL Server
4.0Microsoft ODBC Driver 11 for SQL Server
ou Microsoft ODBC Driver 13 for SQL Server
3.2 ou 3.1Microsoft ODBC Driver 11 for SQL Server
3.0SQL Server 2012 feature pack
2.0Microsoft SQL Server 2008 R2 Native Client 32 bits (X86)
ou Microsoft SQL Server 2008 R2 Native Client 64 bits (x64)

Relação entre versão do driver e versão do banco de dados

Versão do DriverVersão do Banco de Dados
4.3SQL Server 2008 R2 e acima
4.0SQL Server 2008 e acima
3.1SQL Server 2008 e acima
2.0 e 3.0SQL Server 2005 e acima

Relação entre versão do driver e versão do Windows

Versão do DriverVersão do Sistema Operacional
4.3Windows Server 2012
Windows Server 2012 R2
Windows Server 2016
Windows 8
Windows 8.1
Windows 10
Ubuntu 15.10 (64-bit)
Ubuntu 16.04 (64-bit)
Debian 8 (64-bit)
Red Hat Enterprise Linux 7 (64-bit)
Mac OS Sierra (64-bit)
Mac OS El Capitan (64-bit)
4.0Windows Server 2008 SP2
Windows Server 2008 R2 SP1
Windows Server 2012
Windows Server 2012 R2
Windows Vista SP2
Windows 7 SP1
Windows 8
Windows 8.1
Windows 10
Ubuntu 15.04 (64-bit)
Ubuntu 16.04 (64-bit)
Red Hat Enterprise Linux 7 (64-bit)
3.2 e 3.1Windows Server 2008 R2 SP1
Windows Vista SP2
Windows Server 2008 SP2
Windows 7 SP1
Windows Server 2012
Windows Server 2012 R2
Windows 8
Windows 8.1
3.0Windows Server 2008 R2 SP1
Windows Vista SP2
Windows Server 2008 SP2
Windows 7 SP1
2.0Windows Server 2003 Service Pack 1
Windows XP Service Pack 3
Windows Vista Service Pack 1 or later
Windows Server 2008
Windows Server 2008 R2
Windows 7

Após identificar a versão correta do driver de acordo com a sua versão do PHP, SQL Server e Sistema Operacional, baixe o driver indicado e escolha uma pasta para extrair os arquivos durante a instalação.

Após isso, copie todos os arquivos que foram instalados para o diretório php\ext na sua instalação do Xampp (o diretório padrão é C:\xampp\php\ext)

Caso você não saiba o caminho do seu arquivo de configuração (o caminho padrão é C:\xampp\php\php.ini), na tela do phpinfo(), demonstrada logo acima, é possível identificar o caminho correto do seu arquivo php.ini buscando por Loaded Configuration File

Após copiar todos os arquivos, edite o arquivo php.ini da sua instalação e adicione os registros abaixo:
extension=php_pdo_sqlsrv_71_ts_x86.dll
extension=php_sqlsrv_71_ts_x86.dll

Lembrando que o nome das DLL’s variam de acordo com a versão do PHP (71, 70, 54, etc), Thread-safe (TS ou NTS) e arquitetura (X86 ou X64) e devem ser SEMPRE iguais ao nome dos arquivos que você baixou e copiou para o diretório php\ext.

Uma vez que você já editou o arquivo php.ini, basta reiniciar o Apache para que as alterações façam efeito, conforme demonstrado abaixo:

Abra novamente o arquivo phpinfo.php (http://localhost/phpinfo.php) e veja se agora o driver foi carregado:

Caso esteja igual ao do print, quer dizer que o driver está instalado e pronto para ser utilizado!

Script de teste de conexão

Resultado:

É isso aí!
Espero que tenham gostado desse artigo e já podem começar a criar aplicações utilizando PHP e SQL Server!

Existe ainda um link bem interessante, da própria Microsoft, que ajuda os desenvolvedores a criarem um ambiente PHP. Para acessar essa documentação, clique neste link aqui.

Forte abraço!

SQL, sql server, sql server 2008, sql server 2008 R2, Oracle, Oracle Database, Oracle 11g, Oracle 10g, Oracle 12c, MySQL, Firebird, Consultoria, Consultor, Programador, Programação. Desenvolvedor, Analista de Sistemas, DBA, Criação de website, Criação de Sistema Web, Vitória, Vila Velha, Guarapari, Espírito Santo, ES, Consultoria SQL em VItória, Treinamento, Curso, Prestação de serviço, prestar serviço, freelancer, freela, banco de dados, consultoria em banco de dados, consultor de banco de dados

Deixe uma resposta