[2024-feb-29] Sad news: Eric Layton aka Nocturnal Slacker aka vtel57 passed away on Feb 26th, shortly after hospitalization. He was one of our Wiki's most prominent admins. He will be missed.
Action disabled: register

Welcome to the Slackware Documentation Project

Conecte-se ao Microsoft SQL Server com ODBC e PHP

Microsoft SQL Server é um sistema de gerenciamento de banco de dados relacional desenvolvido pela Microsoft.

Este artigo descreverá como configurar drivers unixODBC e PHP para conectar-se ao servidor MSSQL.

Instalar unixODBC

unixODBC é um projeto de código aberto que implementa a API do ODBC.

A melhor maneira de instalar o unixODBC é a partir do slackbuilds.org.

Se você tem o Sbopkg instalado isso é tão fácil quanto executar o comando abaixo:

 sbopkg -i unixODBC 
O unixODBC entra em conflito com o libiodbc no Slackware, portanto, se você remover o unixODBC, terá que reinstalar o libiodbc!

Instalar Drivers Microsoft OBDC

Os drivers ODBC oficiais podem ser baixados da Microsoft: download link

Microsoft ODBC Driver 13.1

A versão que eu tentei e trabalhei foram os pacotes Debian 8

Eu instalei extraindo os arquivos .deb usando o 7z e depois copiando o conteúdo no mesmo diretório temporário para me permitir criar um pacote usando o makepkg.

Configuração do OBDC

/etc/odbcinst.ini

[ODBC Driver 13 for SQL Server]
Description=Microsoft ODBC Driver 13 for SQL Server
Driver=/opt/microsoft/msodbcsql/lib64/libmsodbcsql-13.1.so.6.0

/etc/odbc.ini

[mssql]
Driver=ODBC Driver 13 for SQL Server
Server=tcp:YOUR_SERVER_NAME_OR_IP_ADDRESS
Database=YOUR_DATABASE

Microsoft Drivers para PHP e SQL Server

Os drivers são suportados apenas no PHP7+, então a suposição é que você está no Slackware64-current (>= 2018) ou você construiu e instalou o PHP7 manualmente.

A maneira mais fácil de instalar os drivers é usar o PECL

pecl install sqlsrv
pecl install pdo_sqlsrv

Alternativamente, você pode obter os drivers oficiais do github e construir você mesmo: https://github.com/Microsoft/msphpsql

Verifique a instalação usando php -i|grep “sqlsrv support” você deveria ver algo assim:

bash-4.4$ php -i|grep "sqlsrv support"
pdo_sqlsrv support => enabled
sqlsrv support => enabled

Fontes