首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
社区首页 >问答首页 >创建存储过程。将数据从一个表插入到另一个表中。执行每个新条目

创建存储过程。将数据从一个表插入到另一个表中。执行每个新条目
EN

Stack Overflow用户
提问于 2019-04-16 13:59:59
回答 1查看 71关注 0票数 0

我有两张桌子。我需要一个存储过程(或触发器),它在每次向其中一个表添加新条目时执行。获取该特定行并将其插入到另一个表中。

我已经查看了存储过程,并在一定程度上了解了如何设置该过程,但是我不知道如何仅在两个表中的一个表中插入新行时才专门执行该过程。

表1(我希望从其中提取过程的表)名称:客户端列(Id、UniqClient、Reviewed_Renewal_Policy、DateCreated、InsertedBy)

这些值是通过不同的过程插入的。所以,值已经存在了。

表2(在此处插入这些值)名称: tblLogPolicyRenewalNotes

每次在表1 (Reviewed_Renewal_Policy)中插入新条目时执行此过程

我可以通过C#后台代码来实现这一点,但这是多余的代码,我可以在后端完成。任何帮助都将不胜感激。

编辑:这是为了显示我想要插入的数据

代码语言:javascript
运行
AI代码解释
复制
AFTER NEW INSERT (FROM Table name Reviewed_Renewal_Policy)
COLUMNS(Id, UniqClient, Client, DateCreated, InsertedBy)
VALUES (447, 73567, 'Aspirations Inc', '2019-04-01 00:00:00.000', 'jSmith')


INTO Table Name tblLogPolicyRenewalNotes 
Values above 
EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2019-04-16 14:13:22

我相信这就是你要找的。我们没有真正的DDL,所以如果有任何需要更正的列名,你需要修改它们:

代码语言:javascript
运行
AI代码解释
复制
CREATE TRIGGER DuplicateInsert ON dbo.Reviewed_Renewal_Policy 
AFTER INSERT AS BEGIN

    INSERT INTO dbo.tblLogPolicyRenewalNotes(Id, UniqClient, Client, DateCreated, InsertedBy)
    SELECT Id, UniqClient, Client, DateCreated, InsertedBy
    FROM inserted;

END;

显然,您可以将触发器重命名为其他名称。

票数 4
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/55710020

复制
相关文章

相似问题

领券
社区富文本编辑器全新改版!诚邀体验~
全新交互,全新视觉,新增快捷键、悬浮工具栏、高亮块等功能并同时优化现有功能,全面提升创作效率和体验
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档
查看详情【社区公告】 技术创作特训营有奖征文