->count() (Previous) (Next) ->update()

View this page in Last updated: Sun, 31 Aug 2008
English | Dutch | French | German | Hungarian | Japanese | Polish | Russian | Spanish | Plain HTML

->insert()

->insert() -- Insert les variables de l'objet courant dans la base de données

Description

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

Valeur retournée

mixed - l'ID ou la clé

Note

Cette fonction ne peut pas être appelée de façon statique.

->count() (Previous) (Next) ->update()

Download Documentation Last updated: Sun, 31 Aug 2008
Do you think that something on this page is wrong? Please file a bug report or add a note.
User Notes:
Note by: Charlie Shin
I spent at least 3 days to find out why there is extra table with additional "_seq" in my database. I finally realize it is created because sequenceKey(). I don't know why bother to find sequenceKey() if my table is no need sequence key? This feature should not set by flag or option, otherwise I have to manually add in return array(false, false) each time after if package upgrade?
Note by: pierre2543@hotmail.com
By default insert() will populate key fields automatically. If you want to manage your own keys, override sequenceKey() in your DO as follows:

function sequenceKey(){
return array(false,false);
}