Compartir por


Propiedades de proyectos sql

Se aplica a:SQL ServerAzure SQL DatabaseInstancia administrada de Azure SQLBase de datos SQL en Microsoft Fabric

Además del contenido de los archivos individuales .sql , los proyectos de base de datos SQL contienen propiedades que definen el comportamiento del proyecto y la configuración de nivel de base de datos. Estas propiedades se almacenan en el .sqlproj archivo y se pueden establecer editando el .sqlproj archivo directamente. Algunas herramientas de proyectos de SQL, como Visual Studio y VS Code, proporcionan acceso para editar algunas o muchas de las propiedades del proyecto en una interfaz gráfica de usuario. En este artículo se proporciona información general sobre las propiedades que puede establecer para los proyectos de base de datos SQL.

Entre las propiedades de proyectos de SQL más usadas se incluyen:

Deshabilitar cambios en las opciones de base de datos

Durante la publicación del proyecto SQL, los cambios en las opciones de base de datos se generan en función de los valores definidos en las propiedades del proyecto y los valores por defecto del proyecto. Para evitar que se modifiquen las opciones de base de datos durante la publicación, utilizando una herramienta como la CLI de SqlPackage o Visual Studio, establezca la propiedad de publicación ScriptDatabaseOptions en false. Esta configuración también se puede incorporar en un perfil de publicación.

Propiedades comunes del proyecto

La propiedad de la plataforma de destino especifica la versión de SQL Server a la que se dirige el proyecto. La DSP propiedad se usa para establecer la plataforma de destino para el proyecto sql. Puede encontrar más información sobre la plataforma de destino en el artículo plataforma de destino .

El análisis de código puede mejorar drásticamente el proceso de integración e implementación continuas detectando posibles problemas al principio del ciclo de vida de desarrollo. Obtenga más información sobre cómo habilitar el análisis de código e incluir reglas personalizadas en el artículo análisis de código de SQL .

Propiedades de la aplicación de capa de datos

Las siguientes propiedades se usan para definir la aplicación de capa de datos (DAC) que se crea cuando se compila el proyecto SQL.

  • DacApplicationName: nombre de la aplicación .dacpacde capa de datos . El valor predeterminado es el nombre del proyecto.
  • DacDescription: una descripción opcional de la aplicación .dacpacde capa de datos .
  • DacVersion: la versión de la aplicación de capa de datos .dacpac. El valor predeterminado es 1.0.0.0.

Esquema predeterminado

La DefaultSchema propiedad establece el esquema predeterminado para el proyecto SQL. Esta propiedad se aplica a objetos con nombre de una parte. El valor predeterminado es dbo.

Advertencias de T-SQL

Las SuppressTSqlWarnings propiedades y TreatTSqlWarningsAsErrors controlan cómo se controlan las advertencias de T-SQL durante la compilación del proyecto. La SuppressTSqlWarnings propiedad suprime las advertencias de T-SQL durante la compilación del proyecto, especificada como una lista separada por comas de números de error.

La TreatTSqlWarningsAsErrors propiedad trata las advertencias de T-SQL como errores, lo que provoca que las advertencias de T-SQL produzcan un error en la compilación. El valor predeterminado de TreatTSqlWarningsAsErrors es False.

Ejemplo de uso de las propiedades del proyecto

En el ejemplo siguiente se muestra cómo establecer las propiedades CompatibilityMode, IsChangeTrackingOn y TreatTSqlWarningsAsErrors en un archivo de proyecto de SQL. La CompatibilityMode propiedad se establece a 130, la IsChangeTrackingOn propiedad se establece a True, y la TreatTSqlWarningsAsErrors propiedad se establece a True. La propiedad TreatSqlWarningsAsErrors solo se establece en True en la configuración de compilación Release.

<?xml version="1.0" encoding="utf-8"?>
<Project DefaultTargets="Build">
  <Sdk Name="Microsoft.Build.Sql" Version="1.0.0-rc1" />
  <PropertyGroup>
    <Name>AdventureWorks</Name>
    <DSP>Microsoft.Data.Tools.Schema.Sql.Sql160DatabaseSchemaProvider</DSP>
    <ModelCollation>1033, CI</ModelCollation>
    <ProjectGuid>{00000000-0000-0000-0000-000000000000}</ProjectGuid>
    <RunSqlCodeAnalysis>true</RunSqlCodeAnalysis>
    <CompatibilityMode>130</CompatibilityMode>
    <IsChangeTrackingOn>True</IsChangeTrackingOn>
  </PropertyGroup>
  <PropertyGroup Condition="'$(Configuration)'=='Release'">
    <TreatTSqlWarningsAsErrors>True</TreatTSqlWarningsAsErrors>
  </PropertyGroup>
