dbTalk Databases Forums  

DTS and stored procedure

microsoft.public.sqlserver.dts microsoft.public.sqlserver.dts


Discuss DTS and stored procedure in the microsoft.public.sqlserver.dts forum.



Reply
 
Thread Tools Display Modes
  #1  
Old   
JD
 
Posts: n/a

Default DTS and stored procedure - 05-21-2004 , 03:37 PM






Can I run a DTS package from inside a SQL stored procedure?
How?

thanks



Reply With Quote
  #2  
Old   
Ashish Ruparel [MSFT]
 
Posts: n/a

Default RE: DTS and stored procedure - 05-23-2004 , 04:48 PM






Hi,

There is a command prompt utility "dtsrun".
You can invoce this utility from the stored procedure, using the extended
stored procedure, "xp_cmdshell".

The syntax for the stored procedure would be

create procedure [CallDtsPack] As

execute xp_cmdshell '/S<SQLServerName> /E /N<DTSPackage Name>',NO_OUTPUT


The above stored procedure will connect to the SQL Server using Windows
Authentication and no output would be displayed.


Syntax for DTSRUN can be viewed at
http://msdn.microsoft.com/library/de...us/coprompt/cp
_dtsrun_95kp.asp

The dtsrun utility executes a package created using Data Transformation
Services (DTS). The DTS package can be stored in the Microsoft® SQL Server™
msdb database, a COM-structured storage file, or SQL Server Meta Data
Services.

Syntax
dtsrun
[/?] |
[
[
/[~]S server_name[\instance_name]
{ {/[~]U user_name [/[~]P password]} | /E }
]
{
{/[~]N package_name }
Quote:
{/[~]G package_guid_string}
{/[~]V package_version_guid_string}
}
[/[~]M package_password]
[/[~]F filename]
[/[~]R repository_database_name]
[/A global_variable_name:typeid=value]
[/L log_file_name]
[/W NT_event_log_completion_status]
[/Z] [/!X] [/!D] [/!Y] [/!C]
]

Arguments/?

Displays the command prompt options.

~

Specifies that the parameter to follow is hexadecimal text representing the
encrypted value of the parameter. Can be used with the /S, /U, /P, /N, /G,
/V, /M, /F, and /R options. Using encrypted values increases the security
of the command used to execute the DTS package because the server name,
password, and so on, are not visible. Use /!Y to determine the encrypted
command.

/S server_name[\instance_name]

Specifies the instance of SQL Server to connect to. Specify server_name to
connect to the default instance of SQL Server on that server. Specify
server_name\instance_name to connect to a named instance of SQL Server 2000
on that server.

/U user_name

Is a login ID used to connect to an instance of SQL Server.

/P password

Is a user-specified password used with a login ID.

/E

Specifies a trusted connection (password not required).

/N package_name

Is the name of a DTS package assigned when the package was created.

/G package_guid_string

Is the package ID assigned to the DTS package when it was created. The
package ID is a GUID.

/V package_version_guid_string

Is the version ID assigned to the DTS package when it was first saved or
executed. A new version ID is assigned to the DTS package each time it is
modified. The version ID is a GUID.

/M package_password

Is an optional password assigned to the DTS package when it was created.

/F filename

Is the name of a structured storage file containing DTS packages. If
server_name is also specified, the DTS package retrieved from SQL Server is
executed and that package is added to the structured storage engine.

/R repository_database_name

Is the name of the repository database containing DTS packages. If no name
is specified, the default database name is used.

/A global_variable_name:typeid=value

Specifies a package global variable, where typeid = type identifier for the
data type of the global variable. The entire argument string can be quoted.
This argument can be repeated to specify multiple global variables. See the
Remarks section for the different available type identifiers available with
global variables.

To set global variables with this command switch, you must have either
Owner permission for the package or the package must have been saved
without DTS password protection enabled. If you do not have Owner
permission, you can specify global variables, but the values used will be
those set in the package, not those specified with the /A command switch.

/L log_file_name:

Specifies the name of the package log file.

/W Windows_Event_Log

Specifies whether or not to write the completion status of the package
execution to the Windows Application Log. Specify True or False.

/Z

Indicates that the command line for dtsrun is encrypted using SQL Server
2000 encryption.

/!X

Blocks execution of the selected DTS package. Use this command parameter
when you want to create an encrypted command line without executing the DTS
package.

/!D

Deletes the DTS package from an instance of SQL Server. The package is not
executed. It is not possible to delete a specific DTS package from a
structured storage file. The entire file needs to be overwritten using the
/F and /S options.

