New‑SqlDscDatabase - dsccommunity/SqlServerDsc GitHub Wiki

SYNOPSIS

Creates a new database in a SQL Server Database Engine instance.

SYNTAX

Database (Default)

New-SqlDscDatabase -ServerObject <Server> -Name <String> [-Collation <String>]
 [-CatalogCollation <CatalogCollationType>] [-CompatibilityLevel <String>] [-RecoveryModel <String>]
 [-OwnerName <String>] [-IsLedger] [-AcceleratedRecoveryEnabled] [-AnsiNullDefault] [-AnsiNullsEnabled]
 [-AnsiPaddingEnabled] [-AnsiWarningsEnabled] [-ArithmeticAbortEnabled] [-AutoClose]
 [-AutoCreateIncrementalStatisticsEnabled] [-AutoCreateStatisticsEnabled] [-AutoShrink]
 [-AutoUpdateStatisticsAsync] [-AutoUpdateStatisticsEnabled] [-BrokerEnabled] [-ChangeTrackingAutoCleanUp]
 [-ChangeTrackingEnabled] [-CloseCursorsOnCommitEnabled] [-ConcatenateNullYieldsNull]
 [-DatabaseOwnershipChaining] [-DataRetentionEnabled] [-DateCorrelationOptimization] [-EncryptionEnabled]
 [-HonorBrokerPriority] [-IsFullTextEnabled] [-IsParameterizationForced] [-IsReadCommittedSnapshotOn]
 [-IsSqlDw] [-IsVarDecimalStorageFormatEnabled]
 [-LegacyCardinalityEstimation <DatabaseScopedConfigurationOnOff>]
 [-LegacyCardinalityEstimationForSecondary <DatabaseScopedConfigurationOnOff>] [-LocalCursorsDefault]
 [-NestedTriggersEnabled] [-NumericRoundAbortEnabled] [-ParameterSniffing <DatabaseScopedConfigurationOnOff>]
 [-ParameterSniffingForSecondary <DatabaseScopedConfigurationOnOff>]
 [-QueryOptimizerHotfixes <DatabaseScopedConfigurationOnOff>]
 [-QueryOptimizerHotfixesForSecondary <DatabaseScopedConfigurationOnOff>] [-QuotedIdentifiersEnabled]
 [-ReadOnly] [-RecursiveTriggersEnabled] [-RemoteDataArchiveEnabled]
 [-RemoteDataArchiveUseFederatedServiceAccount] [-TemporalHistoryRetentionEnabled] [-TransformNoiseWords]
 [-Trustworthy] [-ChangeTrackingRetentionPeriod <Int32>] [-DefaultFullTextLanguage <Int32>]
 [-DefaultLanguage <Int32>] [-MaxDop <Int32>] [-MaxDopForSecondary <Int32>]
 [-MirroringRedoQueueMaxSize <Int32>] [-MirroringTimeout <Int32>] [-TargetRecoveryTime <Int32>]
 [-TwoDigitYearCutoff <Int32>] [-MaxSizeInBytes <Double>] [-FilestreamDirectoryName <String>]
 [-MirroringPartner <String>] [-MirroringPartnerInstance <String>] [-MirroringWitness <String>]
 [-PersistentVersionStoreFileGroup <String>] [-PrimaryFilePath <String>]
 [-RemoteDataArchiveCredential <String>] [-RemoteDataArchiveEndpoint <String>]
 [-RemoteDataArchiveLinkedServer <String>] [-RemoteDatabaseName <String>]
 [-ChangeTrackingRetentionPeriodUnits <RetentionPeriodUnits>] [-ContainmentType <ContainmentType>]
 [-DelayedDurability <DelayedDurability>] [-FilestreamNonTransactedAccess <FilestreamNonTransactedAccessType>]
 [-MirroringSafetyLevel <MirroringSafetyLevel>] [-PageVerify <PageVerify>] [-UserAccess <DatabaseUserAccess>]
 [-FileGroup <DatabaseFileGroupSpec[]>] [-Force] [-Refresh] [-WhatIf]
 [-Confirm] [<CommonParameters>]

