【问题标题】:Import Excel file to MySQL将 Excel 文件导入 MySQL
【发布时间】:2013-12-18 23:30:22
【问题描述】:

我的网络应用程序出现一个问题,我快疯了。

我有一个 SCADA 系统,它每天将 excel 文件与来自一个热电厂的数据转储到我的服务器。

我有一个 PHP / Jquery 中的 Web 应用程序,它从 MySQL 数据库中读取这些数据并在图表和表格中显示这些数据。

但我必须手动将 excel 文件导入 MySQL。我想要做的是构建一个 PHP 脚本,它将执行以下操作:

用户尝试制作图表,如果数据不在 MySQL 上,它会询问他是否要从服务器中的 excel 文件中导入数据。然后将excel文件复制到MySQL临时表中并插入相应的表中。然后数据可以显示给用户,并将保存在 MySQL 数据库中。

一切正常,但我需要一种自动方式将这些数据从 excel 文件导入 MySQL 表。

提前感谢您的帮助

【问题讨论】:

  • 那么在众多能够读取 Excel 文件的 PHP 库中,你看过哪些,遇到过哪些问题呢?
  • 感谢 Mark 抽出宝贵时间阅读本文!我已经研究了一些..但其中大多数是将 excel 文件转换为 csv 所必需的。现在我正在调查phpexcel.codeplex.com。注意:excel 文件有个性化的扩展名。它们可以在 MS 访问中打开。
  • 除了我自己的 PHPExcel,我对@的回答中还列出了许多用于读取真实 Excel BIFF (.xls) 或 OfficeOpenXML (.xlsx) 文件(不仅仅是 csv 文件)的 PHP 库987654322@
  • 谢谢马克!我会试试 PHPExcel 和 SimpleExcel!
  • 马克,只有一个问题。我的文件是 dBase IV 而不是 excel。这个库可以吗?

标签: php mysql database excel


【解决方案1】:

嘿,实际上我在执行以下操作之前遇到了同样的问题: 在 php 中创建一个函数来执行查询以从目标导入文件 公共函数 InsertNewData($filename){ $dbtable = substr($filename, 0,-4);

    $sql = " LOAD DATA LOCAL INFILE 'http://your-ip-and-root/uploads/$filename'"
         . " INTO TABLE $dbtable FIELDS TERMINATED BY ';' LINES TERMINATED BY '\\n'";
    $error = " <font color = 'red'>error Load Data the file Please contact the DB Admin </font>";
    $connection = ResourceManager::getConnection();
    $resultado = 0;
    $connection->beginTransaction();
    try {
        $prepare = $connection->prepare($sql);                     
        $prepare->execute();    
        $connection->commit();
    } catch (Exception $e) {
       echo $error;          
        $connection->rollBack();

    }
    $connection = null;

} 然后你可以在上传excel文件完成后从你的页面调用这个函数

希望对您有所帮助。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2017-08-05
    • 2014-04-11
    • 2019-03-30
    • 2017-03-31
    • 2013-04-23
    • 2015-11-07
    • 2010-11-21
    相关资源
    最近更新 更多