【问题标题】:Connect to MS SQL Server with PHP without drivers在没有驱动程序的情况下使用 PHP 连接到 MS SQL Server
【发布时间】:2020-07-06 19:52:53
【问题描述】:

一个工作项目需要我用 PHP 连接到 Microsoft SQL Server 2014。我在网上找到了大量解决方案,这些解决方案涉及下载一组驱动程序以使用 PDO、sqlsrv 或 ODBC。

联系我的托管服务提供商后,他们是这样说的:

由于您使用的是共享主机,因此无法安装驱动程序,因为它不是 在我们的平台上支持。

如果需要,您可以使用普通的 ODBC 进行连接

到目前为止,我还没有找到无需安装任何驱动程序/扩展程序即可工作的解决方案。托管服务提供商推荐了 ODBC,但我似乎也无法让我的代码适用于 ODBC。有谁知道我可以做到这一点的任何其他方式吗?

我当前使用的代码(这给了我一个错误:

无法打开库“SQL Server”

$server = 'xxx.xxx.xxx.xxx';
$user = 'user.....';
$pass = 'password...';

$port='1433';
$database = 'database...';

$connection_string = "DRIVER={SQL Server};SERVER=$server;PORT=$port;DATABASE=$database";
$conn = odbc_connect($connection_string,$user,$pass);
if ($conn) {
    echo "Connection established.";
} else{
    die("Connection could not be established.");
}

【问题讨论】:

  • 您找到解决方案了吗?我有同样的问题。
  • @Germán 不,很遗憾不是。我最初在共享的 cPanel 服务器上运行,所以为了让它工作,我不得不从 DigitalOcean 购买独立服务器并安装驱动程序。

标签: php sql-server


【解决方案1】:

你试过了吗?

<?php
$serverName = "serverName\\sqlexpress, 1542"; //serverName\instanceName, portNumber (default is 1433)
$connectionInfo = array( "Database"=>"dbName", "UID"=>"userName", "PWD"=>"password");
$conn = sqlsrv_connect( $serverName, $connectionInfo);

if( $conn ) {
     echo "Connection established.<br />";
}else{
     echo "Connection could not be established.<br />";
     die( print_r( sqlsrv_errors(), true));
}
?>

参考:https://www.php.net/manual/en/function.sqlsrv-connect.php

【讨论】:

  • 我相信我确实尝试过这个并且没有任何运气。不需要安装任何驱动程序,这对您有用吗?
  • 我在以前的一个组织中使用 odbc_connect 本身完成了这项工作。现在无法访问代码以获取确切的语法。
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 2021-01-29
  • 2020-12-17
  • 1970-01-01
  • 2012-07-21
  • 1970-01-01
  • 1970-01-01
  • 2019-07-21
相关资源
最近更新 更多