Snapshot

New-SqlDscDatabase -ServerObject <Server> -Name <String> -DatabaseSnapshotBaseName <String>
 [-FileGroup <DatabaseFileGroupSpec[]>] [-Force] [-Refresh] [-WhatIf]
 [-Confirm] [<CommonParameters>]

DESCRIPTION

This command creates a new database in a SQL Server Database Engine instance. It supports creating both regular databases and database snapshots.

EXAMPLES

EXAMPLE 1

$serverObject = Connect-SqlDscDatabaseEngine -InstanceName 'MyInstance'
$serverObject | New-SqlDscDatabase -Name 'MyDatabase'

Creates a new database named MyDatabase.

EXAMPLE 2

$serverObject = Connect-SqlDscDatabaseEngine -InstanceName 'MyInstance'
$serverObject | New-SqlDscDatabase -Name 'MyDatabase' -Collation 'SQL_Latin1_General_Pref_CP850_CI_AS' -RecoveryModel 'Simple' -Force

Creates a new database named MyDatabase with the specified collation and recovery model without prompting for confirmation.

EXAMPLE 3

$serverObject = Connect-SqlDscDatabaseEngine -InstanceName 'MyInstance'
$serverObject | New-SqlDscDatabase -Name 'MyDatabaseSnapshot' -DatabaseSnapshotBaseName 'MyDatabase' -Force

Creates a database snapshot named MyDatabaseSnapshot from the source database MyDatabase without prompting for confirmation.

EXAMPLE 4

$serverObject = Connect-SqlDscDatabaseEngine -InstanceName 'MyInstance'

$primaryFile = New-SqlDscDataFile -Name 'MyDatabase_Primary' -FileName 'D:\SQLData\MyDatabase.mdf' -Size 102400 -Growth 10240 -GrowthType 'KB' -IsPrimaryFile -AsSpec $primaryFileGroup = New-SqlDscFileGroup -Name 'PRIMARY' -Files @($primaryFile) -IsDefault $true -AsSpec

$secondaryFile = New-SqlDscDataFile -Name 'MyDatabase_Secondary' -FileName 'E:\SQLData\MyDatabase.ndf' -Size 204800 -AsSpec $secondaryFileGroup = New-SqlDscFileGroup -Name 'SECONDARY' -Files @($secondaryFile) -AsSpec

$serverObject | New-SqlDscDatabase -Name 'MyDatabase' -FileGroup @($primaryFileGroup, $secondaryFileGroup) -Force

Creates a new database named MyDatabase with custom PRIMARY and SECONDARY file groups using specification objects created with the -AsSpec parameter. All properties are set directly via parameters without prompting for confirmation.

EXAMPLE 5

$serverObject = Connect-SqlDscDatabaseEngine -InstanceName 'MyInstance'
$serverObject | New-SqlDscDatabase -Name 'MyDatabase' -LegacyCardinalityEstimation 'On' -ParameterSniffing 'Off' -QueryOptimizerHotfixes 'On' -Force

Creates a new database named MyDatabase with database-scoped configuration settings: legacy cardinality estimation enabled, parameter sniffing disabled, and query optimizer hotfixes enabled, without prompting for confirmation.

PARAMETERS

-AcceleratedRecoveryEnabled

Specifies whether Accelerated Database Recovery (ADR) is enabled for the database. This parameter requires SQL Server 2019 (version 15) or later.

Type: SwitchParameter
Parameter Sets: Database
Aliases:

Required: False
Position: Named
Default value: False
Accept pipeline input: False
Accept wildcard characters: False

-AnsiNullDefault

Specifies whether new columns allow NULL by default unless explicitly specified (when ON).

Type: SwitchParameter
Parameter Sets: Database
Aliases:

Required: False
Position: Named
Default value: False
Accept pipeline input: False
Accept wildcard characters: False

-AnsiNullsEnabled

Specifies whether comparisons to NULL follow ANSI SQL behavior (when ON, x = NULL yields UNKNOWN).

Type: SwitchParameter
Parameter Sets: Database
Aliases:

