The GenerateSQL method returns a string containing a Transact-SQL command batch that can be used to create the the Microsoft® SQL Server™ index defined by the properties of the Index object used.
object.GenerateSQL( Table ) as String
Part | Description |
---|---|
object | Expression that evaluates to an object in the Applies To list |
Table | Expression that evaluates to a SQL-DMO Table object |
A Transact-SQL command batch as a string.
Use the GenerateSQL or GenerateCreationSQL method to create a command batch for use in another process. For example, to define a new index, capture the command batch by using the GenerateSQL or GenerateCreationSQL method, then use the command batch to create a job step for scheduled index creation.
For the Index object, the GenerateSQL and GenerateCreationSQL methods perform similar functions. The script returned by the GenerateSQL method includes a Transact-SQL statement creating an index. The GenerateCreationSQL method prefixes the index creation statement with Transact-SQL syntax that conditionally removes an existing index.
To use the GenerateSQL or GenerateCreationSQL method
Important The GenerateSQL and GenerateCreationSQL methods generate a Transact-SQL batch that can be used to create an index. The method fails if the Index object used references an existing SQL Server index. Use the Script method of the Index object to create a Transact-SQL command batch defining an existing index.
HRESULT GenerateSQL(
LPSQLDMOTABLE pTable,
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 by using SysFreeString.