首页 > 解决方案 > 如何使用 Visual Studio 中的 DACPAC 部署具有不同架构的对象

问题描述

.NET 数据库部署解决方案,我们使用 DACPACS(使用、、类)创建和升级我们DacPackageDacDeployOptions数据库DacServices

默认模式设置为dbo在 SQL 项目属性中,因此所有数据库对象现在都在dbo模式中创建。

要求:我需要一个实现来创建/升级仅具有不同模式的存储过程和函数。忽略数据库中的其余对象(表、视图、触发器等)。

请建议:除了dbo这种情况,我如何创建/升级具有不同架构的对象?

标签: sql-serverdacpac

解决方案


在您的 sqlproj 创建架构,这样做我将您的新架构添加到项目创建文件 SchemaB.sql 与

CREATE SCHEMA [SchemaB]

然后在对象名称前面加上模式

CREATE TABLE [SchemaB].[Address]
(
    [Id] INT NOT NULL PRIMARY KEY,
    [Street] NVARCHAR(50) NOT NULL,
)

在部署选项中,您可以设置只希望部署特定类型的对象,这些选项与您的项目一起存储在发布文件中,部署时将其用作 SqlPackage.exe 命令的输入。


推荐阅读