Required: False
Position: Named
Default value: False
Accept pipeline input: False
Accept wildcard characters: False

-AnsiPaddingEnabled

Specifies whether padding for variable-length columns (e.g., CHAR/VARCHAR) follows ANSI rules.

Type: SwitchParameter
Parameter Sets: Database
Aliases:

Required: False
Position: Named
Default value: False
Accept pipeline input: False
Accept wildcard characters: False

-AnsiWarningsEnabled

Specifies whether ANSI warnings are generated for certain conditions (when ON, e.g., divide by zero).

Type: SwitchParameter
Parameter Sets: Database
Aliases:

Required: False
Position: Named
Default value: False
Accept pipeline input: False
Accept wildcard characters: False

-ArithmeticAbortEnabled

Specifies whether a query is terminated when an overflow or divide-by-zero error occurs.

Type: SwitchParameter
Parameter Sets: Database
Aliases:

Required: False
Position: Named
Default value: False
Accept pipeline input: False
Accept wildcard characters: False

-AutoClose

Specifies whether the database closes after the last user exits.

Type: SwitchParameter
Parameter Sets: Database
Aliases:

Required: False
Position: Named
Default value: False
Accept pipeline input: False
Accept wildcard characters: False

-AutoCreateIncrementalStatisticsEnabled

Specifies whether creation of incremental statistics on partitioned tables is allowed.

Type: SwitchParameter
Parameter Sets: Database
Aliases:

Required: False
Position: Named
Default value: False
Accept pipeline input: False
Accept wildcard characters: False

-AutoCreateStatisticsEnabled

Specifies whether single-column statistics are automatically created for query optimization.

Type: SwitchParameter
Parameter Sets: Database
Aliases:

Required: False
Position: Named
Default value: False
Accept pipeline input: False
Accept wildcard characters: False

-AutoShrink

Specifies whether the database automatically shrinks files when free space is detected.

Type: SwitchParameter
Parameter Sets: Database
Aliases:

Required: False
Position: Named
Default value: False
Accept pipeline input: False
Accept wildcard characters: False

-AutoUpdateStatisticsAsync

Specifies whether statistics are updated asynchronously, allowing queries to proceed with old stats.

Type: SwitchParameter
Parameter Sets: Database
Aliases:

Required: False
Position: Named
Default value: False
Accept pipeline input: False
Accept wildcard characters: False

-AutoUpdateStatisticsEnabled

Specifies whether statistics are automatically updated when they are out-of-date.

Type: SwitchParameter
Parameter Sets: Database
Aliases:

Required: False
Position: Named
Default value: False
Accept pipeline input: False
Accept wildcard characters: False

-BrokerEnabled

Specifies whether Service Broker is enabled for the database.

Type: SwitchParameter
Parameter Sets: Database
Aliases:

Required: False
Position: Named
Default value: False
Accept pipeline input: False
Accept wildcard characters: False

-CatalogCollation

Specifies the collation type for the system catalog. Valid values are DATABASE_DEFAULT and SQL_Latin1_General_CP1_CI_AS. This property can only be set during database creation and cannot be modified afterward. This parameter requires SQL Server 2019 (version 15) or later.

Type: CatalogCollationType
Parameter Sets: Database
Aliases:
Accepted values: DatabaseDefault, ContainedDatabaseFixedCollation, SQLLatin1GeneralCP1CIAS

Required: False
Position: Named
Default value: None
Accept pipeline input: False
Accept wildcard characters: False

-ChangeTrackingAutoCleanUp

Specifies whether automatic cleanup of change tracking information is enabled.

Type: SwitchParameter
Parameter Sets: Database
Aliases:

Required: False
Position: Named
Default value: False
Accept pipeline input: False
Accept wildcard characters: False

-ChangeTrackingEnabled

Specifies whether change tracking is enabled for the database.

Type: SwitchParameter
Parameter Sets: Database
Aliases:

Required: False
Position: Named
Default value: False
Accept pipeline input: False
Accept wildcard characters: False

-ChangeTrackingRetentionPeriod

Specifies the retention period value for change tracking information.

Type: Int32
Parameter Sets: Database
Aliases:

