Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/reactjs/24.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Sql server 默认登录用户到SQL Server列_Sql Server_Default - Fatal编程技术网

Sql server 默认登录用户到SQL Server列

Sql server 默认登录用户到SQL Server列,sql-server,default,Sql Server,Default,如何使用在表中创建行的用户的默认值创建列 我尝试了system\u user,但从表中选择时会显示谁已登录。尝试以下操作: CREATE TABLE DemoTable ( ID INT IDENTITY(1,1), SomeValue VARCHAR(50), CreatedBy VARCHAR(50) CONSTRAINT DF_DemoTable_CreatedBy DEFAULT(SUSER_NAME()) ) 基本上,您可以在一个列上创

如何使用在表中创建行的用户的默认值创建列


我尝试了
system\u user
,但从表中选择时会显示谁已登录。

尝试以下操作:

CREATE TABLE DemoTable
(
    ID INT IDENTITY(1,1), 
    SomeValue VARCHAR(50), 
    CreatedBy VARCHAR(50) 
        CONSTRAINT DF_DemoTable_CreatedBy DEFAULT(SUSER_NAME())
) 
基本上,您可以在一个列上创建一个默认约束,然后使用
SUSER\u NAME()
函数将当前登录的用户填充到该列中

然后在该表中插入值时:

INSERT INTO dbo.DemoTable(SomeValue) VALUES('Some Value')
如果不指定
CreatedBy
的显式值,则该列将填充
SUSER\u NAME()
函数中的值,您可以通过从表中选择来检查:

SELECT * FROM dbo.DemoTable

(比如TechNet上的
SUSER\u ID()
)。

Thx,就是这样!问题是,我使用了计算值功能。。。。问题,是否有办法限制用户手动将添加到“CreatedBy”中。。。。