# IT:AD:WebDeploy:HowTo:Publish Databases # * [[../|(UP)]] {{indexmenu>.#2|nsort tsort}} ## Process ## * IMPORTANT: Publish from VS is intended for deployment of the Db only the first time. * IMPORTANT: There is no incremental delivery story [src](http://bit.ly/zE6LYA) * Would require AD account to have SQL server rights on the db server * Resources: * [MSDN](http://bit.ly/y653uM) * First Time Deployment: * In VS > Solution Explorer > Project Node > Properties > SQL Settings * Select the Build (Debug, Release, etc.) * Easiest way to fill grid is use `Import from Web Config` * IMPORTANT: For redeployment scenarios uncheck the `Deploy` checkbox to not resend anything you don't want * Select a Row/Db * Enter the ConnectionString to use during deployment * This may be different than runtime connection string (imported from web.config) due to needing different admin UserName/Pwd... * TODO: Eg. Current deployer's account? But isn't that already being passed through? * IMPORTANT: By default imported connection strings are also set to automatically generate a script to create Structure of remote db based on connection string found in local dev connection string. * IMPORTANT: Consider turning it off... * Tip: for ASP.NET Db read [MSDN](http://bit.ly/y653uM) * Tip: for deployment to Azure read [MSDN](http://bit.ly/y653uM) * You can add new custom script. * Subsequent ReDeployment: * IMPORTANT: For redeployment scenarios uncheck the `Deploy` checkbox to not resend anything you don't want * IMPORTANT: In the Database Scripts grid, clear the Include check boxes (especially any for automatically generated scripts). * Add a custom script. * Cool: if your script is an incremental update, as we did for [[IT/Projects/ANZ/GTM2/]] using [[IT/AD/SQL Server/HowTo/SQL/DDL/Deployment/Log]] then all updates will be incrementally applied, safely.