2014-09-04 27 views
1

我正在执行可编程性 - >函数 - >标量函数下的标量值函数。SQL Server 2012 - 函数在由SQL用户执行时返回NULL,但不是Windows用户/组

SELECT dbo.fn_EndOfThisYear(GetDate()) 

当作为Windows组的用户部分登录,这将返回“2015年1月1日05:00:00.000”

当作为SQL用户登录,同样的语句返回NULL 。

任何人都可以解释为什么和我需要改变?

+3

可能你与我们分享功能代码? – gvee 2014-09-04 16:31:20

+0

您指出我朝着正确的方向前进。我没有创建这些函数,所以经过更多的挖掘,我意识到它依赖于UTC到本地时间转换函数,它可以找到当前用户的guid。 SQL用户帐户没有guid,因此返回NULL。 – 2bor02b 2014-09-04 16:49:27

回答

1

该函数的定义依赖于另一个函数,该函数找到用户的guid并将UTC转换为本地时间。 SQL用户帐户没有GUID,因此返回NULL。

相关问题