ScriptingOptions Class
The ScriptingOptions object provides programmatic options to the options that can be set for scripting operations.
Assembly: Microsoft.SqlServer.Smo (in Microsoft.SqlServer.Smo.dll)
| Name | Description | |
|---|---|---|
![]() | ScriptingOptions() | Initializes a new instance of the ScriptingOptions class. |
![]() | ScriptingOptions(ScriptingOptions^) | Initializes a new instance of the ScriptingOptions class based on the specified scripting options. |
![]() | ScriptingOptions(ScriptOption^) | Initializes a new instance of the ScriptingOptions class based on the specified ScriptOption object, based on the specified script option. |
| Name | Description | |
|---|---|---|
![]() | AgentAlertJob | Gets or sets the Boolean property that specifies whether to include SQL Server Agent job name for alert objects in the script. |
![]() | AgentJobId | Gets or sets the Boolean property that specifies whether to include SQL Server Agent job ID values for alert objects in the script. |
![]() | AgentNotify | Gets or sets the Boolean property that specifies whether to include notifications for any SQL Server Agent alerts that are in the script. |
![]() | AllowSystemObjects | Gets or sets the Boolean property that specifies whether system objects can be scripted. |
![]() | AnsiFile | Gets or sets the Boolean property that specifies whether the script uses multibyte characters and requires code page 1252 to evaluate characters' meaning. |
![]() | AnsiPadding | Gets or sets a Boolean property that specifies whether the generated script contains the Transact-SQL statements SET ANSI-PADDING ON and SET ANSI-PADDING OFF before and after the CREATE TABLE statement, respectively. |
![]() | AppendToFile | Gets or sets a Boolean property value that specifies whether the script is appended to the end of the output file or overwrites it. |
![]() | BatchSize | Gets or sets the number of statements after which to script batch terminator. |
![]() | Bindings | Gets or sets a Boolean property value that specifies whether the binding statements sp_binddefault and sp_bindrule are included in the generated script. This property applies only when scripting a SQL Server table. |
![]() | ChangeTracking | Gets or sets whether the ScriptingOptions tracking changes. |
![]() | ClusteredIndexes | Gets or sets a Boolean property value that specifies whether statements that define clustered indexes are included in the generated script. |
![]() | ContinueScriptingOnError | Gets or sets the Boolean property value that specifies whether the scripting operation continues after an error is encountered. |
![]() | ConvertUserDefinedDataTypesToBaseType | Gets or sets the Boolean property value that specifies whether user-defined data types are converted to the most appropriate SQL Server base data types in the generated script. |
![]() | DdlBodyOnly | Gets or sets the Boolean property value that specifies whether to script only the text definition for data definition language (DDL) objects that have a text body, such as stored procedures and triggers. |
![]() | DdlHeaderOnly | Gets or sets the Boolean property value that specifies whether to script only the header information for data definition language (DDL) objects that have a text body, such as stored procedures and triggers. |
![]() | Default | Gets or sets the Boolean property value that specifies whether the creation of the referenced object is included in the generated script. |
![]() | DriAll | Gets or sets the Boolean property value that specifies whether all DRI objects are included in the generated script. |
![]() | DriAllConstraints | Gets or sets the Boolean property value that specifies whether all declarative referential integrity constraints are included in the generated script. |
![]() | DriAllKeys | Gets or sets the Boolean property value that specifies whether the dependency relationships defined by all declarative referential integrity keys are included in the generated script. |
![]() | DriChecks | Gets or sets the Boolean property value that specifies whether column specific dependency relationships as defined in check constraints with enforced declarative referential integrity are included in the script. |
![]() | DriClustered | Gets or sets the Boolean property value that specifies whether dependency relationships defined in clustered indexes with enforced declarative referential integrity are included in the script. |
![]() | DriDefaults | Gets or sets the Boolean property value that specifies whether dependency relationships defined in defaults with enforced declarative referential integrity are included in the script. |
![]() | DriForeignKeys | Gets or sets the Boolean property value that specifies whether dependency relationships defined in foreign keys with enforced declarative referential integrity are included in the script. |
![]() | DriIncludeSystemNames | Gets or sets the Boolean property value that specifies whether the system-generated constraint names that are used to enforce declarative referential integrity are included in the script. |
![]() | DriIndexes | Gets or sets the Boolean property value that specifies whether PRIMARY KEY constraints that use a unique index to implement the declarative referential integrity are included in the script. |
![]() | DriNonClustered | Gets or sets the Boolean property value that specifies whether dependency relationships that are defined in non-clustered indexes that have enforced declarative referential integrity are included in the script. |
![]() | DriPrimaryKey | Gets or sets the Boolean property value that specifies whether dependency relationships that are defined in primary keys which have enforced declarative referential integrity are included in the script. |
![]() | DriUniqueKeys | Gets or sets the Boolean property value that specifies whether dependency relationships that are defined in unique keys which have enforced declarative referential integrity are included in the script. |
![]() | DriWithNoCheck | Gets or sets the Boolean property value that specifies whether the no check statement is included in the script. |
![]() | Encoding | Gets or sets the encoding for the scripting options. |
![]() | EnforceScriptingOptions | Gets or sets the Boolean property value that specifies whether the application of all scripting options is enforced for text-based objects, such as SchemaQualify. |
![]() | ExtendedProperties | Gets or sets the Boolean property value that specifies whether extended object properties are included in the generated script. |
![]() | FileName | Gets or sets the name of the file to which the generated script is output. |
![]() | FullTextCatalogs | Gets or sets the Boolean property value that specifies whether full-text catalogs are included in the generated script. |
![]() | FullTextIndexes | Gets or sets the Boolean property value that specifies whether full-text indexes are included in the generated script. |
![]() | FullTextStopLists | Gets or sets the Boolean property value that specifies whether full-text stop lists are included in the generated script. |
![]() | IncludeDatabaseContext | Gets or sets the Boolean property value that specifies whether database context is included in the generated script. |
![]() | IncludeDatabaseRoleMemberships | Gets or sets a value that indicates whether the database role memberships are included. |
![]() | IncludeFullTextCatalogRootPath | Gets or sets a value that indicates whether the full text catalog root path is included. |
![]() | IncludeHeaders | Gets or sets a Boolean property value that specifies whether the generated script is prefixed with a header that contains information which includes the date and time of generation. |
![]() | IncludeIfNotExists | Gets or sets a Boolean property value that specifies whether to check the existence of an object before including it in the script. |
![]() | Indexes | Gets or sets the Boolean property value that specifies whether indexes are included in the generated script. |
![]() | LoginSid | Gets or sets the Boolean property value that specifies whether the security identifiers are included for any scripted logins in the generated script. |
![]() | NoAssemblies | Gets or sets the Boolean property value that specifies whether assemblies are included in the generated script. |
![]() | NoCollation | Gets or sets the Boolean property value that specifies whether to include the collation clause in the generated script. |
![]() | NoCommandTerminator | Gets or sets the Boolean property value that specifies whether individual Transact-SQL statements are delimited in the generated script. |
![]() | NoExecuteAs | Gets or sets the Boolean property value that specifies whether the EXECUTE AS options for stored procedures and user-defined functions are included in the script. |
![]() | NoFileGroup | Gets or sets the Boolean property value that specifies whether to include the 'ON <filegroup>' clause in the generated script. |
![]() | NoFileStream | Gets or sets an object that specifies whether to include the FILESTREAM_ON clause when you create VarBinaryMax columns in the generated script. |
![]() | NoFileStreamColumn | Gets or sets an object that specifies whether to include the FILESTREAM_ON clause when you create VarBinaryMax columns in the generated script. |
![]() | NoIdentities | Gets or sets the Boolean property value that specifies whether definitions of identity property seed and increment are included in the generated script. |
![]() | NoIndexPartitioningSchemes | Gets or sets the Boolean property value that specifies whether partition schemes for indexes are included in the generated script. |
![]() | NoMailProfileAccounts | Gets or sets the Boolean property value that specifies whether mail accounts that are referenced by mail profiles are included in the generated script. |
![]() | NoMailProfilePrincipals | Gets or sets the Boolean property value that specifies whether principals that are referenced by mail profiles are included in the generated script. |
![]() | NonClusteredIndexes | Gets or sets the Boolean property value that specifies whether non-clustered indexes are included in the generated script. |
![]() | NoTablePartitioningSchemes | Gets or sets the Boolean property value that specifies whether partition schemes for tables are included in the generated script. |
![]() | NoVardecimal | Gets or sets an object that specifies whether to include the N clause when you create vardecimal columns in the generated script. |
![]() | NoViewColumns | Gets or sets the Boolean property value that specifies whether to include the specified columns for a view. |
![]() | NoXmlNamespaces | Gets or sets the Boolean property value that specifies whether XML namespaces are included in the generated script. |
![]() | OptimizerData | Gets or sets the Boolean property value that specifies whether script optimizer data for the referenced objects are included in the generated script. |
![]() | Permissions | Gets or sets the Boolean property value that specifies whether to include all permissions in the generated script. |
![]() | PrimaryObject | Gets or sets the Boolean property value that specifies whether the creation of the referenced object is included in the generated script. |
![]() | SchemaQualify | Gets or sets the Boolean property value that specifies whether the schemas associated with objects are included in the generated script. |
![]() | SchemaQualifyForeignKeysReferences | Gets or sets the Boolean property value that specifies whether schema-qualified table references for foreign key constraints are included in the generated script. |
![]() | ScriptBatchTerminator | Gets or sets the ScriptBatchTerminator property value. |
![]() | ScriptData | Gets or sets the ScriptData property value. |
![]() | ScriptDataCompression | Gets or sets the Boolean property value that specifies whether to include data compression information in the generated script. |
![]() | ScriptDrops | Gets or sets the Boolean property value that specifies whether the script operation generates a Transact-SQL script to remove the referenced component. |
![]() | ScriptOwner | Gets or sets the Boolean property value that specifies whether the script owner is included in the generated script. |
![]() | ScriptSchema | Gets or set the ScriptSchema property value. |
![]() | Statistics | Gets or sets the Boolean property value that specifies whether to include statistics for any table or view that is included in the generated script. |
![]() | TargetDatabaseEngineEdition | Gets or sets the edition of the target database engine. |
![]() | TargetDatabaseEngineType | Gets or sets the DatabaseEngineType property value. |
![]() | TargetServerVersion | Gets or sets the version of the instance of SQL Server for which the generated script is intended. |
![]() | TimestampToBinary | Gets or sets the Boolean property value that specifies whether to convert timestamp data types to binary(8) data types when scripting the creation of a table or user-defined data type. |
![]() | ToFileOnly | Gets or sets the Boolean property value that specifies whether to output to file only or to also generate string output. |
![]() | Triggers | Gets or sets the Boolean property value that specifies whether to include the definition for triggers in the generated script. |
![]() | WithDependencies | Gets or sets the Boolean property value that specifies whether to include all dependent objects in the generated script. |
![]() | XmlIndexes | Gets or sets the Boolean property value that specifies whether XML indexes are included in the generated script. |
| Name | Description | |
|---|---|---|
![]() ![]() | Add(ScriptingOptions^, ScriptOption^) | Adds the specified ScriptOption and ScriptingOptions objects to the ScriptingOptions. |
![]() | Add(ScriptOption^) | Adds a ScriptOption object to the ScriptingOptions object. |
![]() ![]() | ConvertVersion(Version^) | Converts the server version to a SqlServerVersion value. |
![]() | Equals(Object^) | (Inherited from Object.) |
![]() | GetHashCode() | (Inherited from Object.) |
![]() | GetType() | (Inherited from Object.) |
![]() | Remove(ScriptOption^) | Removes a ScriptOption object from the ScriptingOptions object. |
![]() | SetTargetDatabaseEngineType(DatabaseEngineType) | Sets the database engine type as specified in a T:Microsoft.SqlServer.Managment.Common.DatabaseEngineType object. |
![]() | SetTargetServerVersion(ServerVersion^) | Sets the version of the instance of SQL Server on which the scripting operation is run. |
![]() ![]() | Subtract(ScriptingOptions^, ScriptOption^) | Subtracts the specified ScriptOption value from the specified ScriptingOptions object. |
![]() | ToString() | Returns a string that represents the ScriptingOptions object.(Overrides Object::ToString().) |
| Name | Description | |
|---|---|---|
![]() ![]() | Addition(ScriptingOptions^, ScriptOption^) | Creates a set of scripting options by performing an addition operation on a ScriptingOptions object and a ScriptOption object. |
![]() ![]() | Subtraction(ScriptingOptions^, ScriptOption^) | Creates a set of scripting options by performing an subtraction operation on a ScriptingOptions object and a ScriptOption object. |
Warning |
|---|
Some scripting options cause the Transfer object to generate script that does not execute on the target server. |
Any public static (Shared in Microsoft Visual Basic) members of this type are safe for multithreaded operations. Any instance members are not guaranteed to be thread safe.
PowerShell
$srv = New-Object Microsoft.SqlServer.Management.Smo.Server("(local)")
$db = New-Object Microsoft.SqlServer.Management.Smo.Database
$db = $srv.Databases.Item("AdventureWorks2012")
$scrp = New-Object Microsoft.SqlServer.Management.Smo.Scripter($srv)
$scrp.Options.ScriptDrops = $FALSE
$scrp.Options.WithDependencies = $TRUE
$tb = New-Object Microsoft.SqlServer.Management.Smo.Table
#$smoObjects = new-object Microsoft.SqlServer.Management.Smo.Urn[]0
$smoObjects = $tb.Urn
foreach ($tb in $db.Tables)
{
$smoObjects = $tb.Urn
if ($tb.IsSystemObject -eq $FALSE)
{
$sc = $scrp.Script($smoObjects)
foreach ($st in $sc)
{
Write-Host $st
}
}
}
Any public static ( Shared in Visual Basic) members of this type are thread safe. Any instance members are not guaranteed to be thread safe.




