发布脚本以仅部署特定的已定义表/存储过程/函数
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了发布脚本以仅部署特定的已定义表/存储过程/函数相关的知识,希望对你有一定的参考价值。
我想创建一个发布脚本配置文件,以仅部署特定的表和存储过程。当这个publish.xml脚本部署时,我希望它确保现有目标数据库(表,存储过程,函数等)上的所有内容都不受影响,并且只部署新项目中定义的表sprocs和函数。
看起来微软已经发布了新的高级发布设置 - 除了部署我在新数据库解决方案中定义的新表/ sprocs之外,我需要哪些设置来确保目标数据库上没有任何更改?
注意:目标数据库与我的新数据库项目具有相同的名称,目标数据库中的表/ sprocs / functions不在我的本地新数据库项目中。我只想在我的本地数据库项目上部署不在目标中的更改,同时确保目标上的数据/模式不受影响。
谢谢
答案
在go语句和create语句之间,可以使用各种元数据检查来有条件地执行create语句。
go
if object_id('SampleTable') is null
begin
create table SampleTable
(
ID int identity(1,1) primary key,
sampleField int
)
end
GO
从历史上看,MS数据库项目一直没有帮助。
以上是关于发布脚本以仅部署特定的已定义表/存储过程/函数的主要内容,如果未能解决你的问题,请参考以下文章
如何从 Visual Studio 数据库项目部署特定对象?
powershell 使用PowerShell导出MSSQL架构。此脚本将导出表,存储过程,触发器,函数和视图的模式定义