创建MSSQL存储过程以检查TableA记录计数。然后将TableA记录插入TableB

时间:2011-04-27 22:53:41

标签: sql-server sql-server-2008

希望有人能给我一个如何在MSSQL 2008/2005中执行以下操作的一般示例

我需要在1个存储过程中执行以下操作。

我需要它来验证TableA有多于1条记录。 如果TableA有多个记录,那么:

删除TableB中的所有记录并将记录从TableA复制到TableB

为了论证和/或简单,TableA和TableB方案是相同的

如果我在VB中执行任务但是我正在尝试将这项工作卸载到SQL服务器并且我不熟悉如何实现这一点,那么这个任务就不会那么难了。

2 个答案:

答案 0 :(得分:3)

尝试这样的事情:

 CREATE PROC DoStuff
 AS 

    IF (SELECT COUNT(*) FROM TableA) > 1
    BEGIN

         DELETE TableB;
         INSERT INTO TableB (ID, CustomerName) 
             SELECT ID, CustomerName
             FROM TableA;
    END

答案 1 :(得分:0)

我建议查看SQL Server集成服务。它旨在完全执行您尝试执行的任务类型。

以下是一些可以帮助您入门的链接:

这些过去使用增量加载,这似乎是你想要做的。