【发布时间】:2017-07-21 18:11:55
【问题描述】:
我正在尝试使用 PHPon Linux 连接到 Windows MS Sql Server 数据库,并且我知道我的主机名、端口、用户 ID 和密码正确。我用一些客户端软件验证了这一点,以确保我可以访问数据库。所以我确信这只是正确的驱动程序、方法或语法问题。也许这些端口是如何使用的。:
这只是示例名称等。
$server = "myhost.com:1111";
$database = "mydatabasename";
$user = "johndoe";
$pass = "doe1";
$conn = odbc_connect('myhost.com','1111','johndoe','doe1');
或
$connection_string = "DRIVER={SQL Server Native Client 10.0};SERVER=$server, 1433;DATABASE=$database";
$conn = odbc_connect( $connection_string, $user, $pass );
在我找到一篇关于使用它的帖子后,我只使用“SQL Server”作为驱动程序对此进行了修改。
我也试过这个:
mysql_connect($server,$user, $pass) or die ("<html><script language='JavaScript'>alert('Unable to connect to database! Please try again later.'),history.go(-1)</script></html>");
mysql_select_db($database);
$query = "SELECT * FROM USER_TABLE ";
这里有一些关于服务器和数据库的信息: Windows 服务器标准 2007 MS SQL Server 2008 标准版 使用 SQL Server 身份验证
如果可能,我更喜欢 odbc_connect。我们使用它连接到 i 系列上的另一个数据库,并且工作正常。但是我们也不必在那些上使用端口。
谢谢 迈克尔
【问题讨论】:
-
我相信您必须将端口指定为字符串中的单独参数,例如
...;SERVER=$server, Port=1111;DATABASE=$database;... -
谢谢雅各布。我得等到星期一上班才能检查。但这是有道理的。
-
雅各布。那没有用。我回去换了驱动程序,看看是否有帮助,但没有。
-
我开始研究 Linux 机器,它只有一个用于 AS400 的驱动程序,这就解释了为什么它可以工作。但是没有连接到 MS SQL Server 的驱动程序。所以现在我得先找个司机。
标签: php sql-server database