是否有可能导入Excel表格作为数据库中的表格?

这是我第一次尝试这个,我不知道是否有可能。 我正在尝试开发一个应用程序,允许我将excel文件直接上传到数据库中。

如果不先把excel表格转换成CSV格式,可以上传excel数据吗? 数据库表包含与excel文件具有相同名称的字段和列。

有谁知道一个工具,可以为我做这个?

这当然是可能的。 您可能对JBoss Teiid项目感兴趣,它可以像访问表一样访问Excel电子表格。

因此,你可以很容易地从电子表格中形成的“虚拟”表中填充所有的值(我们称之为excelTable)到另一个表中(我们称之为targetTable):

INSERT INTO targetTable(column1,...) SELECT column1,... FROM excelTable; 

这个项目是开源的,所以如果它的使用不符合你的需求,你可以随时查看源代码,也许可以获得灵感,如何做到这一点。

最好的祝福

一月

对于Oracle,最简单的方法是使用sqlldr进行批量加载。

所以你需要一个应用程序来parsingxls/xlsx并为sqlldr写一个数据文件(可以是csv ,实际上是任何分隔的文本文件)。

如果你真的不想转换文件,你可以parsing它,并一次插入每一行,但这种方法处理大量的数据时是非常慢的。

Sqlldr常见问题

编辑sqlserver等效工具称为BCP

BCP工具

当然,您可以在没有附加任何软件的情况下使用这些工具,一旦准备好数据和/或控制文件,就可以通过命令行运行它们。