Today during the Visual Studio launch event, we announced that we’ve partnered with Redgate to include Redgate Data Tools in Visual Studio 2017. Redgate Data Tools includes three components that extend DevOps practices to SQL Server and Azure SQL databases and increase your productivity while doing database development.
Here’s a brief overview of each of them:
- ReadyRoll Core allows you to develop, source control, and safely automate deployments of database changes alongside application changes. ReadyRoll Core is available in the Enterprise edition of Visual Studio 2017.
- SQL Prompt Core offers advanced code completion for SQL. SQL Prompt Core is available in the Enterprise edition of Visual Studio 2017.
- SQL Search lets you find SQL objects fast and easily explore across databases. SQL Search is available in all editions of Visual Studio 2017.
You can install Redgate Data Tools using the Visual Studio Installer through the Data storage and processing workload or through the Individual components tab.
In this post, I’ll highlight how each of the Redgate Data Tools can improve your SQL database development.
Deploy database changes with confidence using ReadyRoll Core
Managing your database changes and incorporating them into your DevOps pipeline has always been difficult. Keeping track of what scripts need to be run and managing database states is often painful and error-prone. ReadyRoll Core simplifies this process by turning changes to your database schema into database migration scripts. These migration scripts can then be checked into source control and deployed to your other databases.
When you’re working in a ReadyRoll project and make changes to your development database using Visual Studio, SQL Server Management Studio, or another tool of choice, ReadyRoll Core will list the changes you’ve made and show you the differences.
Then, you can tell ReadyRoll Core to create a migration script based off these changes and add the new migration script to your project. You can modify the generated migration script yourself if needed.
Once you’re done making changes, you can check these migration scripts into source control alongside any other updates you made to your application and share your work with your team.
Redgate also offers a ReadyRoll Visual Studio Team Services plugin that includes VSTS build and release tasks to safely deploy these migration scripts to other databases. This way, you can keep your database deployments consistent across multiple instances. You can set up VSTS to automate these database deployments to shift your database development further left and learn about potential problems sooner.
Check out Redgate technical lead David Simner’s video on Channel9 for an overview of how you can use ReadyRoll Core for your own database development.
Make writing SQL code a breeze with SQL Prompt Core
SQL Prompt Core is a suite of SQL code editing productivity enhancements that help you write SQL code efficiently. Most importantly, SQL Prompt Core offers advanced code completion that automatically suggests SQL commands, column names, and more as you type.
SQL Prompt Core is more than autocomplete though – it provides a myriad of other quality of life improvements that come together to simplify writing SQL code. Here are two of my favorite examples:
- Expanding wildcards – hitting the tab button after the * in a SELECT * FROM statement will expand the wildcard.
SQL Prompt will then replace the * with all available columns in that table.
If you don’t want all columns, you can highlight the * instead and start typing to select the subset of columns that you need.
- Suggestions for joins – SQL Prompt can complete join statements for you automatically and suggest possible joins based on foreign key relationships or column similarities as you type.
Search quickly across SQL databases with SQL Search
Finding SQL objects can be tricky and time-consuming when dealing with complex databases or when you’re unfamiliar with a database. SQL Search saves you time by quickly finding fragments of SQL in tables, views, stored procedures, and more.
If you’re a database developer, you may have run into scenarios where you need to change a column and all stored procedures that reference that column. SQL Search makes this a cinch. Simply search for the column name and SQL Search will display all references to it. Double clicking an occurrence navigates you to it in the SQL Server Object Explorer, where you can make the appropriate changes.
Use Redgate Data Tools today in Visual Studio 2017
We’re excited to include Redgate Data Tools in Visual Studio 2017 to make your database development easier and more efficient. Download Visual Studio 2017 to try them out, and feel free to share your feedback with Redgate. Check out Redgate’s SQL Toolbelt as well if you’re interested in their other offering.
![]() |
Jeff Gao, Program Manager, Visual Studio Platform
Jeff is a Program Manager on the Visual Studio Platform team focused on improving the product acquisition experience. |
What does this mean for SSDT?
We’re still fully supporting SSDT!
We like to think of ReadyRoll as an alternative to SSDT database projects that allows developers to have more control over the end database deployment script. Whether you use a ReadyRoll project or SSDT project is up to you and will depend on your needs. Even when you’re using a ReadyRoll project, you can still use SSDT features such as the Table Designer and the ability to View and Edit data.
Yeah, we have never heard that one before.
Oh well SSDT publishing has been less than reliable of late anyway, my favorite is where it does not always maintain the permissions of objects it modifies (like a table or stored procedure), so apparently it is in the ‘fully supported but nothing fixed’ mode already.
Well at least we are not planning on going near VS 2017 until at least update 2 so by then it should be pretty obvious where SSDT will stand.
Jeff, will you help explain how ReadyRoll is any different from Schema Compare and generating resulting script? I mean the way the description is written I could replace “ReadyRoll” with “Schema Compare” and it would describe a feature from SSDT. Similarly, SSDT could already expand wildcards by highlighting the * and typing or choosing to right-click then Refactor and choose Expand Wildcards. Lastly, SSDT can already change all references when changing an object by right-click then choosing Refactor in the project under SQL Server Object Explorer, which then gives you rename and move to schema (and another option).
Main reason I’m asking is because most places I go to do not source control their databases and I push SSDT as a solution to source control the database. The Red Gate integration seems strange as it’s adding functionality in Enterprise that seems to already exist. Is this a hint that SSDT is going away as we know it? I know right now we can choose to ignore Red Gate but for new places I go to, I don’t want to sell them on SSDT if it is disappearing (or already gone).
What I’d like to hear instead is, “We’re still actively developing new features and enhancements for SSDT!” Can you confirm that’s the case?
We’re still actively developing new features and enhancements for SSDT! Does that help? 🙂
Today we released our latest release candidate for SSDT 17.0, which includes new plenty of features and enhancements. You can read more about this here: https://blogs.msdn.microsoft.com/ssdt/2017/03/10/sql-server-data-tools-17-0-rc-and-ssdt-in-vs2017/
Warm wishes, Tim Sneath | Visual Studio Team
Really? It has taken you over FOUR YEARS to implement *ignore column order* in SSDT when it existed in VSDBCMD.
https://social.msdn.microsoft.com/Forums/sqlserver/en-US/edb3abc9-e221-4e5b-b4af-c958dbe1c330/schema-comparisons-ignore-column-order?forum=ssdt
Tim,
How many engineers at Microsoft are working to develop new features and enhancements for database projects today?
It does, as a matter of fact.
Don’t expect to see any investment in database projects going forward. Anything beyond “still works in new versions of VS” isn’t happening.
Disappointing to see SSDT eclipsed/tossed out in favour of VS Ent 3rd party tool that emphasises ‘deployment’. The D in SSDT was Developer not Deployment, schema compare and diff scripts was just a small part of what used for. The dev cycle of SSDT chg / deploy to LocalDB / update model (e.g., the excellent Rev Poco Generator) / update code – is very effective. Where is need for a suite of version-controlled sequential incremental migration scripts during development? That the object (table/view/sp/ etc.) definition is in version control is sufficient.
Also, RR assumes its view of db is authorative whereas reality is DBAs make real-time chgs in prod – the suite of version-controlled incremental migration scripts can become stale and/or untrustworthy very quickly.
And ‘yes’ I’ll upvote to have RR in all versions of VS – if (sigh) its going to replace SSDT then it needs to replace SSDT wherever SSDT was being used.
I don’t see how this replaces SSDT at all. Its a lightweight process that cannot support enterprise needs, and it is not available for free to most developers. We will try it out but I cant see us moving off SSDT for our DevOps practices. SSDT needs to be better and they are addressing the one issue we have which is what does that script look like when it is about to run in production, but this is not the way to solve it.
We need to encourage further development in SSDT not give up on it.
Jeff I couldn’t care less about any Redgate Tools. What is the eta for SSIS capability in VS 2017?
Interesting.
Are these tools really included or is it a trial version?
SQL Search is included for free across all editions.
If you’re using the Enterprise edition of Visual Studio 2017, ReadyRoll Core and SQL Prompt Core will be included at no additional cost. You can use these tools as much as you want.
That’s very good. We’re using VS Enterprise, and we do have some database backed projects so these new features will be useful to some of my colleagues.
Thanks for the reply
Really wish you had included ReadyRoll and SQL Prompt in the Pro version as well.
Yeah I agree, seems like it’s mostly the Enterprise version that get additional tools.
You can try advocating for it on User Voice
https://visualstudio.uservoice.com/forums/121579-visual-studio-ide/suggestions/17882203-please-consider-adding-readyroll-to-visual-studio
1. ReadyRoll project template can’t import *.dacpac directly?
2. ReadyRoll project can’t snapshot dacpac, even “compare schema” with other database, sql scripts, dacpac.
3. What the *SHADOW database that auto-generated do?
1. ReadyRoll cannot import *.dacpac files directly, however it can import them via a live database. To do so, use the SQL Server Object Explorer in Visual Studio to publish the data-tier application to your localdb SQL Server instance. Then, create a ReadyRoll project and follow the prompts to import from localdb and generate a baseline script
2/3. When you use the ReadyRoll tool-window to view pending changes, a database will be deployed in the background called the Shadow DB. The shadow is deployed based on the migration scripts within your project, providing you with a live model of your project schema. To create a dacpac (e.g. for performing a schema comparison) firstly ensure the shadow is up-to-date by clicking Refresh in the ReadyRoll window. Then, right-click the shadow db in the SQL Server Object explorer and extract data-tier application
I hope this helps!
Ur articles are amazing and thank you that u r posting such a useful articles
Here we go again, SSDT is being deprecated.
Great too see that this collaboration is in place. Actually I tried to convince MS to do this already in 2008 (SQL Prompt), but I’m just glad that this is finally here.
SQL Prompt without Snippets is only 50% useful.
Why this “extension” has dependency on Windows 10 SDK 14393?
Upgraded Windows to Creators Update and Visual Studio to 15.1 and uninstalled 14393 SDK to save some space on the SSD; and the other day this extension prompted an update and downloaded and reinstalled Windows 10 SDK 14393 🙁