Required: False
Position: Named
Default value: 0
Accept pipeline input: False
Accept wildcard characters: False

-ChangeTrackingRetentionPeriodUnits

Specifies the units for the retention period (e.g., DAYS, HOURS).

Type: RetentionPeriodUnits
Parameter Sets: Database
Aliases:
Accepted values: None, Minutes, Hours, Days

Required: False
Position: Named
Default value: None
Accept pipeline input: False
Accept wildcard characters: False

-CloseCursorsOnCommitEnabled

Specifies whether open cursors are closed when a transaction is committed.

Type: SwitchParameter
Parameter Sets: Database
Aliases:

Required: False
Position: Named
Default value: False
Accept pipeline input: False
Accept wildcard characters: False

-Collation

The name of the SQL collation to use for the new database. Default value is server collation.

Type: String
Parameter Sets: Database
Aliases:

Required: False
Position: Named
Default value: None
Accept pipeline input: False
Accept wildcard characters: False

-CompatibilityLevel

The version of the SQL compatibility level to use for the new database. Default value is server version.

Type: String
Parameter Sets: Database
Aliases:

Required: False
Position: Named
Default value: None
Accept pipeline input: False
Accept wildcard characters: False

-ConcatenateNullYieldsNull

Specifies whether concatenation with NULL results in NULL (when ON).

Type: SwitchParameter
Parameter Sets: Database
Aliases:

Required: False
Position: Named
Default value: False
Accept pipeline input: False
Accept wildcard characters: False

-ContainmentType

Specifies the containment level of the database (NONE or PARTIAL).

Type: ContainmentType
Parameter Sets: Database
Aliases:
Accepted values: None, Partial

Required: False
Position: Named
Default value: None
Accept pipeline input: False
Accept wildcard characters: False

-DatabaseOwnershipChaining

Specifies whether ownership chaining across objects within the database is enabled.

Type: SwitchParameter
Parameter Sets: Database
Aliases:

Required: False
Position: Named
Default value: False
Accept pipeline input: False
Accept wildcard characters: False

-DatabaseSnapshotBaseName

Specifies the name of the source database from which to create a snapshot. When this parameter is specified, a database snapshot will be created instead of a regular database. The snapshot name is specified in the Name parameter.

Type: String
Parameter Sets: Snapshot
Aliases:

Required: True
Position: Named
Default value: None
Accept pipeline input: False
Accept wildcard characters: False

-DataRetentionEnabled

Specifies whether SQL Server data retention policy is enabled at the database level. This parameter requires SQL Server 2017 (version 14) or later.

Type: SwitchParameter
Parameter Sets: Database
Aliases:

Required: False
Position: Named
Default value: False
Accept pipeline input: False
Accept wildcard characters: False

-DateCorrelationOptimization

Specifies whether date correlation optimization is enabled to speed up temporal joins.

Type: SwitchParameter
Parameter Sets: Database
Aliases:

Required: False
Position: Named
Default value: False
Accept pipeline input: False
Accept wildcard characters: False

-DefaultFullTextLanguage

Specifies the LCID of the default full-text language.

Type: Int32
Parameter Sets: Database
Aliases:

Required: False
Position: Named
Default value: 0
Accept pipeline input: False
Accept wildcard characters: False

-DefaultLanguage

Specifies the ID of the default language for the database.

Type: Int32
Parameter Sets: Database
Aliases:

Required: False
Position: Named
Default value: 0
Accept pipeline input: False
Accept wildcard characters: False

-DelayedDurability

Specifies the delayed durability setting for the database (DISABLED, ALLOWED, FORCED).

Type: DelayedDurability
Parameter Sets: Database
Aliases:
Accepted values: Disabled, Allowed, Forced

Required: False
Position: Named
Default value: None
Accept pipeline input: False
Accept wildcard characters: False

-EncryptionEnabled

Specifies whether Transparent Data Encryption (TDE) is enabled.

Type: SwitchParameter
Parameter Sets: Database
Aliases:

Required: False
Position: Named
Default value: False
Accept pipeline input: False
Accept wildcard characters: False

