ScriptingOptions 클래스

The ScriptingOptions object provides programmatic options to the options that can be set for scripting operations.

상속 계층

System.Object
  Microsoft.SqlServer.Management.Smo.ScriptingOptions

네임스페이스:  Microsoft.SqlServer.Management.Smo
어셈블리:  Microsoft.SqlServer.Smo(Microsoft.SqlServer.Smo.dll)

구문

‘선언
Public NotInheritable Class ScriptingOptions
‘사용 방법
Dim instance As ScriptingOptions
public sealed class ScriptingOptions
public ref class ScriptingOptions sealed
[<SealedAttribute>]
type ScriptingOptions =  class end
public final class ScriptingOptions

ScriptingOptions 유형에서 다음 멤버를 표시합니다.

생성자

  이름 설명
공용 메서드 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.

맨 위로 이동

속성

  이름 설명
공용 속성 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.
공용 속성 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.

맨 위로 이동

메서드

  이름 설명
공용 메서드 Add(ScriptOption) Adds a ScriptOption object to the ScriptingOptions object.
공용 메서드정적 멤버 Add(ScriptingOptions, ScriptOption) Adds the specified ScriptOption and ScriptingOptions objects to the ScriptingOptions.
공용 메서드정적 멤버 ConvertVersion Converts the server version to a SqlServerVersion value.
공용 메서드 Equals (Object에서 상속됨)
공용 메서드 GetHashCode (Object에서 상속됨)
공용 메서드 GetType (Object에서 상속됨)
공용 메서드 Remove Removes a ScriptOption object from the ScriptingOptions object.
공용 메서드 SetTargetDatabaseEngineType Sets the database engine type as specified in a DatabaseEngineType object.
공용 메서드 SetTargetServerVersion Sets the version of the instance of SQL Server on which the scripting operation is run.
공용 메서드정적 멤버 Subtract Subtracts the specified ScriptOption value from the specified ScriptingOptions object.
공용 메서드 ToString Returns a string that represents the ScriptingOptions object. (Object.ToString()을(를) 재정의함)

맨 위로 이동

연산자

  이름 설명
공용 연산자정적 멤버 Addition Creates a set of scripting options by performing an addition operation on a ScriptingOptions object and a ScriptOption object.
공용 연산자정적 멤버 Subtraction Creates a set of scripting options by performing an subtraction operation on a ScriptingOptions object and a ScriptOption object.

맨 위로 이동

주의

주의 사항주의

Some scripting options cause the Transfer object to generate script that does not execute on the target server.

Thread Safety

이 유형의 모든 public static(Microsoft Visual Basic의 경우 공유) 멤버는 다중 스레드 작업을 수행하기에 안전합니다. 인스턴스 멤버는 스레드로부터의 안전성이 보장되지 않습니다.

'Connect to the local, default instance of SQL Server.
Dim srv As Server
srv = New Server
'Reference the AdventureWorks2012 database.
Dim db As Database
db = srv.Databases("AdventureWorks2012")
'Define a Scripter object and set the required scripting options.
Dim scrp As Scripter
scrp = New Scripter(srv)
scrp.Options.ScriptDrops = False
scrp.Options.WithDependencies = True
'Iterate through the tables in database and script each one. Display the script.
'Note that the StringCollection type needs the System.Collections.Specialized namespace to be included.
Dim tb As Table
Dim smoObjects(1) As Urn
For Each tb In db.Tables
    smoObjects = New Urn(0) {}
    smoObjects(0) = tb.Urn
    If tb.IsSystemObject = False Then
        Dim sc As StringCollection
        sc = scrp.Script(smoObjects)
        Dim st As String
        For Each st In sc
            Console.WriteLine(st)
        Next
    End If
Next

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
      }
   }
}

스레드 보안

이 유형의 모든 공용 static(Visual Basic에서는 Shared) 멤버는 스레드로부터 안전합니다. 인스턴스 멤버는 스레드로부터의 안전성이 보장되지 않습니다.

참고 항목

참조

Microsoft.SqlServer.Management.Smo 네임스페이스

관련 자료

스크립팅