如何将Excel文件转换为MySQL数据库?

6

我的老板让我为一个已有的Excel文件创建一个MySQL数据库。我想知道是否有任何方法可以将Excel文件转换或导入?我在谷歌上搜索了一下,但没找到有用的信息。感谢任何回复……谢谢。


这似乎与8031193非常相似。 - arober11
8个回答

7
  1. 保存为CSV格式
  2. 使用COPY SQL语句
  3. 获利

6
+1 的利润永远是第四步,第三步应该是什么? ;) 很好的回答。 - Byron Whitlock

4
如果您已经运行了支持PHP的Web服务器,我强烈推荐phpMyAdmin
  1. 配置它连接到MySQL
  2. 创建数据库和表
  3. 点击导入选项卡,您可以导入CSV文件。
如果这只是一次简单的导入,那么这可能不值得一试。然而,如果您将来需要使用MySQL,安装和配置phpMyAdmin绝对是值得投入时间的。

谢谢。我已经安装了phpmyadmin...我会试一下。 - FlyingCat

4

PHPMyAdmin可以导入CSV文件,以及Excel文件(虽然我从未尝试过)

首先,您需要创建您的数据库,并添加一个表。该表中必须有与您的Excel文档中列数相同的字段(是的,我知道您知道)

然后,在phpmyadmin中选择该数据库和表,并使用“导入”选项卡。


2

最简单的方法是这样的:

将值插入到表格中(列1,列2,列3...列n)的方法如下:

insert into Table (col 1,col 2,col 3...col n) values (val1,...valn);

基本上:

在您的Excel中进行两个循环:

 dim i,j
 dim sqlString,sqlBase
 sqlString=""
 sqlBase="insert into yourTable (col1....coln) values ("
 for i=1 to myRowVariable
   sqlString=""
   for j=1 to myColVariable
     if j=myColVariable then
     sqlString=sqlString & Cells(i,j).value & ");"
     else if j=1 then
     sqlString=sqlBase & sqlString & ","
     else
     sqlString=sqlString & Cells(i,j).value & ","
     end if
 Next j
 Next i 
 'write sqlString into a txt or something 

这将以Bootstrap为基础,快速且直观地实现您所需的功能。

2
我写了一个工具,可以让你对CSV文件进行SQL查询。输出结果也会保存为CSV格式。也许你会觉得它很有用。 http://whitlock.ath.cx/EasyCSV/

谢谢,但链接已经失效了... :( - FlyingCat
@Jerry 现在可以尝试一下了。你挑选的时机真是太好了,我恰好在重启服务器的时候被你点到了! :D - Byron Whitlock

2
从Excel中将表格导出为文本文件。在MySQL中,使用LOAD DATA INFILE命令导入文本文件。

1
你可以使用ODBC驱动程序将Excel文件“挂载”为数据库,然后对其进行SQL查询。然后,您只需要一个简单的迁移工具,将表复制到另一个数据库系统即可。
我相信甚至有一种类似于mysqldump的工具可用于ODBC驱动的数据库。

1
一个简单的解决方案是使用Excel中的连接函数将数据转换为一系列插入语句,然后将它们复制粘贴到MySQL查询分析器或您正在使用的其他客户端中。

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接