我正在试图弄清楚我是否可以在SQL Server中编写自动脚本/函数/事件来处理以下内容:
“当新行添加到表X时,将表Y行复制到表Z”
SQL Server是否处理这种功能,还是必须在C#等外部程序中执行此操作?
非常感谢 - kcross
编辑:关于问题的更多细节.. 表X =正常的数据库表,存储的行,比如用户信息。 表Y =固定行的数据库表,存储实时数据(如平面的GPS坐标) 表Z =用于存储每当新用户添加到表X时的历史信息。例如,假设向表X添加了新行。该问题需要将新行添加到表X时的实时数据该表将存储该数据,该表中相应的新行和数据由标识号链接。
因此,当在表X中添加新行时,创建一个脚本,该脚本自动将Y的实时数据复制到新行表Z [并且还存储相应的标识符,以便表X的新行可以与表Z的相应匹配行(S)]
答案 0 :(得分:2)
您可以使用触发器。
CREATE TRIGGER dbo.CopyYToZ
ON dbo.X
FOR INSERT
AS
BEGIN
SET NOCOUNT ON;
INSERT dbo.Z SELECT <cols> FROM dbo.Y WHERE ...
END
GO
我会提供更多细节,但你并没有提供任何问题,所以......