0

我正在尝试使用导入和导出向导将 Excel 工作表中的大约 350 行数据添加到 SQL Server 2008 中。我遇到了一个我找不到解决方案的问题。我的 SQL 表中有一个名为 Link 的列,其中包含一个文本数据类型来保存 URL(因为它们有时会变得很长)。我的 Excel 工作表中有一个相应的链接列,其最长条目正好是 100 个字符。当我运行导入/导出向导时,我收到一系列与截断相关的错误,其中第一个错误指出“将列“链接”(60) 转换为列“链接”(168) 时数据转换失败。”

经过广泛的谷歌搜索,我一直无法找到解决方案。每个人提出的第一个建议是将最长的字段设置为 Excel 工作表中的第一行,这样 SQL 就会知道该字段需要多长时间。我已经这样做了,无济于事。有没有人有任何其他建议?

我只是不明白具有文本数据类型(最大长度刚刚超过十亿个字符)的 SQL 列如何需要截断一个 100 个字符长的单元格。

4

1 回答 1

1

我找到了解决我的问题的方法。首先,我让导入向导从 Excel 工作表创建一个新表,以查​​看它为链接列选择的数据类型。它选择了 nvarchar(255),所以我进入我的 SQL 表并将数据类型从 text 更改为 nvarchar(255)。它在第一次尝试时导入了所有内容,没有任何问题。我不确定为什么它不会将数据输入到文本列中(我还有其他几个工作得很好的文本列)。这可能与 URL 中存在的斜杠、冒号、& 符号等有关,但无论出于何种原因,它都不会将数据放入文本数据类型。那好吧。这就是生活。

于 2013-06-18T19:30:23.627 回答