dtsrun的命令行调用方法

本文介绍如何使用dtsrun命令行工具执行SQL Server 2000的DTS包,包括保存DTS包、创建命令文件及执行过程,并提供了一些实用技巧。

对于sql server 2000的数据导入导出工具的命令行调用:
使用sql server的实用工具dtsrun可以在dos命令窗口中完成导入导出工具的功能。
1.首先需要把导入导出工具中执行的步骤保存成DTS包,选择结构化存储文件(.dts)类型。举例说明:
保存包名称为:test.dts
2.然后编辑一个cmd文件,内容如下:

例:

dtsrun /s "127.0.0.1" /u "sa" /p "kstar" /f "D:askmanageBindts日终刷新.dts" /n "日终刷新" /m "kstar">"D:        askmanageBinlogdts_20080526.log"

pause   //暂停
3.执行此cmd文件,即可以调度该dts包的执行了

另外还有些细节的技巧,是本人在试验过程中发现的:
1。要把表导出到文件时,选择目标文件的时候可以不给出具体的路径,只给出文件名,那么按照上面方法执行的时候,就会在当前目录下生成这个文件名的文件。
2。防止多次导入造成数据重复的方法:在dts包形成的过程中,目标表的后面一列是“转换”,点击进去
有一个对话框窗体,里面可以选择“除去并重新创建目的表”一项。
 

SQL Server 调度DTS包常出问题,可以让系统的'任务计划'来自动执行包。 

dtsrun /F"e:/web/wwwroot/sunhing/sqlserver/toolsdepart.dts" /Ntoolsdepart   
dtsrun /F"e:/web/wwwroot/sunhing/sqlserver/toolsinfor.dts" /Ntoolsinfor 

若要执行保存为 COM 结构化存储文件的 DTS 包,请使用: 

dtsrun /Ffilename /Npackage_name /Mpackage_password 

若要执行保存在 SQL Server msdb 数据库中的 DTS 包,请使用: 

dtsrun /Sserver_name /Uuser_nName /Ppassword /Npackage_name /Mpackage_password 

若要执行保存在 Meta Data Services 中的 DTS 包,请使用: 

dtsrun /Sserver_name /Uuser_nrame /Ppassword /Npackage_name /Mpackage_password /Rrepository_name 

-------------------------------------------------------------- 
dtsrun 实用工具 
dtsrun 实用工具执行用数据转换服务 (DTS) 创建的包。DTS 包可存储在 Microsoft® SQL Server™ 2000 msdb 数据库、COM 结构化存储文件或 SQL Server Meta Data Services 中。 

语法 
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] 


参数/? 

显示命令提示选项。 



指定接下来的参数采取十六进制文本表示加密的参数值。可以和 /S、/U、/P、/N、/G、/V、/M、/F 和 /R 选项一起使用。使用加密的值增加了用于执行 DTS 包的命令的安全性,因为服务器名称、密码等等都不可见。使用 /!Y 确定加密的命令。 

/S server_name[/instance_name] 

指定要连接到的 SQL Server 实例。指定用于连接到该服务器上的 SQL Server 默认实例的 server_name。指定用于连接到该服务器上的 SQL Server 2000 命名实例的 server_name/instance_name。 

/U user_name 

是用于连接到 SQL Server 实例的登录 ID。 

/P password 

是同登录 ID 一起使用的用户指定的密码。 

/E 

指定信任连接(不需密码)。 

/N package_name 

当创建 DTS 包时为包所指派的名称。 

/G package_guid_string 

当创建 DTS 包时指派给它的包 ID。该包 ID 是 GUID。 

/V package_version_guid_string 

当第一次保存或执行 DTS 包时指派给它的版本 ID。每次修改 DTS 包时都指派给它新的版本 ID。该版本 ID 是 GUID。 

/M package_password 

当创建 DTS 包时指派给它的可选密码。 

/F filename 

包含 DTS 包的结构化存储文件的名称。如果也指定了 server_name,则执行从 SQL Server 中检索到的 DTS 包并且将该包添加到结构化存储引擎。 

/R repository_database_name 

包含 DTS 包的知识库数据库名称。如果没有指定名称,则使用默认的数据库名称。 

/A global_variable_name:typeid=value 

指定一个包全局变量,其中 typeid = 全局变量数据类型的类型标识符。可以引用整个参数字符串。该参数可重复使用以指定多个全局变量。有关全局变量的各种可用类型标识符的信息,请参见注释部分。 

若要使用该命令开关设置全局变量,必须有包的所有者权限或者该包必须已在未启用 DTS 密码保护的状态保存。如果没有所有者权限,可以指定全局变量,但是所用的值将是设置在包中的值,而不是那些用 /A 命令开关指定的值。 

/L log_file_name: 

指定包日志文件的名称。 

/W Windows_Event_Log 

指定是否在 Windows 应用程序日志中写入包执行的完成状态。指定 True 或 False。 

/Z 

指示使用 SQL Server 2000 加密对 dtsrun 命令行进行加密。 

/!X 

阻塞选定 DTS 包的执行。当想要无须执行包便能创建加密的命令行时,使用该命令参数。如果未指定此选项,则将立即执行 DTS 包。 

/!D 

从 SQL Server 实例中删除 DTS 包。将不执行此包。从结构化存储文件中删除特定的 DTS 包是不能实现的。需要使用 /F 和 /S 选项重写整个文件。 

/!Y 

显示用于执行 DTS 包的加密命令,但不执行该命令。 

/!C 

将用于执行 DTS 包的命令复制到 Microsoft Windows® 剪贴板上。此选项也可与 /!X 和 /!Y 一起使用。  

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值