Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/sql/71.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C# 如何在sql中读取超过400兆的excel_C#_Sql_Sql Server_Excel - Fatal编程技术网

C# 如何在sql中读取超过400兆的excel

C# 如何在sql中读取超过400兆的excel,c#,sql,sql-server,excel,C#,Sql,Sql Server,Excel,如何将Excel文件导入SQL Server?我有超过400兆的Excel文件,其中有两张表 我想知道是否有任何方法可以将其分块读取/解析为csv,然后导入。我需要知道它是否可以在不使用oledb、openxml或任何其他自动化工具的情况下完成 我用openxml检查了选项,并试图将其发送到SQL Server,但运气不好,我尝试了oledb,但oledb似乎有其自身的局限性 谢谢我建议看一看+-pandas有一种从excel读取pandas数据帧并写入sql数据库的方法。如果您安装了sql s

如何将Excel文件导入SQL Server?我有超过400兆的Excel文件,其中有两张表

我想知道是否有任何方法可以将其分块读取/解析为csv,然后导入。我需要知道它是否可以在不使用oledb、openxml或任何其他自动化工具的情况下完成

我用openxml检查了选项,并试图将其发送到SQL Server,但运气不好,我尝试了oledb,但oledb似乎有其自身的局限性


谢谢

我建议看一看+-pandas有一种从excel读取pandas数据帧并写入sql数据库的方法。

如果您安装了sql server集成服务或数据工具,您可以使用sql server向导导入和导出数据。在这里,您选择Excel文件作为源,数据库作为目标,然后可以定义表和列映射,包括必要的数据转换。您还可以定义导入前和导入后sql命令,如drop和recreate要将数据导入的表。。。或者干脆清空桌子

一旦定义了整个导入,就可以将所谓的SSIS Sql Server集成服务包保存到数据库或解决方案中嵌套的文件中。该*.dtsx文件可以使用Sql Server集成服务包打开 用于自动运行导入的执行实用程序

因此,您可以在构建过程中的某个时间运行导入,甚至可以在后台过程中启动导入。只需确保将excel文件放置在已定义导入源的位置


如果您有Visual Studio 12及更高版本,则应自动安装Sql Server数据工具。有了这些文件,您可以在Visual Studio中随时打开*.dtsx文件并修改导入行为。我最近才复制了这样一个.dtsx文件,因为我需要将一个excel文件导入4个不同的暂存数据库,所以对于每个数据库,我只修改了.dtsx文件的数据库连接凭据的相应副本。

400兆excel文件是什么?你是说MB吗?你可以在Excel中打开它并将其保存为CSV。如果这还不够,那么您需要向我们提供更多的信息,而不是试图将其发送到sql,但没有得到足够的运气,这告诉我们什么都没有。如果不使用。。。任何其他类型的自动化工具,你认为c是什么?MEG=MB,:young当我打开它时,它会很糟糕,打开它需要很长时间。我曾尝试使用oledb连接阅读此内容,但在使用oledb open命令打开excel文件时失败。此问题标记为C。我怀疑是否需要Python解决方案。SQL server reporting services是其中一个选项,但我有轻型版本的sqllocaldb。是否有任何方法可以将其像平面文件一样导入。我不认为您需要可以作为平面文件来做。。。excel单元格可以保存无法轻松转换为CSV的数据,对于400MB的文件,您可能不希望在导入文件之前手动转换数据。我建议您下载并安装sql server express和management studio,使用它们创建并连接到数据库,然后在sql server management studio中右键单击数据库并选择Task=>Import Data。。。然后可以导入excel文件。您应该能够从代码中访问这些内容,以便将所有内容复制到localDB。。。没有在localdb上做过很多工作:-如果您想保持安装规模较小,您应该能够使用Sql Server Compact Edition,因为它可以用作集成服务的目标