📜  CodeIgniter-使用数据库(1)

📅  最后修改于: 2023-12-03 15:14:11.796000             🧑  作者: Mango

CodeIgniter-使用数据库

在Web应用程序中,访问数据库是必不可少的。CodeIgniter框架为我们提供了强大的数据库支持。无论是连接到数据库,还是执行查询语句,CodeIgniter都提供了简单易用的方法。

连接到数据库

要连接到数据库,我们需要打开config/database.php文件并配置数据库连接参数。例如,对于MySQL数据库,我们可以这样配置:

$active_group = 'default';
$query_builder = TRUE;

$db['default'] = array(
	'dsn'	=> '',
	'hostname' => 'localhost',
	'username' => 'root',
	'password' => '123456',
	'database' => 'mydatabase',
	'dbdriver' => 'mysqli',
	'port' => '3306',
	'dbprefix' => '',
	'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
);

这里配置了一个名为default的数据库连接。我们需要提供主机名、用户名、密码、数据库名和数据库驱动等信息。

要连接到数据库,我们可以使用$this->load->database()方法。如果不带参数,它将连接到默认的数据库配置:

$this->load->database();

如果需要连接到其他数据库连接,可以传递一个参数:

$db = $this->load->database('other_db', TRUE);

这将加载名为other_db的数据库连接配置,并返回一个数据库对象。

执行查询

现在我们已经连接到了数据库,我们可以执行查询语句。CodeIgniter为我们提供了许多内置的方法来执行不同类型的查询。

查询构建器

CodeIgniter的查询构建器是它最强大的特性之一。它提供了一种构建SQL查询语句的简单且安全的方法,无需自己拼接SQL或使用任何ORM框架。

下面是一个简单的查询构建器示例:

$this->db->select('*');
$this->db->from('users');
$query = $this->db->get();

这里我们选择了所有的列,并从名为users的表中查询。要获得查询结果,我们可以使用get()方法。

原始查询

当需要执行一些比较复杂的查询时,可以使用原始查询。虽然这可能会让你的代码更难维护和更容易受到SQL注入攻击,但它通常比较灵活。

下面是一个简单的原始查询示例:

$query = $this->db->query("SELECT * FROM users WHERE status = 'active'");

这里我们使用query()方法执行了一条原始SQL查询语句,并返回了一个结果对象。注意,直接使用用户提供的数据拼接SQL语句是危险的,应该避免使用。

条件查询

条件查询是两种查询方式的一种混合模式,它使用查询构建器来构造查询,同时允许在查询中包含原始SQL。

下面是一个简单的条件查询示例:

$this->db->select('*');
$this->db->from('users');
$this->db->where('status', 'active');
$query = $this->db->get();

这里我们选择了所有的列,从名为users的表中查询,并添加了一个条件来仅返回状态为active的行。

结论

That's it! 现在你已经学会了如何连接到数据库并执行查询。当然,这只是冰山一角。CodeIgniter还提供了许多其他功能来帮助你更轻松地操作数据库。如果您有兴趣了解更多信息,请查阅CodeIgniter的文档。