#1 jake
delete按条件删除记录
用法:delete($conditions)
参数:
$conditions,数组形式,查找条件,此参数的格式用法与find/findAll的查找条件参数是相同的。
delete的操作将删除符合$conditions条件的记录。
例子:
// 这里我们将删除小李的第二条留言,也就是gid=13的记录
// 构造查找条件
$conditions = array('gid'=>13); // 构造条件
$gb = spClass('gb');
$gb->delete($conditions);
原来的数据表:
12 小李 我的留言 2009-10-26 10:04:53 218.82.32.12
13 小李 我的第二条留言 2009-10-26 10:04:53 218.82.32.12
经过执行$gb->delete($conditions);后:
12 小李 我的第一条留言 2009-10-26 10:04:53 218.82.32.12
gid为13的记录已被删除
返回:
返回TRUE则是语句执行成功,无论有无符合条件的记录,只要操作正常执行则返回TRUE。
返回FALSE是语句执行失败
请注意,delete和update的返回结果,如为TRUE,则代表数据库操作执行成功,但并不代表肯定是删除或更新了记录。只要是没有执行错误,都只会返回TRUE。如果希望能够检查,是否有delete或update了记录,可以使用affectedRows来获取delete或update的记录数量。
即使delete没有删除任何一条记录,只要语句执行没有问题,也会返回TRUE。
affectedRows可以获取delete、update、create等操作的“影响行数”,也就是“删除了多少条件记录”或“新增/更新了多少条记录”。
按给定的数据表的主键删除记录
用法:deleteByPk($pk)
参数:
$pk,字符串或数字,数据表主键的值。
该函数简化了delete的操作,根据给定的主键删除对应的记录。
例子:
// 在gb表中gid就是主键,我们将删除gid为13的记录
// 使用deleteByPk
$gb->deleteByPk(13);
// 等同于使用delete
$conditions = array('gid'=>13); // 构造条件
$gb->delete($conditions);
2012-08-04 16:25:08