Share via


SqlSyncScopeProvisioning.SetCreateTableDefault Method

Sets whether to create base tables when a scope is configured.

Namespace: Microsoft.Synchronization.Data.SqlServer
Assembly: Microsoft.Synchronization.Data.SqlServer (in microsoft.synchronization.data.sqlserver.dll)

Syntax

'Declaration
Public Sub SetCreateTableDefault ( _
    defaultOption As DbSyncCreationOption _
)
'Usage
Dim instance As SqlSyncScopeProvisioning
Dim defaultOption As DbSyncCreationOption

instance.SetCreateTableDefault(defaultOption)
public void SetCreateTableDefault (
    DbSyncCreationOption defaultOption
)
public:
void SetCreateTableDefault (
    DbSyncCreationOption defaultOption
)
public void SetCreateTableDefault (
    DbSyncCreationOption defaultOption
)
public function SetCreateTableDefault (
    defaultOption : DbSyncCreationOption
)

Parameters

  • defaultOption
    A DbSyncCreationOption enumeration value that specifies whether to create base tables.

Remarks

If base tables already exist in the database, and you are not defining any table schema by using DbSyncTableDescription objects, specify a value of Skip.

Example

The following code example creates a provisioning object for the filtered_customer scope, specifies that base tables should not be created in the server database, and specifies that all synchronization-related objects should be created in a database schema named "Sync". As part of provisioning the scope, the code defines a filter on the Customer table. Only rows that match that filter will be synchronized. No filter is defined on the CustomerContact table; therefore all rows from that table will be synchronized. After provisioning options are defined, the Apply method is called to create the change-tracking infrastructure in the server database; and the provisioning script is written to a file. To view this code in the context of a complete example, see How to: Configure and Execute Collaborative Synchronization (SQL Server).

SqlSyncScopeProvisioning serverConfig = new SqlSyncScopeProvisioning(scopeDesc);
serverConfig.SetCreateTableDefault(DbSyncCreationOption.Skip);
serverConfig.ObjectSchema = "Sync";

// Specify which column(s) in the Customer table to use for filtering data, 
// and the filtering clause to use against the tracking table.
// "[side]" is an alias for the tracking table.
serverConfig.Tables["Sales.Customer"].AddFilterColumn("CustomerType");
serverConfig.Tables["Sales.Customer"].FilterClause = "[side].[CustomerType] = 'Retail'";

// Configure the scope and change-tracking infrastructure.
serverConfig.Apply(serverConn);

// Write the configuration script to a file. You can modify 
// this script if necessary and run it against the server
// to customize behavior.
File.WriteAllText("SampleConfigScript.txt",
    serverConfig.Script("SyncSamplesDb_SqlPeer1"));
Dim serverConfig As New SqlSyncScopeProvisioning(scopeDesc)
serverConfig.SetCreateTableDefault(DbSyncCreationOption.Skip)
serverConfig.ObjectSchema = "Sync"

' Specify which column(s) in the Customer table to use for filtering data, 
' and the filtering clause to use against the tracking table. 
' "[side]" is an alias for the tracking table. 
serverConfig.Tables("Sales.Customer").AddFilterColumn("CustomerType")
serverConfig.Tables("Sales.Customer").FilterClause = "[side].[CustomerType] = 'Retail'"

' Configure the scope and change-tracking infrastructure. 
serverConfig.Apply(serverConn)

' Write the configuration script to a file. You can modify 
' this script if necessary and run it against the server 
' to customize behavior. 
File.WriteAllText("SampleConfigScript.txt", serverConfig.Script("SyncSamplesDb_SqlPeer1"))

See Also

Reference

SqlSyncScopeProvisioning Class
SqlSyncScopeProvisioning Members
Microsoft.Synchronization.Data.SqlServer Namespace