/!Y

Displays the encrypted command used to execute the DTS package without
executing it.

/!C

Copies the command used to execute the DTS package to the Microsoft
Windows® clipboard. This option can also be used in conjunction with /!X
and /!Y.


Remarks


Security Note Batch files may contain credentials stored in plain text.
Credentials may be echoed to the user's screen during batch execution.


If you do not specify any command line switches, specify an incorrect
command line switch, or your command statement contains a syntax error,
dtsrun returns error information and usage instructions. If you enter
dtsrunui on the command line without any command line switches, you will
start the DTS Run utility.

Spaces between command switches and values are optional. Embedded spaces in
values must be embedded between double quotation marks.

If an option is specified multiple times, the last occurrence takes
precedence. One exception is the /A command switch. Specifying more than
one /A switch creates multiple global variables.

When specifying a global variable with the /A command switch, you must use
a type identifier to indicate the data type of the global variable.

A tilde (~) character after the forward slash (for example, /~Z) indicates
that the parameter value is encrypted and what follows is the hexadecimal
text of the encrypted value.

The table shows the global variable data types and their IDs.


Data type Type ID
Integer (small) 2
Integer 3
Real (4-byte) 4
Real (8-byte) 5
Currency 6
Date 7
String 8
Boolean 11
Decimal 14
Integer (1-byte) 16
Unsigned int (1-byte) 17
Unsigned int (2-byte) 18
Unsigned int (4-byte) 19
Integer (8-byte) 20
Unsigned int (8-byte) 21
Int 22
Unsigned int 23
HRESULT 25
Pointer 26
LPSTR 30
LPWSTR 31


For information about where to find or how to run this utility, see Getting
Started with Command Prompt Utilities.

Examples
To execute a DTS package saved as a COM-structured storage file, use:

dtsrun /Ffilename /Npackage_name /Mpackage_password

To execute a DTS package saved in the SQL Server msdb database, use:

dtsrun /Sserver_name /Uuser_nName /Ppassword /Npackage_name
/Mpackage_password

To execute a DTS package saved in Meta Data Services, use:

dtsrun /Sserver_name /Uuser_nrame /Ppassword /Npackage_name
/Rrepository_name






HTH
Ashish
This posting is provided "AS IS" with no warranties, and confers no rights.



Reply With Quote
  #3  
Old   
JD
 
Posts: n/a

Default Re: DTS and stored procedure - 05-24-2004 , 01:29 PM



thank you


"Ashish Ruparel [MSFT]" <v-ashrup (AT) online (DOT) microsoft.com> wrote

Quote:
Hi,

There is a command prompt utility "dtsrun".
You can invoce this utility from the stored procedure, using the extended
stored procedure, "xp_cmdshell".

The syntax for the stored procedure would be

create procedure [CallDtsPack] As

execute xp_cmdshell '/S<SQLServerName> /E /N<DTSPackage Name>',NO_OUTPUT


The above stored procedure will connect to the SQL Server using Windows
Authentication and no output would be displayed.


Syntax for DTSRUN can be viewed at

http://msdn.microsoft.com/library/de...us/coprompt/cp
_dtsrun_95kp.asp

The dtsrun utility executes a package created using Data Transformation
Services (DTS). The DTS package can be stored in the Microsoft® SQL
ServerT
msdb database, a COM-structured storage file, or SQL Server Meta Data
Services.

Syntax
dtsrun
[/?] |
[
[
/[~]S server_name[\instance_name]
{ {/[~]U user_name [/[~]P password]} | /E }
]
{
{/[~]N package_name }
| {/[~]G package_guid_string}
| {/[~]V package_version_guid_string}
}
[/[~]M package_password]
[/[~]F filename]
[/[~]R repository_database_name]
[/A global_variable_name:typeid=value]
[/L log_file_name]
[/W NT_event_log_completion_status]
[/Z] [/!X] [/!D] [/!Y] [/!C]
]

Arguments/?

Displays the command prompt options.

~

Specifies that the parameter to follow is hexadecimal text representing
the
encrypted value of the parameter. Can be used with the /S, /U, /P, /N, /G,
/V, /M, /F, and /R options. Using encrypted values increases the security
of the command used to execute the DTS package because the server name,
password, and so on, are not visible. Use /!Y to determine the encrypted
command.

/S server_name[\instance_name]

Specifies the instance of SQL Server to connect to. Specify server_name to
connect to the default instance of SQL Server on that server. Specify
server_name\instance_name to connect to a named instance of SQL Server
2000
on that server.

