【发布时间】:2019-01-09 16:01:42
【问题描述】:
- 在 SQL Server 2008 上,我执行了
Script to... CREATE to...来捕获表定义。该表主要是nchar列 - 在新服务器上,我运行该脚本来重新创建表
- 在原始服务器上我做了
SELECT *...,然后是Save to...CSV - 在我在 CSV 上使用
Import Data...的新服务器上
导入失败,出现许多与截断和转换相关的错误。这很有趣,如果它们具有相同的定义,它应该是有效的?
我已经尝试了很多方法 - 告诉它忽略这些错误会将错误数量减少到两个,但仍然无法导入。告诉它导入新表而不是现有的已创建表失败并出现相同的错误 (!!!)。
我在这里遗漏了什么明显的东西吗?
【问题讨论】:
-
为什么不节省大量步骤并使用内置的数据导出/导入工具?
-
首先,试试@SeanLange 的提议。此外,检查服务器和数据库的 COLLATION 是否相同。否则你会遇到一些与 SP、视图等有关的问题
-
在阅读 Erland 对 ETL here 的讨论后,将他的主页添加为书签。 BCP 会更安全、更快且可重复。
-
@Maury ,导出表中的任何字段是否包含长度超过 255 的文本字段?如果是这样,当导出数据并且您想要导入另一台服务器时,导入过程中文本字段的最大值可能为 255,任何超过 255 的值都会产生错误。
-
@EdMendez - 是的,但数据库在字段定义方面应该是相同的,所以如果有其中之一,它也应该在目的地。我会尝试 SMor 的建议,并在有机会时报告。
标签: sql-server import