【问题标题】:store procedure sql server 2008 in codeigniter在codeigniter中存储过程sql server 2008
【发布时间】:2018-01-30 02:32:24
【问题描述】:

我尝试了所有可能性,但仍然清空了 codeigniter 中的输出 .. 我在 SQL Server 中执行所有查询,但它对我不起作用

 sp_detail_report XX64,'2018-01-01','2018-02-01',0,1

 EXEC sp_detail_report XX64,'2018-01-01','2018-02-01',0,1

 EXECUTE sp_detail_report XX64,'2018-01-01','2018-02-01',0,1

EXEC sp_detail_report @appl = 'XX64',@StartDate = '2018-01-01',@EndDate = '2018-02-01',@List = 0,@State = 1

sp_detail_report {XX64},{'2018-01-01'},{'2018-02-01'},{0},{1}

这个控制器

public function detail_report_sp()
{
    $query = $this->Report_model->tbl_detail_report_sp2();

    $exec =  $query->result();      
    var_dump($exec);
    print_r($exec);
}

这是我的模特

public function tbl_detail_report_sp2()
{
    $otherdb = $this->load->database('otherdb', TRUE);
    $data =  " EXEC sp_detail_report XX64,'2018-01-01','2018-02-01',0,1; ";
    $sql = $otherdb->query($data);
    return $sql;    
}

总是输出错误

Message: Call to a member function result_array() on boolean

    object(CI_DB_sqlsrv_result)[21]
  public 'scrollable' => string 'buffered' (length=8)
  public 'conn_id' => resource(49, SQL Server Connection)
  public 'result_id' => resource(51, SQL Server Statement)
  public 'result_array' => 
    array (size=0)
      empty
  public 'result_object' => 
    array (size=0)
      empty
  public 'custom_result_object' => 
    array (size=0)
      empty
  public 'current_row' => int 0
  public 'num_rows' => null
  public 'row_data' => null
Array ( )

总是空的。

希望您知道解决方案。非常感谢

【问题讨论】:

    标签: php sql-server codeigniter


    【解决方案1】:

    解决。

    我在存储过程中修复了

    我把 SET NOCOUNT ON;

    在每个BEGIN之后

    BEGIN 
    
    SET NOCOUNT ON
    

    【讨论】:

      猜你喜欢
      • 2015-01-26
      • 1970-01-01
      • 2012-11-15
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2016-05-25
      相关资源
      最近更新 更多