sqlservice 使用存储过程定时同步数据

CREATE PROCEDURE [dbo].[PROC_User]
AS
BEGIN
    DECLARE @LastDate DATETIME

    SELECT @LastDate=MAX(stime) FROM user2

BEGIN TRANSACTION --事务开始            
 BEGIN TRY   --sql try  
  
    SELECT * INTO #Temp_User FROM
    (
        SELECT
        age,
        name,
        sex
        FROM User1  
        WHERE @LastDate IS NULL OR stime>@LastDate
    )T

    INSERT INTO user2
    (
        age,
        name,
        sex
    ) 
    SELECT    
        age,
        name,
        sex
    FROM #Temp_User t 
     

    DROP TABLE  #Temp_User

COMMIT TRANSACTION --执行结束保存数据库
END TRY 
                   
BEGIN CATCH  ---sql catch                                    
ROLLBACK TRANSACTION    ---数据回滚                                                              
END CATCH  

END

GO

上面这段代码  是可以是从视图 或者表中 定时同步数据,表中需要有时间进行判读。使用时 可以挂到数据库的作业上  定时执行

posted @ 2021-05-20 14:17  路边有一棵草  阅读(343)  评论(0编辑  收藏  举报