Visualizações: 47.205 views
- Relação entre versão do driver e versão do PHP
- Relação entre versão do driver e versão do driver ODBC
- Relação entre versão do driver e versão do banco de dados
- Relação entre versão do driver e versão do Windows
Tempo de Leitura: 4 minutos
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 18.2.1.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:
123 | <?php phpinfo();?> |
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 Driver | Versão do PHP | Download do driver |
---|---|---|
5.11.0-beta1 | PHP 7.4 a PHP 8.2 | Baixar |
5.10.1 | PHP 7.4 a PHP 8.1 | Baixar |
5.9 | PHP 7.3 a PHP 8.0 | Baixar |
5.8 | PHP 7.2 a PHP 7.4 | Baixar |
4.3 | PHP 7.0 e PHP 7.1 | Baixar |
4.0 | PHP 7.0 | Baixar |
3.2 | PHP 5.6.4+ ou PHP 5.5.16+ ou PHP 5.4.32 | Baixar |
3.1 | PHP 5.5.16+ ou PHP 5.4.32 | Baixar |
3.0 | PHP 5.4.32 ou PHP 5.3.0 | Baixar |
2.0 | PHP 5.3.0 ou PHP 5.2.4 ou PHP 5.2.13 | Baixar |
Relação entre versão do driver e versão do driver ODBC
Clique aqui para expandir
Versão do Driver | Versão do Driver ODBC Driver ou SQL Server Native Client |
---|---|
5.8 ou acima | Microsoft ODBC Driver 17.10.3 for SQL Server ou Microsoft ODBC Driver 18.2.1.1 for SQL Server |
4.3 | Microsoft ODBC Driver 11 for SQL Server ou Microsoft ODBC Driver 13.1 for SQL Server |
4.0 | Microsoft ODBC Driver 11 for SQL Server ou Microsoft ODBC Driver 13 for SQL Server |
3.2 ou 3.1 | Microsoft ODBC Driver 11 for SQL Server |
3.0 | SQL Server 2012 feature pack |
2.0 | Microsoft 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
Clique aqui para expandir
Relação entre versão do driver e versão do Windows
Clique aqui para expandir
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
123456789101112131415161718192021222324252627282930 | <?phptry{ $servidor = “vm-dba”; $instancia = “sql2016”; $porta = 1433; $database = “master”; $usuario = “usuario_php”; $senha = “123456”; $conexao = new PDO( “sqlsrv:Server={$servidor}\\{$instancia},{$porta};Database={$database}”, $usuario, $senha );}catch ( PDOException $e ){ echo “Drivers disponiveis: ” . implode( “,”, PDO::getAvailableDrivers() ); echo “\nErro: ” . $e->getMessage(); exit;}$query = $conexao->prepare( “select @@version” );$query->execute();$resultado = $query->fetchAll();echo $resultado[‘0’][‘0’];unset( $conexao );unset( $query ); |
É 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!
Fonte: https://www.dirceuresende.com/blog/como-conectar-no-sql-server-utilizando-o-php-xampp-e-o-driver-pdo-no-windows/