【发布时间】:2013-09-24 20:32:09
【问题描述】:
我正在尝试使用 SQL Server management studio 2012 导入/导出向导将包含两列(sku、描述)的 csv 文件导入 SQL Server 2008。因为描述列肯定有超过 8000 个字符的行,所以我在选择 csv 数据源时进入高级选项卡,然后单击描述列,然后单击“建议类型”。然后它为 OutPutColumnWidth 属性输入 16718。显然那里有一段很长的描述。
它生成的sql是:
CREATE TABLE [dbo].[mag-prod-descriptions1] (
[sku] varchar(7),
[descrip] varchar(16718)
)
但是,当我执行导入时,我收到错误“无法连接源组件。错误 0xc0204016: SSIS.Pipeline: The "Source - mag-prod-descriptions1_csv.Outputs[Flat File Source Output].Columns[Column 1]" 的长度无效。长度必须在 0 到 8000 之间。"
如果我将 OutputColumnWidth 属性更改为 8000,则会收到一条错误消息,指出该列已被截断。我赢不了。
如何获得允许我导入超过 8000 个字符的单元格的东西?
【问题讨论】:
-
我也遇到过类似的情况,仅在 Oracle 中,我记得必须更改一些设置以允许更大的字段,然后进行导入。另一种选择是说截断是可以的,但我也不记得是怎么做到的。
-
我曾尝试将截断错误设置更改为忽略而不是失败,但仍然失败。 :-(
标签: sql-server import ssms sqldatatypes truncation