【发布时间】:2017-08-23 16:09:44
【问题描述】:
我有一个 Excel 文件,我每周将其导入表格中。
我正在使用 Excel 2010 和 SSMS 2012。本周导入失败,我无法确定原因。我能够成功地将数据导入到新表中。新表的表定义与我的旧表匹配,所以这似乎不是问题。下面是我收到的错误的屏幕截图。我检查了 PO 标题文本字段,没有任何内容超过我拥有的 varchar(255) 的数据类型。
此外,我对数据进行了排序,只是为了查看是否是某个行导致了问题,并且确实插入了更多数据,但我仍然收到错误,并且它与原始导入尝试不在同一行。我什至再次删除并创建了原始表,但仍然收到错误消息。
【问题讨论】:
-
你是如何检查列的长度的?如果不截断,它可能是它给你的另一个选择,你有一些奇怪的字符吗?是否可以尝试将目标表中的列更改为
NVARCHAR(MAX)? -
如果是这种情况,为什么新表在使用导入向导时会给出列 varchar(255)?我还在 Excel 中对该列进行了 len(),但没有收到任何超过 100 个字符的内容。
-
@tsqln00b 在 Excel 文件中按文本列降序对行进行简单测试,保存并运行。如果它有效,则意味着在您的前 8 条记录中只有短文本并且类型识别失败。
-
那行得通。我以前从来没有这样做过,但从现在开始我会这样做。我讨厌 Excel!
-
@tsqln00b 我曾经遇到过完全相同的情况,从那时起我知道:)
标签: sql-server sql-server-2012 excel-2010 sql-import-wizard