clase php pdo wampserver

clase - php pdo reference



Los controladores sqlsrv no aparecen en un servidor WAMP phphinfo() después de agregar las entradas de extensión en el archivo php.ini (3)

Compruebe el registro de errores php (c: / wamp / logs / php_error.log). Tenía la misma configuración (64bit WAMP / PHP 5.5.12) y la misma referencia de sqlsrv que faltaba en phpinfo y obtuve este error en mi registro:

Advertencia de PHP: Inicio de PHP: no se puede cargar la biblioteca dinámica ''c: /wamp/bin/php/php5.5.12/ext/php_pdo_sqlsrv_55_ts.dll'' -% 1 no es una aplicación Win32 válida. en Desconocido en la línea 0

La solución fue instalar la versión de 64 bits de los controladores sqlsrv. Encontré los controladores no oficiales de 64 bits a través de http://robsphp.blogspot.nl/2012/06/unofficial-microsoft-sql-server-driver.html

Advertencia: en mis pruebas, encontré estas extensiones PHP_PDO_SQLSRV de 64 bits 10 veces más lentas que cuando usas PHP_PDO_ODBC.

Quería configurar una conexión de base de datos de PHP a SQL Server 2012. Tengo un servidor wamp (64 bits) configurado en una máquina Windows (64 bit) con PHP 5.5.12 y en la misma máquina tengo SQL Server 2012 instalado.

Controladores de sqlsrv extraídos de official_link

Copió los controladores extraídos php_sqlsrv_55_ts.dll, extension = php_pdo_sqlsrv_55_ts.dll en la carpeta php/ext , y luego modificó el archivo php.ini para incluir las extensiones

extension = php_sqlsrv_55_ts.dll; extension = php_pdo_sqlsrv_55_ts.dll;

Ahora probé

<?php phpinfo(); ?>

Veo la siguiente información sin información del servidor SQL.

Parece que no configuró la conexión del servidor SQL con éxito. ¿Podría alguien guiarme por lo que me falta aquí?


El servidor WAMP de 64 bits no se pudo conectar utilizando los controladores extension = php_sqlsrv_55_ts.dll; extension = php_pdo_sqlsrv_55_ts.dll;

Entonces, instalé una versión de 32 bit del servidor WAMP y funciona bien ahora.


Estoy visitando este hilo y creo que esto podría ser útil para usted y otros con el mismo problema: ¿Cómo puedo instalar pdo_sqlsrv en mi Windows 2008 Server 2008 R2?

La extensión PDO no es lo mismo que el controlador nativo que ofrece Microsoft. Para PDO debe habilitar

extension = php_pdo_mssql.dll en su php.ini.

{Normalmente, este archivo (php_pdo_mssql.dll) debe estar en su directorio de extensiones PHP (C: ... / php / ext). Si no está allí, puede descargar PHP desde http://windows.php.net/download/ y simplemente tomar la extensión de un paquete allí (tome uno que corresponda con su versión PHP, por supuesto)}.

Arriba está tomado de PDO Servidor MSSQL - Driver no encontrado leído para más detalles. Tengo el mismo problema enemigo Linux y he guardado todas las páginas. Es por eso que estoy citando por su ayuda.

si todo lo anterior no funcionó para usted, entonces:

En php.net se enumera que

En Windows, PDO_ODBC está integrado en el núcleo de PHP de forma predeterminada. Está vinculado con el Administrador de controladores ODBC de Windows para que PHP pueda conectarse a cualquier base de datos catalogada como un DSN del sistema, y ​​es el controlador recomendado para conectarse a las bases de datos de Microsoft SQL Server. http://php.net/manual/en/ref.pdo-odbc.php

Puede conectarse al servidor mssql usando controladores odbc, ya que nunca me he conectado por mi cuenta desde Windows. Lo uso a través de Linux usando FreeTds, las siguientes páginas pueden ayudarlo

  1. http://craigballinger.com/blog/2011/08/usin-php-5-3-with-mssql-pdo-on-windows/
  2. Conecte PHP a MSSQL a través de PDO ODBC
  3. PHP a SQL Server sin soporte ODBC o MSSQL