使用pdo通过php和linux连接到mssql
我正在尝试使用下面的代码来build立一个新的PDO连接。
new PDO("mssql:driver=????;Server={$serverName};Database={$databaseName}", $username, $password, array(PDO::ATTR_PERSISTENT => false, PDO::ATTR_ERRMODE => PDO::ERRMODE_EXCEPTION));
我不确定使用什么驱动程序? 或者如何安装它们。 我可以使用PHP中的mssql_connect函数完全正确地连接,但是我想要使用PDO库。
请让我知道,如果你有一个想法如何解决我的问题,或者我怎么能更好地提出我的问题?
我的php.ini设置为mssql是:
ssql
MSSQL支持启用
活动持久链接0
活动链接1
库版本FreeTDS
指令本地价值主值
mssql.allow_persistent On On
mssql.batchsize 0 0
mssql.charset没有值没有值
mssql.compatability_mode关关
mssql.connect_timeout 5 5
mssql.datetimeconvert打开
mssql.max_links无限制无限
mssql.max_persistent无限制无限制
mssql.max_procs无限制无限制
mssql.min_error_severity 10 10
mssql.min_message_severity 10 10
mssql.secure_connectionclosures
mssql.textlimit服务器默认服务器默认
mssql.textsize服务器默认服务器默认
mssql.timeout 60 60
谢谢
PDO的mssql驱动程序是没有更多,使用sqlsrv
(在Windows下)或sqlsrv
(在PHP的dblib
下)
我正在运行Ubuntu 14.04。 试图连接到MSSQL我得到了“未捕获的exception”PDOException“消息'找不到驱动程序'”。 看来我错过了dblib / sybase PHP扩展。
我必须运行:
sudo apt-get install php5-sybase freetds-common libsybdb5 \ && sudo apache2ctl restart
现在工作正常。
尝试
$dbh = new PDO ("mssql:host=$hostname;dbname=$dbname","$username","$pw"); $hostname may need to be configured as either... $hostname.':'.$port;
要么
$hostname.','.$port;