Arm*_*ian 3 sql-server default
如何创建一个列,其中包含当前在表中创建行的用户的默认值?
我试过了system_user,但是这表明从桌子上选择时谁登录了.
尝试这样的事情:
CREATE TABLE DemoTable
(
ID INT IDENTITY(1,1),
SomeValue VARCHAR(50),
CreatedBy VARCHAR(50)
CONSTRAINT DF_DemoTable_CreatedBy DEFAULT(SUSER_NAME())
)
Run Code Online (Sandbox Code Playgroud)
您基本上在其中一个列上创建了一个默认约束,并使用该SUSER_NAME()函数用当前登录的用户填充它.
然后,当您将值插入该表时:
INSERT INTO dbo.DemoTable(SomeValue) VALUES('Some Value')
Run Code Online (Sandbox Code Playgroud)
并且您没有指定显式值CreatedBy,该列填充了SUSER_NAME()函数中的值,您可以通过从表中选择来检查:
SELECT * FROM dbo.DemoTable
Run Code Online (Sandbox Code Playgroud)
SUSER_NAME()SUSER_ID()在TechNet上阅读更多关于和一些相关功能(如)的内容.
| 归档时间: |
|
| 查看次数: |
7936 次 |
| 最近记录: |