在列中显示用户名

我们有一个由4位开发人员使用的SQL Server 2012数据库,让我们称它们为user1,user2,user3,user4。

我想在其中一个表中创建一个列让我们调用列User_Input,这个列需要显示插入任何数据的开发者的用户名,这可能吗? 例如,如果user2插入新记录,则User_Input列应该显示user2。

请让我知道,如果SQL Server不支持,并且如果有任何其他解决方案,我搜索@@函数为SQL Server和非他们似乎得到用户名。


SYSTEM_USER函数将返回用户的登录名。

您可以使用以下语句对其进行测试:SELECT SYSTEM_USER

SYSTEM_USER的MSDN文档声明:

您可以在CREATE TABLE和ALTER TABLE语句中使用带有DEFAULT约束的SYSTEM_USER函数。 您也可以将其用作任何标准功能。

以下是如何使用DEFAULT约束创建一个将SYSTEM_USER插入User_Input列的表的简单示例。

CREATE TABLE MyTable 
(
   ID int, 
   Value varchar(30), 
   User_Input varchar(200) DEFAULT SYSTEM_USER
)   

我相信这就是你要找的。

SELECT SYSTEM_USER

您可以根据需要添加此插入/更新。

CURRENT_USER提供模式,而不是与事务关联的登录。

链接地址: http://www.djcxy.com/p/5169.html

上一篇: Display the username in a column

下一篇: How do I get the peak hours from my mysql database table "userlog"