Comments
Sort by recent activity
Do you have a repro with the specific objects? Is this a SQL Source Control Project or an SCA/Visual Studio project? / comments
Do you have a repro with the specific objects? Is this a SQL Source Control Project or an SCA/Visual Studio project?
I'm really sorry that happened. This shouldn't be how this works, and I hope we can help you. A couple things. First, when you say the nuget package looks alright, can you explain what you mean here? I assume you mean that you see an 001_xxx script for the baseline and then some 002_yyyy, 003_zzz scripts for migrations? What did you run as far as SQL Change Automation. There are lots of cmdlets here that can be run, so can you describe the release process steps? / comments
I'm really sorry that happened. This shouldn't be how this works, and I hope we can help you.A couple things. First, when you say the nuget package looks alright, can you explain what you mean here...
This might help. https://voiceofthedba.com/2018/11/02/adding-sql-search-to-azure-data-studio/ / comments
This might help.https://voiceofthedba.com/2018/11/02/adding-sql-search-to-azure-data-studio/
Are you issuing this in the VS code window? The update-database command is an EF command, not an SCA one. / comments
Are you issuing this in the VS code window? The update-database command is an EF command, not an SCA one.
You can remove permissions for drops on this table. This is a tracking table, the same structure that other frameworks would use. If it's removed, that's an issue. You can certainly pull a previous version of this from a backup, which is what you'd want to do in production. However, part of the value of SCA is that you can rebuild your database. We do this as part of the build, so you can just drop the database and have SCA rebuild it from scratch. One note here, you want to be sure that you have a curated set of data to reload if you need to reload a database. I'd recommend this anyway, ensuring that all developers have the same starting set of data.
/ comments
You can remove permissions for drops on this table. This is a tracking table, the same structure that other frameworks would use. If it's removed, that's an issue.You can certainly pull a previous ...
Ah, so in the release steps, there is no analysis of the code, just a review of which migration scripts need to be deployed. The scripts are already set and the parsing of changes is done in development to build those scripts. A pre-deployment to intermediate environments is what should be used to catch this type of issue. I'm looking for something that would help here, but I think this is problematic from our view in that we do perform some drops for procedures in some scripting. Anything that's pre-SQL2016 can't handle CREATE OR ALTER, and the standard pattern we have is: if exists() drop, create. I think that the solution I'd lean towards here is to fail builds that contain drops, not wait until the release stage. My initial thought is to capture a list of tables and store this in my db. This would essentially be a way of auditing the state of the db. If you maintained this in your existing prod (and qa/staging/UAT, etc), then you'd know what objects exist. After a build, I'd run a left join from this table to sys.objects, and if things were missing, I'd then fail the build or return an error to the user. This would help me detect drops. You could easily expand this type of check into views, procs, functions, users, etc. / comments
Ah, so in the release steps, there is no analysis of the code, just a review of which migration scripts need to be deployed. The scripts are already set and the parsing of changes is done in develo...
Apologies, I haven't. Can I ask if this is a SQL Source Control project at the client or a SQL Change Automation in VS project? / comments
Apologies, I haven't. Can I ask if this is a SQL Source Control project at the client or a SQL Change Automation in VS project?
You can use the abort flag from SQL Compare for high level warnings, which includes drops. It has other items, so you want to be careful and experiment in QA/staging to understand the things you do that might trigger this. It might be too gross for you. What I'd probably do is look for the specific items I want to avoid and use a regex to scan the update.sql script. That way I'd get a note of problems. That being said, you need a way to get around this, or disable this at times, since I will almost guarantee that you will find exceptions over time.
/ comments
You can use the abort flag from SQL Compare for high level warnings, which includes drops. It has other items, so you want to be careful and experiment in QA/staging to understand the things you d...
You can use cmd line deployment with SSIS: https://docs.microsoft.com/en-us/sql/integration-services/ssis-quickstart-deploy-cmdline?view=sql-server-2017 However, if you want more tools, like testing, I'd look at Pragmatic works tools here.There also are a few extensions in the marketplace
[image]
/ comments
You can use cmd line deployment with SSIS: https://docs.microsoft.com/en-us/sql/integration-services/ssis-quickstart-deploy-cmdline?view=sql-server-2017However, if you want more tools, like testing...
You are more than welcome. Please ask more questions, or let us know how this goes. / comments
You are more than welcome. Please ask more questions, or let us know how this goes.