如何获得Microsoft SQL Server中的当前用户?

时间:2019-05-06 08:20:48

标签: sql sql-server

我正在尝试让当前用户登录到我的Microsoft SQL Server数据库中。

经过研究,我发现诸如CURRENT_USERUSER之类的功能,应该向我显示当时我正在使用的用户。

SELECT USER, CURRENT_USER

问题是这些函数不断给我dbo作为结果,据我所知,这就是我正在使用的架构。

我使用的功能不正确吗?

也许我的用户有任何问题?

4 个答案:

答案 0 :(得分:3)

您需要SUSER_NAME(),它为您提供了当前用户的登录标识。

答案 1 :(得分:1)

尝试一下

SELECT SYSTEM_USER

要了解为什么您会得到dbo作为答案,建议阅读this

答案 2 :(得分:1)

您可以使用SYSTEM_USER代替SUSER_NAME()。在 if (model.FileUpload != null) { IMediaService mediaService = Services.MediaService; var media = mediaService.CreateMedia(model.FileUpload.FileName, 1834, "File"); media.SetValue("umbracoFile", model.FileUpload.InputStream); mediaService.Save(media); content.SetValue("entry", $"media/{media.Key}"); } 的{​​{3}}中,

  

返回用户的登录标识名称。

答案 3 :(得分:0)

您可以使用SYSTEM_USER来获取当前用户名。

您可以参考下面的链接以获取更多详细信息。

https://docs.microsoft.com/en-us/sql/t-sql/functions/system-user-transact-sql?view=sql-server-2017