通过PHPExcel将Excel表文件中数据导入数据库
1 <?php
2 header("Content-Type:text/html;charset=utf-8");
3 include_once 'PHPExcel.php';
4 include_once 'PHPExcel/IOFactory.php';
5
6 set_time_limit(600);
7 //文件的目录
8 $dir = './files/';
9 $array = scandir($dir);//列出指定路径中的文件和目录
10 $count = 3832;
11 $p = $_GET['p'];
12 if($p <= 1) {
13 $p = 1;
14 }
15 $countP = $p + 5;
16 $countP = $countP > $count ? $count : $countP;
17
18 for($i = $p; $i<$countP; $i++) {
19 $reader = PHPExcel_IOFactory::createReader('Excel5');
20 // $resource = $dir . '3815.xls';
21 $resource = $dir . $i . '.xls';
22 //echo $resource;
23 $PHPExcel = $reader->load($resource); // 文件名称
24 $sheet = $PHPExcel->getSheetByName('低压线路');//文件下的一个sheet表
25 $highestRow = $sheet->getHighestRow(); // 取得总行数
26 //echo $highestRow.'<br>';
27 //连接数据库
28 $dsn = "mysql:host=localhost;dbname=data_info";
29 $username = "root";
30 $passwd = "";
31 $pdo = new PDO($dsn, $username, $passwd);
32 $pdo->query("SET NAMES utf8");
33
34 for ($j = 4; $j <= $highestRow; $j++) {
35 //取出数据
36 //getCellByColumnAndRow(参数1,参数2)->getValue(); ————获取某行某列的数据值
37 //其中: 参数1:列的位置 参数2: 行的位置
38 $name = $sheet->getCellByColumnAndRow(3, $j)->getValue();
39 $id = $sheet->getCellByColumnAndRow(7, $j)->getValue();
40 $byq = $sheet->getCellByColumnAndRow(8, $j)->getValue();
41 $bz = $sheet->getCellByColumnAndRow(11, $j)->getValue();
42 $time = $sheet->getCellByColumnAndRow(13, $j)->getValue();
43 if ($name) {
44 $sql = "insert into low_line_copy(circuit_name, trans_id, trans_name, maintain_group, `time`) values
45 ('" . $name . "','" . $id . "','" . $byq . "','" . $bz . "','" . $time . "'); \n";
46 echo $sql . '<br>';
47 //指定数据存到文件中
48 file_put_contents('./a.txt', $i . ',' . $sql . "\r\n", FILE_APPEND);
49 }
50 //$pdo->exec($sql);
51 }
52 unset($reader);
53 }
54 ?>
55 <script>
56 //每页执行5条,之后跳转
57 location.href = "1.php?p=<?=($i);?>";
58 </script>
通过PHPExcel将Excel表文件中数据导入数据库的更多相关文章
- SpringMVC 实现POI读取Excle文件中数据导入数据库(上传)、导出数据库中数据到Excle文件中(下载)
读取Excale表返回一个集合: package com.shiliu.game.utils; import java.io.File; import java.io.FileInputStream; ...
- 将Excel中数据导入数据库(一)
在工作中经常要将Excel中数据导入数据库,这里介绍一种方法. 假如Excel中的数据如下: 数据库建表如下: 其中Id为自增字段: Excel中数据导入数据库帮助类如下: using System; ...
- 将Excel中数据导入数据库(三)
上篇文章将Excel中数据导入数据库时,将从Excel读入的数据均转换成了数据库相应字段的类型,其实这是没有必要的,因为对于数据库各种类型的插入,均可以字符串格式插入.比如表WQ_SWMSAR_A字段 ...
- 将Excel中数据导入数据库(二)
在上篇文章中介绍到将Excel中数据导入到数据库中,但上篇文章例子只出现了nvachar类型,且数据量很小.今天碰到将Excel中数据导入数据库中的Excel有6419行,其中每行均有48个字段,有i ...
- excel文档中数据导入sql server注意事项
进来经常需要对一些基础数据进行更新,而业务方提供的数据源往往都是excel,所以经常需要将excel中数据导入到 数据库临时表,然后再进行处理. 在导入过程中,发现有些数据比如手机号码,如果默认导入, ...
- SQL语句:把Excel文件中数据导入SQL数据库中的方法
1.从Excel文件中,导入数据到SQL数据库情况一.如果接受数据导入的表不存在 select * into jd$ from OPENROWSET('MICROSOFT.JET.OLEDB.4.0' ...
- SpringBoot通过Ajax批量将excel中数据导入数据库
Spring Boot通过Ajax上传Excel并将数据批量读取到数据库中 适合场景:需要通过excel表格批量向数据库中导入信息 操作流程 [1]前端上传一个excel表格 [2] 后端接收这个ex ...
- 怎么把excel表格内的数据导入数据库?
第一种方法: 思路:想要把excel表格内的数据直接导入数据库不是那么容易,可以把excel表格另存为.csv格式的文档(特点:内容以逗号分割):然后通过一系列的文档操作函数处理成为一个二维数组,然后 ...
- SQL语句完成Excel数据导入数据库表中流程方法及注意事项
第一步:先查看数据库是否安装AccessDatabaseEngine_X64.exe, 如下图查看: 如果未安装先下载脚本之家下载地址 https://www.jb51.net/softs/29150 ...
随机推荐
- Abductive Commonsense Reasoning —— 溯因推理
Abductive Commonsense Reasoning(溯因推理) 介绍 溯因推理是对不完全观察情境的最合理解释或假设的推论. 上图给出的是一个简明扼要的例子: 给定不同时间节点上的情境观测值 ...
- Kerberos与票据的爱情故事
0x01.Kerberos认证原理 Kerberos是一种认证机制.目的是通过密钥系统为客户端/服务器应用程序提供强大的可信任的第三方认证服务: 保护服务器防止错误的用户使用,同时保护它的用户使用正确 ...
- 如何做好智能家居工业物联网串口转WiFi/4G/以太网无线AP方案的物联网WiFi模块选型
2020年一场突如其来的灾难袭来,各大经济市场在不同程度被按下了"暂停键".物联网控制作为新兴行业优势凸显出来,其无接触式的交互方式,远程控制,智能控制车间,给人民带来安全.智能的 ...
- plc模拟量采集模块的作用
在工业控制中,某些输入量(如压力.温度.流量.转速等)是连续变化的模拟量,某些执行机构(如伺服电动机.调节阀.记录仪等)要求PLC输出模拟信号,而PLC的CPU只能处理数字量.模拟量首先被传感器和变送 ...
- Python爬虫之线程池
详情点我跳转 关注公众号"轻松学编程"了解更多. 一.为什么要使用线程池? 对于任务数量不断增加的程序,每有一个任务就生成一个线程,最终会导致线程数量的失控,例如,整站爬虫,假设初 ...
- Flask常用API
Flask常用API 1.os 拼接路径:pathname = os.path.join(basepath, filename) 获得文件名后缀:suffix = os.path.splitext ...
- (五)F5和CTRL+F5两种刷新的区别
一.刷新原理不同: F5触发的HTTP请求的请求头中通常包含了If-Modified-Since 或 If-None-Match字段,或者两者兼有. CTRL+F5触发的HTTP请求的请求头中没有上面 ...
- Java中的有关日期的对象
目录 Date SimpleDateFormat Calendar 常用方法 Java8中用于计算时差的类 1. Period(以年月日来表示日期差) 2. Duration(以秒与毫秒来表示时间差) ...
- python代码实现抢票助手
一. 代码使用Python+Splinter开发,Splinter是一个使用Python开发的开源Web应用测试工具,它可以帮你实现自动浏览站点和与其进行交互. 二. 安装好Python 3或2都可以 ...
- String字符串加号的作用与基本数据类型加号的作用的区别
1 public static void main(String args[] ){ 2 String Str="hellow"; 3 int num=110; 4 char c= ...