ScriptOption Class

The ScriptOption object represents the Microsoft SQL Server script options that can be included in a scripting options set using the ScriptingOptions object.

Namespace: Microsoft.SqlServer.Management.Smo
Assembly: Microsoft.SqlServer.Smo (in microsoft.sqlserver.smo.dll)

Syntax

'Declaration
Public NotInheritable Class ScriptOption
public sealed class ScriptOption
public ref class ScriptOption sealed
public final class ScriptOption
public final class ScriptOption

Remarks

Updated text:12 December 2006

Updated text:17 July 2006

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.

This namespace, class, or member is supported only in version 2.0 of the Microsoft .NET Framework.

Inheritance Hierarchy

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

Example

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

Thread Safety

Any public static (Shared in Microsoft Visual Basic) members of this type are thread safe. Any instance members are not guaranteed to be thread safe.

Platforms

Development Platforms

For a list of the supported platforms, see Hardware and Software Requirements for Installing SQL Server 2005.

Target Platforms

For a list of the supported platforms, see Hardware and Software Requirements for Installing SQL Server 2005.

See Also

Reference

ScriptOption Members
Microsoft.SqlServer.Management.Smo Namespace

Other Resources

How to: Script Out the Dependencies for a Database in Visual Basic .NET
Scripting

Change History

Release

History

12 December 2006

Changed content:
  • Added the NoVardecimal property.

  • Added the IncludeDatabaseRoleMembers property.

17 July 2006

Changed content:
  • Modified the description of the Default property.

  • Modified the description of the PrimaryObject property.

  • Added code example to the Example section.