</Project>

Todas las propiedades del proyecto

Algunas propiedades del proyecto están asociadas a las opciones de base de datos que se aplican solo a bases de datos de SQL Server o versiones específicas de SQL Server. Antes de incluir una propiedad de proyecto en el proyecto, revise la documentación asociada de la opción de base de datos para comprender el comportamiento de la propiedad y los requisitos de la base de datos.

Property Opción DATABASE SET Etiqueta de interfaz de usuario Valor predeterminado del proyecto SQL Valores permitidos
AllowSnapshotIsolation ALLOW_SNAPSHOT_ISOLATION Configuración de la base de datos, Operativo, Permitir aislamiento de instantáneas False {True|False}
AnsiNulls ANSI_NULLS Configuración de la base de datos, SET ANSI_NULLS True {True|False}
AnsiPadding ANSI_PADDING Configuración de la base de datos, SET ANSI_PADDING True {True|False}
AnsiWarnings ANSI_WARNINGS Configuración de la base de datos, SET ANSI_WARNINGS True {True|False}
ArithAbort ARITHABORT Configuración de la base de datos, SET ARITHABORT True {True|False}
AutoClose AUTO_CLOSE Configuración de la base de datos, Operativo, Cierre automático False {True|False}
AutoCreateStatistics AUTO_CREATE_STATISTICS Configuración de la base de datos, Operativa, Creación automática de estadísticas True {True|False}
AutoCreateStatisticsIncremental AUTO_CREATE_STATISTICS (INCREMENTAL) Configuración de la base de datos, Operativa, Creación automática incremental False {True|False}
AutoShrink AUTO_SHRINK Configuración de la base de datos, Operativa, Reducción automática False {True|False}
AutoUpdateStatistics AUTO_UPDATE_STATISTICS Configuración de la base de datos, Operativo, Estadísticas de actualización automática True {True|False}
AutoUpdateStatisticsAsynchronously AUTO_UPDATE_STATISTICS_ASYNC Configuración de la base de datos, Operativo, Actualización automática de estadísticas de forma asincrónica False {True|False}
ChangeTrackingRetentionPeriod CHANGE_RETENTION Configuración de la base de datos, Operacional, Período de retención de seguimiento de modificaciones 2 {integer}
ChangeTrackingRetentionUnit CHANGE_RETENTION Configuración de la base de datos, Operacional, Período de retención de seguimiento de modificaciones MINUTES {DAYS|HOURS|MINUTES}
CloseCursorOnCommitEnabled CURSOR_CLOSE_ON_COMMIT Configuración de la base de datos, Operativa, Habilitar el cursor de cierre al confirmar False {True|False}
CompatibilityMode COMPATIBILITY_LEVEL Configuración de la base de datos, nivel de compatibilidad {100|110|120|130|140|150|160|170}1
ConcatNullYieldsNull CONCAT_NULL_YIELDS_NULL Configuración de la base de datos, SET CONCAT_NULL_YIELDS_NULL True {True|False}
Containment CONTAINMENT Configuración de la base de datos, Independencia NONE {NONE|PARTIAL}
DacApplicationName Propiedades de aplicación de capa de datos (.dacpac), nombre El nombre del proyecto {string}
DacDescription Propiedades de la aplicación de capa de datos (.dacpac), descripción {string}
DacVersion Propiedades de aplicación de capa de datos (.dacpac), versión 1.0.0.0 {número de versión semántica}
DatabaseAccess db_user_access_option Configuración de la base de datos, Acceso a la base de datos MULTI_USER {MULTI_USER|SINGLE_USER|RESTRICTED_USER}
DatabaseChaining DB_CHAINING Configuración de la base de datos, Encadenamiento de bases de datos False {True|False}
DatabaseDefaultFulltextLanguage DEFAULT_FULLTEXT_LANGUAGE Configuración de la base de datos, idioma de texto completo predeterminado 1033 {entero ID de idioma}
DatabaseDefaultLanguage DEFAULT_LANGUAGE Configuración de la base de datos, idioma predeterminado 1033 {entero ID de idioma}
DatabaseState db_state_option Configuración de la base de datos, Estado de la base de datos ONLINE {ONLINE|OFFLINE}
DbScopedConfigLegacyCardinalityEstimation LEGACY_CARDINALITY_ESTIMATION 2 Configuración con ámbito de base de datos, Estimación de cardinalidad heredada Off {Off|On}
DbScopedConfigLegacyCardinalitySecondaryEstimation LEGACY_CARDINALITY_SECONDARY_ESTIMATION 2 Configuración con ámbito de base de datos, Estimación de cardinalidad heredada para la base de datos secundaria Primary {Primary|Off|On}
DbScopedConfigParameterSniffing PARAMETER_SNIFFING 2 Configuración con ámbito de base de datos, Examen de parámetros On {On|Off}
DbScopedConfigParameterSniffingSecondary PARAMETER_SNIFFING_SECONDARY 2 Configuración con ámbito de base de datos, Examen de parámetros para la base de datos secundaria Primary {Primary|Off|On}
DbScopedConfigOptimizerHotfixes OPTIMIZER_HOTFIXES 2 Configuración con ámbito de base de datos, Correcciones del optimizador de consultas Off {Off|On}
DbScopedConfigOptimizerHotfixesSecondary OPTIMIZER_HOTFIXES_SECONDARY 2 Configuración con ámbito de base de datos, Correcciones del optimizador de consultas para la base de datos secundaria Primary {Primary|Off|On}
DbScopedConfigMaxDOP MAXDOP 2 Configuración con ámbito de base de datos, Grado máximo de paralelismo 0 {integer}
DbScopedConfigMaxDOPSecondary MAXDOP_SECONDARY 2 Configuración con ámbito de base de datos, Grado máximo de paralelismo para la base de datos secundaria {integer}
DbScopedConfigDWCompatibilityLevel DW_COMPATIBILITY_LEVEL 2 Configuración con ámbito de base de datos, Nivel de compatibilidad de DW 0 {0|10|20|30|40|50|9000}3
DefaultCollation COLLATE 4 Configuración de bases de datos, Intercalación de bases de datos SQL_Latin1_General_CP1_CI_AS Vea Nombre de intercalación de SQL Server para obtener los valores válidos.
DefaultCursor CURSOR_DEFAULT Configuración de la base de datos, Operativo, Cursor predeterminado Local {Global|Local}
DefaultFilegroup Configuración de la base de datos, Operativo, Grupo de archivos predeterminado PRIMARY {string}
DefaultFileStreamFilegroup Configuración de la base de datos, Operacional, Grupo de archivos filestream predeterminado {string}
DefaultSchema Configuración general del proyecto, esquema predeterminado dbo {string}
DelayedDurability DELAYED_DURABILITY Configuración de base de datos, Operativa, Durabilidad diferida de transacciones DISABLED {DISABLED|ALLOWED|FORCED}
DSP Plataforma de destino para el proyecto SQL Consulte plataforma de destino para obtener valores válidos.
EnableFullTextSearch Configuración de la base de datos, Habilitar búsqueda de texto completo True {True|False}
FileStreamDirectoryName FILESTREAM (DIRECTORY_NAME) Configuración de la base de datos, nombre del directorio FILESTREAM {string}
IsBrokerPriorityHonored HONOR_BROKER_PRIORITY Configuración de la base de datos, prioridad del corredor respetada False {True|False}
IsChangeTrackingAutoCleanupOn CHANGE_TRACKING Configuración de la base de datos, Operativo, Limpieza automática de seguimiento de cambios True {True|False}
IsChangeTrackingOn CHANGE_TRACKING Configuración de la base de datos, Operativa, Seguimiento de cambios False {True|False}
IsEncryptionOn ENCRYPTION Configuración de la base de datos, Cifrado habilitado False {True|False}
IsLedgerOn LEDGER 4 Configuración de la base de datos, Habilitar libro de contabilidad False {True|False}
IsNestedTriggersOn NESTED_TRIGGERS Configuración de la base de datos, Desencadenadores anidados habilitados True {True|False}
IsTransformNoiseWordsOn TRANSFORM_NOISE_WORDS Configuración de la base de datos, Transformar palabras de ruido False {True|False}
MemoryOptimizedElevateToSnapshot MEMORY_OPTIMIZED_ELEVATE_TO_SNAPSHOT Configuración de la base de datos, Operativa, Elevación optimizada para memoria a instantáneas False {True|False}
ModelCollation Configuración del proyecto, Intercalación 1033,CI {identificador de idioma entero}, {CI|CS}
NonTransactedFileStreamAccess NON_TRANSACTED_ACCESS Configuración de la base de datos, acceso no transaccionado de FILESTREAM OFF {OFF|READ_ONLY|FULL}
NumericRoundAbort NUMERIC_ROUNDABORT Configuración de la base de datos, SET NUMERIC_ROUNDABORT False {True|False}
OutputPath Configuración de compilación, ruta de acceso de salida bin\Debug y bin\Release {string}
PageVerify PAGE_VERIFY Configuración de la base de datos, Operativa, Comprobación de página NONE {NONE|TORN_PAGE_DETECTION|CHECKSUM}
Parameterization PARAMETERIZATION Configuración de la base de datos, Parametrización SIMPLE {SIMPLE|FORCED}
QueryStoreCaptureMode QUERY_STORE (QUERY_CAPTURE_MODE) Configuración de la base de datos, Operativa, Modo de captura del almacén de consultas ALL {OFF|ALL|AUTO}
QueryStoreDesiredState QUERY_STORE (OPERATION_MODE) Configuración de la base de datos, Operativo, Modo de operación del almacén de consultas OFF {OFF|READ_WRITE|READ_ONLY}
QueryStoreFlushInterval QUERY_STORE (DATA_FLUSH_INTERVAL_SECONDS) Configuración de la base de datos, Operativa, Intervalo de vaciado de datos del almacén de consultas (segundos) 900 {integer}
QueryStoreIntervalLength QUERY_STORE (INTERVAL_LENGTH_MINUTES) Configuración de la base de datos, Operacional, Duración del intervalo del almacén de consultas (en minutos) 60 {integer}
QueryStoreMaxPlansPerQuery QUERY_STORE (MAX_PLANS_PER_QUERY) Configuración de la base de datos, Operativa, Número máximo de planes por consulta del almacén de consultas 200 {integer}
QueryStoreMaxStorageSize QUERY_STORE (MAX_STORAGE_SIZE_MB) Configuración de la base de datos, Operativa, Tamaño máximo de almacenamiento del almacén de consultas (MB) 100 {integer}
QueryStoreStaleQueryThreshold QUERY_STORE (STALE_QUERY_THRESHOLD_DAYS) Configuración de la base de datos, Operativa, Umbral de obsolescencia de consultas del almacén de consultas (días) 367 {integer}
QuotedIdentifier QUOTED_IDENTIFIER Configuración de la base de datos, SET QUOTED_IDENTIFIER True {True|False}
ReadCommittedSnapshot READ_COMMITTED_SNAPSHOT Configuración de la base de datos, Operativa, Instantánea de lectura confirmada False {True|False}
Recovery RECOVERY Configuración de la base de datos, Operativa, Recuperación FULL {FULL|SIMPLE|BULK_LOGGED}
RecursiveTriggersEnabled RECURSIVE_TRIGGERS Configuración de la base de datos, desencadenadores recursivos habilitados False {True|False}
ServiceBrokerOption SERVICE_BROKER Configuración de la base de datos, opciones de Service Broker DisableBroker {DisableBroker|EnableBroker|NewBroker|ErrorBrokerConversations}
SuppressTSqlWarnings Opciones de compilación, Suprime las advertencias de T-SQL (lista separada por comas de códigos de advertencia de T-SQL) {string}
TargetRecoveryTimePeriod Configuración de la base de datos, Operativa, Tiempo de recuperación de destino (segundos) Especifica la frecuencia de puntos de comprobación indirectos por base de datos. 60 {integer}
TargetRecoveryTimeUnit Configuración de la base de datos, Operaciones, tiempo objetivo de recuperación SECONDS {MINUTES|SECONDS}
TreatTSqlWarningsAsErrors Configuración de compilación, Tratar advertencias de T-SQL como errores False {True|False}
Trustworthy TRUSTWORTHY Configuración de la base de datos, Confiable False {True|False}
TwoDigitYearCutoff TWO_DIGIT_YEAR_CUTOFF Configuración de la base de datos, límite de año de dos dígitos 2049 {integer}
UpdateOptions db_update_option Configuración de la base de datos, Opciones de actualización READ_WRITE {READ_WRITE|READ_ONLY}
ValidateCasingOnIdentifiers Configuración general del proyecto, Validar el uso de mayúsculas en identificadores True {True|False}
  1. El valor predeterminado difiere en función de la edición del motor y la configuración del servidor.
  2. Opciones de configuración con ámbito de base de datos .
  3. AUTO se establece con el valor 0.
  4. Solo se aplica como CREATE DATABASE.