SqlServerDsc.SqlDatabase.dsc.adaptedResource.json

{
  "$schema": "https://aka.ms/dsc/schemas/v3/bundled/adaptedresource/manifest.json",
  "type": "SqlServerDsc/SqlDatabase",
  "kind": "resource",
  "version": "17.6.0",
  "capabilities": [
    "get",
    "test",
    "set"
  ],
  "description": "The `SqlDatabase` DSC resource is used to create, modify, or remove databases on a SQL Server instance.",
  "author": "DSC Community",
  "requireAdapter": "Microsoft.Adapter/PowerShell",
  "path": "SqlServerDsc.psd1",
  "schema": {
    "embedded": {
      "$schema": "https://json-schema.org/draft/2020-12/schema",
      "properties": {
        "InstanceName": {
          "type": "string",
          "title": "InstanceName",
          "description": "The InstanceName property."
        },
        "ServerName": {
          "type": "string",
          "title": "ServerName",
          "description": "The ServerName property."
        },
        "Credential": {
          "type": "string",
          "title": "Credential",
          "description": "The Credential property."
        },
        "Protocol": {
          "type": "string",
          "enum": [
            "tcp",
            "np",
            "lpc"
          ],
          "title": "Protocol",
          "description": "The Protocol property."
        },
        "Port": {
          "type": "string",
          "title": "Port",
          "description": "The Port property."
        },
        "Reasons": {
          "items": {
            "type": "string"
          },
          "type": "array",
          "title": "Reasons",
          "readOnly": true,
          "description": "The Reasons property."
        },
        "Name": {
          "type": "string",
          "title": "Name",
          "description": "The name of the database."
        },
        "Ensure": {
          "type": "string",
          "title": "Ensure",
          "description": "Specifies if the database should be present or absent. If set to `Present` the database will be added if it does not exist, or updated if the database exist. If `Absent` then the database will be removed from the server. Defaults to `Present`."
        },
        "Collation": {
          "type": "string",
          "title": "Collation",
          "description": "Specifies the default collation for the database."
        },
        "CompatibilityLevel": {
          "type": "string",
          "enum": [
            "Version80",
            "Version90",
            "Version100",
            "Version110",
            "Version120",
            "Version130",
            "Version140",
            "Version150",
            "Version160",
            "Version170"
          ],
          "title": "CompatibilityLevel",
          "description": "Specifies the database compatibility level."
        },
        "RecoveryModel": {
          "type": "string",
          "enum": [
            "Simple",
            "Full",
            "BulkLogged"
          ],
          "title": "RecoveryModel",
          "description": "Specifies the database recovery model."
        },
        "OwnerName": {
          "type": "string",
          "title": "OwnerName",
          "description": "Specifies the name of the login that should be the owner of the database."
        },
        "SnapshotIsolation": {
          "type": "string",
          "title": "SnapshotIsolation",
          "description": "Specifies whether snapshot isolation should be enabled for the database."
        },
        "CatalogCollation": {
          "type": "string",
          "enum": [
            "DatabaseDefault",
            "SqlLatin1GeneralCp1CiAs"
          ],
          "title": "CatalogCollation",
          "description": "Specifies the collation type for the system catalog. Can only be set during database creation. Requires SQL Server 2019 or later."
        },
        "IsLedger": {
          "type": "string",
          "title": "IsLedger",
          "description": "Specifies whether to create a ledger database. Can only be set during database creation. Requires SQL Server 2022 or later."
        },
        "AcceleratedRecoveryEnabled": {
          "type": "string",
          "title": "AcceleratedRecoveryEnabled",
          "description": "Specifies whether Accelerated Database Recovery (ADR) is enabled. Requires SQL Server 2019 or later."
        },
        "AnsiNullDefault": {
          "type": "string",
          "title": "AnsiNullDefault",
          "description": "Specifies whether new columns allow NULL by default unless explicitly specified."
        },
        "AnsiNullsEnabled": {
          "type": "string",
          "title": "AnsiNullsEnabled",
          "description": "Specifies whether comparisons to NULL follow ANSI SQL behavior."
        },
        "AnsiPaddingEnabled": {
          "type": "string",
          "title": "AnsiPaddingEnabled",
          "description": "Specifies whether padding for variable-length columns follows ANSI rules."
        },
        "AnsiWarningsEnabled": {
          "type": "string",
          "title": "AnsiWarningsEnabled",
          "description": "Specifies whether ANSI warnings are generated for certain conditions."
        },
        "ArithmeticAbortEnabled": {
          "type": "string",
          "title": "ArithmeticAbortEnabled",
          "description": "Specifies whether a query is terminated when an overflow or divide-by-zero error occurs."
        },
        "AutoClose": {
          "type": "string",
          "title": "AutoClose",
          "description": "Specifies whether the database closes after the last user exits."
        },
        "AutoCreateIncrementalStatisticsEnabled": {
          "type": "string",
          "title": "AutoCreateIncrementalStatisticsEnabled",
          "description": "Specifies whether creation of incremental statistics on partitioned tables is allowed."
        },
        "AutoCreateStatisticsEnabled": {
          "type": "string",
          "title": "AutoCreateStatisticsEnabled",
          "description": "Specifies whether single-column statistics are automatically created for query optimization."
        },
        "AutoShrink": {
          "type": "string",
          "title": "AutoShrink",
          "description": "Specifies whether the database automatically shrinks files when free space is detected."
        },
        "AutoUpdateStatisticsAsync": {
          "type": "string",
          "title": "AutoUpdateStatisticsAsync",
          "description": "Specifies whether statistics are updated asynchronously."
        },
        "AutoUpdateStatisticsEnabled": {
          "type": "string",
          "title": "AutoUpdateStatisticsEnabled",
          "description": "Specifies whether statistics are automatically updated when out-of-date."
        },
        "BrokerEnabled": {
          "type": "string",
          "title": "BrokerEnabled",
          "description": "Specifies whether Service Broker is enabled for the database."
        },
        "ChangeTrackingAutoCleanUp": {
          "type": "string",
          "title": "ChangeTrackingAutoCleanUp",
          "description": "Specifies whether automatic cleanup of change tracking information is enabled."
        },
        "ChangeTrackingEnabled": {
          "type": "string",
          "title": "ChangeTrackingEnabled",
          "description": "Specifies whether change tracking is enabled for the database."
        },
        "CloseCursorsOnCommitEnabled": {
          "type": "string",
          "title": "CloseCursorsOnCommitEnabled",
          "description": "Specifies whether open cursors are closed when a transaction is committed."
        },
        "ConcatenateNullYieldsNull": {
          "type": "string",
          "title": "ConcatenateNullYieldsNull",
          "description": "Specifies whether concatenation with NULL results in NULL."
        },
        "DatabaseOwnershipChaining": {
          "type": "string",
          "title": "DatabaseOwnershipChaining",
          "description": "Specifies whether ownership chaining across objects within the database is enabled."
        },
        "DataRetentionEnabled": {
          "type": "string",
          "title": "DataRetentionEnabled",
          "description": "Specifies whether SQL Server data retention policy is enabled. Requires SQL Server 2017 or later."
        },
        "DateCorrelationOptimization": {
          "type": "string",
          "title": "DateCorrelationOptimization",
          "description": "Specifies whether date correlation optimization is enabled."
        },
        "EncryptionEnabled": {
          "type": "string",
          "title": "EncryptionEnabled",
          "description": "Specifies whether Transparent Data Encryption (TDE) is enabled."
        },
        "HonorBrokerPriority": {
          "type": "string",
          "title": "HonorBrokerPriority",
          "description": "Specifies whether honoring Service Broker conversation priority is enabled."
        },
        "IsFullTextEnabled": {
          "type": "string",
          "title": "IsFullTextEnabled",
          "description": "Specifies whether full-text search is enabled."
        },
        "IsParameterizationForced": {
          "type": "string",
          "title": "IsParameterizationForced",
          "description": "Specifies whether forced parameterization is enabled."
        },
        "IsReadCommittedSnapshotOn": {
          "type": "string",
          "title": "IsReadCommittedSnapshotOn",
          "description": "Specifies whether READ_COMMITTED_SNAPSHOT isolation is ON."
        },
        "IsSqlDw": {
          "type": "string",
          "title": "IsSqlDw",
          "description": "Specifies whether the database is a SQL Data Warehouse database."
        },
        "IsVarDecimalStorageFormatEnabled": {
          "type": "string",
          "title": "IsVarDecimalStorageFormatEnabled",
          "description": "Specifies whether vardecimal compression is enabled."
        },
        "LocalCursorsDefault": {
          "type": "string",
          "title": "LocalCursorsDefault",
          "description": "Specifies whether cursors are local by default instead of global."
        },
        "NestedTriggersEnabled": {
          "type": "string",
          "title": "NestedTriggersEnabled",
          "description": "Specifies whether triggers are allowed to fire other triggers."
        },
        "NumericRoundAbortEnabled": {
          "type": "string",
          "title": "NumericRoundAbortEnabled",
          "description": "Specifies whether an error is raised on loss of precision due to rounding."
        },
        "QuotedIdentifiersEnabled": {
          "type": "string",
          "title": "QuotedIdentifiersEnabled",
          "description": "Specifies whether identifiers can be delimited by double quotes."
        },
        "ReadOnly": {
          "type": "string",
          "title": "ReadOnly",
          "description": "Specifies whether the database is in read-only mode."
        },
        "RecursiveTriggersEnabled": {
          "type": "string",
          "title": "RecursiveTriggersEnabled",
          "description": "Specifies whether a trigger is allowed to fire itself recursively."
        },
        "RemoteDataArchiveEnabled": {
          "type": "string",
          "title": "RemoteDataArchiveEnabled",
          "description": "Specifies whether Stretch Database (remote data archive) is enabled."
        },
        "RemoteDataArchiveUseFederatedServiceAccount": {
          "type": "string",
          "title": "RemoteDataArchiveUseFederatedServiceAccount",
          "description": "Specifies whether to use federated service account for remote data archive."
        },
        "TemporalHistoryRetentionEnabled": {
          "type": "string",
          "title": "TemporalHistoryRetentionEnabled",
          "description": "Specifies whether automatic cleanup of system-versioned temporal history is enabled. Requires SQL Server 2017 or later."
        },
        "TransformNoiseWords": {
          "type": "string",
          "title": "TransformNoiseWords",
          "description": "Specifies how full-text noise word behavior is controlled during queries."
        },
        "Trustworthy": {
          "type": "string",
          "title": "Trustworthy",
          "description": "Specifies whether implicit access to external resources by modules is allowed."
        },
        "ChangeTrackingRetentionPeriod": {
          "type": "string",
          "title": "ChangeTrackingRetentionPeriod",
          "description": "Specifies the retention period value for change tracking information."
        },
        "DefaultFullTextLanguage": {
          "type": "string",
          "title": "DefaultFullTextLanguage",
          "description": "Specifies the LCID of the default full-text language."
        },
        "DefaultLanguage": {
          "type": "string",
          "title": "DefaultLanguage",
          "description": "Specifies the ID of the default language for the database."
        },
        "MaxDop": {
          "type": "string",
          "title": "MaxDop",
          "description": "Specifies the MAXDOP database-scoped configuration for primary replicas."
        },
        "MaxDopForSecondary": {
          "type": "string",
          "title": "MaxDopForSecondary",
          "description": "Specifies the MAXDOP database-scoped configuration for secondary replicas."
        },
        "MirroringRedoQueueMaxSize": {
          "type": "string",
          "title": "MirroringRedoQueueMaxSize",
          "description": "Specifies the redo queue maximum size for mirroring/AGs."
        },
        "MirroringTimeout": {
          "type": "string",
          "title": "MirroringTimeout",
          "description": "Specifies the timeout in seconds for mirroring sessions."
        },
        "TargetRecoveryTime": {
          "type": "string",
          "title": "TargetRecoveryTime",
          "description": "Specifies the target recovery time (seconds) for indirect checkpointing."
        },
        "TwoDigitYearCutoff": {
          "type": "string",
          "title": "TwoDigitYearCutoff",
          "description": "Specifies the two-digit year cutoff used for date conversion."
        },
        "MaxSizeInBytes": {
          "type": "string",
          "title": "MaxSizeInBytes",
          "description": "Specifies the maximum size of the database in bytes."
        },
        "FilestreamDirectoryName": {
          "type": "string",
          "title": "FilestreamDirectoryName",
          "description": "Specifies the directory name used for FILESTREAM data."
        },
        "MirroringPartner": {
          "type": "string",
          "title": "MirroringPartner",
          "description": "Specifies the mirroring partner server name."
        },
        "MirroringPartnerInstance": {
          "type": "string",
          "title": "MirroringPartnerInstance",
          "description": "Specifies the mirroring partner instance name."
        },
        "MirroringWitness": {
          "type": "string",
          "title": "MirroringWitness",
          "description": "Specifies the mirroring witness server."
        },
        "PersistentVersionStoreFileGroup": {
          "type": "string",
          "title": "PersistentVersionStoreFileGroup",
          "description": "Specifies the filegroup used for the Persistent Version Store (PVS). Requires SQL Server 2019 or later."
        },
        "PrimaryFilePath": {
          "type": "string",
          "title": "PrimaryFilePath",
          "description": "Specifies the path of the primary data files directory."
        },
        "RemoteDataArchiveCredential": {
          "type": "string",
          "title": "RemoteDataArchiveCredential",
          "description": "Specifies the credential name for Stretch Database/remote data archive."
        },
        "RemoteDataArchiveEndpoint": {
          "type": "string",
          "title": "RemoteDataArchiveEndpoint",
          "description": "Specifies the endpoint URL for remote data archive."
        },
        "RemoteDataArchiveLinkedServer": {
          "type": "string",
          "title": "RemoteDataArchiveLinkedServer",
          "description": "Specifies the linked server used by remote data archive."
        },
        "RemoteDatabaseName": {
          "type": "string",
          "title": "RemoteDatabaseName",
          "description": "Specifies the remote database name for remote data archive."
        },
        "ChangeTrackingRetentionPeriodUnits": {
          "type": "string",
          "enum": [
            "None",
            "Days",
            "Hours",
            "Minutes"
          ],
          "title": "ChangeTrackingRetentionPeriodUnits",
          "description": "Specifies the units for the retention period."
        },
        "ContainmentType": {
          "type": "string",
          "enum": [
            "None",
            "Partial"
          ],
          "title": "ContainmentType",
          "description": "Specifies the containment level of the database."
        },
        "DelayedDurability": {
          "type": "string",
          "enum": [
            "Disabled",
            "Allowed",
            "Forced"
          ],
          "title": "DelayedDurability",
          "description": "Specifies the delayed durability setting for the database."
        },
        "FilestreamNonTransactedAccess": {
          "type": "string",
          "enum": [
            "Off",
            "ReadOnly",
            "Full"
          ],
          "title": "FilestreamNonTransactedAccess",
          "description": "Specifies the FILESTREAM access level for non-transactional access."
        },
        "LegacyCardinalityEstimation": {
          "type": "string",
          "enum": [
            "Off",
            "On",
            "Primary"
          ],
          "title": "LegacyCardinalityEstimation",
          "description": "Specifies the legacy cardinality estimator setting for the primary."
        },
        "LegacyCardinalityEstimationForSecondary": {
          "type": "string",
          "enum": [
            "Off",
            "On",
            "Primary"
          ],
          "title": "LegacyCardinalityEstimationForSecondary",
          "description": "Specifies the legacy cardinality estimator setting for secondary replicas."
        },
        "MirroringSafetyLevel": {
          "type": "string",
          "enum": [
            "None",
            "Unknown",
            "Off",
            "Full"
          ],
          "title": "MirroringSafetyLevel",
          "description": "Specifies the mirroring safety level."
        },
        "PageVerify": {
          "type": "string",
          "enum": [
            "None",
            "TornPageDetection",
            "Checksum"
          ],
          "title": "PageVerify",
          "description": "Specifies the page verification setting."
        },
        "ParameterSniffing": {
          "type": "string",
          "enum": [
            "Off",
            "On",
            "Primary"
          ],
          "title": "ParameterSniffing",
          "description": "Specifies the parameter sniffing setting for the primary."
        },
        "ParameterSniffingForSecondary": {
          "type": "string",
          "enum": [
            "Off",
            "On",
            "Primary"
          ],
          "title": "ParameterSniffingForSecondary",
          "description": "Specifies the parameter sniffing setting for secondary replicas."
        },
        "QueryOptimizerHotfixes": {
          "type": "string",
          "enum": [
            "Off",
            "On",
            "Primary"
          ],
          "title": "QueryOptimizerHotfixes",
          "description": "Specifies the query optimizer hotfixes setting for the primary."
        },
        "QueryOptimizerHotfixesForSecondary": {
          "type": "string",
          "enum": [
            "Off",
            "On",
            "Primary"
          ],
          "title": "QueryOptimizerHotfixesForSecondary",
          "description": "Specifies the query optimizer hotfixes setting for secondary replicas."
        },
        "UserAccess": {
          "type": "string",
          "enum": [
            "Multiple",
            "Restricted",
            "Single"
          ],
          "title": "UserAccess",
          "description": "Specifies the database user access mode."
        }
      },
      "description": "The `SqlDatabase` DSC resource is used to create, modify, or remove databases on a SQL Server instance.",
      "additionalProperties": false,
      "required": [
        "InstanceName",
        "Name"
      ],
      "title": "SqlServerDsc/SqlDatabase",
      "type": "object"
    }
  }
}