->delete()

->delete() – Efface des éléments d'une table

Synopsis

int $DB_DataObject->delete ( boolean $useWhere )

Description

Efface des données d'une base de données, soit en utilisant une clé primaire, ou basé sur un appel à une méthode whereAdd(). Par défaut, l'effacement basera sa requête sur les variables définies, sinon, si vous voulez utiliser la méthode whereAdd(), vous devez définir le paramètre $useWhere à DB_DATAOBJECT_WHEREADD_ONLY.

Parameter

  • boolean $use_where - utilise les conditions whereAdd() (par défaut, l'effacement n'utilise que les clés primaires).

Return value

int - nombre de lignes affectées ou FALSE si une erreur survient.

Throws

Possible PEAR_Error values
Code erreur Message d'erreur Signification 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

Effacement simple

<?php
$person 
= new DataObjects_Person;
$person->get(12);
$person->delete();

$person = new DataObjects_Person;
$person->whereAdd('age < 21');
$person->delete(DB_DATAOBJECT_WHEREADD_ONLY);
?>

SQL résultant

<?php
SELECT 
FROM person WHERE id=12
DELETE FROM person WHERE id
=12 AND name='test' AND age=21
DELETE FROM person WHERE age 
21
?>