SnapshotObjectName Property

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 SnapshotObjectName property identifies the Microsoft SQL Server database object providing an initial snapshot of replicated data for an article.

.SnapshotObjectName [= value]


An expression that evaluates to an object in the Applies To list


A string that identifies a SQL Server table or view by name


Read/write for a TransArticle object. Read-only for a MergeArticle object.

HRESULT GetSnapshotObjectName(SQLDMO_LPBSTR pRetVal);
HRESULT SetSnapshotObjectName(SQLDMO_LPCSTR NewValue);

SQL Distributed Management Objects (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.

By default, the database object providing the initial snapshot is the object providing replicated data. Override the initial snapshot source object to control the data populating the snapshot.

To override the initial snapshot

  1. Set the ArticleType property to indicate manual creation of the initial snapshot. ArticleType must be SQLDMORep_LogBasedManualBoth, SQLDMORep_LogBasedManualSyncView, or SQLDMORep_ManualSyncView.

  2. Set the SnapshotObjectName and SnapshotObjectOwner properties to identify the snapshot data source object.

  3. To generate a synchronizing snapshot, run the ReInitializeAllSubscriptions method of the TransPublication object containing the referenced transactional replication article.


    If an application sets SnapshotObjectNamewith the TransArticle object after the initial snapshot has been created, a new snapshot must be generated. Snapshots are applied when the next scheduled snapshot agent runs.

Community Additions