【发布时间】:2014-10-07 03:52:13
【问题描述】:
我正在运行安装了 SSDT(SQL Server Data Tools)的 SQL Server 2012 和 VS 2010。我的开发数据库使用存储的过程、函数、CLR 对象等。它有大约 500GB 的产品数据快照。
我创建了 SQL Server 数据库项目,然后导入了数据库。这在模式名称下创建了所有表、视图、过程和函数文件。很棒的东西——现在我可以像在其他 VS 项目中一样进行版本控制、创建部署等。到目前为止,一切都很好。
但是,我对在 SQL Server 数据库项目下更改/添加过程/表的开发过程应该是什么感到困惑。看来我所做的任何更改都应用于某些 LocalDb/Projects 数据库而不是我的开发数据库。
我是否想在该 LocalDb 中创作我的所有对象,然后通过 Publish 构建并部署到我的开发数据库?我担心开发数据库中的现有表,因为如果发布过程删除并重新创建表,我将丢失我的产品数据快照。
在 SQL Server 数据库项目中应遵循的正确开发流程是什么?
【问题讨论】:
-
您可以配置 DBPROJ 部署到哪个数据库。如果无法进行“破坏性”更改,即需要删除表和丢失数据的更改,它将警告您。您还可以选择生成更改脚本,而不是直接更改 DDL - 这使您可以选择查看更改。
-
没人用SSDT开发存储过程/视图/函数吗?因为我必须相信有比重新发布和“尝试”更好的答案。也许单元测试是微软打算让我们使用的?其他用户在做什么?
标签: sql-server sql-server-data-tools