Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/ms-access/4.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Ms access MS Access-DTEXEC问题_Ms Access_Ssis - Fatal编程技术网

Ms access MS Access-DTEXEC问题

Ms access MS Access-DTEXEC问题,ms-access,ssis,Ms Access,Ssis,我有一个Access数据库,试图从中运行SSIS包。以下是我正在使用的代码: Dim wsh As Object Set wsh = VBA.CreateObject("WScript.Shell") Dim waitOnReturn As Boolean: waitOnReturn = True Dim windowStyle As Integer: windowStyle = 1 wsh.Run "dtexec /f "J:\SQL Server Programming\SSIS\MyPa

我有一个Access数据库,试图从中运行SSIS包。以下是我正在使用的代码:

Dim wsh As Object
Set wsh = VBA.CreateObject("WScript.Shell")
Dim waitOnReturn As Boolean: waitOnReturn = True
Dim windowStyle As Integer: windowStyle = 1

wsh.Run "dtexec /f "J:\SQL Server Programming\SSIS\MyPackage\MyPackage.dtsx"", windowStyle, waitOnReturn
但每当我运行Access数据库时,我都会得到一个编译错误:Expected:end-of-statement

有人能告诉我这个问题我做错了什么吗?我正在使用此帖子中的解决方案:


我在那篇文章中搜索了一下,没有找到一个对我的问题有帮助的答案。感谢您的帮助

您试图为wsh.Run的第一个参数构建的字符串中的引号有问题。我建议你单独算出那根弦

下面是Access Immediate窗口中的一个示例,该窗口创建一个有效字符串,其中包括一个带引号的文件路径:

Debug.Print“dtexec/f”J:\SQL Server编程\SSIS\MyPackage\MyPackage.dtsx
dtexec/f“J:\SQL Server编程\SSIS\MyPackage\MyPackage.dtsx”
假设这是您想要的字符串,您可以调整代码以将其用于
wsh.Run
。我会将字符串存储在一个变量中,并在调用
wsh.Run
之前打印它:

Dim strCommand As字符串
strCommand=“dtexec/f”J:\SQL Server编程\SSIS\MyPackage\MyPackage.dtsx“”
调试。打印strCommand
wsh.运行strCommand、windowStyle、waitOnReturn

您遇到了双引号不平衡的问题。我相信J上的公开报价需要避免。非常感谢!这帮了大忙。