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) 成員都是執行緒安全的。並不是所有的執行個體成員都保證可以用於所有的執行緒。