首页 > 解决方案 > 导入 psv 文件时出现 SQL 导入向导错误

问题描述

我正在尝试将 psv(管道分隔的 csv)导入 Microsoft SQL Server 2008R2 Express 数据库表。

psv中只有两个字段,每个字段1000多个字符。

在导入向导中,我有以下设置:

在此处输入图像描述

在此处输入图像描述

在此处输入图像描述

双重检查映射:

在此处输入图像描述

注意我在失败/截断时设置了忽略选项: 在此处输入图像描述

往常一样,我收到一个错误:

错误 0xc02020a1:数据流任务 1:数据转换失败。列“Comm”的数据转换返回状态值 4 和状态文本“文本被截断或一个或多个字符在目标代码页中不匹配。”。(SQL Server 导入和导出向导)

在此处输入图像描述

更新:

因此,按照@Marc 的建议,虽然非常/非常不情愿,但我花了 3 个小时左右终于在我的计算机上安装了 SQL2014,并希望导入 psv。正如预期的那样,错误再次出现:

在此处输入图像描述

我真的不明白为什么像微软这样的公司没有对他们的产品进行彻底的 QAT?!

标签: sql-server-2014

解决方案


被微软折腾了一上午,终于把这个任务搞定了,以后的读者可以按照下面的步骤导入一个csv/psv数据源到你的sql中:

  1. 将 CSV/PSV 导入 Access 数据库。注意,必须保存为 mdb 类型(是的,20 世纪的类型),您可能想在这里阅读我的故事:如何将 psv 数据导入 Microsoft Access

  2. 在您的 SQL(我的是 2014)中,启动导入向导并选择数据源类型 (ACCESS) 和文件。为什么一定要使用mdb类型的access数据库?在这里,您将看到 SQL 2014 中没有用于 accdb 类型的访问数据库的选项。

在此处输入图像描述

  1. 不要忘记选择正确的目标(是的,即使您通过右键单击目标数据库并选择导入来启动向导),您要选择最后一个选项:SQL Native Client 11.0。这将显示 SQL2014 和数据库。

在此处输入图像描述

现在可以按预期完成导入。

感谢这个 SQL 中出色的设计逻辑(2014?不,与 2008 相比基本上没有变化),多么卑微的期望和要求!我需要 4-5 小时才能完成。


推荐阅读