Java/kotlin如何连接access数据库

版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/a13069730106/article/details/85001672

Java/kotlin如何连接access数据库

最近在工作中使用遇到了奇葩的需求,需要把Access的数据导入到mysql的数据库,而且两个数据库的表结构还是不一样的。最初的方案是把Access的数据库导出到文本文件,之后用java解析生成sql插入至Mysql数据库。但是他们数据结构复杂,无法实现。最后只能通过连联access数据库时行处理.

需要准备的资源

这里主要是通过UCanAccess连实现连接数据,下载地址:https://sourceforge.net/projects/ucanaccess/ ,目前新版为4.0.4。下载后,ucanaccess-4.0.4.jar 及把lib目录下的jar包拷到项目中

以下是代码参考(kotlin)

java可以适当修改

  //有密码
    // val msAccDB = "C:\\Users\\LiuPeng\\Desktop\\1.accdb;password=123456"
    val msAccDB = "C:\\Users\\LiuPeng\\Desktop\\1.accdb;"
    val dbURL = "jdbc:ucanaccess://" + msAccDB

    Class.forName("net.ucanaccess.jdbc.UcanaccessDriver")

    var connection = DriverManager.getConnection(dbURL)

    var statement = connection.createStatement()

    var resultSet = statement.executeQuery("select * from testTable")

    while (resultSet.next()) {
        //通过列位置取值,序列从1开始
        var id = resultSet.getString(1)
        var name = resultSet.getString(2)
        //通过列字段名称取值
        var age = resultSet.getString("age")
        var datetime = resultSet.getDate("datetime")
        System.out.println("id:$id,name:$name,age:$age,datetime:$datetime")

    }

    statement.closeOnCompletion()
    connection.close()

日志输出

id:1,name:张三,age:19,datetime:2018-12-14
id:2,name:李四,age:22,datetime:2018-12-07

猜你喜欢

转载自blog.csdn.net/a13069730106/article/details/85001672