gpt4 book ai didi

sql - 更新为 NULL 的列

转载 作者:行者123 更新时间:2023-12-05 00:19:11 25 4
gpt4 key购买 nike

我有一个表 Person,其中包含一个允许 NULL 值的列 isStaff(位)。

目的是这个字段必须包含值0/1;但是,由于首先缺少对用户输入的应用程序处理,因此该列中有多个具有 NULL 值的记录。

如果我尝试执行此查询:

UPDATE Person
SET isStaff = 0
WHERE isStaff IS NULL

我得到错误:

Subquery returned more than 1 value. This is not permitted when the subquery follows =, !=, <, <= , >, >= or when the subquery is used as an expression.

知道如何解决这个问题吗?

最佳答案

如果那是您发布的查询,那么我倾向于相信您在 Person 表上有一个您甚至都不知道的触发器。

我也倾向于相信它在做一些类似的事情:

UPDATE SomeOtherTable
SET SomeColumn = 1
WHERE SomeOtherTable.ID = inserted.ID

使用触发器,inserted 表包含更新的所有 记录,而不仅仅是一条记录,您可能希望这样:

UPDATE SomeOtherTable
SET SomeColumn = 1
WHERE ID IN (SELECT ID FROM inserted)

当然,这都是推测,直到您可以确认表上是否有触发器,如果​​有,触发器在做什么。

关于sql - 更新为 NULL 的列,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12307471/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com