首页
学习
活动
专区
工具
TVP
发布
社区首页 >问答首页 >如何在PHP 7+中启用SQL Server的ODBC Driver 17?

如何在PHP 7+中启用SQL Server的ODBC Driver 17?
EN

Stack Overflow用户
提问于 2018-08-18 08:22:44
回答 1查看 5.4K关注 0票数 0

我运行的是RHEL7,所以我遵循了这里的说明(对于CentOS 7条目),并且每一步都是成功的。

我关注的链接:https://docs.microsoft.com/en-us/sql/connect/odbc/linux-mac/installing-the-microsoft-odbc-driver-for-sql-server?view=sql-server-2017

我现在有点卡住了,因为我知道我必须在PHP (v7.2.9)端配置一些东西才能让它“看到”这个安装。我不知道“扩展”实际安装在哪里,所以我不确定如何修改PHP.ini文件,也不确定如何在PHP中设置连接字符串来测试它。

我目前正在使用odbc_connect()进行测试(如果有帮助的话)。

你能提供步骤,一旦以上链接的指示被遵循?

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2018-08-18 08:33:41

嗯,就像通常发生的那样,我做了一些挖掘,在一个朋友提醒我/etc/odbcinst.ini文件后,我找到了答案……对于未来的谷歌人和其他人:

  1. sudo vi /etc/odbcinst.ini

你应该会看到类似这样的东西(假设你遵循了发布到T的说明,没有任何错误-链接在原始帖子中):

代码语言:javascript
复制
[ODBC Driver 17 for SQL Server]
Description=Microsoft ODBC Driver 17 for SQL Server
Driver=/opt/microsoft/msodbcsql17/lib64/libmsodbcsql-17.2.so.0.1
UsageCount=1

所以..。确认后,创建一个基本的PHP文件进行测试。我在这里使用PHP 7.2.9:

代码语言:javascript
复制
<?php

// Configuration Settings for connection to Database
$host = 'SERVERNAME';
$user = 'dbuser';
$pass = 'dbpass';
$db   = 'InstanceName';
$conn = "DRIVER={ODBC Driver 17 for SQL Server};SERVER=$host;PORT=1433;DATABASE=$db";

// Open connection
$db_connect = odbc_connect($conn, $user, $pass);

// Check for successful connection
if ( $db_connect ) {
    echo 'Beer time!';
} else {
    die('Error connecting...');
}

?>

重要的部分是确保驱动程序的“名称”,因为它显示在odbcinst文件中的[]之间,与您在PHP文件的连接字符串中使用的驱动程序的名称相匹配。在这种情况下(默认),它是"ODBC Driver 17 for SQL Server“。

希望这对其他人有所帮助。我为此挣扎了一段时间。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/51904241

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档