DBAL Querybuilder 不更新
DBAL Querybuilder not updating
我正在尝试使用 DBAL 查询生成器更新记录,但它似乎不起作用。我尝试设置的 data
列只有在我将此处的 test
示例值替换为数字时才有效。
在那种情况下,它将完美地更新我的记录。
即使我也使用 setParameter
它也会默默地失败。
$queryBuilder = $this->connection
->update($this->table)
->where('id = ?')
->set('data', 'test')
->setParameter(0, $sessionId);
我是误用了这个还是发生了其他事情?
编辑:
insert 语句工作得很好:
$queryBuilder = $this->connection
->insert($this->table)
->values([
'id' => '?',
'secure' => '?',
'modified' => '?',
'lifetime' => '?',
'user_hash' => '?',
'data' => '?',
])
->setParameter(0, $sessionId)
->setParameter(1, 'y')
->setParameter(2, time())
->setParameter(3, $this->minutes)
->setParameter(4, 'test')
->setParameter(5, $data);
}
您可以像在 insert
中一样使用 update
中的参数:
$queryBuilder = $this->connection
->update($this->table)
->set('data', '?')
->where('id = ?')
->setParameter(0, 'test')
->setParameter(1, $sessionId);
我正在尝试使用 DBAL 查询生成器更新记录,但它似乎不起作用。我尝试设置的 data
列只有在我将此处的 test
示例值替换为数字时才有效。
在那种情况下,它将完美地更新我的记录。
即使我也使用 setParameter
它也会默默地失败。
$queryBuilder = $this->connection
->update($this->table)
->where('id = ?')
->set('data', 'test')
->setParameter(0, $sessionId);
我是误用了这个还是发生了其他事情?
编辑:
insert 语句工作得很好:
$queryBuilder = $this->connection
->insert($this->table)
->values([
'id' => '?',
'secure' => '?',
'modified' => '?',
'lifetime' => '?',
'user_hash' => '?',
'data' => '?',
])
->setParameter(0, $sessionId)
->setParameter(1, 'y')
->setParameter(2, time())
->setParameter(3, $this->minutes)
->setParameter(4, 'test')
->setParameter(5, $data);
}
您可以像在 insert
中一样使用 update
中的参数:
$queryBuilder = $this->connection
->update($this->table)
->set('data', '?')
->where('id = ?')
->setParameter(0, 'test')
->setParameter(1, $sessionId);