php - 如何在 PHP 5.5 和 MSSQL 中使用 PDO

标签 php sql-server pdo

我最近开始学习 PHP,我现在遇到的一些问题是与 MSSQLS 数据库的连接。我在一些引用得很好的网站上了解到,将 SQL DB 与 PHP 结合使用的最常见(也是最好)的方法是使用 PDO。

所以,这就是我到目前为止所做的:

1- 成功安装驱动程序:

extension=php_sqlsrv_55_ts.dll

extension=php_pdo_sqlsrv_55_ts.dll

(我已经检查了 phpinfo(),我的 PHP 版本是线程安全的)

2- 驱动程序在 phpinfo()

中被识别

3- 我一直收到这个错误:

4- 消息为“SQLSTATE[IMSSP]”的未捕获异常“PDOException”:此扩展需要 Microsoft SQL Server 2012 Native Client ODBC 驱动程序才能与 SQL Server 通信。

访问以下 URL 以下载适用于 x86 的 Microsoft SQL Server 2012 Native Client ODBC 驱动程序:http://go.microsoft.com/fwlink/?LinkId=163712' 在 C:\xampp\htdocs\catala4\testdb.php:4 堆栈跟踪:#0 C:\xampp\htdocs\catala4\testdb.php(4): PDO->__construct('sqlsrv:Server=H...', 'USER', 'PASSWORD' ) #1 {main} 在第 4 行的 C:\xampp\htdocs\catala4\testdb.php 中抛出

执行这段代码时:

<?php
include_once 'configs.php';

$mysqli = new PDO("sqlsrv:Server=HOST;Database=DATABASE", "USER", "PASSWORD");

我不知道出了什么问题,我想得到一些帮助来解决这个问题,所以我的问题是:

  • ODBC 驱动程序到底是什么?是连接SQLS需要的驱动吗?
  • 考虑到我正在使用 PDO 连接到数据库,作为 PDO 访问任何数据库的中间接口(interface),我可以说这个接口(interface)使用的任何通用代码都适用于所有支持的数据库吗?
  • 我收到的错误是什么,我应该怎么做/我应该在哪里找到更多信息来解决问题?

使用 PHP v 5.5.9

enter image description here

最佳答案

  • ODBC 驱动程序到底是什么?是连接SQLS需要的驱动吗?

是的,是的。请read up on ODBC

  • 考虑到我正在使用 PDO 连接到数据库,作为 PDO 访问任何数据库的中间接口(interface),我可以说这个接口(interface)使用的任何通用代码都适用于所有支持的数据库吗?

错误的 ODBC 是中间件。

  • 我收到的错误是什么,我应该怎么做/我应该在哪里找到更多信息来解决问题?

问题: 未安装驱动程序。

解决方案: Download and install ODBC driver.

关于php - 如何在 PHP 5.5 和 MSSQL 中使用 PDO,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/22773216/

相关文章:

php - mysqli_real_escape_string,我应该使用它吗?

c# - 从 dapper 调用存储过程,它接受用户定义的表类型列表

c# - 在 ADO.net SQL 中使用事务

php - 对 PHP OOP 作用域感到困惑

php - 如何用 ENUM 值填充 <select>?

javascript - json数据不返回值

php - mysql 选择数组中的位置 (php, mysql)

php - 从 map 中清除像素

sql-server - 使用 2 个日期字段按月汇总数据的 T-SQL 查询

PHP/Mysql 特殊字符插入被截断