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”中。。。。