首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >DBAL Querybuilder未更新

DBAL Querybuilder未更新
EN

Stack Overflow用户
提问于 2017-01-25 14:05:46
回答 1查看 1.5K关注 0票数 4

我试图用DBAL查询生成器更新记录,但它似乎不起作用。我试图设置的data列只有在用数字替换这里的test示例值时才能工作。

在这种情况下,它将更新我的记录非常好。

即使我也使用了setParameter,它也会默默地失败。

代码语言:javascript
复制
$queryBuilder = $this->connection
                ->update($this->table)
                ->where('id = ?')
                ->set('data', 'test')
                ->setParameter(0, $sessionId);

我是误用了这个还是发生了别的什么事?

编辑:

insert语句工作得非常好:

代码语言:javascript
复制
$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);
        }
EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2017-01-25 14:45:33

您可以在update中使用参数,就像在insert中使用参数一样

代码语言:javascript
复制
$queryBuilder = $this->connection
            ->update($this->table)
            ->set('data', '?')
            ->where('id = ?')
            ->setParameter(0, 'test')
            ->setParameter(1, $sessionId);
票数 3
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/41853664

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档