无法使用codeigniter获取MSSQL表数据

时间:2018-12-09 17:16:22

标签: php sql sql-server codeigniter codeigniter-3

我想从Codeigniter 3.1.9中名为“ dbo.Events”的MSSQL表中获取数据

已建立与数据库的连接,但查询失败。

$query = $this->db->get('dbo.Events');
return $query->result_array();

结果如下:

  

发生数据库错误   错误编号:HY000 / 1   没有这样的表:dbo.Events

     

SELECT * FROM“ dbo”。“事件”

     

文件名:C:/xampp/htdocs/ci3/system/database/DB_driver.php

     

行号:691

该表存在并且名称正确。 查询看起来如何,或者我必须如何转义“。”在表名中?

编辑:

$db['lardis_mssql'] = array(
'dsn'   => '',
'hostname' => '192.168.120.xxx',
'username' => 'username',
'password' => 'passowrd',
'database' => 'LardisLog',
'dbdriver' => 'sqlsrv',
'dbprefix' => 'dbo.',
'pconnect' => FALSE,
'db_debug' => (ENVIRONMENT !== 'production'),
'cache_on' => FALSE,
'cachedir' => '',
'char_set' => 'utf8',
'dbcollat' => 'utf8_general_ci',
'swap_pre' => '',
'encrypt' => FALSE,
'compress' => FALSE,
'stricton' => FALSE,
'failover' => array(),
'save_queries' => TRUE
);

1 个答案:

答案 0 :(得分:0)

也许我忘记写了,MSSQL是我要连接的第二个数据库。

在此页面的支持下多次检查配置后: https://www.macamateri.com/2017/05/cara-koneksi-database-sql-server-mssql-di-codeigniter.html

解决方案非常简单: 我没有连接到正确的数据库。

  public function __construct()
  {
    $this->mssql_db = $this->load->database('lardis_mssql', TRUE);
  }

  public function get_tetra_log()
  {

  $get_where_array = array(
      "RadioID" => "******-*****-*****-****-**********"
  );

    $query = $this->mssql_db->get_where('Events', $get_where_array);
    return $query->result_array();
  }