删除数据,一些案例实在的说明一些代码
2014-04-02 18:06
127 查看
CakePHP的模型类提供了一些方法来从数据库删除记录。
delete
delete(integer $id = null, boolean $cascade = true);
删除这个记录被$ id。默认情况下,还依赖于指定的记录删除记录被删除。
例如,当删除一个用户记录,与许多配方记录(用户“hasMany”或“hasAndBelongsToMany”食谱):
如果美元级联设置为true,相关配方记录也删除模型的dependent-value是否设置为true。
如果美元级联设置为false,配方记录用户被删除后将继续。
如果您的数据库支持外键和级联删除,通常是更有效率的依赖比CakePHP的级联功能。使用模型的级联特性的一个好处Model::delete(),它允许您利用行为和模型回调函数:
$this->Comment->delete($this->request->data('Comment.id'));
你可以把自定义逻辑删除过程使用beforeDelete和afterDelete回调模型和行为。有关更多信息,请参见回调方法。
deleteAll
deleteAll(mixed $conditions, $cascade = true, $callbacks = false)
deleteAll() delete()类似,除了deleteAll()将删除所有记录匹配提供的条件。$条件数组应该作为SQL提供片段或数组。
环境条件相匹配
级联布尔,删除记录设置为true,取决于这个记录
回调布尔,跑回调
返回布尔真正的成功,如果执行失败将返回false。
例子:
// Delete with array conditions similar to find()
$this->Comment->deleteAll(array('Comment.spam' => true), false);
如果你与回调函数和/或级联删除,会被发现,然后删除行。这往往会导致更多的查询。协会将重置在匹配的记录被删除之前deleteAll()。如果你使用bindModel()或unbindModel()改变的关联,你应该设置重置为假。
请注意
deleteAll()将返回true即使没有记录删除,删除查询是成功的条件,没有匹配的记录依然存在。
delete
delete(integer $id = null, boolean $cascade = true);
删除这个记录被$ id。默认情况下,还依赖于指定的记录删除记录被删除。
例如,当删除一个用户记录,与许多配方记录(用户“hasMany”或“hasAndBelongsToMany”食谱):
如果美元级联设置为true,相关配方记录也删除模型的dependent-value是否设置为true。
如果美元级联设置为false,配方记录用户被删除后将继续。
如果您的数据库支持外键和级联删除,通常是更有效率的依赖比CakePHP的级联功能。使用模型的级联特性的一个好处Model::delete(),它允许您利用行为和模型回调函数:
$this->Comment->delete($this->request->data('Comment.id'));
你可以把自定义逻辑删除过程使用beforeDelete和afterDelete回调模型和行为。有关更多信息,请参见回调方法。
deleteAll
deleteAll(mixed $conditions, $cascade = true, $callbacks = false)
deleteAll() delete()类似,除了deleteAll()将删除所有记录匹配提供的条件。$条件数组应该作为SQL提供片段或数组。
环境条件相匹配
级联布尔,删除记录设置为true,取决于这个记录
回调布尔,跑回调
返回布尔真正的成功,如果执行失败将返回false。
例子:
// Delete with array conditions similar to find()
$this->Comment->deleteAll(array('Comment.spam' => true), false);
如果你与回调函数和/或级联删除,会被发现,然后删除行。这往往会导致更多的查询。协会将重置在匹配的记录被删除之前deleteAll()。如果你使用bindModel()或unbindModel()改变的关联,你应该设置重置为假。
请注意
deleteAll()将返回true即使没有记录删除,删除查询是成功的条件,没有匹配的记录依然存在。
相关文章推荐
- winform代码:关联窗体数据更新,删除dataGridview中选中的一行或多行
- java 数据结构之删除链表中的元素实例代码
- UNIX文件系统下误删除的数据恢复经典案例--UFS删除恢复
- ABAP--如何使用REUSE_ALV_GRID_DISPLAY函数删除内表数据(样例代码,感谢依风提供)
- Android清除本地数据缓存代码案例
- java代码删除数据库中树形结构数据
- 下载文件-javaweb案例(内附代码详细说明)
- 我曾经对重复数据删除的一些误解(二)
- JS: 重新组织 mongoDB数据库中的 数据格式的方法 / 导入导出 / 附案例代码
- 【淘梦网络】thinkphp5根据主键删除数据库和添加数据的完整代码!
- SQL对冗余数据的删除重复记录只保留单条的说明
- 【iOS开发-76】Private Contacts案例:导航控制器使用、数据传递、第三方类库使用、tableViewCell的加入删除、数据存储等
- 工作中遇到的问题:百万条数据的查询、删除、修改效率提高的一些思考,解决方案(二)
- 一些有关检查数据的JS代码
- python 一些数据格式说明
- 关于Android大数据收集,埋点统计的详细讲解以及案例代码分析附github代码
- Python机器学习中的实用小操作(一):数据清理篇 阿萨姆 2 个月前 0. 背景 很多朋友评论希望我共享答案和文章中提到的操作代码,比如生成相关性图谱等。为了方便大家,开始介绍一些虽然简单但很有用
- 意外删除Oracle数据文件(dbf),恢复oralce库的解决办法--Oracle错误代码:ORA-01033
- 一些SQLite数据的说明
- 删除数据库冗余数据 代码直接可用