Excel2007中的数据导入到sql2005中,其中最后一个字段为URL,保存的是网页地址,有的网址非常长,所以我在数据库里面把URL字段设置为nText类型,已经是最大类型了,可是在导入过程中海是出现了文本截断错误,在网上查了一下说是认为插入8条超过255以上字符的数据就可以了,试了一下还是截断错误,错误如下,请教这个问题到底怎么解决呢?
消息
• 错误 0xc020901c: 数据流任务: 输出“OLE DB 源输出”(11) 上的 输出列“URL”(29) 出错。返回的列状态是:“文本被截断,或者一个或多个字符在目标代码页中没有匹配项。”。
 (SQL Server 导入和导出向导)
 
• 错误 0xc020902a: 数据流任务: “输出列“URL”(29)”由于发生截断而失败,而且针对“输出列“URL”(29)”的截断行处理设置指定截断时出错。在指定组件的指定对象上出现截断错误。
 (SQL Server 导入和导出向导)
 
• 错误 0xc0047038: 数据流任务: SSIS 错误代码 DTS_E_PRIMEOUTPUTFAILED。组件“源 - access_log#20060801#decode$”(1) 的 PrimeOutput 方法返回了错误代码 0xC020902A。管道引擎调用 PrimeOutput() 时该组件返回了一个失败代码。虽然该失败代码只与该组件有关,但这个错误是致命的,管道已停止执行。可能在此之前已经发出错误消息,提供了有关失败的详细信息。
 (SQL Server 导入和导出向导)
 
• 错误 0xc0047021: 数据流任务: SSIS 错误代码 DTS_E_THREADFAILED。 线程“SourceThread0”已退出,错误代码为 0xC0047038。可能在此之前已经发出错误消息,提供了有关线程退出原因的详细信息。
 (SQL Server 导入和导出向导)
 
• 错误 0xc0047039: 数据流任务: SSIS 错误代码 DTS_E_THREADCANCELLED。线程“WorkThread0”接收到关闭信号,正在终止。原因是用户请求了关闭,或另一线程中的错误导致该管道关闭。可能在此之前已经发出错误消息,提供了有关取消线程的原因的详细信息。
 (SQL Server 导入和导出向导)

解决方案 »

  1.   

    教你个方法 直接在EXCEL中写SQL 代码,这样做很容易!举个例子
    ="insert into 表名(字段名) values('"&EXCEL单元格名&"')"
      

  2.   

    如何设置excel公式,例子:  excel表格中有A、B、C三列数据,希望导入到数据库users表中,对应的字段分别是name,sex,age 。  在你的excel表格中增加一列,利用excel的公式自动生成sql语句,方法如下:  1、增加一列(D列)  2、在第一行的D列,就是D1中输入公式: =CONCATENATE("insert into users (name,sex,age) values ('",A1,"','",B1,"','",C1,"');")  3、此时D1已经生成了如下的sql语句: insert into users (name,sex,age) values ('ls','女','24');  4、将D1的公式复制到所有行的D列  5、此时D列已经生成了所有的sql语句  6、把D列复制到一个纯文本文件中。