Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/database/9.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
Java 是否可以将excel工作表作为表导入数据库?_Java_Database_Excel - Fatal编程技术网

Java 是否可以将excel工作表作为表导入数据库?

Java 是否可以将excel工作表作为表导入数据库?,java,database,excel,Java,Database,Excel,这是我第一次尝试,我不知道这是否可能。我正在尝试开发一个应用程序,允许我将excel文件直接上传到数据库中 是否可以在不首先将excel工作表转换为CSV格式的情况下上载excel数据?数据库表包含与excel文件同名的字段和列 有人知道有什么工具可以帮我做到这一点吗?对于Oracle,最简单的方法是使用sqlldr进行批量加载 因此,您需要一个能够解析xls/xlsx并为sqlldr编写数据文件的应用程序(可以是csv,实际上是任何分隔的文本文件) 如果您真的不想转换文件,您可以解析它并一次插

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

是否可以在不首先将excel工作表转换为CSV格式的情况下上载excel数据?数据库表包含与excel文件同名的字段和列


有人知道有什么工具可以帮我做到这一点吗?

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

因此,您需要一个能够解析
xls/xlsx
并为
sqlldr
编写数据文件的应用程序(可以是
csv
,实际上是任何分隔的文本文件)

如果您真的不想转换文件,您可以解析它并一次插入每一行,但这种方法在处理大量数据时速度非常慢

EDIT:用于
sqlserver
的等效工具称为
BCP


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

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

鉴于此,您可以轻松地将电子表格(我们称之为excelTable)形成的“虚拟”表中的所有值填入另一个表(我们称之为targetTable):

这个项目是开源的,所以如果它的使用不符合你的需要,你可以随时查看源代码,也许会得到灵感,你可以如何做这些事情

致意


Jan

到什么数据库?所有的BI工具都与Excel文件兼容。如果你想直接映射列,如果我们可以考虑访问数据库,那么有一个MS访问的解决方案。如果你想要一个合适的数据库,你需要解析它。我想要一个合适的数据库,比如sql或oracle。所以我必须通过脚本上传excel。。
INSERT INTO targetTable(column1,...) SELECT column1,... FROM excelTable;