1. 程式人生 > >Java/kotlin如何連線access資料庫

Java/kotlin如何連線access資料庫

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