SQL Server数据导入向导中的数据types转换

我在做什么

我正在使用SQL Server 2012中的“导入和导出向导”从复杂的电子表格中的一个选项卡导入数据。 该标签有很多数据。

我想将标签中的原始数据导入到数据库中的临时表中,并从那里运行SQL脚本来转换(标准化)数据并将其加载到其最终模式。

在映射对话框中,我已将所有目标列设置为NVARCHAR(MAX)NULL(或者NTEXT NULL)。

映射对话框的屏幕截图,显示所有列设置为nvarchar max。

我很高兴将所有文本导入,一旦数据加载到临时表中,我将处理数据types转换和规范化。

问题

该向导抱怨说某些列types无法转换。 这似乎是猜测源的数据types,并拒绝转换它认为是双打的列。

截图显示向导抱怨双重类型。

错误消息的屏幕截图。

我根本不在乎它认为数据源是什么数据types。 我希望它把所有东西都当作文字来对待。 但是,似乎没有办法改变向导对源列types的猜测,或者强制它导入数据。

该向导不会让我运行包。

问题边界

我只想解决问题的提取部分,即如何从电子表格中获取数据到临时表中。 一旦解压出来,我用它做什么是一个单独的问题,我很高兴在中间级别处于NVARCHAR或NTEXT中。

期望的解决scheme

我想从电子表格中获取数据到一个临时表格,从那里我可以执行其他工作。 我很高兴将临时表中的所有内容都作为string数据。 我根本不关心向导认为它正在导入的数据types,我已经在目标表中指定了我想要的输出types。

我build议先使用SSIS代替导入/导出SQL Server向导。 您还可以将源上的单元格格式更改为数字而不是文本。