People in technology often complain about lack of determination in our industry. In fact, there are so many ways of doing things that it can be confusing. It’s a matter of perspective and organization. If you do it right, extra options will help by providing alternative pathways when you hit roadblocks. (and if you think that you’ll navigate technology seas without hitting unexpected obstacles, we really need to talk!) For example. Let’s take SQL server. You know that you should have a copy of your schema in files (you do, right?). But HOW should you do it?
A backup – it’s not exactly what you want, but if you restore it, you will see the schema on a different server, so I guess it counts.
SQL Server Management Studio – export it from the gui. You can break it up into separate files or as one chunk.
Visual Studio – database projects are hot and VS gives you an easy way to get the schema out of your database into a filesystem. While you’re at it, commit it to source control and you’re half way there to implementing CI/CD.
Powershell – that little wonder of a scripting language can use SMO to pull all objects out of your database. You can commit that to git as well.
Red Gate Schema Compare – it’s the only tool on this list that you have to pay for, but it’s well built and it could be worth it. If you get their super-duper package you will get source control as well. And can easily automate deployments.
So you have all these options, but does that mean you have to use them all? Do you “commit” to one?
The answer is both. You should have a “preferred” way of doing things, but you should also have alternatives. Because your preferred way will fail at some point, and you want to have a backup solution, and a backup for that as well.
The show must go on! Not only that, but you also should have your own tools that use these methods in just the right way. That’s why at BitWise we spend so much time developing database tools. Ask us how.
We like people, so feel free to call or write. Humans only.