问题标签 [dtexec]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
ssis - 由于 SSIS 中的错误 0x80040154 dtexec 错误,无法创建 dts.application
dtexec.exe
是否应该在不安装集成服务或 SQL 服务器的情况下执行 SSIS 包?
sql-server - 找不到指定的文件 | SSIS | 在 SQL Server 上使用 Dtexec 执行包 SSIS
我对包 SSIS 有疑问。
我正在使用 SSIS 将 Excel 文件中的信息加载到 SQL Server 上的表中。我的文件在桌面上并且使用 Dtexec 成功执行了包但没有任何反应,如果您将文件的目录更改为我的文档,则文件成功执行并将信息加载到表中。一定会发生什么?
sql-server - 从文件系统执行 SSIS 包
我们使用以下写入批处理文件的命令执行 SSIS 包。(本地 MSSQL DB)D:\Program Files\Microsoft SQL Server\130\DTS\Binn\DTEXEC.exe>" "E:\Packages\SSISPKG1.dtsx" /Config "E:\Packages\Config\config.dtsConfig ”。
现在我们迁移到 AWS RDS-MSSQL 服务。如何执行存储在 S3 存储桶中的 .dtsx 文件。 RDS - MSSQL 的 DTEXEC.exe 的路径是什么。(微软 SQL 服务器)?
正如我所假设的,RDS-MSSQL 服务创建了一个隐藏的 EC2 实例来处理和存储数据。是否可以在该实例上创建一个文件夹以保留 .dtsx 文件并在需要时运行批处理文件?
sql-server - 使用命令提示符执行 SSIS 包
我正在尝试使用命令提示符执行 SSIS 包。
我安装了 Visual Studio 2019 社区版,并在安装过程中选择了“数据存储和处理”。还安装了来自 Visual Studio 扩展的 SQL Server 集成服务项目。
我寻找 Dtexec.exe 并在下面提到的位置找到它。C:\Program Files (x86)\Microsoft SQL Server\110\DTS\Binn C:\Program Files (x86)\Microsoft SQL Server\120\DTS\Binn C:\Program Files (x86)\Microsoft SQL Server\130 \DTS\宾恩
我在 C:\Program Files 下找不到 64 位 Dtexec.exe
我使用 Visual Studio 2019 创建了一个 SSIS 包。
我尝试使用批处理文件从命令行执行包。
"C:\Program Files (x86)\Microsoft SQL Server\120\DTS\Binn\dtexec.exe" /FILE "C:\Users\Ash\source\repos\DR Activity 1\DR Activity 1\Package.dtsx" /MAXCONCURRENT "-1" /CHECKPOINTING OFF /REPORTING EWCDI 暂停
我收到一条错误消息说明
从 XML 加载脚本任务时出现异常:System.Exception:脚本任务“ST_07a17c9047774ce7ad850af7a94a9ca5”使用此版本的集成服务不支持的 15.0 版脚本
ssis - 从 SSMS 运行 DTEXEC 以运行 SSIS 目录包
我想在使用 DTEXEC 的存储过程中使用 Catalog 执行 SSIS 包:
DECLARE @cmd varchar(8000)
DECLARE @params varchar(4000) SELECT @params = '/SET \Package.Variables[User::VarBigInt].Properties[Value];"' + CONVERT(char(10), @VarBigInt) + '" ' SELECT @params = @params + '/SET \Package.Variables[User::VarDate].Properties[Value];"' + CONVERT(NVARCHAR(20), @VarDate,101) + '" 'SELECT @params = @params + '/SET \Package.Variables[User::VarDestination].Properties[Value];"' + @VarDestination+ '"'
SELECT @params = @params + '/SET \Package.Variables[User ::VarBoolean].Properties[Value];"' + CONVERT(CHAR(1), @VarBoolean) + '"' SELECT @params = @params + '/SET \Package.Variables[User::VarString].Properties[ Value];"' + @VarString+ '" ' SELECT @params = @params + '/SET \Package.Variables[User::VarList].Properties[Value];"' + @VarList+ '" 'SELECT @cmd = 'dtexec ' +N'/ISSERVER ""\SSISDB\test\test'+ @PackageName +'" /SERVER ""'+ @DestServerName +'""" /ENVREFERENCE 1 ' + @params + '"$ ServerOption::SYNCHRONIZED(Boolean)";True'
这是失败的
SELECT @params = @params + '/SET \Package.Variables[User::VarDate].Properties[Value]";' + 转换(NVARCHAR(20), @VarDate,101) + '''"'
在运行存储过程以将其部署到目录时:选项“ /SET \Package.Variables[User::VarDate].Properties[Value];01/15/2019”无效。
VarDate 是 SSIS 包中的日期时间变量。
sql-server - 是否可以通过在 DTExec 命令行中传递不同的值来覆盖通过表达式计算的变量值?
是否可以通过在 DTExec 命令行上传入不同的值来覆盖通过表达式计算的 SSIS 包中变量的值?
我有一个参数化查询,我将变量传递User::StartDate
给它。包名称是 OpenAirExport.dtsx。
如果我使用 PowerShell 中的 DTExec 调用我的包,我可以在命令行上很好地设置 StartDate 变量。例如:
这工作正常。我可以从结果数据中看到,开始日期确实设置为 2020 年 9 月 22 日。
但是,在 99% 的情况下,程序包只会获取前一天的数据。所以我在 StartDate 变量上设置了一个表达式来计算它的值:
(这个看起来相当复杂的表达式只计算从第 0 天开始的天数,然后将它们添加到第 0 天并减去 1。这是 SQL Server 中从日期时间中剥离时间的一种相当标准的方法,只留下日期。在这种情况下它将给出昨天 00:00 的日期时间)
现在,如果我在 PowerShell 中使用 DTExec 调用包而不设置 StartDate 变量值,它会给出正确的结果 - 昨天的数据。
不时有下游流程失败,我们被要求重新运行前一天的数据。所以我希望能够用从命令行传入的值覆盖 StartDate 的计算值。但我发现,如果我尝试从命令行设置值,该值将被忽略,并且该表达式仍用于计算 StartDate。
有什么方法可以强制 SSIS 用从命令行传入的值覆盖表达式值?
ssis - 尝试使用 dtexec 运行包时出错
我正在尝试从命令行运行一个包,并计划通过批处理来安排运行。
我输入以下
生成此错误
开始时间:上午 11:18:01 由于错误 0x80070005,无法加载项目“C:\Users\XXXXXX\Documents\Batch\ScheduleRun\ScheduledRun\ScheduledRun”。说明:对路径“C:\Users\XXXXXX\Documents\Batch\ScheduleRun\ScheduledRun\ScheduledRun”的访问被拒绝。来源:mscorlib 开始时间:上午 11:18:01 结束时间:上午 11:18:01 经过时间:0.047 秒
我尝试以管理员身份运行 CMD,但我得到了同样的错误。知道这可能是什么原因吗?
谢谢SJ
sql-server - 无法在 SQL Server 2019 的 Dtexec /ISServer 命令中获取错误代码和描述
我正在运行使用下面给出的 dtexec 命令在 Visual Studio 2019 中开发的 SSIS 包。我们使用的是 SQL Server Management Studio 2019 版本。包被部署到集成服务目录。
如果包中有错误,我看到的只是:
要检查错误,我应该转到All Executions
集成服务目录。
如果我从 skybot 作业运行 Dtexec 命令,如果 skybot 作业失败,我如何获取错误日志?理想情况下,我希望获得以下格式的错误、错误代码、来源和描述详细信息:
ssis - SSIS 的 DtExec 32 位与 64 位混淆
这个问题以前曾以不同的方式提出过,但我找不到满意的答案。
我们是一家基于 MS 的商店,我们拥有大量 SQL 2016 数据库。我们还大量使用 SSIS 2016,在我所在的地区,我们专门使用目录 (SSISDB) 部署模型。
我们的许多 SSIS ETL 不仅仅是简单的加载或提取。它们是每晚批次的一部分。它们在调度程序上运行。一个典型的批次可能是这样的
- 运行 SSIS 项目 A
- 拿起 A 制作的一些文件
- 将它们 ftp 到某处并存档原件
- 拾取一些其他文件并将它们放在某个地方
- 然后运行 SSIS 项目 B 处理上述内容
- ETC
我们的批处理脚本通常是 python,我们使用 DtExec 来运行 ETls。我们的 python 脚本所在的调度程序机器与 SSISDB 或 SSIS 机器绝不是同一台机器。我们使用 DtExec 调用远程数据库服务器并调用 ETL。
调度程序机器本身不是数据库服务器,没有安装 SQL 2016,只安装了 SSMS 2016,它为我们提供了 32 位 DtExec。
但现在看来我也需要 64 位 DtExec,而且似乎只有在调度程序框中也安装集成服务时才能得到它。
这是一个问题,因为许可,而且我不希望另一个 SSIS 服务实例在那里运行。无论如何,它不会用于任何事情。我只想要像 DtExec 这样的 64 位客户端工具。
问题基本上是如何将 64 位 DtExec 安装到不是 SQL Server 甚至不是集成服务服务器的机器上。如何在简单的客户端计算机上获得 64 位 DtExec?
编辑:另一方面,我真的需要 64 位 DtExec 在 64 位服务器上以 64 位模式运行 SSIS 吗?当然那是一个远程调用,并且 DtExec 客户端在多少位下编译应该无关紧要吗?
感谢您阅读
卡斯滕