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