共用方式為


ScriptOption 類別

ScriptOption 物件表示 SQL Server 指令碼選項,可包含在使用 ScriptingOptions 物件設定的指令碼選項中。

繼承階層

System. . :: . .Object
  Microsoft.SqlServer.Management.Smo..::..ScriptOption

命名空間:  Microsoft.SqlServer.Management.Smo
組件:  Microsoft.SqlServer.Smo (在 Microsoft.SqlServer.Smo.dll 中)

語法

'宣告
Public NotInheritable Class ScriptOption
'用途
Dim instance As ScriptOption
public sealed class ScriptOption
public ref class ScriptOption sealed
[<SealedAttribute>]
type ScriptOption =  class end
public final class ScriptOption

ScriptOption 型別公開下列成員。

屬性

  名稱 說明
公用屬性靜態成員 AgentAlertJob 取得物件,指定是否要在指令碼中包含 SQL Server Agent 警示和作業。 
公用屬性靜態成員 AgentJobId 取得物件,指定是否要在指令碼中包含 SQL Server Agent 警示和作業。 
公用屬性靜態成員 AgentNotify 取得物件,指定是否要在指令碼中包含任何 SQL Server Agent 警示的通知。 
公用屬性靜態成員 AllowSystemObjects 取得物件,指定是否可以將系統物件編寫為指令碼。
公用屬性靜態成員 AnsiFile 取得物件,指定指令碼是否使用多位元組字元,而且需要使用字碼頁 1252 來評估字元意義。
公用屬性靜態成員 AnsiPadding 取得物件,指定產生的指令碼是否分別在 CREATE TABLE 陳述式前後包含 Transact-SQL 陳述式 SET ANSI-PADDING ON 和 SET ANSI-PADDING OFF。
公用屬性靜態成員 AppendToFile 取得物件,指定指令碼會附加至輸出檔的結尾,或是覆寫輸出檔。
公用屬性靜態成員 Bindings 取得物件,指定繫結陳述式 sp_binddefault 和 sp_bindrule 是否包含在產生的指令碼中。此屬性僅於撰寫 MicrosoftSQL Server 資料表指令碼時適用。
公用屬性靜態成員 ChangeTracking 取得 ChangeTracking 屬性值。
公用屬性靜態成員 ClusteredIndexes 取得物件,指定是否要將定義叢集索引的陳述式包含在產生的指令碼中。
公用屬性靜態成員 ContinueScriptingOnError 取得物件值,指定指令碼作業在遇到錯誤之後是否繼續執行。
公用屬性靜態成員 ConvertUserDefinedDataTypesToBaseType 取得物件值,指定是否將使用者定義的資料類型轉換成產生的指令碼中最適當的 SQL Server 基底資料類型。 
公用屬性靜態成員 DdlBodyOnly 取得物件值,指定是否只針對擁有文字本文的資料定義語言 (DDL) 物件 (例如預存程序和觸發程序),編寫文字定義的指令碼。
公用屬性靜態成員 DdlHeaderOnly 取得物件值,指定是否只針對擁有文字本文的資料定義語言 (DDL) 物件 (例如預存程序和觸發程序),編寫標頭資訊的指令碼。
公用屬性靜態成員 Default 取得物件值,指定產生的指令碼中是否包含建立參考物件。
公用屬性靜態成員 DriAll 取得物件值,指定產生的指令碼中是否包含 DRI 物件。
公用屬性靜態成員 DriAllConstraints 取得物件值,指定產生的指令碼中是否包含所有的 DRI 條件約束。
公用屬性靜態成員 DriAllKeys 取得物件值,指定產生的指令碼中是否包含所有 DRI 索引鍵 (DriForeignKeys、DriPrimaryKey、DriUniqueKeys)。
公用屬性靜態成員 DriChecks 取得物件值,指定指令碼中是否包含強制執行宣告式參考完整性的檢查條件約束中,所定義的資料行專屬相依性關聯性。
公用屬性靜態成員 DriClustered 取得物件值,指定指令碼中是否包含強制執行宣告式參考完整性的叢集索引中,所定義的相依性關聯性。
公用屬性靜態成員 DriDefaults 取得物件值,指定指令碼中是否包含強制執行宣告式參考完整性的預設值中,所定義的相依性關聯性。
公用屬性靜態成員 DriForeignKeys 取得物件值,指定指令碼中是否包含強制執行宣告式參考完整性的外部索引鍵中,所定義的相依性關聯性。
公用屬性靜態成員 DriIncludeSystemNames 取得物件值,指定指令碼中是否包含用來強制執行宣告性參考完整性的系統產生之條件約束名稱。
公用屬性靜態成員 DriIndexes 取得物件值,指定產生的指令碼中是否包含使用唯一的索引實作宣告性參考完整性的 PRIMARY KEY 條件約束。
公用屬性靜態成員 DriNonClustered 取得物件值,指定指令碼中是否包含強制執行宣告式參考完整性的非叢集索引中,所定義的相依性關聯性。
公用屬性靜態成員 DriPrimaryKey 取得物件值,指定指令碼中是否包含強制執行宣告式參考完整性的主索引鍵中,所定義的相依性關聯性。
公用屬性靜態成員 DriUniqueKeys 取得物件值,指定指令碼中是否包含強制執行宣告式參考完整性的唯一索引鍵中,所定義的相依性關聯性。
公用屬性靜態成員 DriWithNoCheck 取得物件值,指定指令碼中是否包含 no check 陳述式。
公用屬性靜態成員 EnforceScriptingOptions 取得物件值,指定是否強制文字基底物件 (例如 SchemaQualify) 套用所有指令碼選項。
公用屬性靜態成員 ExtendedProperties 取得物件值,指定產生的指令碼中是否包含擴充物件屬性。
公用屬性靜態成員 FullTextCatalogs 取得物件值,指定產生的指令碼中是否包含全文檢索目錄。
公用屬性靜態成員 FullTextIndexes 取得物件值,指定產生的指令碼中是否包含全文檢索索引。
公用屬性靜態成員 FullTextStopLists 取得物件值,指定產生的指令碼中是否包含全文檢索停用字詞表。
公用屬性靜態成員 IncludeDatabaseContext 取得物件值,指定產生的指令碼中是否包含資料庫內容。
公用屬性靜態成員 IncludeDatabaseRoleMemberships 取得 IncludeDatabaseRoleMemberships 屬性值。
公用屬性靜態成員 IncludeFullTextCatalogRootPath 取得 IncludeFullTextCatalogRootPath 屬性值。
公用屬性靜態成員 IncludeHeaders 取得物件,指定產生的指令碼前面是否加上包含產生的日期和時間等資訊的標頭做為前置詞。
公用屬性靜態成員 IncludeIfNotExists 取得物件,指定是否要先檢查物件是否存在,再將它加入指令碼中。
公用屬性靜態成員 Indexes 取得物件,指定產生的指令碼中是否包含索引。
公用屬性靜態成員 LoginSid 取得或設定布林屬性值,這個值會指定產生的指令碼中是否包含任何指令碼編寫之登入的安全性識別碼。
公用屬性靜態成員 NoAssemblies 取得物件,指定是否從產生的指令碼中排除組件。
公用屬性靜態成員 NoCollation 取得物件值,指定如果伺服器執行 SQL Server 7.0 或更新版本,是否在產生的指令碼中包含集合。
公用屬性靜態成員 NoCommandTerminator 取得物件值,指定是否在產生的指令碼中分隔個別的 Transact-SQL 陳述式。
公用屬性靜態成員 NoExecuteAs 取得物件值,指定指令碼中是否包含預存程序和使用者定義函式的 EXECUTE AS 選項。
公用屬性靜態成員 NoFileGroup 取得物件值,指定是否在產生的指令碼中包含 'ON <filegroup>' 子句。
公用屬性靜態成員 NoFileStream 取得物件,指定當您在產生的指令碼中建立 VarBinaryMax 資料行時,是否包含 FILESTREAM_ON 子句。
公用屬性靜態成員 NoFileStreamColumn 取得物件,指定當您在產生的指令碼中建立 VarBinaryMax 資料行時,是否包含 FILESTREAM_ON 子句。
公用屬性靜態成員 NoIdentities 取得物件值,指定產生的指令碼中是否包含識別屬性種子和增量的定義。
公用屬性靜態成員 NoIndexPartitioningSchemes 取得物件值,指定產生的指令碼中是否包含索引的資料分割配置。
公用屬性靜態成員 NoMailProfileAccounts 取得物件值,指定產生的指令碼中是否包含郵件設定檔參考的郵件帳戶。
公用屬性靜態成員 NoMailProfilePrincipals 取得物件值,指定是否從產生的指令碼中排除郵件設定檔參考的主體。
公用屬性靜態成員 NonClusteredIndexes 取得物件值,指定產生的指令碼中是否包含非叢集索引。
公用屬性靜態成員 NoTablePartitioningSchemes 取得物件值,指定產生的指令碼中是否包含資料表的資料分割配置。
公用屬性靜態成員 NoVardecimal 取得 NoVardecimal 屬性值。
公用屬性靜態成員 NoViewColumns 取得物件值,指定是否包含檢視的指定資料行。
公用屬性靜態成員 NoXmlNamespaces 取得物件值,指定產生的指令碼中是否包含 XML 命名空間。
公用屬性靜態成員 OptimizerData 取得物件值,指定產生的指令碼中是否包含參考物件的指令碼最佳化工具資料。
公用屬性靜態成員 Permissions 取得物件值,指定產生的指令碼中是否包含所有權限。
公用屬性靜態成員 PrimaryObject 取得物件值,指定產生的指令碼中是否包含建立參考物件。
公用屬性靜態成員 SchemaQualify 取得物件值,指定指令碼是否包含沒有結構描述的物件。
公用屬性靜態成員 SchemaQualifyForeignKeysReferences 取得物件值,指定產生的指令碼中是否包含外部索引鍵所參考之沒有結構描述的資料表。
公用屬性靜態成員 ScriptBatchTerminator 取得 ScriptBatchTerminator 屬性值。
公用屬性靜態成員 ScriptData 取得 ScriptData 屬性值。
公用屬性靜態成員 ScriptDataCompression 取得物件值,指定產生的指令碼中是否包含建立參考物件。
公用屬性靜態成員 ScriptOwner 取得物件值,指定產生的指令碼中是否包含建立參考物件。
公用屬性靜態成員 ScriptSchema 取得 ScriptSchema 屬性值。
公用屬性靜態成員 Statistics 取得物件值,指定是否針對產生的指令碼中包含的任何資料表或檢視產生統計資料。
公用屬性靜態成員 TimestampToBinary 取得物件值,指定在編寫建立資料表或使用者定義資料類型的指令碼時,是否將時間戳記資料類型轉換成 binary(8) 資料類型。
公用屬性靜態成員 ToFileOnly 取得物件值,指定只要輸出至檔案,或是也要產生字串輸出。
公用屬性靜態成員 Triggers 取得物件值,指定是否在產生的指令碼中包含觸發程序的定義。
公用屬性靜態成員 WithDependencies 取得物件值,指定是否在產生的指令碼中包含所有相依物件。
公用屬性靜態成員 XmlIndexes 取得物件值,指定產生的指令碼中是否包含 XML 索引。

