mixed $DB_DataObject->insert (
)
Insert les données dans la base de données, en se basant sur les valeurs des variables de l'objet courant et retourne l'ID des éléments insérés si les séquences ou les clés primaires sont utilisées. Les valeurs sont correctement échappées et quelques vérifications sont effectuées.
Avec MySQL, la méthode mysql_next_id() est utilisée ; avec les autres bases de données, la méthode de séquence PEAR DB sequence method est utilisée.
Notez que insert() peut ne pas retourner un ID correct dans quelques situations :
Si le gestionnaire de base de données ne le supporte pas.
Le générateur ne marque pas le flag de la bonne colonne comme autoincrement/nextval
Une erreur survient (activer le débogage pour la voir)
L'insertion échoue ou aucune ligne n'est affectée
mixed - l'ID ou la clé
Code erreur | Message d'erreur | Signification | Solution |
---|---|---|---|
DB_DATAOBJECT_ERROR_INVALIDCONFIG | "insert:No table definition for $table" | ||
DB_DATAOBJECT_ERROR_NODATA | "insert: No Data specifed for query" | ||
DB_* | * | Voir PEAR::DB | Voir PEAR::DB |
This function can not be called statically.
Insertion simple
<?php
$person = new DataObjects_Person;
$person->name='fred';
$id = $person->insert();
?>
SQL résultant
<?php
INSERT INTO person (name) VALUES ('fred');
?>