Esempio n. 1
0
 private function updateRow($updateColumns = array())
 {
     $updateBuilder = $this->createUpdateBuilder();
     $updateBuilder->from->add($this->table->name());
     foreach ($this->tableColumns as $column) {
         if (count($updateColumns) > 0 && !in_array($column->name, $updateColumns, true)) {
             continue;
         }
         $columnValue = $this->getInternalValue($column->name);
         if (!$this->table->isPrimary($column->name) && $columnValue !== null) {
             if ($columnValue == self::NULL) {
                 $updateBuilder->set->add($column->name, 'NULL', false);
             } else {
                 $updateBuilder->set->add($column->name, $columnValue, $column->doQuote());
             }
         }
     }
     $updateBuilder->where = $this->getPrimaryWhereClause();
     $updateBuilder->updateOne();
 }