如何将CSV文件中的数据导入MySQL数据库

如何将CSV文件中的数据导入MySQL数据库,mysql,jsp,servlets,Mysql,Jsp,Servlets,我必须使用JSP/Servlet将数据从CSV文件导入MySQL数据库。搜索时我得到了!据说我们可以在hibernates createSQLQuery中使用MySQL命令“加载数据填充…” 但在我的例子中,需要上传数据的表分布在多个数据库服务器上。我会得到一个API,通过它我可以连接到数据库 我的问题是,我应该将CSV文件保存在哪里——在我的tomcat服务器上,或者在我将执行“加载数据填充…”命令的系统上。CSV文件应该保存在运行MySQL DB的服务器上。还应设置访问权限,以允许运行MyS

我必须使用JSP/Servlet将数据从CSV文件导入MySQL数据库。搜索时我得到了!据说我们可以在hibernates createSQLQuery中使用MySQL命令“加载数据填充…”

但在我的例子中,需要上传数据的表分布在多个数据库服务器上。我会得到一个API,通过它我可以连接到数据库


我的问题是,我应该将CSV文件保存在哪里——在我的tomcat服务器上,或者在我将执行“加载数据填充…”命令的系统上。

CSV文件应该保存在运行MySQL DB的服务器上。还应设置访问权限,以允许运行MySQL服务器的用户访问此文件


您可能也会发现它很有用。

CSV文件应该保存在运行MySQL DB的服务器上。还应设置访问权限,以允许运行MySQL服务器的用户访问此文件


您可能也会发现这很有用。

谢谢您的快速回复。但我只能得到与数据库的连接。我将无法在该系统上保存该文件。有没有办法直接将CSV数据加载到MySQL数据库中?不幸的是,没有(至少我不知道)。您必须在客户端解析CSV,或者编写一个存储过程,在DB级别解析传入的文本。我建议在客户端解析,MySQL服务器在字符串操作方面似乎不是很快和/或高效。如果有人知道另一种方法,我很乐意学习。更新:MySQL文档说可以在加载数据后指定
LOCAL
关键字-它将强制客户端从客户端文件系统读取文件,并将其传递到服务器(它将保存在server/tmp或其他临时目录中)并使用常用的
加载数据
语句读取。因此,您应该将数据本地填充“文件名”加载到…
谢谢您的回复。我会检查一下,然后告诉你结果。谢谢@Sergey建议在“加载数据”中使用“本地”关键字。谢谢你的快速回复。但我只能得到与数据库的连接。我将无法在该系统上保存该文件。有没有办法直接将CSV数据加载到MySQL数据库中?不幸的是,没有(至少我不知道)。您必须在客户端解析CSV,或者编写一个存储过程,在DB级别解析传入的文本。我建议在客户端解析,MySQL服务器在字符串操作方面似乎不是很快和/或高效。如果有人知道另一种方法,我很乐意学习。更新:MySQL文档说可以在加载数据后指定
LOCAL
关键字-它将强制客户端从客户端文件系统读取文件,并将其传递到服务器(它将保存在server/tmp或其他临时目录中)并使用常用的
加载数据
语句读取。因此,您应该将数据本地填充“文件名”加载到…
谢谢您的回复。我会检查一下,然后告诉你结果。谢谢@Sergey,你建议在“加载数据”中使用“本地”关键字,效果很好。要将问题标记为已回答,只需设置一个可接受的答案,不要像在老式讨论论坛中那样在标题中添加“已解决”。这毫无意义。堆栈溢出已经是一个问答网站。已接受答案的问题在列表中的显示方式已经不同,可以通过
accepted:1
进行搜索。要将问题标记为已回答,只需设置一个已接受的答案,不要像在老式的讨论论坛中那样将“已解决”放在标题中。这毫无意义。堆栈溢出已经是一个问答网站。已接受答案的问题在列表中的显示方式有所不同,可通过
accepted:1
进行搜索。