2
我能从该过程中找出谁正在执行存储过程吗?从上述过程中找出谁在执行存储过程
我能从该过程中找出谁正在执行存储过程吗?从上述过程中找出谁在执行存储过程
要做到这一点,您可以使用功能,如
SUSER_NAME()
功能(它返回用户的登录标识名)MSDN articleCURRENT_USER()
(它返回当前的名称用户)MSDN articleUSER_NAME()
(它返回来自指定标识号的数据库用户名MSDN articleORIGINAL_LOGIN()
(10它返回连接到SQL Server实例的登录名。)MSDN article例子:
CREATE PROCEDURE
AS
BEGIN
DECLARE @executor
SELECT @executor = SUSERNAME()
...
END
你可以在这个非常有用的文章阅读更多:
尝试'SET @executor = ORIGINAL_LOGIN();' –
在很多情况下,没有可用的信息“who”。例如,一个网站可能使用单个连接字符串来访问数据库。获取SQL用户不会告诉你任何关于谁在使用该网站的信息,无论他们是否通过了认证......。 – HABO