PHP PDO mssql错误

时间:2013-06-24 08:22:04

标签: php sql-server sql-server-2008 pdo

我正在使用mssql pdo for PHP 5.3.1,它运行没有任何问题,突然我发现,所有我的插入查询在从php PDO运行时失败,如果我回显查询并在SQL server Management studio中运行它,它运行没有任何错误。下面是我的回音查询

INSERT INTO contactus(title, first_name, last_name, email) VALUES('Mr', 'Robin', 'Michael', 'robin@robin.com')

以下是错误

Array ( [0] => HY000 [1] => 10007 [2] => Incorrect syntax near 'Mr'. [10007] (severity 5) [INSERT INTO contactus(title, first_name, last_name, email) VALUES('Mr] [3] => -1 [4] => 5 ) 

任何人都可以帮我解决这个问题吗?

1 个答案:

答案 0 :(得分:0)

最后,我发现了这个问题,这是因为最近我的机器和Windows服务器上的Windows更新。在此更新后,mssql pdo驱动程序抛出此错误。我从microsoft网站下载了sqlsrv20驱动程序,并将文件放在文件中     php扩展目录下的php_pdo_sqlsrv_53_ts_vc6.dll并在php.ini文件中添加了新的扩展名,如extension = php_pdo_sqlsrv_53_ts_vc6.dll并更改了pdo连接

$dbcon = new PDO( "sqlsrv:server=$conf->host;Database=$conf->db_name", $conf->db_user, $conf->db_pwd); 

注意:对于wamp服务器用户,还需要在apache中检查php.ini,并需要在apache下的php.ini文件中添加扩展名。