{"id":4476,"date":"2025-04-30T10:05:00","date_gmt":"2025-04-30T17:05:00","guid":{"rendered":"https:\/\/devblogs.microsoft.com\/azure-sql\/?p=4476"},"modified":"2025-07-18T13:03:35","modified_gmt":"2025-07-18T20:03:35","slug":"vscode-mssql-schema-compare","status":"publish","type":"post","link":"https:\/\/devblogs.microsoft.com\/azure-sql\/vscode-mssql-schema-compare\/","title":{"rendered":"MSSQL Extension for VS Code: Introducing Schema Compare (Preview)"},"content":{"rendered":"<h2><span style=\"font-size: 24pt\"><strong>Overview<\/strong><\/span><\/h2>\n<p>We are excited to introduce Schema Compare in the MSSQL Extension for VS Code!<\/p>\n<p>It can be tedious to manually manage and synchronize different database versions. Enter Schema Compare, the powerful new feature for MSSQL in VS Code that transforms this tedious task into a seamless experience. With intuitive visualization that instantly highlights additions, removals, and modifications between schemas, you gain complete control over which changes to implement. Whether comparing live databases, dacpac files, or SQL projects, Schema Compare empowers you to synchronize database versions with precision and confidence.<\/p>\n<p><img decoding=\"async\" width=\"1428\" height=\"652\" class=\"wp-image-4540 aligncenter\" src=\"https:\/\/devblogs.microsoft.com\/azure-sql\/wp-content\/uploads\/sites\/56\/2025\/04\/a-screenshot-of-a-computer-ai-generated-content-m.png\" alt=\"A screenshot of a computer AI-generated content may be incorrect.\" srcset=\"https:\/\/devblogs.microsoft.com\/azure-sql\/wp-content\/uploads\/sites\/56\/2025\/04\/a-screenshot-of-a-computer-ai-generated-content-m.png 1428w, https:\/\/devblogs.microsoft.com\/azure-sql\/wp-content\/uploads\/sites\/56\/2025\/04\/a-screenshot-of-a-computer-ai-generated-content-m-300x137.png 300w, https:\/\/devblogs.microsoft.com\/azure-sql\/wp-content\/uploads\/sites\/56\/2025\/04\/a-screenshot-of-a-computer-ai-generated-content-m-1024x468.png 1024w, https:\/\/devblogs.microsoft.com\/azure-sql\/wp-content\/uploads\/sites\/56\/2025\/04\/a-screenshot-of-a-computer-ai-generated-content-m-768x351.png 768w\" sizes=\"(max-width: 1428px) 100vw, 1428px\" \/><\/p>\n<ul>\n<li><strong>Effortless Comparison<\/strong>: Select your source and target (database, .dacpac, or database project) and instantly see all structural differences.<\/li>\n<li><strong>Crystal-Clear Visualization<\/strong>: Immediately identify what&#8217;s been added, removed, or modified between schemas.<\/li>\n<li><strong>Take Control<\/strong>: Decide exactly which changes to include before applying them.<\/li>\n<li><strong>One-Click Updates<\/strong>: Apply your selected changes seamlessly with a single click.<\/li>\n<\/ul>\n<h2><span style=\"font-size: 24pt\"><strong>Features: <\/strong><\/span><\/h2>\n<p>The Schema Compare feature provides the following features:<\/p>\n<ul>\n<li>Compare schemas between two DACPAC files, databases, or SQL projects.<\/li>\n<li>View results as a set of actions to take against the target for it to match the source.<\/li>\n<li>Selectively exclude actions listed in results.<\/li>\n<li>Set options that control the scope of the comparison.<\/li>\n<li>Apply changes directly to the target or generate a script to apply changes at a later time.<\/li>\n<li>Save the comparison.<\/li>\n<\/ul>\n<h2><span style=\"font-size: 24pt\"><strong>Install the extension<\/strong><\/span><\/h2>\n<p>To install the MSSQL extension, follow these simple steps:<\/p>\n<p>1. In VS Code, select the Extensions Icon to browse available extensions.<\/p>\n<p><strong><img decoding=\"async\" width=\"331\" height=\"472\" class=\"wp-image-4541 alignleft\" src=\"https:\/\/devblogs.microsoft.com\/azure-sql\/wp-content\/uploads\/sites\/56\/2025\/04\/word-image-4476-2.png\" srcset=\"https:\/\/devblogs.microsoft.com\/azure-sql\/wp-content\/uploads\/sites\/56\/2025\/04\/word-image-4476-2.png 331w, https:\/\/devblogs.microsoft.com\/azure-sql\/wp-content\/uploads\/sites\/56\/2025\/04\/word-image-4476-2-210x300.png 210w\" sizes=\"(max-width: 331px) 100vw, 331px\" \/><\/strong><\/p>\n<p>2. Search for the <strong>SQL Server (mssql) extension<\/strong> and select it to view details. Then click Install to add the extension.<\/p>\n<p>3. After installation, reload VS Code to enable the extension (only necessary when installing an extension for the first time).<\/p>\n<h2><span style=\"font-size: 24pt\"><strong>Compare schemas<\/strong><\/span><\/h2>\n<p>To compare schemas, launch the Schema Compare dashboard by following these steps:<\/p>\n<p>1. Right-click a database in Object Explorer and select <strong>Schema Compare<\/strong>. This database automatically becomes the <strong>Source<\/strong> database in your comparison.<\/p>\n<p><img decoding=\"async\" width=\"343\" height=\"346\" class=\"wp-image-4542 aligncenter\" src=\"https:\/\/devblogs.microsoft.com\/azure-sql\/wp-content\/uploads\/sites\/56\/2025\/04\/a-screenshot-of-a-computer-ai-generated-content-m-1.png\" alt=\"A screenshot of a computer AI-generated content may be incorrect.\" srcset=\"https:\/\/devblogs.microsoft.com\/azure-sql\/wp-content\/uploads\/sites\/56\/2025\/04\/a-screenshot-of-a-computer-ai-generated-content-m-1.png 343w, https:\/\/devblogs.microsoft.com\/azure-sql\/wp-content\/uploads\/sites\/56\/2025\/04\/a-screenshot-of-a-computer-ai-generated-content-m-1-297x300.png 297w, https:\/\/devblogs.microsoft.com\/azure-sql\/wp-content\/uploads\/sites\/56\/2025\/04\/a-screenshot-of-a-computer-ai-generated-content-m-1-150x150.png 150w, https:\/\/devblogs.microsoft.com\/azure-sql\/wp-content\/uploads\/sites\/56\/2025\/04\/a-screenshot-of-a-computer-ai-generated-content-m-1-24x24.png 24w, https:\/\/devblogs.microsoft.com\/azure-sql\/wp-content\/uploads\/sites\/56\/2025\/04\/a-screenshot-of-a-computer-ai-generated-content-m-1-48x48.png 48w, https:\/\/devblogs.microsoft.com\/azure-sql\/wp-content\/uploads\/sites\/56\/2025\/04\/a-screenshot-of-a-computer-ai-generated-content-m-1-96x96.png 96w\" sizes=\"(max-width: 343px) 100vw, 343px\" \/><\/p>\n<p>2. Click one of the ellipses (&#8230;) buttons to modify the <strong>Source<\/strong> and <strong>Target<\/strong> of your comparison, then select OK.<\/p>\n<p><img decoding=\"async\" class=\"wp-image-4543 aligncenter\" src=\"https:\/\/devblogs.microsoft.com\/azure-sql\/wp-content\/uploads\/sites\/56\/2025\/04\/a-screenshot-of-a-computer-ai-generated-content-m-2.png\" alt=\"A screenshot of a computer AI-generated content may be incorrect.\" width=\"1219\" height=\"572\" srcset=\"https:\/\/devblogs.microsoft.com\/azure-sql\/wp-content\/uploads\/sites\/56\/2025\/04\/a-screenshot-of-a-computer-ai-generated-content-m-2.png 1428w, https:\/\/devblogs.microsoft.com\/azure-sql\/wp-content\/uploads\/sites\/56\/2025\/04\/a-screenshot-of-a-computer-ai-generated-content-m-2-300x141.png 300w, https:\/\/devblogs.microsoft.com\/azure-sql\/wp-content\/uploads\/sites\/56\/2025\/04\/a-screenshot-of-a-computer-ai-generated-content-m-2-1024x480.png 1024w, https:\/\/devblogs.microsoft.com\/azure-sql\/wp-content\/uploads\/sites\/56\/2025\/04\/a-screenshot-of-a-computer-ai-generated-content-m-2-768x360.png 768w\" sizes=\"(max-width: 1219px) 100vw, 1219px\" \/><\/p>\n<p>3. For customized comparison settings, click the <strong>Options<\/strong> button in the toolbar. You can use &#8216;save .scmp file&#8217; to save these options for a later comparison.<\/p>\n<p><img decoding=\"async\" class=\"wp-image-4544 aligncenter\" src=\"https:\/\/devblogs.microsoft.com\/azure-sql\/wp-content\/uploads\/sites\/56\/2025\/04\/a-screenshot-of-a-computer-ai-generated-content-m-3.png\" alt=\"A screenshot of a computer AI-generated content may be incorrect.\" width=\"1218\" height=\"630\" srcset=\"https:\/\/devblogs.microsoft.com\/azure-sql\/wp-content\/uploads\/sites\/56\/2025\/04\/a-screenshot-of-a-computer-ai-generated-content-m-3.png 1430w, https:\/\/devblogs.microsoft.com\/azure-sql\/wp-content\/uploads\/sites\/56\/2025\/04\/a-screenshot-of-a-computer-ai-generated-content-m-3-300x155.png 300w, https:\/\/devblogs.microsoft.com\/azure-sql\/wp-content\/uploads\/sites\/56\/2025\/04\/a-screenshot-of-a-computer-ai-generated-content-m-3-1024x529.png 1024w, https:\/\/devblogs.microsoft.com\/azure-sql\/wp-content\/uploads\/sites\/56\/2025\/04\/a-screenshot-of-a-computer-ai-generated-content-m-3-768x397.png 768w\" sizes=\"(max-width: 1218px) 100vw, 1218px\" \/><\/p>\n<p>4. Finally, select <strong>Compare<\/strong> to generate and view your comparison results.<\/p>\n<p><img decoding=\"async\" class=\"wp-image-4545 aligncenter\" src=\"https:\/\/devblogs.microsoft.com\/azure-sql\/wp-content\/uploads\/sites\/56\/2025\/04\/a-screenshot-of-a-computer-ai-generated-content-m-4.png\" alt=\"A screenshot of a computer AI-generated content may be incorrect.\" width=\"1220\" height=\"631\" srcset=\"https:\/\/devblogs.microsoft.com\/azure-sql\/wp-content\/uploads\/sites\/56\/2025\/04\/a-screenshot-of-a-computer-ai-generated-content-m-4.png 1432w, https:\/\/devblogs.microsoft.com\/azure-sql\/wp-content\/uploads\/sites\/56\/2025\/04\/a-screenshot-of-a-computer-ai-generated-content-m-4-300x155.png 300w, https:\/\/devblogs.microsoft.com\/azure-sql\/wp-content\/uploads\/sites\/56\/2025\/04\/a-screenshot-of-a-computer-ai-generated-content-m-4-1024x530.png 1024w, https:\/\/devblogs.microsoft.com\/azure-sql\/wp-content\/uploads\/sites\/56\/2025\/04\/a-screenshot-of-a-computer-ai-generated-content-m-4-768x397.png 768w\" sizes=\"(max-width: 1220px) 100vw, 1220px\" \/><\/p>\n<h2><span style=\"font-size: 24pt\"><strong>Apply changes<\/strong><\/span><\/h2>\n<p>1. Navigate through the object list and carefully check the objects you wish to modify.<\/p>\n<p><img decoding=\"async\" class=\"wp-image-4546 aligncenter\" src=\"https:\/\/devblogs.microsoft.com\/azure-sql\/wp-content\/uploads\/sites\/56\/2025\/04\/a-screenshot-of-a-computer-ai-generated-content-m-5.png\" alt=\"A screenshot of a computer AI-generated content may be incorrect.\" width=\"1244\" height=\"663\" srcset=\"https:\/\/devblogs.microsoft.com\/azure-sql\/wp-content\/uploads\/sites\/56\/2025\/04\/a-screenshot-of-a-computer-ai-generated-content-m-5.png 1433w, https:\/\/devblogs.microsoft.com\/azure-sql\/wp-content\/uploads\/sites\/56\/2025\/04\/a-screenshot-of-a-computer-ai-generated-content-m-5-300x160.png 300w, https:\/\/devblogs.microsoft.com\/azure-sql\/wp-content\/uploads\/sites\/56\/2025\/04\/a-screenshot-of-a-computer-ai-generated-content-m-5-1024x546.png 1024w, https:\/\/devblogs.microsoft.com\/azure-sql\/wp-content\/uploads\/sites\/56\/2025\/04\/a-screenshot-of-a-computer-ai-generated-content-m-5-768x409.png 768w\" sizes=\"(max-width: 1244px) 100vw, 1244px\" \/><\/p>\n<p>2. Apply the selected changes to your target by simply clicking the apply button.<\/p>\n<p><img decoding=\"async\" class=\"wp-image-4547 aligncenter\" src=\"https:\/\/devblogs.microsoft.com\/azure-sql\/wp-content\/uploads\/sites\/56\/2025\/04\/a-screenshot-of-a-computer-ai-generated-content-m-6.png\" alt=\"A screenshot of a computer AI-generated content may be incorrect.\" width=\"1212\" height=\"619\" srcset=\"https:\/\/devblogs.microsoft.com\/azure-sql\/wp-content\/uploads\/sites\/56\/2025\/04\/a-screenshot-of-a-computer-ai-generated-content-m-6.png 1429w, https:\/\/devblogs.microsoft.com\/azure-sql\/wp-content\/uploads\/sites\/56\/2025\/04\/a-screenshot-of-a-computer-ai-generated-content-m-6-300x153.png 300w, https:\/\/devblogs.microsoft.com\/azure-sql\/wp-content\/uploads\/sites\/56\/2025\/04\/a-screenshot-of-a-computer-ai-generated-content-m-6-1024x523.png 1024w, https:\/\/devblogs.microsoft.com\/azure-sql\/wp-content\/uploads\/sites\/56\/2025\/04\/a-screenshot-of-a-computer-ai-generated-content-m-6-768x392.png 768w\" sizes=\"(max-width: 1212px) 100vw, 1212px\" \/><\/p>\n<h2>What&#8217;s next for Schema Compare?<\/h2>\n<ul>\n<li>Improved UI and comparison diff views.<\/li>\n<li>Advanced &#8216;generate script&#8217; options.<\/li>\n<\/ul>\n","protected":false},"excerpt":{"rendered":"<p>Overview We are excited to introduce Schema Compare in the MSSQL Extension for VS Code! It can be tedious to manually manage and synchronize different database versions. Enter Schema Compare, the powerful new feature for MSSQL in VS Code that transforms this tedious task into a seamless experience. With intuitive visualization that instantly highlights additions, [&hellip;]<\/p>\n","protected":false},"author":186566,"featured_media":81,"comment_status":"open","ping_status":"closed","sticky":false,"template":"","format":"standard","meta":{"_acf_changed":false,"footnotes":""},"categories":[1,533,625],"tags":[510,469,586,662,30,663,664,661,660,558,682],"class_list":["post-4476","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-azure-sql","category-visual-studio-code","category-vs-code","tag-azure-sql-database","tag-azuresqldb","tag-database","tag-database-projects","tag-developers","tag-mssql","tag-mssql-extension","tag-schema","tag-schema-compare","tag-vs-code","tag-vscode-mssql"],"acf":[],"blog_post_summary":"<p>Overview We are excited to introduce Schema Compare in the MSSQL Extension for VS Code! It can be tedious to manually manage and synchronize different database versions. Enter Schema Compare, the powerful new feature for MSSQL in VS Code that transforms this tedious task into a seamless experience. With intuitive visualization that instantly highlights additions, [&hellip;]<\/p>\n","_links":{"self":[{"href":"https:\/\/devblogs.microsoft.com\/azure-sql\/wp-json\/wp\/v2\/posts\/4476","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/devblogs.microsoft.com\/azure-sql\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/devblogs.microsoft.com\/azure-sql\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/devblogs.microsoft.com\/azure-sql\/wp-json\/wp\/v2\/users\/186566"}],"replies":[{"embeddable":true,"href":"https:\/\/devblogs.microsoft.com\/azure-sql\/wp-json\/wp\/v2\/comments?post=4476"}],"version-history":[{"count":0,"href":"https:\/\/devblogs.microsoft.com\/azure-sql\/wp-json\/wp\/v2\/posts\/4476\/revisions"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/devblogs.microsoft.com\/azure-sql\/wp-json\/wp\/v2\/media\/81"}],"wp:attachment":[{"href":"https:\/\/devblogs.microsoft.com\/azure-sql\/wp-json\/wp\/v2\/media?parent=4476"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/devblogs.microsoft.com\/azure-sql\/wp-json\/wp\/v2\/categories?post=4476"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/devblogs.microsoft.com\/azure-sql\/wp-json\/wp\/v2\/tags?post=4476"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}