编程语言
首页 > 编程语言> > php – DBAL Querybuilder没有更新

php – DBAL Querybuilder没有更新

作者:互联网

我正在尝试使用DBAL Query构建器更新记录,但它似乎不起作用.我尝试设置的数据列只有在我用数字替换此处的测试示例值时才会起作用.

在这种情况下,它将完美地更新我的记录.

即使我使用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中一样使用更新中的参数:

$queryBuilder = $this->connection
            ->update($this->table)
            ->set('data', '?')
            ->where('id = ?')
            ->setParameter(0, 'test')
            ->setParameter(1, $sessionId);

标签:php,symfony,query-builder,dbal
来源: https://codeday.me/bug/20190627/1308467.html