我正在尝试像这样更新总和列数据:
update
tableName
set
score = myFunction(tableName.id)
在另一方面,我希望有一个这样的表:
column1 | column2
------------------------------
id1 | myFunction(id1)
id2 | myFunction(id2)
id3 | myFunction(id3)
id4 | myFunction(id4)
我将myFunction
定义为标量值函数。我也尝试过它作为表值函数
但我在SQL Server 2012中看到了这个错误:
Msg 195,Level 15,State 10,Line 14
'myFunction'不是公认的内置函数名称。
请帮帮我
答案 0 :(得分:3)
尝试使用函数的全名,包括数据库和模式名称:
update
tableName
set
score = <database>.<schema>.myFunction(tableName.id)
我认为只需要架构名称,但我已经养成了放置两者的习惯。
documentation解释说至少需要两部分名称。如果您不知道什么模式,那么以下内容可能会起作用:
update
tableName
set
score = dbo.myFunction(tableName.id)