CI框架数据库操作详解:增删改查实践

0 下载量 119 浏览量 更新于2024-08-29 收藏 61KB PDF 举报
"CI框架数据库操作总结" CI框架(CodeIgniter)是一个轻量级的PHP开发框架,它提供了丰富的工具来简化Web应用的构建过程,包括数据库操作。本实例主要讲解了如何在CI框架中进行数据库的增删改查(CRUD)操作。 在CI中,数据库操作通常通过Model层来完成,它与Controller(控制器)和View(视图)共同构成了MVC(模型-视图-控制器)架构。`CQuery` 类是控制器的一个实例,负责调度和处理用户请求。 首先,我们看到`CQuery`类继承自`Controller`,并在构造函数中可以加载数据库库(虽然在这个例子中并未启用)。要启用数据库,应取消注释`$this->load->database();`这行代码。 在`index()`方法中,`CQuery`类加载了名为`MQuery`的模型,并重命名为`queryList`。这样,就可以通过`$this->queryList`来调用模型中的方法。接着,调用了`queryList()`方法获取数据库中的数据,并将结果分配给变量`res`,最后使用Smarty模板引擎显示结果到视图`train/vquery.tpl`。 `addPage()`方法用于加载新增用户的页面模板`train/addPage.tpl`,而`add()`方法则处理用户的提交数据,执行新增操作。在这个方法中,从POST请求中获取用户输入的数据,如用户名、密码、真实姓名等。然后,这些数据将被用来调用`MQuery`模型中的方法,进行数据库插入操作。在实际应用中,应当对这些数据进行验证和清理,以防止SQL注入等安全问题。 CI框架的数据库操作库(DB Active Record)提供了一种面向对象的方式来执行SQL查询。例如,创建新用户时,`MQuery`模型中的`add()`方法可能会包含如下代码: ```php function add($data) { $this->db->insert('users', $data); return $this->db->insert_id(); } ``` 在这里,`$data`是一个包含所有字段值的关联数组,`$this->db->insert('users', $data);`将执行INSERT语句,将数据插入到`users`表中,而`$this->db->insert_id();`则返回新插入记录的ID。 此外,对于删除、更新操作,CI框架同样提供了方便的方法。例如,删除一条记录可以使用`$this->db->delete('table_name', array('id' => $id));`,更新记录则可以使用`$this->db->update('table_name', $data, array('id' => $id));`。 总结来说,CI框架通过Model层的封装,使得数据库操作变得简单且易于理解。开发者可以专注于业务逻辑,而不必过于关注底层的SQL语法,从而提高了开发效率和代码可维护性。在实际项目中,结合CI的其他特性如错误处理、助手函数、库文件等,可以构建出高效、稳定的Web应用程序。