ASP.NET使用MergeInto作數據同步,同步SQLSERVER不一樣數據庫的相同表結構的數據

 

        public string SynchronousData()
        {
            ReturnJson Rejson = new ReturnJson();
       //將WebConfig中的數據庫鏈接name中的值寫進來 string connS = ConfigurationManager.ConnectionStrings["name"].ConnectionString;
       
using (SqlConnection conn = new SqlConnection(connectionSub)) { conn.Open(); using (SqlCommand cmd = conn.CreateCommand()) { try { cmd.CommandText = "存儲過程名"; cmd.CommandType = CommandType.StoredProcedure; var ReExcute = cmd.ExecuteNonQuery(); if (ReExcute >= 0) { conn.Close(); Rejson.Code = "1"; Rejson.Errmsg = "同步成功"; return ToJson(Rejson); } else { conn.Close(); Rejson.Code = "0"; Rejson.Errmsg = "同步失敗"; return ToJson(Rejson); } } catch { conn.Close(); Rejson.Code = "3"; Rejson.Errmsg = "未知異常"; return ToJson(Rejson); } } } }

 

存儲過程數據庫

Create PROCEDURE [存儲過程名]
AS
BEGIN
MERGE INTO 目標數據表名 as T
USING 源數據表名 as S
ON T.[Id] = S.[Id]
WHEN MATCHED
THEN UPDATE SET T.[Name]=S.[Name]
WHEN NOT MATCHED
THEN INSERT VALUES(S.[Name])
WHEN NOT MATCHED BY SOURCE
THEN DELETE;
END
相關文章
相關標籤/搜索