我有个问题
update a
set customer_no = 85002123
from TABLE_DATA a
where customer_no = 80282318
table\u数据的输出如下所示
Customer_no Season TextField ID
--------------------------------------
80282318 2017 TEXT1 48807
80282318 2017 TEXT2 47043
80282318 2017 TEXT3 47631
80282318 2017 TEXT4 48219
80282318 2017 TEXT5 49395
我们想要的是
Customer_no Season TextField ID
--------------------------------------
85002123 2017 TEXT1 48807
85002123 2017 TEXT2 47043
85002123 2017 TEXT3 47631
85002123 2017 TEXT4 48219
85002123 2017 TEXT5 49395
Table_data
具有唯一的
ID
钥匙,那不是客户编号。
它有5行customer\u no 80282318,我希望所有5行都更新为新值,与任何其他条件无关。
(我无法根据ID键进行更改)因为这只是我们数据的一个子集-我们有数百行这样的数据,每个客户2-5行一组\u否。我无法确定如何运行更新脚本,因为我不断遇到以下错误。
Msg 512,16级,状态1,过程LT\U TABLE\U DATA\U trigger\U UPDATE,第11行
子查询返回了多个值。当子查询后跟=,!=,时,不允许这样做<<=>>=或者当子查询用作表达式时。
代码上的触发器显示以下内容:
declare @id_key int = (select e.id_key from TABLE_DATA e join inserted i on e.id_key = i.id_key)
update TABLE_DATA
set last_update_dt = GETDATE(),
last_updated_by = user_name()
where id_key = @id_key