我有两张表,一张是:Prod_Device,另一张是:Prod_DevicePhase两张表是有关联的。
我想根据 Prod_Device 表的 FNumber 字段 和 Prod_DevicePhase表的 FPhaseName字段的条件而清空体 Prod_DevicePhase表的FFinisherID , FFinishDate字段,所以定义了一个 function
在检查的时候,没有语法错误,可是在运行的时候,就提示:
“消息 443,级别 16,状态 2,过程 SetAssureBack,第 5 行
在函数内不正确地使用了 'UPDATE'。”,求高人指教.
create function SetAssureBack (@FNumber varchar(50),@FPhaseName varchar(50))
returns int
as
begin
update Prod_DevicePhase set FFinisherID=null,FFinishDate=null where FDeviceID = (select FID from Prod_Device where FNumber=@FNumber)
and FPhaseName=@FPhaseName;
return 1;
end
go
FDeviceID IN (select FID....
看意思好像不能在里面用update,如果想用,换成procedure吧。
只能执行select语句,不支持update,insert,