/U user_name

Is a login ID used to connect to an instance of SQL Server.

/P password

Is a user-specified password used with a login ID.

/E

Specifies a trusted connection (password not required).

/N package_name

Is the name of a DTS package assigned when the package was created.

/G package_guid_string

Is the package ID assigned to the DTS package when it was created. The
package ID is a GUID.

/V package_version_guid_string

Is the version ID assigned to the DTS package when it was first saved or
executed. A new version ID is assigned to the DTS package each time it is
modified. The version ID is a GUID.

/M package_password

Is an optional password assigned to the DTS package when it was created.

/F filename

Is the name of a structured storage file containing DTS packages. If
server_name is also specified, the DTS package retrieved from SQL Server
is
executed and that package is added to the structured storage engine.

/R repository_database_name

Is the name of the repository database containing DTS packages. If no name
is specified, the default database name is used.

/A global_variable_name:typeid=value

Specifies a package global variable, where typeid = type identifier for
the
data type of the global variable. The entire argument string can be
quoted.
This argument can be repeated to specify multiple global variables. See
the
Remarks section for the different available type identifiers available
with
global variables.

To set global variables with this command switch, you must have either
Owner permission for the package or the package must have been saved
without DTS password protection enabled. If you do not have Owner
permission, you can specify global variables, but the values used will be
those set in the package, not those specified with the /A command switch.

/L log_file_name:

Specifies the name of the package log file.

/W Windows_Event_Log

Specifies whether or not to write the completion status of the package
execution to the Windows Application Log. Specify True or False.

/Z

Indicates that the command line for dtsrun is encrypted using SQL Server
2000 encryption.

/!X

Blocks execution of the selected DTS package. Use this command parameter
when you want to create an encrypted command line without executing the
DTS
package.

/!D

Deletes the DTS package from an instance of SQL Server. The package is not
executed. It is not possible to delete a specific DTS package from a
structured storage file. The entire file needs to be overwritten using the
/F and /S options.

/!Y

Displays the encrypted command used to execute the DTS package without
executing it.

/!C

Copies the command used to execute the DTS package to the Microsoft
Windows® clipboard. This option can also be used in conjunction with /!X
and /!Y.


Remarks


Security Note Batch files may contain credentials stored in plain text.
Credentials may be echoed to the user's screen during batch execution.


If you do not specify any command line switches, specify an incorrect
command line switch, or your command statement contains a syntax error,
dtsrun returns error information and usage instructions. If you enter
dtsrunui on the command line without any command line switches, you will
start the DTS Run utility.

Spaces between command switches and values are optional. Embedded spaces
in
values must be embedded between double quotation marks.

If an option is specified multiple times, the last occurrence takes
precedence. One exception is the /A command switch. Specifying more than
one /A switch creates multiple global variables.

When specifying a global variable with the /A command switch, you must use
a type identifier to indicate the data type of the global variable.

A tilde (~) character after the forward slash (for example, /~Z) indicates
that the parameter value is encrypted and what follows is the hexadecimal
text of the encrypted value.

The table shows the global variable data types and their IDs.


Data type Type ID
Integer (small) 2
Integer 3
Real (4-byte) 4
Real (8-byte) 5
Currency 6
Date 7
String 8
Boolean 11
Decimal 14
Integer (1-byte) 16
Unsigned int (1-byte) 17
Unsigned int (2-byte) 18
Unsigned int (4-byte) 19
Integer (8-byte) 20
Unsigned int (8-byte) 21
Int 22
Unsigned int 23
HRESULT 25
Pointer 26
LPSTR 30
LPWSTR 31


For information about where to find or how to run this utility, see
Getting
Started with Command Prompt Utilities.

Examples
To execute a DTS package saved as a COM-structured storage file, use:

dtsrun /Ffilename /Npackage_name /Mpackage_password

To execute a DTS package saved in the SQL Server msdb database, use:

dtsrun /Sserver_name /Uuser_nName /Ppassword /Npackage_name
/Mpackage_password

To execute a DTS package saved in Meta Data Services, use:

dtsrun /Sserver_name /Uuser_nrame /Ppassword /Npackage_name
/Rrepository_name






HTH
Ashish
This posting is provided "AS IS" with no warranties, and confers no
rights.




Reply With Quote
Reply




Thread Tools
Display Modes

Posting Rules
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

vB code is On
Smilies are On
[IMG] code is On
HTML code is Off



Powered by vBulletin Version 3.5.3
Copyright ©2000 - 2012, Jelsoft Enterprises Ltd.