sql >> Databasteknik >  >> RDS >> Mysql

Hur sparar jag data korrekt i databasen?

Om du vill spara ny data, använd bara Model::save() :

$data = array(
    'ModelName' => array(
        'foo' => $foo
    )
)

// prepare the model for adding a new entry
$this->ModelName->create();

// save the data
$this->ModelName->save($data);

Om du vill uppdatera dina data, använd bara samma metod utan att anropa Model::create()

$data = array(
    'ModelName' => array(
        'id' => $id
        'foo' => $foo
    )
)

$this->ModelName->save($data);

Se även:http://book.cakephp.org/2.0/en/models/saving-your-data.html#model-save-array-data-null-boolean-validate- true-array-fieldlist-array

Redigera:

Jag antar att det här är vad du letar efter:

$this->ModelName->id = $id;
if (!$this->ModelName->exists()) {
    $this->ModelName->create();
}

$this->ModelName->save($data);


  1. Hur kan jag ytterligare optimera en härledd tabellfråga som ger bättre resultat än den JOINed-motsvarigheten?

  2. MySQL-optimerande INSERT-hastighet saktas ner på grund av index

  3. MySQL - Hur tolkar man ett strängvärde till formatet DATETIME inuti en INSERT-sats?

  4. Anropa mysql kapslade/inre funktioner i querydsl