-FileGroup

Specifies an array of DatabaseFileGroupSpec objects that define the file groups and data files for the database. Each DatabaseFileGroupSpec contains the file group name and an array of DatabaseFileSpec objects for the data files.

This parameter allows you to specify custom file and filegroup configurations before the database is created, avoiding the SMO limitation where DataFile objects require an existing database context.

For database snapshots, the FileName in each DatabaseFileSpec must point to sparse file locations. For regular databases, this allows full control over PRIMARY and secondary file group configurations.

Type: DatabaseFileGroupSpec[]
Parameter Sets: (All)
Aliases:

Required: False
Position: Named
Default value: None
Accept pipeline input: False
Accept wildcard characters: False

-FilestreamDirectoryName

Specifies the directory name used for FILESTREAM data.

Type: String
Parameter Sets: Database
Aliases:

Required: False
Position: Named
Default value: None
Accept pipeline input: False
Accept wildcard characters: False

-FilestreamNonTransactedAccess

Specifies the FILESTREAM access level for non-transactional access.

Type: FilestreamNonTransactedAccessType
Parameter Sets: Database
Aliases:
Accepted values: Off, ReadOnly, Full

Required: False
Position: Named
Default value: None
Accept pipeline input: False
Accept wildcard characters: False

-Force

Specifies that the database should be created without any confirmation.

Type: SwitchParameter
Parameter Sets: (All)
Aliases:

Required: False
Position: Named
Default value: False
Accept pipeline input: False
Accept wildcard characters: False

-HonorBrokerPriority

Specifies whether honoring Service Broker conversation priority is enabled.

Type: SwitchParameter
Parameter Sets: Database
Aliases:

Required: False
Position: Named
Default value: False
Accept pipeline input: False
Accept wildcard characters: False

-IsFullTextEnabled

Specifies whether full-text search is enabled.

Type: SwitchParameter
Parameter Sets: Database
Aliases:

Required: False
Position: Named
Default value: False
Accept pipeline input: False
Accept wildcard characters: False

-IsLedger

Specifies whether to create a ledger database. Ledger databases provide tamper-evidence capabilities and are immutable once created. This parameter can only be set during database creation - ledger status cannot be changed after the database is created. This parameter requires SQL Server 2022 (version 16) or later, or Azure SQL Database.

Type: SwitchParameter
Parameter Sets: Database
Aliases:

Required: False
Position: Named
Default value: False
Accept pipeline input: False
Accept wildcard characters: False

-IsParameterizationForced

Specifies whether forced parameterization is enabled for the database.

Type: SwitchParameter
Parameter Sets: Database
Aliases:

Required: False
Position: Named
Default value: False
Accept pipeline input: False
Accept wildcard characters: False

-IsReadCommittedSnapshotOn

Specifies whether READ_COMMITTED_SNAPSHOT isolation is ON.

Type: SwitchParameter
Parameter Sets: Database
Aliases:

Required: False
Position: Named
Default value: False
Accept pipeline input: False
Accept wildcard characters: False

-IsSqlDw

Specifies whether the database is a SQL Data Warehouse database.

Type: SwitchParameter
Parameter Sets: Database
Aliases:

Required: False
Position: Named
Default value: False
Accept pipeline input: False
Accept wildcard characters: False

-IsVarDecimalStorageFormatEnabled

Specifies whether vardecimal compression is enabled.

Type: SwitchParameter
Parameter Sets: Database
Aliases:

Required: False
Position: Named
Default value: False
Accept pipeline input: False
Accept wildcard characters: False

-LegacyCardinalityEstimation

