Driver SQL Server para PHP no Windows 2000 Server SP4

Driver SQL Server para PHP no Windows 2000 Server SP4

Preciso instalar uma demonstração de uma aplicação PHP que faça uso doDriver SQL Server para PHP. O servidor é uma máquina antiga que executa o Windows 2000 Server SP4. Instalei toda a pilha sem problemas:

  • Apache 2.2.14
  • PHP5.3.1
  • Edição Expressa do SQL Server 2005
  • SQL Server Management Studio Expresso

Mas há um componente que não está funcionando como esperado: oCliente Nativo SQL Server. Recebo uma mensagem de erro assim que chamo sqlsrv_connect(). Encontrei quatro versões diferentes e nenhuma funciona:

Se eu não instalar ou instalar a versão 2005:

  • SQLSTATE: IMSSP
  • código: -49
  • mensagem: O driver do SQL Server para PHP requer o driver ODBC do SQL Server 2008 Native Client (SP1 ou posterior) para se comunicar com o SQL Server. Esse driver ODBC não está instalado atualmente. Acesse a seguinte URL para baixar o driver ODBC do SQL Server 2008 Native Client para x86:http://go.microsoft.com/fwlink/?LinkId=163712

Se eu instalar a versão 2008:

  • ESTADO SQL: IM003
  • código: 160
  • mensagem: O driver especificado não pôde ser carregado devido ao erro de sistema 127 (SQL Server Native Client 10.0).

Orequisitos de sistema para driver do SQL Server para PHP1.1 inclui o Windows 2000 Service Pack 4. No entanto, orequisitos de sistema para SQL Server 2008 Native Clientmenciona o Windows Server 2003 Service Pack 2 ou superior.

Qualquer ideia?

Responder1

Não creio que o SQL 2008 Native Client seja compatível com o Windows 2000. Você tem um sistema Windows 2003 no qual pode instalar este aplicativo?

Responder2

Recebi mais informações de Serban Iliescu nofórum oficial:

Após uma investigação mais aprofundada, descobri que o SQL Server Native Client 2008 (também conhecido como SNAC 10) não carrega no Windows 2000 porque algumas dependências de DLL não são atendidas pelo sistema operacional. Há um defeito atualmente registrado no SNAC 10 para resolver esse problema por meio de downgrade normalmente, mas esse defeito ainda não foi resolvido. Enquanto isso, você pode tentar a versão anterior do driver PHP (ou seja, versão 1.0) que está vinculada ao SNAC 9 (SQL Server Native Client 2005) e o SNAC 9 deve funcionar no Windows 9.

Resumindo:

  1. O driver do SQL Server para PHP 1.1 requer o SQL Server Native Client 2008
  2. O SQL Server Native Client 2008 tem um bug conhecido e não carrega no Windows 2000
  3. SQL Server Native Client 2005 funciona bem no Windows 2000
  4. O driver do SQL Server para PHP 1.0 requer apenas o SQL Server Native Client 2005

Instalei a versão mais antiga do driver PHP junto com a versão 2005 do Native Client. Também tive que fazer o downgrade do PHP de 5.3 para 5.2.

Minha aplicaçãoparecepara trabalhar com a versão antiga do driver PHP. Portanto, a demonstração está finalmente instalada e funcionando.

informação relacionada