上層

方法

  名稱 說明
公用方法靜態成員 Add 加入兩個 ScriptOption 物件,以建立 ScriptOptions 物件。
公用方法靜態成員 BitwiseOr 使用位元 OR 運算結合兩個 ScriptingOptions 物件。
公用方法 Equals 傳回布林值,指定兩個 ScriptOptions 是否相等。 (覆寫 Object. . :: . .Equals(Object)。)
受保護的方法 Finalize (繼承自 Object。)
公用方法 GetHashCode 傳回此物件的雜湊碼。 (覆寫 Object. . :: . .GetHashCode() () () ()。)
公用方法 GetType (繼承自 Object。)
受保護的方法 MemberwiseClone (繼承自 Object。)
公用方法 ToString 傳回代表目前物件的字串。 (覆寫 Object. . :: . .ToString() () () ()。)

上層

運算子

  名稱 說明
公用運算子靜態成員 Addition 透過在兩個 ScriptOption 物件上執行加法運算的方式,建立指令碼選項集。
公用運算子靜態成員 BitwiseOr 透過在兩個 ScriptOption 物件上執行位元 OR 運算的方式,建立指令碼選項集。
公用運算子靜態成員 Implicit Widening Implicit Implicit Implicit(ScriptOption to ScriptingOptions) 將指定的 ScriptOption 隱含轉換為 ScriptingOptions 物件。

上層

備註

The ScriptOption object contains a property for each type of SQL Server item that can be scripted. The actual set of items to be scripted is specified using the ScriptingOptions object.

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

Thread Safety

此型別的任何公用靜態 (在 Microsoft Visual Basic 為共用) 成員具備多執行緒作業安全。不保證所有執行個體成員都是安全執行緒。

範例

'Connect to the local, default instance of SQL Server.
Dim srv As Server
srv = New Server
'Reference the AdventureWorks2008R2 database.
Dim db As Database
db = srv.Databases("AdventureWorks2008R2")
'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

執行緒安全性

這個型別的任何公用 static (在 Visual Basic 中為 Shared) 成員都是執行緒安全的。並不是所有的執行個體成員都保證可以用於所有的執行緒。