📜  Codeigniter 中的数据库连接和查询

📅  最后修改于: 2021-10-20 12:13:52             🧑  作者: Mango

要从数据库中检索数据,我们总是需要将我们的项目与数据库连接。我们将看到如何在 codeignitor 中连接数据库以及如何在其中运行查询。在 config 文件夹中,我们可以找到数据库。 PHP文件来连接数据库。请按照下图提及详细信息。
数据库。 PHP

在上图中,我们需要定义用户名、密码和数据库名称。无论我们使用什么,我们都可以指定像 mysql 或 SQLite 这样的 dbdriver,这就是它与我们的数据库连接的方式,我们将运行我们的查询。在 localhost 中创建一个数据库,在那里定义一个表并插入一些虚拟数据。现在我们需要在模型文件中加载这个数据库,然后我们将能够访问查询。
模型:

load->database(); 
         }
      
        public function getUsers() {          
               $data = $this->db->query('SELECT * FROM city') ;
               print_r($data);
         }    
     
}
  
?>

从上面的查询中,输出将以对象形式显示。
输出:

现在使用上面相同的代码,但这次在模型中使用下面的函数来查看输出。

print_r($data->result());

现在输出将类似于下面的对象数组。
输出:

现在使用上面相同的代码,但这次在模型中使用下面的函数来查看输出。

print_r($data->result_array());

这次输出将是数组形式。
输出:

当我们尝试从数据库中获取数据时,上述所有要点都会造成混淆。所以我们需要了解以上三种输出结果的区别。
要在视图中获取数组结果,我们需要做的就是使用 foreach 循环访问数据。

如何使用活动记录:活动记录基本上是 CI 中用于处理数据库查询的设计模式。在上面的所有示例中,我们编写查询来获取数据,但是我们使用内置类或库并传递我们自己的参数来处理数据库的非活动记录。使用活动记录的好处是代码会减少,而且如果我们需要在另一个数据库(如 PostgreSQL 或 SQLite)上部署我们的项目,那么我们不需要更改模型中的查询。从上面可以看出,将项目迁移到另一个数据库的所有示例都需要更改模型中的查询,这很耗时。现在让我们看看如何使用活动记录来处理数据库。

模型:

load->database(); 
  }
      
      public function getUsers() {    
      //SELECT * FROM `city` WHERE id = 1  
      $data = $this->db->select('city_name', 'state_name')
                       ->where('id', 1)
                       ->get('city');               
      print_r($data->result_array());
   }
         
}
?>

输出:

因此,我们将得到与前面示例相同的结果。有很多可用的活动记录查询,可以根据需要使用。请按照 Active Records 的链接阅读所有活动记录。