翻譯|使用教程|編輯:鮑佳佳|2020-10-15 13:58:32.977|閱讀 418 次
概述:數(shù)據(jù)庫(kù)同步是日常必需品。當(dāng)您有多個(gè)服務(wù)于同一“用戶”的相似數(shù)據(jù)庫(kù)時(shí),便需要定期使用它。典型的情況是,它們必須相同,但是您難以很好的操縱它們。例如,數(shù)據(jù)庫(kù)由不同的團(tuán)隊(duì)管理,這些團(tuán)隊(duì)可以獨(dú)立地更新它們?;蛘撸邢嗤臄?shù)據(jù)庫(kù)執(zhí)行不同的操作。所以,你必區(qū)別義它們?yōu)槭裁床煌?/p>
# 界面/圖表報(bào)表/文檔/IDE等千款熱門(mén)軟控件火熱銷(xiāo)售中 >>
相關(guān)鏈接:
dbForge Studio for SQL Server為有效的探索、分析SQL Server數(shù)據(jù)庫(kù)中的大型數(shù)據(jù)集提供全面的解決方案,并設(shè)計(jì)各種報(bào)表以幫助作出合理的決策。
點(diǎn)擊下載dbForge Studio for SQL Server最新試用版
數(shù)據(jù)庫(kù)同步是日常必需品。當(dāng)您有多個(gè)服務(wù)于同一“用戶”的相似數(shù)據(jù)庫(kù)時(shí),便需要定期使用它。
典型的情況是,它們必須相同,但是您難以很好的操縱它們。例如,數(shù)據(jù)庫(kù)由不同的團(tuán)隊(duì)管理,這些團(tuán)隊(duì)可以獨(dú)立地更新它們?;蛘?,有相同的數(shù)據(jù)庫(kù)執(zhí)行不同的操作。所以,你必區(qū)別義它們?yōu)槭裁床煌?
問(wèn)題是,每當(dāng)您必須比較兩個(gè)表之間的差異時(shí),該過(guò)程就太復(fù)雜了。即使您的數(shù)據(jù)庫(kù)專家為一每種同步開(kāi)發(fā)了一種工作方法,任何新的要求也將引起重大變化。您必須從頭開(kāi)始工作。結(jié)果是,SQL Server表同步變成了一個(gè)過(guò)于復(fù)雜和耗時(shí)的工作。如果此任務(wù)是一次性的,那么它會(huì)變得更糟,因?yàn)樗荒茏C明這樣做的合理性。
盡管如此,仍然需要SQL Server同步任務(wù),并且這種需求帶來(lái)了供應(yīng)。不用準(zhǔn)備冗長(zhǎng)而復(fù)雜的說(shuō)明,而是使用自動(dòng)化工具。首先,它可以是一些內(nèi)置工具,例如SSIS。
圖1表數(shù)據(jù)單向同步包
第二種選擇是使用第三方工具,例如dbForge Data Compare for SQL Server。
圖2比較SSMS中的表格數(shù)據(jù)
在本文中,我們回顧了在SQL Server表同步過(guò)程中應(yīng)用自動(dòng)化工具的過(guò)程。
SQL Server中數(shù)據(jù)庫(kù)比較的標(biāo)準(zhǔn)方法
比較從源服務(wù)器和目標(biāo)服務(wù)器以及數(shù)據(jù)庫(kù)開(kāi)始。配置它們:
圖3設(shè)置源和目標(biāo)
設(shè)置表的列映射:
圖4列映射
“列詳細(xì)信息”部分顯示來(lái)自兩個(gè)表的引用信息:源數(shù)據(jù)庫(kù)在左側(cè),目標(biāo)數(shù)據(jù)庫(kù)在右側(cè)。
列映射特別有用,因?yàn)樵春湍繕?biāo)中的列名不同。這樣,我們可以看到數(shù)據(jù)差異:
圖5數(shù)據(jù)差異
另外,您還可以配置列的可見(jiàn)性和排序:
圖6列可見(jiàn)性和排序設(shè)置
找到所有差異后,您可以生成腳本或執(zhí)行數(shù)據(jù)同步。
重要!在比較或同步兩個(gè)表之間的數(shù)據(jù)之前,需要確保表定義匹配。您可以使用標(biāo)準(zhǔn)方法(例如Visual Studio或SSDT)或通過(guò)第三方工具來(lái)做到這一點(diǎn)。
為此,創(chuàng)建一個(gè)新的SQL Server數(shù)據(jù)庫(kù)項(xiàng)目,如下所示:
圖7創(chuàng)建一個(gè)新的SQL Server數(shù)據(jù)庫(kù)項(xiàng)目
接下來(lái),導(dǎo)入數(shù)據(jù)庫(kù):
圖8打開(kāi)數(shù)據(jù)庫(kù)導(dǎo)入窗口
將打開(kāi)一個(gè)新窗口。在該窗口中,您需要配置與必要數(shù)據(jù)庫(kù)的連接。
之后,按Start以啟動(dòng)導(dǎo)入過(guò)程:
圖9配置并啟動(dòng)數(shù)據(jù)庫(kù)導(dǎo)入過(guò)程。
通過(guò)上述操作,您將在項(xiàng)目中看到文件夾,子文件夾和數(shù)據(jù)庫(kù)對(duì)象的定義:
圖10導(dǎo)入后的項(xiàng)目
要?jiǎng)?chuàng)建項(xiàng)目并導(dǎo)入第二個(gè)數(shù)據(jù)庫(kù)的數(shù)據(jù),您應(yīng)該以相同的方式進(jìn)行操作。
要比較數(shù)據(jù)庫(kù)模式,只需單擊兩次即可:
圖11導(dǎo)航到數(shù)據(jù)庫(kù)模式比較窗口
它打開(kāi)數(shù)據(jù)庫(kù)模式比較窗口。在此處,選擇源項(xiàng)目和目標(biāo)項(xiàng)目,然后按“ Compare ”開(kāi)始比較過(guò)程:
圖12數(shù)據(jù)庫(kù)模式比較窗口
使用dbforge Schema Compare探索兩個(gè)表之間的SQL差異
dbForge Schema Compare與SSMS集成。它是一個(gè)專用的解決方案,可以幫助您進(jìn)行SQL數(shù)據(jù)庫(kù)比較和分析SQL數(shù)據(jù)差異。此外,它還允許您借助其嵌入式向?qū)лp松地同步SQL Server數(shù)據(jù)。
圖13在SSMS中比較數(shù)據(jù)庫(kù)模式
數(shù)據(jù)比較的過(guò)程與上述相同。
如何在SQL Server中找到兩個(gè)表之間的區(qū)別?
就像我們已經(jīng)注意到的那樣,“列詳細(xì)信息”部分顯示了兩個(gè)表的列中信息的定義。源數(shù)據(jù)庫(kù)在左側(cè),目標(biāo)數(shù)據(jù)庫(kù)在右側(cè)。當(dāng)源和目標(biāo)中列的名稱不同時(shí),可以匹配這種情況。
比較架構(gòu)之后,您可以選擇必要的表并查看兩個(gè)數(shù)據(jù)庫(kù)中表定義的差異:
請(qǐng)注意底部的代碼:
然后,您可以為任何架構(gòu)表生成同步腳本。
dbForge Schema Compare是一個(gè)功能強(qiáng)大的工具。您可以使用它來(lái)比較數(shù)據(jù)庫(kù)并進(jìn)行同步。您也可以借助此解決方案自動(dòng)執(zhí)行SQL Server更新任務(wù)。對(duì)于任何用戶來(lái)說(shuō),這都是一種簡(jiǎn)單而又方便的方式來(lái)完成通常耗費(fèi)大量精力且過(guò)于復(fù)雜的工作。
點(diǎn)擊下載dbForge Studio for SQL Server,并通過(guò)30天免費(fèi)試用版自行檢查此功能!慧都現(xiàn)隆重推出“軟件國(guó)產(chǎn)化服務(wù)”活動(dòng),現(xiàn)dbForge Studio SQL Sever直降3000,在線訂購(gòu)正版授權(quán)最低只要1710元!
本站文章除注明轉(zhuǎn)載外,均為本站原創(chuàng)或翻譯。歡迎任何形式的轉(zhuǎn)載,但請(qǐng)務(wù)必注明出處、不得修改原文相關(guān)鏈接,如果存在內(nèi)容上的異議請(qǐng)郵件反饋至chenjj@fc6vip.cn
文章轉(zhuǎn)載自: