-1

这篇文章已经过编辑,以反映我和 iamkrillin 迄今为止的发现,因为我们是仅有的两张海报

我有以下 VB.NET 代码正确连接,从我的 PC 运行

    Dim strConnection As String = "Server=dev.xxxxx.vmc;Database=report1;integrated security=SSPI;" & _ 
                                  "persist security info=False;Trusted_Connection=Yes;"

    Dim ObjDa As SqlDataAdapter = New SqlDataAdapter(pStrQuery, strConnection)

    Try
        Dim dsReturn As DataSet = New DataSet
        ObjDa.Fill(dsReturn)
        ObjDa.Dispose()
        Return dsReturn
    Catch ex As Exception
        Return Nothing
    End Try


我从我们的 iSeries 运行以下 PHP 代码

$conn = array( 'host' => 'dev.xxxxx.vmc',
    'username' => 'vmc\adam',
    'password' => 'xxxxxx)',
    'dbname' => 'report1',
    'pdoType' => 'dblib' );

try {
    $db = new Zend_Db_Adapter_Pdo_Mssql($conn);
    $db->getConnection();
} catch (Zend_Db_Adapter_Exception $e) {

}

getConnection 函数抛出错误:

SQLSTATE[] (null) (严重性 0)

当我在此处查找此错误时,它似乎是 5.2.10 之前的错误,我们正在运行 5.2.17。但是,其他一些评论说它仍然是 5.3 中的一个错误。


*编辑


如果使用域帐户,似乎必须启用 Windows 身份验证。但是,它不是通过我们的PHP。所以我需要为我们的 PHP 连接设置一个特定于数据库的用户。

4

1 回答 1

1

在您的 VB 代码片段中,您正在连接到 SQL Server,在您的 PHP 代码片段中,您正在连接到 MySQL。如果您需要从 PHP 使用 SQL Server,请查看. 如果您在非 Windows 平台上,您可以尝试FreeTDS是一个如何开始使用它的示例

于 2012-09-25T18:55:06.170 回答