我使用数据库项目的次数越多,我发现它的用处就越少。我正在尝试使用此项目类型来管理我的数据库模式,并能够使用它来生成测试/生产模式更新的差异。
现在我不得不尝试重命名一个列。我正在使用对象重构工具,它更新了refactorlog,但该日志似乎对sql文件的部署没有影响。每次我部署或差异时,它都会生成sql作为列drop,并添加清除所有现有数据。您认为架构差异工具可以选择将2列映射为重命名,但该功能很容易丢失。
此外,“始终重新创建数据库”选项似乎不执行任何操作。无论此复选框的状态如何,我部署的sql都完全相同。这意味着每次运行它都会重新创建数据库,这与文档告诉我取消选中此数据库运行更新的内容相反。
如果db项目不能进行简单的重命名,那么它几乎没用,因为我无法信任它来呈现正确的更新sql(当我弄清楚如何防止它重新创建我的数据库时) )。
在这一点上,我正准备并且只是手动管理所有东西,我宁愿不这样做,因为与我的“无用”声明相反,VS DB工具做了一些不错的事情,但90%的方式还不够好。
有没有其他人有过与VS2010数据库项目处理这些问题的经验,他们可以让我离开窗台?
答案 0 :(得分:2)
VS 2010 Schema Compare不使用重构日志。仅在进行项目部署时使用。以下是产品经理对此的明确声明:
http://social.msdn.microsoft.com/Forums/en/vstsdb/thread/fd2c3d02-8792-4d58-b1cb-0c804a1142de