19 noviembre 2012

SQLSRV30.EXE no es una aplicación Win32 válida

Hoy mientras intentaba instalar los drivers de PHP para Microsoft SQL Server me encontré con este mensaje de error después de descargar el archivo .exe. La solución no es tan intuitiva, pero hay que descomprimir el archivo (con 7-zip por ejemplo) en una carpeta y aparecen ocho archivos .dll y un par más de ayuda. Cuatro de estos archivos corresponden a PDO y cuatro más al driver. A su vez, cada archivo está para versiones "Thread Safe" y "Non Thread Safe"; cada uno para PHP versión 5.3 o v5.4.

Luego hay que copiar a la ruta donde tengamos las extensiones de PHP instaladas los archivos que correspondan. Finalmente, agregar al final del archivo php.ini las dos líneas a continuación:


extension=php_pdo_sqlsrv_54_ts.dll
extension=php_sqlsrv_54_ts.dll


extension=php_pdo_sqlsrv_53_ts.dll
extension=php_sqlsrv_53_ts.dll

Dependiendo de qué versión de PHP esté instalada en el servidor. Después de reiniciar el servidor se puede comprobar con la función phpinfo() que las extensiones estén cargadas.

Hasta la próxima!

05 noviembre 2012

Convertir CHAR en DATETIME en MSSQL


Cómo hacer para convertir una cadena de CHAR en una fecha (DATETIME) en Microsoft SQL Server?

SELECT convert(datetime, '2016-10-23 20:44:11', 120) -- yyyy-mm-dd hh:mm:ss(24h)
-- 2016-10-23 20:44:11.000

Más recetas para conversión con fechas y hora aquí.

Hasta la próxima!