【发布时间】:2015-03-19 09:02:33
【问题描述】:
我已经创建了我的第一个 SSIS 包。我有一个通过文件夹循环的每个容器。数据流有一个派生列任务和 4 个查找。当我在 Visual Studio (2013) 中运行包时,它从第一个文件开始并到达目的地,但它确实插入了数据,它只在状态栏中挂起文本“Validating OLE DB Destination 1”。
这些文件位于我的硬盘上,而目标数据库位于本地网络上。我使用的是系统管理员帐户,以确保用户具有足够的访问权限。
我也无法从 SSMS 查询目标数据库表。
任何人都知道可能是什么问题以及我该如何解决?
很抱歉提出了不具体的问题。在 ssis 的控制流中,我有一个 for each 循环容器,它包含一个数据流任务,用于导入容器循环的每个文件中的所有数据。连接到任务,是依赖于导入任务成功或失败的两个移动文件任务。奇怪的是我移动了一个文件,数据库中没有插入数据,并且 for each 循环在第一个循环之后挂起(文件夹包含 150 个文件)。虽然这个 ssis 进程挂起,但我无法使用 select * 查询数据库,没有错误,它只是说“正在执行查询”。
后者。它完成了第一轮(将文件移动到我的成功文件夹),然后在数据导入任务上以“仍在工作”图标停止。但是即使文件被移动,也不会插入数据。事务处理完所有文件后会先提交吗?
编辑:控制流和数据流的图像
【问题讨论】:
-
无法读取或写入表?您需要解决您的连接/安全问题。可以连接到 SQL Server 吗?你能看懂其他表格吗?
-
我使用的是系统管理员用户。所以阅读和写作应该不是问题。
-
在您的帖子中您说您无法查询目标数据库,所以很清楚!
-
没错,查询挂起是我相信进程必须对表进行某种锁定。但我拥有所有正确的访问权限。
-
你是说使用SSMS可以正常登录服务器,并且可以运行select没有错误消息但没有数据及时返回?您确实需要更具体并提供更多详细信息,以便我们获得线索。它是对表的简单选择,还是视图,还是带有连接的查询?
标签: sql-server ssis