para microsoft instalar for php sql-server database connection pdo

microsoft - php pdo sql server



Conectando a mssql usando pdo a través de php y linux (3)

El controlador PDO mssql ya no existe, use sqlsrv (bajo php windows) o dblib (bajo php linux)

http://msdn.microsoft.com/en-us/sqlserver/ff657782.aspx

http://www.php.net/manual/en/ref.pdo-dblib.php

Estoy tratando de una nueva conexión PDO usando el siguiente código.

new PDO("mssql:driver=????;Server={$serverName};Database={$databaseName}", $username, $password, array(PDO::ATTR_PERSISTENT => false, PDO::ATTR_ERRMODE => PDO::ERRMODE_EXCEPTION));

No estoy seguro de qué controladores usar? o cómo instalarlos. Me puedo conectar perfectamente bien usando la función mssql_connect en PHP, pero en su lugar quiero usar la biblioteca PDO.

Por favor, avíseme si tiene ideas sobre cómo resolver mi problema o cómo puedo responder mejor a mi pregunta.

Mi configuración de php.ini para mssql es:

ssql

Soporte MSSQL habilitado
Enlaces persistentes activos 0
Enlaces activos 1
Versión de biblioteca FreeTDS

Valor directo del valor local de la directiva
mssql.allow_persistent Encendido
mssql.batchsize 0 0
mssql.charset sin valor sin valor
mssql.compatability_mode Off Off
mssql.connect_timeout 5 5
mssql.datetimeconvert On On
mssql.max_links Ilimitado Ilimitado
mssql.max_persistent Ilimitado Ilimitado
mssql.max_procs Ilimitado Ilimitado
mssql.min_error_severity 10 10
mssql.min_message_severity 10 10
mssql.secure_connection Off Off
mssql.textlimit Servidor predeterminado Servidor predeterminado
mssql.textsize Servidor predeterminado Servidor predeterminado
mssql.timeout 60 60

Gracias


Estoy ejecutando Ubuntu 14.04. Intentando conectarme a MSSQL obtuve la "excepción no detectada ''PDOException'' con el mensaje ''no pude encontrar el controlador''". Parece que me faltaba la extensión PHP dblib / sybase.

Tuve que correr:

sudo apt-get install php5-sybase freetds-common libsybdb5 / && sudo apache2ctl restart

Funciona bien ahora


Tratar

$dbh = new PDO ("mssql:host=$hostname;dbname=$dbname","$username","$pw"); $hostname may need to be configured as either... $hostname.'':''.$port;

O

$hostname.'',''.$port;