Home Dashboard Directory Help

Sql script not generated by SqlPackage when Action set to Publish by jagt70



Sign in
to vote
Type: Bug
ID: 786010
Opened: 5/1/2013 10:18:33 AM
Access Restriction: Public
User(s) can reproduce this bug


When using SqlPackage with Action set to Publish, it does not produce a Sql script. This appears to be a loss of functionality when compared to vsdbcmd, which generates a script and then deploys against the target database.

Alternatively, when Action is set to Script it does not execute the generated script against the target database
Sign in to post a comment.
Posted by Brett Gerhardi(H) on 11/7/2013 at 2:57 AM
Disappointing that MS will not fix this. Surely internally the program is already actually generating the script that it is sending so this would be literally 2 lines of code to write this file before executing against the target server.

I really don't get the logic of the work prioritisation of the current team. This is clearly low-hanging fruit and would benefit the vast majority of users of the tool.

Adam, is it that you need to get more people on this team so you can start to polish this tool?

I've provided (and am using) an unsatisfactory workaround with its obvious deficiencies.
Posted by Microsoft on 7/8/2013 at 9:37 AM

Thank you for the feedback on the value of this functionality in the SqlPackage and DACFx API scenarios. Due to the team's current priorities and existing commitments, we are not looking to address this DCR at this time. There is a work item tracking this DCR should it come up for future consideration.

Please continue using the current mechanism of executing two SqlPackage actions (Script, Publish) to get the deployment script and execute the deployment to satisfy this scenario.

Thanks again for the feedback here, please let us know if you have any additional questions or feedback for the team.

Adam Mahood
Program Manager
SQL Database Systems
Posted by garou1674 on 5/7/2013 at 11:22 AM
We use this functionality to also tell if there is to be any data motion. With the current setup, we do not know until we wonder why it is taking so long and check the log. This is unacceptable when we are dealing with terabytes of data. May work with smaller databases, not if there is data motion on gigabytes and terabytes worth of data. Bring this functionality back.
Posted by Daron Wall on 5/7/2013 at 10:32 AM
We use the script to verify exactly what was compiled against our database. We could simply click on the "Drop" folder and then open the deployment script. We need this functionality back.
Sign in to post a workaround.
Posted by Brett Gerhardi(H) on 11/7/2013 at 2:45 AM
I have had to build a script that will run /a:Script before /a:Publish for the same dacpac

This is a poor workaround as it

1. Has the (probably v.small) risk of something changing between the script and the publish meaning your script is not what was used in the publish.
2. Doubles the workload on the deploy target at analysis time.
3. Doubles the time that the analysis of the deploy takes