GenerateSQLOnView Method

This feature will be removed in a future version of Microsoft SQL Server. Avoid using this feature in new development work, and plan to modify applications that currently use this feature.

The GenerateSQLOnView method returns a string that contains a Transact-SQL command batch. This command batch can be used to create the Microsoft SQL Server index defined by the properties of the Index object used to create the index.

Syntax

object
.GenerateSQLOnView(
pView
)
as
String

Parts

  • object
    Expression that evaluates to an object in the Applies To list.

  • PView
    Expression that evaluates to an Index object in SQL Distributed Management Objects (SQL-DMO).

Prototype (C/C++)

HRESULT GenerateSQLOnView(
LPSQLDMOVIEW pView, 
SQLDMO_LPBSTR pRetVal);

Note

SQL-DMO strings are always returned as OLE BSTR objects. A C/C++ application obtains a reference to the string. The application must release the reference using SysFreeString.

Remarks

Use the GenerateSQLOnView or GenerateCreationSQLOnView method to create a command batch for use in another process. For example, to define a new index, capture the command batch using the GenerateSQLOnView or GenerateCreationSQLOnViewmethod, and then use the command batch to create a job step for scheduled index creation.

For the Index2 object, the GenerateSQLOnView and GenerateCreationSQLOnView methods perform similar functions. The script returned by the GenerateSQLOnView method includes a Transact-SQL statement that creates an index. The GenerateCreationSQLOnView method prefixes the index creation statement with Transact-SQL syntax that conditionally removes an existing index.

To use the GenerateSQLOnView or GenerateCreationSQLOnView method

  1. Create a new Index2 object.

  2. Set the Name property.

  3. Set the IndexedColumns property; reference columns in the target table by name.

  4. Set additional properties that define the index, such as FileGroup and Type.

  5. Get the Table object that references the target table from the Tables collection.

  6. Call the method that will generate the Transact-SQL command batch and capture the returned text.

Applies To: