MySQL是一个常用于网站开发的关系型数据库管理系统,而Excel则是一个常用的表格处理软件,两者都有着广泛的应用。本文将介绍一个简易的教程,教你如何将Excel文件存入MySQL数据库中,方便数据管理和查询。
1. 准备工作
在开始之前,你需要准备好以下软件和文件:
– MySQL数据库管理系统
– Excel文件(本教程以.xlsx格式为例)
– Java环境(本教程中需要用到Java)
2. 创建数据库
在MySQL中创建一个新的数据库,用于存储Excel文件中的数据。这里我们以“excel_db”为例,可根据实际情况进行修改。
CREATE DATABASE excel_db;
3. 创建表格
创建一个新的表格,用于存储Excel中的数据。表格的结构应与Excel中的数据结构相对应。例如,如果Excel中有“姓名”、“年龄”、“性别”等列,那么表格中应该也有相应的列。
CREATE TABLE `excel_db`.`table_name` (
`id` INT NOT NULL AUTO_INCREMENT,
`name` VARCHAR(45) NOT NULL,
`age` INT NOT NULL,
`gender` VARCHAR(45) NOT NULL,
PRIMARY KEY (`id`));
这里的“table_name”是你要存储数据的表格的名称,可以根据实际情况进行修改。
4. 编写代码
在这一步中,我们将使用Java编写代码,将Excel文件中的数据读取出来,并将其存入MySQL数据库中。
之一步:连接数据库
在代码中,我们首先需要连接MySQL数据库。这里我们使用的是JDBC驱动程序,需要在代码中指定MySQL的地址、用户名和密码。
String url = “jdbc:mysql://localhost:3306/excel_db”;
String username = “root”;
String password = “123456”;
Connection conn = DriverManager.getConnection(url, username, password);
第二步:读取Excel文件
我们可以使用开源的Apache POI库来读取Excel文件。在这个例子中,我们假设Excel文件中的数据为两列,分别为“姓名”和“年龄”。
FileInputStream fis = new FileInputStream(new File(“path/to/your/excel/file.xlsx”));
XSSFWorkbook workbook = new XSSFWorkbook(fis);
Sheet sheet = workbook.getSheetAt(0);
Iterator iterator = sheet.iterator();
while (iterator.hasNext()) {
Row currentRow = iterator.next();
String name = currentRow.getCell(0).getStringCellValue();
int age = (int) currentRow.getCell(1).getNumericCellValue();
// 将数据存入数据库
// …
}
第三步:向数据库中插入数据
我们需要将数据存入MySQL数据库中。
PreparedStatement ps = conn.prepareStatement(“INSERT INTO table_name (name, age) VALUES (?, ?)”);
ps.setString(1, name);
ps.setInt(2, age);
ps.executeUpdate();
完整的代码示例如下:
import java.io.File;
import java.io.FileInputStream;
import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.PreparedStatement;
import java.sql.SQLException;
import java.util.Iterator;
import org.apache.poi.ss.usermodel.Row;
import org.apache.poi.ss.usermodel.Sheet;
import org.apache.poi.xssf.usermodel.XSSFWorkbook;
public class ExcelToMySQL {
public static void mn(String[] args) throws Exception {
String url = “jdbc:mysql://localhost:3306/excel_db”;
String username = “root”;
String password = “123456”;
Connection conn = DriverManager.getConnection(url, username, password);
FileInputStream fis = new FileInputStream(new File(“path/to/your/excel/file.xlsx”));
XSSFWorkbook workbook = new XSSFWorkbook(fis);
Sheet sheet = workbook.getSheetAt(0);
Iterator iterator = sheet.iterator();
while (iterator.hasNext()) {
Row currentRow = iterator.next();
String name = currentRow.getCell(0).getStringCellValue();
int age = (int) currentRow.getCell(1).getNumericCellValue();
PreparedStatement ps = conn.prepareStatement(“INSERT INTO table_name (name, age) VALUES (?, ?)”);
ps.setString(1, name);
ps.setInt(2, age);
ps.executeUpdate();
}
fis.close();
workbook.close();
conn.close();
}
}
5. 运行程序
将代码保存为ExcelToMySQL.java,并使用javac命令编译成字节码文件。然后使用java命令运行程序,将Excel文件中的数据存入MySQL数据库中。
javac ExcelToMySQL.java
java ExcelToMySQL
6. 结论
相关问题拓展阅读:
- 如何将excel内的数据导入mysql数据库
如何将excel内的数据导入mysql数据库
1.将文件另存为“文本文件(制表符分割)(*.txt)”
2.然后进入命令提示符里使用命令
load data local infile data.txt into table exceltomysql fields terminated by ‘\t’;
数据从MySql到Excel的转化,其过程其实还是借助那个“制表符分割”的文本文件。
将如要将这个表中的男生信息导入到Excel中,可以这样。
select * into outfile data.txt’ from exceltomysql where xingbie=”m”;
你可以打开Excel,然后选择“数据”->“导入外部数据”->“导入数据”,选中 man.txt,一路确定就行了清激。
F2: 先利用excel生成sql语句,然后再到mysql中运行,这种方法适用于excel表格导入到各类sql数据库顷正瞎:
(1)、增加一列(假设是D列)
(2)、在之一行的D列,就是D1中输入公式:
=CONCATENATE(“insert into table (col1,col2,col3) values (‘”,A1,”‘,’”,B1,”‘,’”,C1,”‘);”)
如果有时间的话 ‘”, text(A1,”yyyy-mm-dd hh:mm:ss”),”‘
(3)、将D1的公雀空式复制到所有行的D列(就是用鼠标点住D1单元格的右下角一直拖拽下去啦)
(4)、把D列复制到一个纯文本文件中,假设为sql.txt
把sql.txt放到数据库中运行即可,你可以用命令行导入,也可以用phpadmin运行。
关于把excel存到mysql数据库的介绍到此就结束了,不知道你从中找到你需要的信息了吗 ?如果你还想了解更多这方面的信息,记得收藏关注本站。