如何在不覆盖数据的情况下更新VWD解决方案中的生产数据库的架构?

时间:2011-03-23 18:45:32

标签: sql database schema vwdexpress

我有一个数据驱动的网站(SQL Express自动附加的mdf文件),它在Visual Web Developer 2010 Express中构建为本地站点,然后部署到生产服务器。该站点存储在本地并检入SVN以进行版本控制。应用程序更新到本地副本(使用内置的开发Web服务器),然后使用“复制网站”功能复制到生产服务器。

我遇到的问题是,可以在本地测试对数据库模式所做的任何更改,但是,似乎没有任何方法可以将这些更改复制到生产数据库而不会覆盖整个文件,包括生产数据。

我想我可以直接连接到生产数据库并手动进行必要的更改,但这会留下很大的错误空间,特别是在已经进行了大量更改的情况下。我没有看到任何方式在VWD编写更改脚本。

所以我的问题是:在VWD 2010 Express中处理这些数据库架构更新的最佳方法是什么?

搜索Stack Overflow和Google一直没有用,所以非常感谢任何帮助!

干杯,
JE

1 个答案:

答案 0 :(得分:1)

我相信你指的是所谓的SQL Express用户实例。从this关于SQL Express用户实例的优秀文章,可以使用名为SSEUtil的工具对本地用户实例执行命令。请注意,我说 local

不幸的是,这不能直接解决您在VWD 2010中如何最好地处理架构更新的问题。原因是没有办法做到这一点。用户实例是本地的(连接使用命名管道),您需要在生产环境中进行更新。使用SSEUtil比在服务器上安装VWD 2010或编写自己的代码以手动执行更新更好。

一旦将数据库发布到生产环境中,更新脚本是事物更新的唯一方法。显然,您很少能够备份dev数据库并恢复生产。有专业级products可以简化此过程,但真正更新脚本是您从哪里开始的。

一个建议:如果可以,我将从用户实例SQL Express转移到至少一个常规SQL Express实例。