获取当前用户名

时间:2015-10-15 19:52:37

标签: c# list sql-server-2008

我想将当前的logonname插入SQL Server 2008数据库。登录名已经在Euser类中,如此处所示

enter image description here

我想在插入脚本中使用该登录名,如图所示

enter image description here

我将如何做到这一点?

1 个答案:

答案 0 :(得分:1)

使用CURRENT_USERUSER_NAME()

更新:使用SYSTEM_USER

  

您可以在SYSTEM中使用带有DEFAULT约束的SYSTEM_USER函数   CREATE TABLE和ALTER TABLE语句。你也可以像任何一样使用它   标准功能。如果用户名和登录名不同,   SYSTEM_USER返回登录名。如果当前用户已登录   通过使用Windows身份验证到SQL Server,SYSTEM_USER返回   Windows登录标识名称格式为:DOMAIN \ user_login_name。   但是,如果当前用户使用SQL登录到SQL Server   服务器身份验证,SYSTEM_USER返回SQL Server登录   标识名称,例如WillisJo为登录的用户   WillisJo。 SYSTEM_USER返回当前正在执行的名称   上下文。如果已使用EXECUTE AS语句切换上下文,   SYSTEM_USER返回模拟上下文的名称。

所以,这将是你的更新声明:

UPDATE dbo.mfworkorder with (rowlock) SET jobstarted=1, lasteditdt=GETDATE(), lastedited=SYSTEM_USER WHERE workorderno=@WorkOrderNo