xp_slsFastCompression (previously known as xp_slsSmartDiff) performs a full, partial, or differential database backup using Fast Compression technology. Fast Compression
This topic covers:
EXEC master.dbo.xp_slsFastCompression
@database = 'database_name'
, @BackupDirectory = 'backup_directory'
{ @ForceFull = 0 | 1
| @ForceDifferential = 0 | 1
| ( @ExtentsChgRatioRequireFull = '1%'..'100%'
| @DiffToFullRatioRequireFull = '1%'..'100%')
[, @CheckForFullBackup = 0 | 1 ]
[, @ElapsedDaysRequireFull = 1...n]
([, @SpecificDaysForbidFull = '1'...'7' ] [,...n])}
[, @FullBackupEscalation = 0 | 1 ]
[, @SearchAlternateBackup = 'backup_directory' ]
[, @MirrorDirectory = 'mirror_directory'] [,...n]
[, @AppendDifferential = 0 | 1 ]
[, @Verify = 'Last' | 'Full' | 'Last,Full' | 'All']
[, @retaindays = 0...2147483647 ]
[, @expiration = 'date_time']
[, @desc = 'backup_description']
[, @backupname = 'backupset_name']
[, @threads = 1..32]
[, @encryptionkey = 'encryption_key']
[, @cryptlevel = 'encryption_level']
[, @file = 'logical_file_name'] [,...n]
[, @filegroup = 'logical_filegroup_name'] [,...n]
[, @priority = -1 | 0 | 1 | 2 ]
[, @with = 'additional_with_parameters'] [,...n]
[, @logging = 0 | 1 | 2 ]
[, @ioflag = 'DISK_RETRY_COUNT=n']
[, @ioflag = 'DISK_RETRY_WAIT=n']
[, @affinity = 0..2147483647]
[, @throttle = 1..100]
[, @comment = 'comment']
[, @buffercount = 'buffer_count']
[, @maxtransfersize = 'maximum_transfer_size']
[, @adaptivecompression = 'size' | 'speed' ]
[, @compressionlevel = 'compression_level']
[, @attachedfile = 'pathname']
[, @tsmclientnode = 'TSM_client_node']
[, @tsmclientownerpwd = 'TSM_client_owner_password']
[, @tsmfilespace = 'TSM_file_space'] [,...n]
[, @tsmconfigfile = 'TSM_configuration_file']
[, @tsmmanagementclass = 'TSM_management_class']
[, @tsmdevicetimeoutminutes = n]
[, @tsmdsmi_dir = 'path']
[, @tsmdsmi_log = 'path']
[, @tsmlogname = 'log_name']
[, @with = 'option_name']
NOTE: The following example shows the syntax for performing partial restores using the “read_write_filegroups” parameter. The database used in the example below, FGBackups_PROD, contains the following filegroups: Primary, FG1, FG2, and FG3).
Tip: This example takes a partial backup of the primary and secondary read write filegroups (Primary, FG1, and FG2).
EXEC master.dbo.xp_slsFastCompression
@database = N'FGBackups_PROD'
, @BackupDirectory = 'I:\SQLbackups'
, @ExtentsChgRatioRequireFull = '.4',
@ForceFull = 1,
@read_write_filegroups = 1
Tips:
To see the list of accepted arguments and data types for arguments, execute the following:
exec master.dbo.<procedure_name> show_help
To convert the script for use with the command-line utilities, execute the following:
exec master.dbo.<procedure_name> show_cmd, <xp_arguments>
Click here to view all arguments the procedure accepts.
Automatically selects the optimal compression level based on CPU usage or Disk IO. For more information, see Compression Methods.
You can tell Adaptive Compression to optimize backups either for size or for speed. This argument accepts one of the following values:
Processor affinity designates specific processors to run LiteSpeed, while not allowing LiteSpeed to run on the remaining processors.
This argument accepts decimal values and hexadecimal values. If a value begins with "0x" it is interpreted as hexadecimal. A positive 64-bit integer value translates to a binary mask where a value of 1 designates the corresponding processor to be able to run the LiteSpeed process.
NOTE: 32-bit Windows is internally limited to a 32-bit mask
For example, you need to select processors 2, 3, and 6 for use with LiteSpeed. Number the bits from the right to left. The rightmost bit represents the first processor. Set the second, third, and sixth bits to 1 and all other bits to 0. The result is binary 100110, which is decimal 38 or hexadecimal 0x26. Review the following for additional information:
Decimal Value |
Binary Bit Mask |
Allow LiteSpeed Threads on Processors |
---|---|---|
0 | 0 | All (default) |
1 |
1 |
1 |
3 |
11 |
1 and 2 |
7 | 111 | 1, 2 and 3 |
38 |
100110 |
2, 3, and 6 |
205 | 11001101 | 1, 3, 4, 7, and 8 |
Tip: Before you start tuning the CPU Throttle or Affinity parameters to adjust backup performance, try limiting the number of threads. If you decide to use an affinity value other than default, it is recommended that you limit the threading as well. You may also want to consider using Adaptive Compression to maintain backup performance. For more information, see Adaptive Compression.
Specifies the directory where to search for the backup file.
Note: @AlterDIr replaced @SearchAlternateBackupDirectory in LiteSpeed 8.6. Support for the old @SearchAlternateBackupDirectory parameter will be gradually phased out.
Appends data to an existing full backup file.This argument accepts one of the following values:
The @AWSUseReducedRedundancy argument specifies the use of reduced redundancy storage in Amazon S3. This argument accepts one of the following values:
Note: This @AWSUseReducedRedundancy argument is replaced with the @CloudStorageClass = 'rrs' argument. |
The @AWSUseServerSideEncryption argument enables the encryption of data stored at rest in Amazon S3. This argument accepts one of the following values:
Type: Varchar
The @AzureBlobType argument specifies the types of blobs that can be stored in the Microsoft Azure cloud storage. This argument accepts one of the following values: "Block", "Page".
note: The LiteSpeed auto striping logic used in the @CloudAutoStriping and @CloudAutoStripingThreshold parameters can override the Azure blob limit for LiteSpeed backups. |
Specifies a directory for the backup file.
Type: Varchar
Specifies the name of the backup set.
This argument accepts variables. For more information, see LiteSpeed Variables.
Specifies the number of SQL Server buffers available for a LiteSpeed operation. The default value is set by SQL Server.
Checks if the expected full backup exists when backing up to separate files and returns a failure message if it is not found. If the full backup file does not exist, it performs a full backup. If the full backup file does exist, the decision to perform a new full or a differential backup will depend on other conditions specified. Accepts the following values:
Type: Varchar
The @CloudAccessKey argument specifies the name of the unique Cloud Web Service alphanumeric access key that identifies each user. The selections include Amazon Access Key, Azure Account Name, Google e-mail styled account, S3 Compatible Storage Access Key.
Type: Varchar
The @CloudAccessKeyEnc argument specifies the name of the encrypted unique Cloud Web Service alphanumeric access key that identifies each user.
This parameter enables automatic file striping for LiteSpeed cloud backups.
This parameter contains the stripe size in GBs. LiteSpeed logic uses the database size to make a decision about the number of stripes needed for LiteSpeed cloud backups. For example, if you have a database with a size of 200GB and set @CloudAutoStripingThreshold = 50, then LiteSpeed uses 200/50 = 4 stripes.
Type: Varchar
The @CloudBucketName argument specifies the name of the container for cloud objects. Bucket names must be at least 3 and no more than 63 characters long. The selections are Amazon Bucket Name, Azure Container Name, Google Bucket Name, Google Bucket Name requirements are described at https://cloud.google.com/storage/docs/naming, S3 Compatible Storage Bucket Name,
The @CloudGovRegion argument enables a special restricted region for the US Government use in Amazon S3 and Azure Clouds. This argument accepts one of the following values:
The @CloudParallelUpload argument, parallel parts transfers, is used to create fast uploads to the Azure Cloud or Amazon S3. The default number of parallel uploads:
The @CloudPartSize argument determines the size of each part that is uploaded to the cloud. The default part size:
notes:
|
TIP: Quest Software recommends using LiteSpeed defaults. |
Type: Varchar
The @CloudRegionName argument specifies the name of the Cloud Web Service region to use for a bucket. Example values are but not limited to: us-east-1, us-east-2, us-west-1, us-west-2, ca-central-1, eu-central-1, eu-west-1, eu-west-2, ap-south-1, ap-southeast-1, ap-southeast-2, ap-northeast-1, ap-northeast-2, sa-east-1, N'Germany' and N'China'.
Type: Varchar
The @CloudSecretKey argument specifies the name of the Cloud Web Service secret key that is assigned when you initially get a Cloud account.
Type: Varchar
The @CloudSecretKeyEnc argument specifies the name of the encrypted Cloud Web Service secret key that is assigned when you initially get a Cloud account.
Type: Varchar
The @CloudStorageClass argument specifies a range of storage classes established for different use cases including:
For Amazon S3:
RRS: Reduced Redundancy Storage - for non-critical data considering lower level of redundancy rather than Standard storage.
Important: : In versions less than 8.5 you should use --AWSStorageClass. The @AWSStorageClass argument is no longer valid in subsequent LiteSpeed versions after 8.5. |
For Google Storage:
Type: Varchar
The @CloudVendor argument specifies the name of the cloud service provider. The argument accepts one of the following values: "AmazonS3", "AzureBlob", "GoogleStorage" or "S3Compatible".
Type: Varchar
The @CloudEndpoint argument specifies the endpoint for S3 Compatible Storage and custom endpoint for Amazon S3 service (in case of VPC). Format: servername:port .Example values: "servername", "servername:port", "ip:port", "10.0.0.200:9021".
Type: Boolean
The @CloudAcceptAllCertificates argument instructs LiteSpeed accept self-signed certificates for S3 Compatible Storage. This argument accepts one of the following values:
Note: Delete backups is not supported in Maintenance Plans with this option.
Type: String
Appends a user comment to the backup.
This argument accepts variables. For more information, see LiteSpeed Variables.
Specifies the compression level for the backup. Valid values are 0 through 8. 0 bypasses the compression routines. The remaining values of 1 through 8 specify compression with increasingly aggressive computation. 2 is the default value for disk backups and 7 is the default value for cloud backups.
When choosing a compression level, it is best to try various options using your equipment and data to determine the best option for your environment. Use the Backup Analyzer to test the performance of different compression levels. For more information, see Test Optimal Backup Settings.
NOTE: If both the compression level and Adaptive Compression option are passed in, LiteSpeed will not error out and will select and use Adaptive Compression.
Works in conjunction with the @encryptionkey parameter.
Specify the encryption level. Higher levels improve security, but they require more CPU and take longer. Test Optimal Backup Settings on analyzing the best backup settings for your environment.
This argument accepts one of the following values:
0—40-bit RC2
1—56 bit RC2
2—112 bit RC2
3—128 bit RC2
4—168 bit 3DES
5—128 bit RC4
6—128 bit AES
7—192 bit AES
8—256 bit AES
9—MS_AES_128
10—MS_AES_192
11—MS_AES_256
Name of database to be backed up or restored.
This parameter specifies a database:
to be backed up (xp_backup_database and xp_slsFastCompression)
containing the transaction log to be backed up (xp_backup_log)
to be restored (xp_restore_database and xp_restore_log)
on which you wish to check the progress of an activity (xp_slsReadProgress)
for which you want to delete old backups (xp_slsSmartCleanup)
If supplied as a variable (@database), this name can be specified either as a string constant (@database = database name) or as a variable of character string data type, except for the ntext or text data types.
Type: Varchar
Specifies a description to store with the backup.
This argument accepts variables. For more information, see LiteSpeed Variables.
Specifies the last differential backup size to last full backup size ratio. When exceeding the specified ratio LiteSpeed performs a full backup.
This argument accepts one of the following formats:
Shows backups that are candidates for restore at this time, but does not restore them. This argument accepts one of the following values:
Specifies the minimum number of days since last full backup required to perform full backup. The default value is 14.
Type: Varchar
Value used to generate the encryption key for the encryption algorithm. If you do not supply encryption key, then the program will not encrypt the backup. If you use the wrong encryption key, the restore will fail.
Caution: When encrypting data, take care not to lose the encryption key; a backup cannot be restored or recovered without the original encryption key.
Example of key: 'Mypassword'
Name of database(s) to exclude from this backup.
If @ExcludeDatabase is supplied as a variable, this name can be specified either as a string constant (@ExcludeDatabase = database name) or as a variable of character string data type, except for the ntext or text data types.
Tip: The @ExcludeDatabase argument can be applied together with @MultiDatabaseType to exclude several databases from the process.
Specifies the minimum amount of database changes required for the full backup.
This argument accepts one of the following formats:
Specifies the date and time when the backup expires. LiteSpeed will not overwrite this file until expiration datetime is passed. This argument accepts one of the following formats:
Specifies the fast compression file extension. This argument accepts one of the following formats:
Specifies a logical database file used for file or filegroup backups. You can supply multiple instances of this argument.
Specifies a database filegroup to include in the backup or restore. You can supply multiple instances of this argument.
A filegroup backup is a single backup of all files in the filegroup and is equivalent to explicitly listing all files in the filegroup when creating the backup. Files in a filegroup backup can be restored individually or as a group.
Specifies the particular backup to use when recasting, restoring, extracting or reading from files with multiple appended backups.
Forces differential backup. It accepts the following values:
Forces full backup. This argument accepts one of the following values:
Type: Integer
Initializes the media on the device. This argument only applies to tape backups. This argument accepts one of the following values:
0—Do not format (default)
1—Write new header
2—Long erase / write new header
3—Low level controller format / write new header
NOTE: Any successful format operation (values 1, 2, and 3; not all are available to all drive types) lays down a LiteSpeed tape header that will identify this tape as containing LiteSpeed backups. Using @init=1 (or -I in the command line) will not lay down a tape header.
This option causes LiteSpeed to issue a full backup, if one of the following problems is discovered in the current backup set:
NOTE: If a problem is detected and a full backup is created through escalation, an error will be returned.
This argument accepts one of the following values:
DEPRECATED LiteSpeed 8.8: Was used to store for the Google Cloud Storage project ID; the project ID is now obtained from login. This parameter is retained for compatibility with old backup/restore scripts.
Specifies if LiteSpeed should wait and retry the read or write operation on failure. You can define retry options using the following parameters:
NOTE: This functionality is only available for disk and cloud operations.
For example, to specify a database backup where each failure can be retried once after a 30-second wait:
EXEC master.dbo.xp_backup_database
@filename='c:\test.bkp'
, @database='test'
, @ioflag='DISK_RETRY_COUNT=1'
, @ioflag='DISK_RETRY_WAIT=30'
Specifies an encrypted key. (Similar to @EncryptionKey).
You can use xp_encrypt_backup_key to convert the password (encryption_key) for use with @jobp. The original password (or encrypted key generated by xp_encrypt_restore_key) must be used to restore a backup.
Writes a log file for the operation. This argument accepts one of the following values:
0—Logging off.
1 or any odd value—Logging on. Log file is removed on success.
2 or any even value—Logging on.
The default output directory is C:\Documents and Settings\All Users\Application Data\Quest Software\LiteSpeed\SQL Server\Logs (or C:\ProgramData\Quest Software\LiteSpeed\SQL Server\Logs) (or C:\ProgramData\Quest Software\LiteSpeed\SQL Server\Logs). To log to a different directory add @Trace='logpath=path'.
See Configure Logging in LiteSpeed for information about LiteSpeed logging.
Specifies the largest unit of transfer in bytes to be used between SQL Server and LiteSpeed. The possible values are multiples of 65536 bytes (64 KB) ranging up to 4,194,304 bytes (4 MB). The default is 1048576 (1 MB).
Specifies a directory for a mirror backup. You can supply multiple instances of this argument.
Produces a backup that includes several types of databases. Types can include: all, system, user, or selected databases.
This argument accepts one of the following values:
Generates a map file during a backup for Object Level Recovery. This argument accepts one of the following values:
Type: Integer
Specifies the priority of the LiteSpeed process compared to other processes running on the same server. This argument accepts one of the following values:
0—Normal (Default)
1—AboveNormal
2—High
Type: Varchar
The @ProxyHost argument is optional and specifies the name of the proxy host name that is running the proxy server.
note: If the @ProxyHost argument is not defined, then the LiteSpeed core engine checks the local .ini files for the proxy parameters. If the proxy parameters are not detected, then the LiteSpeed core engine connects directly to the proxy servers. |
Type: Varchar
The @ProxyLogin argument is optional and specifies the proxy server login credential.
note: If not defined, then the LiteSpeed core engine checks the local .ini files for the proxy parameters. If the proxy parameters are not detected, then the LiteSpeed core engine connects directly to the proxy servers. |
Type: Varchar
The @ProxyPassword argument is optional and specifies the proxy server password credential.
note: If the @ProxyPassword argument is not defined, then the LiteSpeed core engine checks the local .ini files for the proxy parameters. If the proxy parameters are not detected, then the LiteSpeed core engine connects directly to the proxy servers. |
Type: Varchar
The @ProxyPasswordEnc argument is optional and specifies the encrypted proxy server password credential.
note: If the @ProxyPasswordEnc argument is not defined, then the LiteSpeed core engine checks the local .ini files for the proxy parameters. If the proxy parameters are not detected, then the LiteSpeed core engine connects directly to the proxy servers. |
The @ProxyPort argument is optional and contains the port number of the proxy server. The TCP/IP port values can be 1-65535.
note: If the @ProxyPort argument is not defined, then the LiteSpeed core engine checks the local .ini files for the proxy parameters. If the proxy parameters are not detected, then the LiteSpeed core engine connects directly to the proxy servers. |
Specifies a partial backup, which includes all the read/write files in a database: the primary filegroup, any read/write secondary filegroups, and any specified read-only files or filegroups. If the database is read-only, @read_write_filegroups includes only the primary filegroup.
Specifies a number of days to retain the backup. LiteSpeed will not overwrite this file for this number of days.
Generates a single-row result set.
The result set contains the following details:
Column Name | Data Type | Description |
---|---|---|
Database | nvarchar (128) | Database name. |
Operation | nvarchar (30) | Operation type: Backup or Restore. |
Threads | tinyint | The number of threads used for a LiteSpeed backup. |
CompressionLevel | tinyint | Compression level used for compressing the backup. The compression level can be NULL, if backed up with Adaptive Compression. |
AdaptiveCompression | nvarchar (max) |
Adaptive Compression option used for compressing the backup: 'speed' or 'size'. |
MaxTransferSize | int | Specifies the largest unit of transfer in bytes to be used between SQL Server and LiteSpeed. The possible values are multiples of 65536 bytes (64 KB) ranging up to 4,194,304 bytes (4 MB). The default is 1048576 (1 MB) . |
BaseSize | int | The smallest chunk of memory LiteSpeed attempts to write to disk at any given time. |
BlockSize | int | The largest amount of data that can be written in any single write request. |
BufferCount | smallint | The number of SQL Server buffers available for a LiteSpeed operation. |
StripeCount | smallint | Number of backup files in the stripe set. |
OverlappedBuffers | tinyint | The number of buffers that any single VDI thread can use at a time. |
CPUSeconds | numeric (18, 3) | Processor time used by the LiteSpeed operation. |
ElapsedSeconds |
numeric (18, 3) |
Duration of the operation. |
NativeSize | bigint | Backup size (in bytes) without LiteSpeed compression. |
BackupSize | bigint | Size of the backup (in bytes). |
Tip: In Toad, you can use Group Execute to produce a single result set for several server instances.
Specifies days of the week when a full backup is never performed. It accepts the following formats:
Type: Integer
Determines the number of threads used for the backup
Specifies the maximum CPU usage allowed. The argument accepts an integer value between 1 and 100. The default value is 100. This is the percentage of the total amount of CPU usage (across all enabled processors) available.
TIP: Before you start tuning the CPU Throttle or Affinity parameters to adjust backup performance, try limiting the number of threads. If you decide to use an affinity value other than default, it is recommended that you limit the threading as well. You may also want to consider using Adaptive Compression to maintain backup performance. For more information, see Adaptive Compression.
Specifies the TSM server LiteSpeed connects to during backups and restores. Not required, if specified in the options file or if backing up with the Passwordaccess Generate option.
Specifies the TSM client owner user password. Not required, if specified in the options file or if backing up with the Passwordaccess Generate option.
Specifies the TSM configuration file.
You can use the %TSMDEFAULTPATH% variable to make LiteSpeed detect the default TSM configuration file path automatically (by getting from LiteSpeed defaults as a priority or the registry - HKEY_LOCAL_MACHINE\SOFTWARE\IBM\ADSM\CurrentVersion\BackupClient)
Specifies how long to wait for a TSM device
DSMI_DIR path if needed.
DSMI_LOG path.
Specifies the TSM file space, the logical space on the TSM server. It can be the drive label name or UNC name. You can supply multiple instances of this argument.
NOTE: IBM recommends that an application client should select a unique file space; it is recommended that LiteSpeed users follow this practice with a specific file space reserved for LiteSpeed backups.
Log name.
Specifies the TSM management class. If not specified, LiteSpeed uses the default management class.
The TSM username password. Passwords are case-sensitive.
The TSM username ID.
The @UseSSL argument specifies that the connection uses SSL security. This argument accepts one of the following values:
Performs a restore verification on the backup file just created (if backup was successful). This argument accepts one of the following values:
Type: Varchar
Each @with argument should be a syntactically complete and correct statement. Please refer to the SQL Server Transact-SQL backup and restore documentation for the syntax and usage.
The supported formats are:
NOTES:
This extended stored procedure accepts the following @with parameters:
Parameter |
Description |
---|---|
CHECKSUM |
Causes checksums to be verified when a LiteSpeed backup is created. NOTE: When you restore a backup containing checksum, it is automatically checked. If you do not want to check the checksums during a restore, supply 'NO_CHECKSUM' . |
CONTINUE_AFTER_ERROR | Causes the backup be executed despite encountering an invalid backup checksum. |
Disable output information for the procedure
Back up the Northwind database. Perform full backup only if the amount of database changes since the last full backup is more than 40%.
EXEC master.dbo.xp_slsFastCompression
@database = 'Northwind'
, @BackupDirectory = 'C:\Program Files\Microsoft SQL Server\MSSQL.1\MSSQL\Backup'
, @ExtentsChgRatioRequireFull = '.4'
Back up the Northwind database to multiple locations. Perform full backup only if more than 10 days have passed since last full backup.
EXEC master.dbo.xp_slsFastCompression
@database = 'Northwind'
, @BackupDirectory = 'C:\Program Files\Microsoft SQL Server\MSSQL.1\MSSQL\Backup'
, @MirrorDirectory = 'D:\SQLServerBackups'
, @ElapsedDaysRequireFull = 10
Back up the Northwind database. Force full backup.
EXEC master.dbo.xp_slsFastCompression
@database = 'Northwind'
, @BackupDirectory = 'C:\Program Files\Microsoft SQL Server\MSSQL.1\MSSQL\Backup'
, @ForceFull = 1
Backup to TSM. Perform full backup only if the amount of database changes since the last full backup is more than 40%.
exec master.dbo.xp_slsFastCompression
@database = N'userdb3',
@backupname = N'userdb3 - Fast Compression Backup',
@desc = N'Fast Compression Backup of userdb3',
@AdaptiveCompression = 'Speed',
@ExtentsChgRatioRequireFull = N'40%',
@tsmfilespace = N'FC',
@tsmconfigfile = N'C:\Program Files\Tivoli\TSM\baclient\dsm.opt',
@tsmclientnode = N'w2k3_TSM',
@tsmclientownerpwd = N'***',
@tsmmanagementclass = N'STANDARD',
@tsmdevicetimeoutminutes = 2,
@FullBackupEscalation = 1
Backup showing FastCompressionExtension argument using existing item bkp file extension.
exec master.dbo.xp_slsFastCompression
@database = N'A1',
@backupname = N'A1 - Fast Compression Backup',
@desc = N'Fast Compression Backup of A1',
@compressionlevel = 2,
@comment = N'',
@AppendDifferential = 0,
@CheckForFullBackup = 1,
@ExtentsChgRatioRequireFull = N'35%',
@BackupDirectory = N'D:\Backups',
@FullBackupEscalation = 1,
@ElapsedDaysRequireFull = 14,
@FastCompressionExtension = ‘bkp’
exec master.dbo.xp_slsFastCompression
@database = N'newtest',
@backupname = N'newtest - Fast Compression Backup',
@desc = N'Fast Compression Backup of test',
@compressionlevel = 7,
@comment = N'',
@ExtentsChgRatioRequireFull = N'35%',
@BackupDirectory = N'test',
@CloudVendor = N'AzureBlob',
@CloudAccessKeyEnc = N'**************',
@CloudSecretKeyEnc = N'***************',
@CloudBucketName = N'test',
@AzureBlobType = N'Page',
@UseSSL = 1,
@FullBackupEscalation = 1,
@ElapsedDaysRequireFull = 14
0 (success) or non-zero (failure).
To capture the output message, run the following:
declare @rmsg varchar(999)
exec master..<procedure_name> <arguments>, @resultmsg=@rmsg output
select @rmsg
To capture the output message and the result code, run the following:
declare @rc int
declare @rmsg varchar(999)
exec master..<procedure_name> <arguments>, @resultmsg=@rmsg output, @resultcode=@rc output
select @rc, @rmsg
© 2024 Quest Software Inc. ALL RIGHTS RESERVED. Terms of Use Privacy Cookie Preference Center