mdb file dan Java

Microsoft Access, filenya berekstention mdb, ternyata bisa langsung kita baca seperti halnya kita membaca file biasa. Di pulau dan negara java, ada satu framework yang bisa digunakan untuk membaca langsung, namanya Jaccess.

pada prinsipnya, jaccess akan membaca metadata dari mdb file tadi dan juga datanya secara native, bukan dengan jdbc apalagi odbc.
Dari metadata mdb file, jaccess akan mendapatkan nama-nama tabel, nama-nama field pada setiap tabel. Kemudian record akan di baca dan di simpan dalam map, di petakan antara nama field dan valuenya untuk setiap record.Akan lebih bagus kalo kita liat bagaimana Jaccess itu:



import com.healthmarketscience.jackcess.Database;
import com.healthmarketscience.jackcess.Table;

public class Jaccesstest{

public static void main(String[] args) {
try {
Database d = Database.open(new File("OURMDB.mdb"));
Set<String> tables = d.getTableNames();
Iterator<String> iter = tables.iterator();

while (iter.hasNext()) {
System.out.println(iter.next());
}
} catch (Exception e) {
e.printStackTrace();
}
}

}

dari snippet code di atas kita membaca file mdb yang bernama ‘OURMDB.mdb’, full path atau relative path file tersebut. Kemudian di passing sebagai parameter ke object Database milik Jaccess. Dari class Database ini akan kita dapat nama-nama table yang dikumpulkan dalam class Set.


Table t = d.getTable("OUR_TABLE");
List columns = t.getColumns();
Iterator iter = columns.iterator();
Map row;
int rowCount = 0;
while ((rowCount++ < Long.MAX_VALUE) && ((row = t.getNextRow()) != null)) {

iter = row.keySet().iterator();

while (iter.hasNext()) {
String fieldName = (String) iter.next();
Object obj = row.get(fieldName);
if (fieldName.equals(fieldNameTglTx)) {
tglTx = String.valueOf(obj);
}
}}

Setelah mendapatkan Object Database, kemudian di retrieve Table yang kita inginkan. Dari Table object terdapat data colum dan dan record setiap row. Sederhanakan🙂 ?

Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out / Change )

Twitter picture

You are commenting using your Twitter account. Log Out / Change )

Facebook photo

You are commenting using your Facebook account. Log Out / Change )

Google+ photo

You are commenting using your Google+ account. Log Out / Change )

Connecting to %s

%d bloggers like this: