DTS传参问题: DTS传参不是你简单看到的那样子的,不知道你想实现什么目的,为什么要传个“?”进去?说清楚一点 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 使用DTSRUN命令运行dts包如:dtsrun /f".\MyDTS.dts" /E /A"@ChineseName":5="1005" 在这里传是不是好点呢?应该可以了吧 DTS参数传递确实如楼主帖出的描述但问题的关键是, 楼主后面的语句是DTS包的运作方式吗? 老大,是这样的。我的包已经定义好了!我用了3个全局变量设置Catalog的值为:全局变量DatabaseName(数据库)DataSource的值为:全局变量FileName(Excel文件名):连接SQLServer中,设置DataSource的值为全局变量ServerName。(服务器名称)想用DTS,把参数传给DTS,不知道怎么写这个参数了!如:dtsrun /f".\MyDTS.dts" /E /A"@ChineseName":5="1005" --参数说明看不懂!! --是不是这样??EXEC master.dbo.xp_cmdshell 'dtsrun /S (local) /U sa /P /E /N"包名" /A"DataSource":1="数据库" "FileName":2="C:\Test\Test.xls","ServerName":3="(local)"' --tryEXEC master.dbo.xp_cmdshell 'dtsrun /S /U importuser /P import /E /F"DTS文件" /N"名" /A"ServerName":8="服务器" /A"FileName":8="C:\Test\Test.xls" /A"DataSource":8="数据库" ' --刚用你的方法试了下:EXEC master.dbo.xp_cmdshell 'dtsrun /S /U sa /P /E /F"D:\SZDATA\ExcelData\TestDtszlp.dts" /N"TestDtszlp" /A"ServerName":8="zlp" /A"FileName":8="D:\SZDATA\ExcelData\AppraiseData.xls" /A"DataSource":8="SZ" '--报告错误:DTSRun OnError: DTSStep_DTSDataPumpTask_1, Error = -2147467259 (80004005) 字符串错误: 无法打开登录 'zlp' 中请求的数据库。登录失败。 错误源: Microsoft OLE DB Provider for SQL Server 帮助文件: 帮助上下文: 0错误详细记录:错误: -2147467259 (80004005); 提供程序错误: 4060 (FDC) 字符串错误: 无法打开登录 'zlp' 中请求的数据库。登录失败。 错误源: Microsoft OLE DB Provider for SQL Server 帮助文件: 帮助上下文: 0--高手,人呢!!急死我了!!我就把3个全局变量传递进来.然后就是给它参数化,老不成功..我是把Excel文件导到数据库 用的是DTS方法(Excle很多.而且经常有新的Excle生成)解决了再开100 分,感谢..........汗.............. 应该是你的包里的数据库连接文件不对吧参数就按上面方式就可,几个都没问题dtsrun /f".\MyDTS.dts" /E /A"@ServerName":5="1005" [/A……]多加几个参数上面的5是参数类型,你可以查查dtsrun命令的使用方法把上面的语句放在一个.bat文件中,批处理直接运行试试看 一个查询问题 小弟最近在学习做BBS,主页使用DataList双层嵌套,之前做的太简单,现在想扩充下信息,但是在写存储过程的时候卡住了,三表查询。。。大家帮我看看吧,谢谢啦! 如何使用跟踪标记 1204(邹老大BLOG中的文章)??? 请教横向相加问题! 请教 关于时间排序的问题 这个该怎么写呢 求SQL语句一条 求问某一行某一个字段为null就取消整行的操作,如何做 约束问题@! 数据库中时间 一开始为null 然后update set sj='8:00:00'怎么全变成1900-1-1 8:00:00 数据库的连接问题!急
全局变量DatabaseName(数据库)
DataSource的值为:
全局变量FileName(Excel文件名):
连接SQLServer中,设置DataSource的值为
全局变量ServerName。(服务器名称)
想用DTS,把参数传给DTS,不知道怎么写这个参数了!如:
dtsrun /f".\MyDTS.dts" /E /A"@ChineseName":5="1005" --参数说明看不懂!!
EXEC master.dbo.xp_cmdshell 'dtsrun /S (local) /U sa /P /E /N"包名" /A"DataSource":1="数据库" "FileName":2="C:\Test\Test.xls","ServerName":3="(local)"'
EXEC master.dbo.xp_cmdshell 'dtsrun /S /U importuser /P import /E /F"DTS文件" /N"名" /A"ServerName":8="服务器" /A"FileName":8="C:\Test\Test.xls" /A"DataSource":8="数据库" '
EXEC master.dbo.xp_cmdshell 'dtsrun /S /U sa /P /E /F"D:\SZDATA\ExcelData\TestDtszlp.dts" /N"TestDtszlp" /A"ServerName":8="zlp" /A"FileName":8="D:\SZDATA\ExcelData\AppraiseData.xls" /A"DataSource":8="SZ" '--报告错误:
DTSRun OnError: DTSStep_DTSDataPumpTask_1, Error = -2147467259 (80004005) 字符串错误: 无法打开登录 'zlp' 中请求的数据库。登录失败。 错误源: Microsoft OLE DB Provider for SQL Server 帮助文件: 帮助上下文: 0错误详细记录:错误: -2147467259 (80004005); 提供程序错误: 4060 (FDC) 字符串错误: 无法打开登录 'zlp' 中请求的数据库。登录失败。 错误源: Microsoft OLE DB Provider for SQL Server 帮助文件: 帮助上下文: 0--高手,人呢!!急死我了!!我就把3个全局变量传递进来.然后就是给它参数化,老不成功..我是把Excel文件导到数据库 用的是DTS方法(Excle很多.而且经常有新的Excle生成)解决了再开100 分,感谢..........汗..............
上面的5是参数类型,你可以查查dtsrun命令的使用方法把上面的语句放在一个.bat文件中,批处理直接运行试试看