在SQL导入导出向导中为excel解决255列限制

我正在尝试导入一个Excel表格到SQL数据库。 这张表有700多列,但我明白有255列的限制。 在上传到数据库的过程中,是否有解决所有列的问题? 我selectexcel版本时select了Excel 2007。

可悲的是,我在网上看到的资源并不是一个简单的方法来做到这一点。 我尝试了上面的select“Excel 2007”的解决scheme,但没有为我工作。 人们会期望Excel和SQL Server具有更紧密的集成。

但是,通过转换为.txt文件,然后通过一些截断错误,我设法加载我的数据集。 以下是我的用例和过程的一些细节。

我有一个相当小的数据集按行(约200行),但有一大列(+500列)。 我首先将Excel文件转换为文本,“制表符分隔”文件(即* .txt)。 在通过SQL Server导入和导出向导加载时,我遇到了两个截断错误:一个,一些列名大于128个字符和两个,其中缺省数据types为DT_STR的某些行的值的长度较大比50(默认输出列宽)。 对于第一个错误,我只是将列重命名为更短。 对于第二个错误,我手动运行一个长度的计数,并find每个列的值的最大长度,这使我可以隔离哪些列会引发错误。 我遵循以下步骤:

1)在SQL Server导入和导出向导的“常规”选项卡中,我select了“平面文件源”并接受了所有正常的默认值。

2)在第二个选项卡('列')中,确保列分隔符被选为Tab。 我更喜欢CSV格式,因为在我的数据集中有一些带有逗号的重文本。

3)如果映射出来了,在第三个标签('高级')中,你应该得到一个所有列的清单,其自然的默认值。 如上所述,我隔离哪些列的值超出了DT_STR(50)的默认值,并将其更改为DT_TEXT。

4)其余步骤只是指定目的地,以及是否要保存SSIS步骤。

Excel 97-2003的255列的限制。

selectExcel 2007作为Excel版本,select它,您应该能够导入最多16,000列。

或者尝试将Excel数据文件保存为文本分隔文件,然后select“平面文件”。