我正在尝试将数据从CSV文件上传到SQL Server,该文件大小为2GB,并且具有10000多个列。请让我知道如何在SQL Server中加载超过1024列的数据。
我尝试通过导入/导出向导进行操作,但该错误低于错误
错误0xc002f210:SQL准备任务1:执行查询“ CREATE TABLE [dbo]。[Test]([ID] varchar(50)...”)失败,并出现以下错误:
“创建表失败,因为表'测试'中的列'B19037Dm38'超过了1024列的最大值。”。
可能的失败原因:查询问题,“ ResultSet”属性设置不正确,参数设置不正确或连接建立不正确。
答案 0 :(得分:2)
您可以创建一个"wide table",但这有其自身的局限性。您可能将无法使用该向导。如果您希望SSIS包定期执行此操作(这就是该向导的内容),则必须退出Visual Studio并构建一个。
相反,我建议您将数据转换为具有更多表和更少表的更规范化的形式。或者,考虑您的数据根本无法很好地适合此模型的可能性,而是使用诸如Hadoop或其他NoSQL数据库之类的“大数据”平台。
答案 1 :(得分:0)
也许您需要转置数据并将列作为行,将行作为列。
或者像alroc所说,您可能希望将其拆分为多个表并在这些表之间共享密钥。 10个具有1024列的表,第一个表将具有主键,而所有其他表将具有该表的外键。
此外,并不是真的知道您的数据是什么样子,因此很难进一步评论。通过SSIS软件包进行标准化可能是您最好的选择。