Overzicht van doelplatform
van toepassing op:SQL Server
Azure SQL Database
Azure SQL Managed Instance
SQL-database in Microsoft Fabric
De doelplatforminstelling is een projecteigenschap die wordt gebruikt tijdens het bouwen van een project om ondersteuning te valideren voor functies die zijn opgenomen in het project, zoals T-SQL-syntaxis en systeemfuncties. De doelplatforminstelling wordt opgenomen in het .dacpac
buildartefact en tijdens de implementatie wordt de instelling van het doelplatform gecontroleerd op basis van de doeldatabase om compatibiliteit te garanderen. Als het doelplatform niet overeenkomt met de database, wordt de implementatie pas gestart als de eigenschap publiceren/p:AllowIncompatiblePlatform=true
is opgegeven.
Voorbeeld van SQL-projectbestand en syntaxis
De projecteigenschap van het doelplatform bevindt zich in de DSP
tag in het .sqlproj
-bestand onder het <PropertyGroup>
item:
<Project DefaultTargets="Build">
<Sdk Name="Microsoft.Build.Sql" Version="1.0.0" />
<PropertyGroup>
<Name>AdventureWorks</Name>
<DSP>Microsoft.Data.Tools.Schema.Sql.SqlAzureV12DatabaseSchemaProvider</DSP>
</PropertyGroup>
...
Geldige waarden voor het doelplatform in de DSP
tag zijn:
-
Microsoft.Data.Tools.Schema.Sql.Sql120DatabaseSchemaProvider
(SQL Server 2014) -
Microsoft.Data.Tools.Schema.Sql.Sql130DatabaseSchemaProvider
(SQL Server 2016) -
Microsoft.Data.Tools.Schema.Sql.Sql140DatabaseSchemaProvider
(SQL Server 2017) -
Microsoft.Data.Tools.Schema.Sql.Sql150DatabaseSchemaProvider
(SQL Server 2019) -
Microsoft.Data.Tools.Schema.Sql.Sql160DatabaseSchemaProvider
(SQL Server 2022) -
Microsoft.Data.Tools.Schema.Sql.SqlAzureV12DatabaseSchemaProvider
(Azure SQL Database) -
Microsoft.Data.Tools.Schema.Sql.SqlDbFabricDatabaseSchemaProvider
(SQL-database in Fabric of Fabric Mirrored SQL-database, preview) -
Microsoft.Data.Tools.Schema.Sql.SqlDwDatabaseSchemaProvider
(Azure Synapse SQL-pool) -
Microsoft.Data.Tools.Schema.Sql.SqlServerlessDatabaseSchemaProvider
(serverloze SQL-pool van Azure Synapse) -
Microsoft.Data.Tools.Schema.Sql.SqlDwUnifiedDatabaseSchemaProvider
(Synapse Data Warehouse in Microsoft Fabric)
Het doelplatform wijzigen
Als u het doelplatform van een SQL-project in Visual Studio wilt wijzigen, klikt u met de rechtermuisknop op het project in Solution Explorer- en selecteert u Eigenschappen. Selecteer op het tabblad Projectinstellingen van het eigenschappenvenster het gewenste doelplatform in de vervolgkeuzelijst Doelplatform.
Als u het doelplatform van een SQL-project in Visual Studio wilt wijzigen, klikt u met de rechtermuisknop op het project in Solution Explorer- en selecteert u Eigenschappen. Selecteer op het tabblad Projectinstellingen van het eigenschappenvenster het gewenste doelplatform in de vervolgkeuzelijst Doelplatform.
Als u het doelplatform van een SQL-project in de extensie SQL Database Projects wilt wijzigen, klikt u met de rechtermuisknop op het project in de weergave Databaseprojecten en selecteert u Doelplatform wijzigen. Selecteer het nieuwe doelplatform in de vervolgkeuzelijst.
U kunt het .sqlproj
bestand ook rechtstreeks bewerken om het doelplatform te wijzigen. Open het .sqlproj
bestand in de Explorer-weergave of klik met de rechtermuisknop op het project in de databaseprojecten weergave en selecteer .sqlproj-bestand bewerken. Wijzig vanuit de teksteditor de waarde in de DSP-tag in het gewenste doelplatform.
Als u een SQL-project wilt maken voor een doelplatform dat anders is dan het doelplatform dat is opgegeven in het .sqlproj
-bestand, gebruikt u het /p:DSP=
opdrachtregelargument. Als u bijvoorbeeld een SQL-project wilt bouwen voor sql Server 2019-compatibiliteit:
dotnet build /p:DSP=Microsoft.Data.Tools.Schema.Sql.Sql150DatabaseSchemaProvider
Publiceren naar een ander doelplatform
Wanneer u een SQL-project publiceert, moet het doelplatform van het project overeenkomen met het doelplatform van de database. Als de doelplatforms niet overeenkomen, wordt de implementatie beƫindigd voordat er door een fout wijzigingen worden toegepast. Als u een project wilt publiceren naar een database met een ander doelplatform, gebruikt u de /p:AllowIncompatiblePlatform=true
eigenschap publiceren.