嘿,我正在尝试在SQL Server中创建一个触发器,以便在更新记录后自动在列中插入getdate()和SYSTEM_USER,而不是包括在更新查询中。
DB: Company
Table: dbo.Lincensee
Column: DateModified -> I want to Insert: getdate()
Column: ModifiedBy - > I want to insert: SYSTEM_USER
从在C#中运行的查询更新特定记录之后。
查询示例:
string strQuery = @"UPDATE dbo.Licensee SET LNAME = @LastName,
FNAME = @FirstName,
MIDNAME = @MiddleName,
FIRMNAME = @OrganizationName,
SSN = @SSN,
WHERE LICNUM = @licenseToUpdate";
SqlCommand updateCommand = new SqlCommand(strQuery, connUpdateLicense);
...
PS:我可以在Set查询中对其进行硬编码,但我更愿意将其放在触发器中。
有什么想法吗?谢谢。
发布于 2017-03-09 22:06:30
我跟随Suresh Link,使用After Update找到了T-SQL代码。并使用我的数据库进行修改:
create trigger [INS].[licpro_modby_dateby]
on [INS].[LICPRO]
after insert, update
as
begin
update a
set modifiedby = system_user,
datemodified = getdate()
from ins.licpro as a
join inserted as b
on a.licnum = b.licnum;
谢谢你们,很抱歉回复得太晚了,我要走了。
https://stackoverflow.com/questions/42567992
复制相似问题