set() 공개 메소드

$qb = $conn->createQueryBuilder() ->update('users', 'u') ->set('u.password', md5('password')) ->where('u.id = ?');
public set ( string $key, string $value )
$key string The column to set.
$value string The value, expression, placeholder, etc.
 /**
  * @test
  */
 public function setWithoutNamedParameterQuotesIdentifierAndDelegatesToConcreteQueryBuilder()
 {
     $this->connection->quoteIdentifier('aField')->shouldBeCalled()->willReturnArgument(0);
     $this->concreteQueryBuilder->createNamedParameter(Argument::cetera())->shouldNotBeCalled();
     $this->concreteQueryBuilder->set('aField', 'aValue')->shouldBeCalled()->willReturn($this->subject);
     $this->subject->set('aField', 'aValue', false);
 }
예제 #2
0
 /**
  * Sets the values and parameters of the upcoming given query according
  * to the entity.
  *
  * @param CRUDEntity $entity
  * the entity with its fields and values
  * @param QueryBuilder $queryBuilder
  * the upcoming query
  * @param boolean $setValue
  * whether to use QueryBuilder::setValue (true) or QueryBuilder::set (false)
  */
 protected function setValuesAndParameters(CRUDEntity $entity, QueryBuilder $queryBuilder, $setValue)
 {
     $formFields = $this->definition->getEditableFieldNames();
     $count = count($formFields);
     for ($i = 0; $i < $count; ++$i) {
         $value = $entity->get($formFields[$i]);
         $type = $this->definition->getType($formFields[$i]);
         if ($type == 'bool') {
             $value = $value ? 1 : 0;
         }
         if ($type == 'date' || $type == 'datetime' || $type == 'reference') {
             $value = $value == '' ? null : $value;
         }
         if ($setValue) {
             $queryBuilder->setValue('`' . $formFields[$i] . '`', '?');
         } else {
             $queryBuilder->set('`' . $formFields[$i] . '`', '?');
         }
         $queryBuilder->setParameter($i, $value);
     }
 }
예제 #3
0
 /**
  * Sets a new value for a column in a bulk update query.
  *
  * <code>
  *     $qb = $conn->getQueryBuilder()
  *         ->update('users', 'u')
  *         ->set('u.password', md5('password'))
  *         ->where('u.id = ?');
  * </code>
  *
  * @param string $key The column to set.
  * @param string $value The value, expression, placeholder, etc.
  *
  * @return \OCP\DB\QueryBuilder\IQueryBuilder This QueryBuilder instance.
  */
 public function set($key, $value)
 {
     $this->queryBuilder->set($this->helper->quoteColumnName($key), $this->helper->quoteColumnName($value));
     return $this;
 }
예제 #4
0
 /**
  * Sets a new value for a column in a bulk update query.
  *
  * @param string $key The column to set.
  * @param string $value The value, expression, placeholder, etc.
  * @param bool $createNamedParameter Automatically create a named parameter for the value
  *
  * @return QueryBuilder This QueryBuilder instance.
  */
 public function set(string $key, $value, bool $createNamedParameter = true) : QueryBuilder
 {
     $this->concreteQueryBuilder->set($this->quoteIdentifier($key), $createNamedParameter ? $this->createNamedParameter($value) : $value);
     return $this;
 }
예제 #5
0
 /**
  * Sets a new value for a column in a bulk update query.
  *
  * @param string $key   The column to set.
  * @param string $value The value, expression, placeholder, etc.
  *
  * @return self
  */
 public function set($key, $value)
 {
     $this->qb->set($key, $value);
     return $this;
 }