Specifies the legacy cardinality estimator setting for the primary. Valid values are Off, On, or Primary (for secondary replicas to use primary's setting).

Type: DatabaseScopedConfigurationOnOff
Parameter Sets: Database
Aliases:
Accepted values: Off, On, Primary

Required: False
Position: Named
Default value: None
Accept pipeline input: False
Accept wildcard characters: False

-LegacyCardinalityEstimationForSecondary

Specifies the legacy cardinality estimator setting for secondary replicas. Valid values are Off, On, or Primary (to use primary's setting).

Type: DatabaseScopedConfigurationOnOff
Parameter Sets: Database
Aliases:
Accepted values: Off, On, Primary

Required: False
Position: Named
Default value: None
Accept pipeline input: False
Accept wildcard characters: False

-LocalCursorsDefault

Specifies whether cursors are local by default instead of global (when ON).

Type: SwitchParameter
Parameter Sets: Database
Aliases:

Required: False
Position: Named
Default value: False
Accept pipeline input: False
Accept wildcard characters: False

-MaxDop

Specifies the MAXDOP database-scoped configuration for primary replicas.

Type: Int32
Parameter Sets: Database
Aliases:

Required: False
Position: Named
Default value: 0
Accept pipeline input: False
Accept wildcard characters: False

-MaxDopForSecondary

Specifies the MAXDOP database-scoped configuration for secondary replicas.

Type: Int32
Parameter Sets: Database
Aliases:

Required: False
Position: Named
Default value: 0
Accept pipeline input: False
Accept wildcard characters: False

-MaxSizeInBytes

Specifies the maximum size of the database in bytes.

Type: Double
Parameter Sets: Database
Aliases:

Required: False
Position: Named
Default value: 0
Accept pipeline input: False
Accept wildcard characters: False

-MirroringPartner

Specifies the mirroring partner server name (if configured).

Type: String
Parameter Sets: Database
Aliases:

Required: False
Position: Named
Default value: None
Accept pipeline input: False
Accept wildcard characters: False

-MirroringPartnerInstance

Specifies the mirroring partner instance name (if configured).

Type: String
Parameter Sets: Database
Aliases:

Required: False
Position: Named
Default value: None
Accept pipeline input: False
Accept wildcard characters: False

-MirroringRedoQueueMaxSize

Specifies the redo queue maximum size for mirroring/AGs.

Type: Int32
Parameter Sets: Database
Aliases:

Required: False
Position: Named
Default value: 0
Accept pipeline input: False
Accept wildcard characters: False

-MirroringSafetyLevel

Specifies the mirroring safety level (FULL/Off/HighPerformance).

Type: MirroringSafetyLevel
Parameter Sets: Database
Aliases:
Accepted values: None, Unknown, Off, Full

Required: False
Position: Named
Default value: None
Accept pipeline input: False
Accept wildcard characters: False

-MirroringTimeout

Specifies the timeout in seconds for mirroring sessions.

Type: Int32
Parameter Sets: Database
Aliases:

Required: False
Position: Named
Default value: 0
Accept pipeline input: False
Accept wildcard characters: False

-MirroringWitness

Specifies the mirroring witness server (if used).

Type: String
Parameter Sets: Database
Aliases:

Required: False
Position: Named
Default value: None
Accept pipeline input: False
Accept wildcard characters: False

-Name

Specifies the name of the database to be created.

Type: String
Parameter Sets: (All)
Aliases:

Required: True
Position: Named
Default value: None
Accept pipeline input: False
Accept wildcard characters: False

-NestedTriggersEnabled

Specifies whether triggers are allowed to fire other triggers (nested triggers).

Type: SwitchParameter
Parameter Sets: Database
Aliases:

Required: False
Position: Named
Default value: False
Accept pipeline input: False
Accept wildcard characters: False

-NumericRoundAbortEnabled

Specifies whether an error is raised on loss of precision due to rounding (when ON).

Type: SwitchParameter
Parameter Sets: Database
Aliases:

Required: False
Position: Named
Default value: False
Accept pipeline input: False
Accept wildcard characters: False

-OwnerName

Specifies the name of the login that should be the owner of the database.

Type: String
Parameter Sets: Database
Aliases:

Required: False
Position: Named
Default value: None
Accept pipeline input: False
Accept wildcard characters: False

-PageVerify

Specifies the page verification setting (NONE, TORN_PAGE_DETECTION, CHECKSUM).

Type: PageVerify
Parameter Sets: Database
Aliases:
Accepted values: None, TornPageDetection, Checksum

Required: False
Position: Named
Default value: None
Accept pipeline input: False
Accept wildcard characters: False

-ParameterSniffing

Specifies the parameter sniffing setting for the primary. Valid values are Off, On, or Primary (for secondary replicas to use primary's setting).

Type: DatabaseScopedConfigurationOnOff
Parameter Sets: Database
Aliases:
Accepted values: Off, On, Primary

Required: False
Position: Named
Default value: None
Accept pipeline input: False
Accept wildcard characters: False

-ParameterSniffingForSecondary

Specifies the parameter sniffing setting for secondary replicas. Valid values are Off, On, or Primary (to use primary's setting).

Type: DatabaseScopedConfigurationOnOff
Parameter Sets: Database
Aliases:
Accepted values: Off, On, Primary

Required: False
Position: Named
Default value: None
Accept pipeline input: False
Accept wildcard characters: False

-PersistentVersionStoreFileGroup

Specifies the filegroup used for the Persistent Version Store (PVS). This parameter requires SQL Server 2019 (version 15) or later.

Type: String
Parameter Sets: Database
Aliases:

Required: False
Position: Named
Default value: None
Accept pipeline input: False
Accept wildcard characters: False

-PrimaryFilePath

Specifies the path of the primary data files directory.

Type: String
Parameter Sets: Database
Aliases:

Required: False
Position: Named
Default value: None
Accept pipeline input: False
Accept wildcard characters: False

-QueryOptimizerHotfixes

Specifies the query optimizer hotfixes setting for the primary. Valid values are Off, On, or Primary (for secondary replicas to use primary's setting).

Type: DatabaseScopedConfigurationOnOff
Parameter Sets: Database
Aliases:
Accepted values: Off, On, Primary

Required: False
Position: Named
Default value: None
Accept pipeline input: False
Accept wildcard characters: False

-QueryOptimizerHotfixesForSecondary

Specifies the query optimizer hotfixes setting for secondary replicas. Valid values are Off, On, or Primary (to use primary's setting).

Type: DatabaseScopedConfigurationOnOff
Parameter Sets: Database
Aliases:
Accepted values: Off, On, Primary

Required: False
Position: Named
Default value: None
Accept pipeline input: False
Accept wildcard characters: False

-QuotedIdentifiersEnabled

Specifies whether identifiers can be delimited by double quotes (when ON).

Type: SwitchParameter
Parameter Sets: Database
Aliases:

Required: False
Position: Named
Default value: False
Accept pipeline input: False
Accept wildcard characters: False

-ReadOnly

Specifies whether the database is in read-only mode.

Type: SwitchParameter
Parameter Sets: Database
Aliases:

Required: False
Position: Named
Default value: False
Accept pipeline input: False
Accept wildcard characters: False

-RecoveryModel

The recovery model to be used for the new database. Default value is Full.

Type: String
Parameter Sets: Database
Aliases:

Required: False
Position: Named
Default value: None
Accept pipeline input: False
Accept wildcard characters: False

-RecursiveTriggersEnabled

Specifies whether a trigger is allowed to fire itself recursively.

Type: SwitchParameter
Parameter Sets: Database
Aliases:

Required: False
Position: Named
Default value: False
Accept pipeline input: False
Accept wildcard characters: False

-Refresh

Specifies that the ServerObject's databases should be refreshed before creating the database object. This is helpful when databases could have been modified outside of the ServerObject, for example through T-SQL. But on instances with a large amount of databases it might be better to make sure the ServerObject is recent enough.

Type: SwitchParameter
Parameter Sets: (All)
Aliases:

Required: False
Position: Named
Default value: False
Accept pipeline input: False
Accept wildcard characters: False

-RemoteDataArchiveCredential

Specifies the credential name for Stretch Database/remote data archive.

Type: String
Parameter Sets: Database
Aliases:

Required: False
Position: Named
Default value: None
Accept pipeline input: False
Accept wildcard characters: False

-RemoteDataArchiveEnabled

Specifies whether Stretch Database (remote data archive) is enabled.

Type: SwitchParameter
Parameter Sets: Database
Aliases:

Required: False
Position: Named
Default value: False
Accept pipeline input: False
Accept wildcard characters: False

-RemoteDataArchiveEndpoint

Specifies the endpoint URL for remote data archive.

Type: String
Parameter Sets: Database
Aliases:

Required: False
Position: Named
Default value: None
Accept pipeline input: False
Accept wildcard characters: False

-RemoteDataArchiveLinkedServer

Specifies the linked server used by remote data archive.

Type: String
Parameter Sets: Database
Aliases:

Required: False
Position: Named
Default value: None
Accept pipeline input: False
Accept wildcard characters: False

-RemoteDataArchiveUseFederatedServiceAccount

Specifies whether to use federated service account for remote data archive.

Type: SwitchParameter
Parameter Sets: Database
Aliases:

Required: False
Position: Named
Default value: False
Accept pipeline input: False
Accept wildcard characters: False

-RemoteDatabaseName

Specifies the remote database name for remote data archive.

Type: String
Parameter Sets: Database
Aliases:

Required: False
Position: Named
Default value: None
Accept pipeline input: False
Accept wildcard characters: False

-ServerObject

Specifies current server connection object.

Type: Server
Parameter Sets: (All)
Aliases:

Required: True
Position: Named
Default value: None
Accept pipeline input: True (ByValue)
Accept wildcard characters: False

-TargetRecoveryTime

Specifies the target recovery time (seconds) for indirect checkpointing.

Type: Int32
Parameter Sets: Database
Aliases:

Required: False
Position: Named
Default value: 0
Accept pipeline input: False
Accept wildcard characters: False

-TemporalHistoryRetentionEnabled

Specifies whether automatic cleanup of system-versioned temporal history is enabled. This parameter requires SQL Server 2017 (version 14) or later.

Type: SwitchParameter
Parameter Sets: Database
Aliases:

Required: False
Position: Named
Default value: False
Accept pipeline input: False
Accept wildcard characters: False

-TransformNoiseWords

Specifies how full-text noise word behavior is controlled during queries.

Type: SwitchParameter
Parameter Sets: Database
Aliases:

Required: False
Position: Named
Default value: False
Accept pipeline input: False
Accept wildcard characters: False

-Trustworthy

Specifies whether implicit access to external resources by modules is allowed (use with caution).

Type: SwitchParameter
Parameter Sets: Database
Aliases:

Required: False
Position: Named
Default value: False
Accept pipeline input: False
Accept wildcard characters: False

-TwoDigitYearCutoff

Specifies the two-digit year cutoff used for date conversion.

Type: Int32
Parameter Sets: Database
Aliases:

Required: False
Position: Named
Default value: 0
Accept pipeline input: False
Accept wildcard characters: False

-UserAccess

Specifies the database user access mode. Valid values are Multiple, Restricted, and Single.

Type: DatabaseUserAccess
Parameter Sets: Database
Aliases:
Accepted values: Multiple, Single, Restricted

Required: False
Position: Named
Default value: None
Accept pipeline input: False
Accept wildcard characters: False

-Confirm

Prompts you for confirmation before running the cmdlet.

Type: SwitchParameter
Parameter Sets: (All)
Aliases: cf

Required: False
Position: Named
Default value: None
Accept pipeline input: False
Accept wildcard characters: False

-WhatIf

Shows what would happen if the cmdlet runs. The cmdlet is not run.

Type: SwitchParameter
Parameter Sets: (All)
Aliases: wi

Required: False
Position: Named
Default value: None
Accept pipeline input: False
Accept wildcard characters: False

CommonParameters

This cmdlet supports the common parameters: -Debug, -ErrorAction, -ErrorVariable, -InformationAction, -InformationVariable, -OutVariable, -OutBuffer, -PipelineVariable, -Verbose, -WarningAction, and -WarningVariable. For more information, see about_CommonParameters.

INPUTS

Microsoft.SqlServer.Management.Smo.Server

Accepts input via the pipeline.

OUTPUTS

Microsoft.SqlServer.Management.Smo.Database

The newly created database object.

NOTES

RELATED LINKS

⚠️ **GitHub.com Fallback** ⚠️