0

试图看看我是否可以让 PDO 在我的服务器上打开我的 mssql 数据库。使用 vbscript 我对连接的调用如下所示:

set MyConn = Server.CreateObject("ADODB.Connection")
MyConn.Open("dsn=MYDSN;uid=MYUID;pwd=MYPWD;DATABASE=MYDATABASE;APP=ASP Script")

然后,当尝试使用 PDO 将其移植到 php 时,我无法找到有关将 DSN 与 PDO 一起使用的任何信息。

这是我到目前为止所拥有的:

try {
    $conn = new PDO('mssql:Server=localhost;Database=MYDSN','MYUID','MYPWD') or die('error');
    $conn->setAttribute( PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION );
    $sql = "SELECT name FROM people";
    $qresult = $conn->prepare($sql);
    $qresult->execute();
    foreach ($qresult->fetch(PDO::FETCH_ASSOC) as $row){
        echo $row['name'].'<br/>';
    }
} catch (PDOException $e) {
    print "Error!: ".$e->getMessage()."<br/>";
    die();
}

但这就是我得到的

Error!: SQLSTATE[HY000]: General error: 10007 Invalid object name 'name'. [10007] (severity 5) [(null)]

我的猜测是因为我不能将 dsn 放在 pdo 代码中的任何位置。

4

0 回答 0