PreSnapshotScript Property

SQL-DMO

SQL-DMO

PreSnapshotScript Property

The PreSnapshotScript property specifies the complete path and file name of a Transact-SQL script that runs before an initial snapshot is applied to a Subscriber.

Applies To
MergePublication2 Object TransPublication2 Object
Syntax

object.PreSnapshotScript [= value]

Parts

object

Expression that evaluates to an object in the Applies To list

value

String that specifies the complete path and file name of the Transact-SQL script

Data Type

String

Modifiable

Read/write

Prototype (C/C++)

HRESULT GetPreSnapshotScript(SQLDMO_LPBSTR pRetVal);

HRESULT SetPreSnapshotScript(SQLDMO_LPCSTR NewValue);

Remarks

Running Transact-SQL scripts before an initial snapshot is applied can be used to:

  • Perform pre-snapshot cleanup.

  • Add users and permissions to databases to be replicated.

  • Create user-defined data types.

Note  If PreSnapshotScript is set, the script automatically runs when a subscription is reinitialized. Therefore, the script must be written so that its statements are repeatable.

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

You can also run Transact-SQL scripts during a replication operation using the ReplicateUserDefinedScript method.

Note  If an application calls PreSnapshotScript on an instance of SQL Server version 7.0, the constant, SQLDMO_E_SQL80ONLY, and the message "This property or method requires Microsoft SQL Server 2000" are returned.

See Also

Executing Scripts Before and After the Snapshot is Applied

PostSnapshotScript Property

ReplicateUserDefinedScript Method