->delete()
->delete() -- Delete items from table
Synopsis
int $DB_DataObject->delete ([boolean $useWhere])
Description
Deletes data from the database, either using primary key or based on a
whereAdd() method call.
By default the delete will base its query on the set variables,
however if you wish to use the
whereAdd()
method you should set the $useWhere parameter to DB_DATAOBJECT_WHEREADD_ONLY.
Return value
int number of rows affected or FALSE on failure
Throws
Table 39-1. Possible PEAR_Error values
| Error code | Error message | Meaning | Solution |
|---|
| DB_* | "*" | see PEAR::DB | see PEAR::DB |
| DB_DATAOBJECT_ERROR_NODATA |
"delete: No Data specifed for query
$condition"
| | |
Note
This function can not be called
statically.
Example
Example 39-1. Simple Delete
<?php
$person = new DataObjects_Person;
$person->get(12);
$person->delete();
$person = new DataObjects_Person;
$person->name = 'test';
$person->age = 21;
$person->delete();
$person = new DataObjects_Person;
$person->whereAdd('age < 21');
$person->delete(DB_DATAOBJECT_WHEREADD_ONLY);
?>
|
|
Example 39-2. Resulting SQL
<?php
SELECT * FROM person WHERE person.id = 12
DELETE FROM person WHERE ( person.id = 12 )
DELETE FROM person WHERE ( person.name = 'test' ) AND ( person.age = 21 )
DELETE FROM person WHERE ( age < 21 )
?>
|
|