0

我在 php 中有以下代码,用于运行存储的过程以从数据库中返回记录。

public function MelHpdlSql02($database)
{
    $connection = mssql_connect("SQL-02", "user", "test");
    $db = mssql_select_db($database);
    return $connection;
}

public function getRoleRecords()
{
    $this->MelHpdlSql02("Staff");

    $version = mssql_query("EXEC app_role_select");
    $row = mssql_fetch_array($version);     


    var_dump($row);die;

}

这只是从数据库中返回 1 条记录(这假设在我手动运行存储过程时返回 10 条记录)

有谁知道我的代码出了什么问题?

4

2 回答 2

0

您的代码有错误,请检查以下代码。

public function MelHpdlSql02($database)
    {
        $connection = mssql_connect("SQL-02", "user", "test");
        $db = mssql_select_db($database);
        return $connection;
    }

public function getRoleRecords()
{
    $this->MelHpdlSql02("Staff");

    $version = mssql_query("EXEC app_role_select");
    while($row = mssql_fetch_array($version))
    {
         var_dump($row);
    }    
}
于 2013-04-10T05:46:40.977 回答
0

我的意思是,当您使用您的功能时:

public function getRoleRecords()
{
   $this->MelHpdlSql02("Staff");

   $version = mssql_query("EXEC app_role_select");
   $row = mssql_fetch_array($version);     


   var_dump($row);die;

} 

您只获取第一个结果,您需要在其中循环,例如:

public function getRoleRecords()
{
   $this->MelHpdlSql02("Staff");

   $version = mssql_query("EXEC app_role_select");
   while($row = mssql_fetch_array($version))     
   {
        // do anything while looping among values  
   }

} 
于 2013-04-10T05:51:27.160 回答