【问题标题】:Using MSSQL with PHP on CentOS在 CentOS 上使用 MSSQL 和 PHP
【发布时间】:2012-12-06 10:25:33
【问题描述】:

我已经在我的 CentOS 环境中安装并配置了 FreeTDS,以使我的 PHP 代码能够连接到一些外部 MSSQL 服务器。我的整个应用程序都在使用 PDO 编写,它在 Windows 上完美运行。只是想知道我的相同 PDO 代码是否可以在 CentOS 中使用,否则我必须将整个代码从 PDO 转换为 mssql_query 表单。

就像我在 PDO 中一样:

$statement_keyword = $obj->conn->prepare($keywordquery);
$statement_keyword->execute();
$rows_keyword = $statement_keyword->fetchAll(PDO::FETCH_ASSOC);

在使用 FreeTDS 的 MSSQL 中,我们必须编写

$result = mssql_query($keywordquery);
while ($Row = mssql_fetch_assoc($result)) {
  $iw[$i++]=(string)$Row['FullName'];
  .......
}

意味着我必须运行整个循环来获取记录数组,类似地,我可能需要在存储过程执行中进行更多更改...

谁能指导我在 CentOS 上为 MSSQL 使用 PDO,或者其他简单的方法。

谢谢

【问题讨论】:

标签: php sql-server pdo centos


【解决方案1】:

在寻找网络并进行一些研究和实验工作后,我意识到使用 Windows 的 PDO 代码到 PDO 等效项非常容易,无需更改,我需要做的唯一更改是建立连接的方式

在 Windows 中使用 PDO 和 MSSQL

$this->conn = new PDO("sqlsrv:server=".$this->dbServer.";Database={$this->dbName}",$this->userName,$this->userPassword);

在 CentOS 上使用 PDO 和 MSSQL

 $this->conn = new PDO("dblib:host=$this->dbServer;dbname={$this->dbName}",$this->userName,$this->userPassword);

确保您已在 CentOS 堆栈上配置 FreeTDS、ODBC 等

【讨论】:

    猜你喜欢
    • 2013-06-14
    • 2014-05-15
    • 2018-02-07
    • 2016-08-17
    • 1970-01-01
    • 2013-12-13
    • 2012-04-15
    • 2015-12-31
    • 1970-01-01
    相关资源
    最近更新 更多