SQL Server 2008,这是函数
ALTER FUNCTION [dbo].[This_Function]
(
@StartDate As smalldatetime,
@EndDate As smalldatetime
)
RETURNS TABLE
AS
RETURN
(
Select col1, col2, col3, col4, .... col20 from Table1 t1
inner join
dbo.Function2 f2
t1.id = f2.id
)
结果很糟糕!
|col1 (boolean)|col2 (Date)|...
|2012-01-03 | abcdefghi |...
如果我在函数外部运行上述查询,它会带来一致的结果。
这里很奇怪:
我运行上面的整个查询而不进行任何更改,以便更改/更新函数。
然后再次select
这个函数,它会带回正确的结果!
该函数中没有使用@temp
表,但对于SQL Server函数本身,是什么导致它无法正确更新?
N.B。通常情况下,我使用Red-Gate Multi-Script工具让DB更新所有客户端,这可能是多脚本工具引起的问题吗?
如何在所有客户端数据库中修复它?