您的位置:首页 > 数据库

通过jdbc的方式把excel表格中的数据导入数据库

2017-10-21 15:55 585 查看
/*

*在导入数据之前,如果你是window 7用户,请将mysql的配置做如下修改,负责很可能导入数据失败,

*/

//第一步,找到mysql安装路径下的my.ini文件



//第二步,打开my.ini文件,在最后一行做如下配置,等号后边的路径由你自己定,但是请注意,最好是一个不含中文的路径,且是空文件夹



//3.创建数据库的表结构,如下图,也可参阅如下表创建语句创建



//表创建语句

/*

CREATE TABLE
student
(

id
INT(11) NOT NULL AUTO_INCREMENT,

name
VARCHAR(20) NOT NULL COMMENT ‘姓名’,

age
TINYINT(3) UNSIGNED DEFAULT NULL COMMENT ‘年龄’,

gender
TINYINT(3) UNSIGNED DEFAULT NULL COMMENT ‘性别,1男,0女’

PRIMARY KEY (
id
)

) CHARSET=utf8

*/

//4.创建与数据库表结构相对应的excel数据文件,且放在第二步配置中的路径下



//5.复制如下代码(记得导入mysql数据库的驱动包,不然肯定失败),请更改如下代码中testImportDataByExcel()方法中sql语句中包含的路径为你自己的excel数据文件的路径,执行main方法即可

//参考的数据库驱动包

//mysql-connector-java-5.1.7-bin.jar

package com.ilike.excelimportdata;

import java.sql.DriverManager;

import java.sql.SQLException;

import com.mysql.jdbc.Connection;

import com.mysql.jdbc.Statement;

/**

* 通过jdbc的方式,把excel文件中的数据导入数据库,此类可以当做工具类使用

*

* @ClassName ExcelImportDataTest

* @Description

*

* @author 桑伟东

* @date 2017-10-21 下午2:59:08

*

*/

public class ExcelImportDataTest {

// 创建静态全局变量

static Connection conn;

static Statement st;

public static void main(String[] args) {

testImportDataByExcel();

}

public static void testImportDataByExcel() {

conn = getConnection(); //同样先要获取连接,即连接到数据库

try {

String sql = “LOAD DATA INFILE ‘D:/tmp/sql/student.excel’ INTO TABLE student”;// 更新数据的sql语句

st = (Statement) conn.createStatement();    //创建用于执行静态sql语句的Statement对象,st属局部变量
st.execute(sql);
conn.close();   //关闭数据库连接
} catch (SQLException e) {
System.out.println("更新数据失败");
}
}

/* 获取数据库连接的方法*/
public static Connection getConnection() {
Connection con = null;  //创建用于连接数据库的Connection对象
try {
Class.forName("com.mysql.jdbc.Driver");// 加载Mysql数据驱动
con = (Connection) DriverManager.getConnection(
"jdbc:mysql://localhost:3306/mydatabase",   "root", "root");// 创建数据连接

} catch (Exception e) {
System.out.println("数据库连接失败" + e.getMessage());
}
return con; //返回所建立的数据库连接
}


}
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  mysql