wat*_*tdo 5 azure sql-server-data-tools azure-sql-database
我似乎在将架构部署到 Azure SQL 数据库(上周创建,兼容性 140)时遇到问题。
我们有一个 SSDT DACPAC 架构要部署到,它与 IaaS SQL Server 2016 实例完美配合,但是当将目标版本更改为 Azure SQL V12 并尝试通过 VSTS 部署到我们的 PaaS 数据库时,我收到此错误:
我们已尝试将 Compatbility MSBuild 值设置为 120,130,140 并将其留空 - 似乎没有任何区别。以下是 .sqlproj 文件的摘录:
<PropertyGroup>
<Configuration Condition=" '$(Configuration)' == '' ">Debug</Configuration>
<Platform Condition=" '$(Platform)' == '' ">AnyCPU</Platform>
<Name>DataSchema</Name>
<SchemaVersion>2.0</SchemaVersion>
<ProjectVersion>4.1</ProjectVersion>
<ProjectGuid>{5d100d18-648c-4aac-9884-8a7b3c97f033}</ProjectGuid>
<DSP>Microsoft.Data.Tools.Schema.Sql.SqlAzureV12DatabaseSchemaProvider</DSP>
<OutputType>Database</OutputType>
<RootPath>
</RootPath>
<RootNamespace>CustomerData</RootNamespace>
<AssemblyName>CustomerData</AssemblyName>
<ModelCollation>1033,CI</ModelCollation>
<DefaultFileStructure>BySchemaAndSchemaType</DefaultFileStructure>
<DeployToDatabase>True</DeployToDatabase>
<TargetFrameworkVersion>v4.6.1</TargetFrameworkVersion>
<TargetLanguage>CS</TargetLanguage>
<AppDesignerFolder>Properties</AppDesignerFolder>
<SqlServerVerification>False</SqlServerVerification>
<IncludeCompositeObjects>True</IncludeCompositeObjects>
<TargetDatabaseSet>True</TargetDatabaseSet>
<DefaultCollation>SQL_Latin1_General_CP1_CI_AS</DefaultCollation>
<DefaultFilegroup></DefaultFilegroup>
<TargetDatabase>Data</TargetDatabase>
<CompatibilityMode></CompatibilityMode>
</PropertyGroup>
Run Code Online (Sandbox Code Playgroud)
从 MSDN 教程看来,它应该像创建 SSDT DACPAC 项目一样简单,选择 SQL Azure V12 作为目标数据库类型,然后作为发布的一部分执行部署数据库任务。
所以我们解决了这个问题 - 但我不确定这是否是一个错误,Azure SQL 兼容性的默认值现在是 140 - 奇怪的是,当将我们的架构兼容性设置为 140 时,它仍然不起作用。
将 Azure SQL 数据库兼容性级别设置为 130,并将 SSDT 项目设置为相同级别,部署成功。
| 归档时间: |
|
| 查看次数: |
3968 次 |
| 最近记录: |