Script Method (ScriptingOptions)
Collapse the table of content
Expand the table of content

Database.Script Method (ScriptingOptions)


Generates a Transact-SQL script that can be used to re-create the database as specified by the script options.

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

public StringCollection Script(
	ScriptingOptions scriptingOptions


Type: Microsoft.SqlServer.Management.Smo.ScriptingOptions

A ScriptingOptions object value that is used to specify the script options.

Return Value

Type: System.Collections.Specialized.StringCollection

A StringCollection system object value that contains a list of Transact-SQL statements in the script.

The Script method generates a set of Transact-SQL statements that are used to create the database. This method generates a script that can be used to create the database only. The whole database, including dependent objects such as tables, can be scripted by using the Scripter object.

The scriptingOptions parameter is used to filter information in the generated script.

The generated script might contain undocumented, internal procedures, which are required for the complete script output.



$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

Foreach ($tb in $db.Tables)
   $smoObjects = $tb.Urn
   If ($tb.IsSystemObject -eq $FALSE)
      $sc = $scrp.Script($smoObjects)
      Foreach ($st in $sc)
      Write-Host $st
Return to top
© 2015 Microsoft