SQL Server 导入和导出向导错误

6

我正在尝试从Access数据库将超过82k行的表导入到SQL Server 2008。

使用SQL Server导入和导出向导,在输入约78k条记录时出现错误。

以下是错误信息:

Error 0xc0208265: Data Flow Task 1:
Failed to retrieve long data for column "members_notes".

Error 0xc020901c: Data Flow Task 1: 
There was an error with output column "members_notes" (41) on output "OLE DB Source Output" (11).
The column status returned was: "DBSTATUS_UNAVAILABLE".

Error 0xc0209029: Data Flow Task 1: 
SSIS Error Code DTS_E_INDUCEDTRANSFORMFAILUREONERROR.
The "output column "members_notes" (41)" failed because error code 0xC0209071 occurred, and the error row disposition on "output column "members_notes" (41)" specifies failure on error.

Error 0xc0047038: Data Flow Task 1:
SSIS Error Code DTS_E_PRIMEOUTPUTFAILED.
The PrimeOutput method on component "Source - Query" (1) returned error code 0xC0209029. 
The component returned a failure code when the pipeline engine called PrimeOutput().
The meaning of the failure code is defined by the component, but the error is fatal and the pipeline stopped executing.
There may be error messages posted before this with more information about the failure.

在访问数据库中,members_notes列是一个备忘录字段。在将这些数据传输到的SQL Server表中,我已将该字段定义为nvarchar(MAX)。

我已搜索此错误消息并找到一些文章建议缩小我的SQL数据库并清除执行导出/导入的计算机上的临时文件,但都没有起作用。

有其他人遇到过这个问题吗?


你能修复引用块,使其成为代码而不是混乱的吗? - user195488
正如您所指出的,您已清理了临时文件。这是一个[错误报告][1],但已在SQL Server Integration Services 2008中修复。 [1]: http://connect.microsoft.com/SQLServer/feedback/ViewFeedback.aspx?FeedbackID=346675 - user195488
你尝试过二分法解决问题吗?例如将数据分成1000条记录(或更少)的包,甚至尝试只导入一行数据? - Migol
3个回答

4
我开始在Access数据库中搜索备注字段。最后一行的备注字段包含“#Error”。当我点击该字段时,出现以下消息:
“Microsoft Jet数据库引擎停止了进程,因为您和另一个用户正在尝试同时更改相同的数据”
我对Access数据库运行了压缩和修复操作。这将在该特定记录的备注字段中放置了一堆#字符。
然后,我再次尝试了SQL Server导入和导出向导。这次它完美地工作了!

你的备忘指针已经损坏。压缩清理了足够的内容,以至于导入似乎可以正常工作。 - David-W-Fenton

1

我没有足够的声望来点赞你的回答dpii,但它绝对对我有用。这个问题让我很头疼,一个简单的压缩和修复就解决了它。同时要注意,在你上传文件时(或在Access中打开文件时),其他用户同时使用该文件,否则可能会遇到此错误。


0

看起来这是SQL Server 2005中的一个错误,应该已经修复了,请参见此处

编辑:根据您下面的评论,它在2008 SP1 CU5中已经修复。


我正在运行 SQL Server 2008 SP1,所以我不确定这个 bug 是否从 2005 年一直存在。我正在安装 2008 SP1 CU5,以查看它是否解决了这个问题,并会回报结果。谢谢... - Paul
在安装了2008 SP1 CU5之后,我将数据复制到SQL服务器和从中运行更新的开发框中,我收到了相同的错误消息。我看过一些文章,说这个错误信息可能与许多问题有关。这让我想到它可能与2005问题无关。我想知道是否有办法获取更多关于这个特定情况的信息? - Paul

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接