Gemah ripah loh jinawi tata tentrem kerta raharja, jer basuki mawa bea, ho lapis kuntul baris, rawe-rawe rantas malang-malang puntung, ing ngarso sing tulodo, ing madyo mangun karso, tut wuri handayani, ingsun titip tajug lan fakir miskin

Kemitraan

Thursday, July 12, 2012

Migrasi dari MS Access ke Firebird 2.5

Sebelumnya saya sempat membangun aplikasi web menggunakan database MS Access (mdb), yg mana bagi kita yg terbiasa dgn MS Windows, database tersebut cukup mudah operasionalnya. Namun sayang seribu sayang, MS Access bukanlah database yg siap utk multi-user. Diputuskan kita migrasi ke Firebird, free, pemain lama dan multi-user.

Dari situs pendukung Firebird, yaitu http://www.ibphoenix.com/download/tools/migration tersedia berbagai aplikasi utk migrasi, salah satunya dari mdb ke Firebird. Saya coba Interbase Data Pump dan yg lain, prosesnya agak membingungkan dan hasilnya juga tidak sempurna, apalagi kalau database mdb-nya kompleks.



Contoh tampilan Interbase Data Pump.

Fikir punya fikir, kenapa kita tdk gunakan saja MS Access sbg alat migrasi, selain lebih user-friendly, juga sangat memadai.

Wajah baru!


Saya sudah membangun blog yang saya beri nama HelioCentre.Com dan saya berencana untuk memindahkan artikel-artikel saya di blogspot.com ke blog tersebut. Silahkan kunjungi blog baru saya, HelioCentre.Com karena banyak artikel yang tidak kalah menariknya di sana. Trims.

Kita Mulai!
1. Install Firebird ODBC driver, http://www.firebirdsql.org/en/odbc-driver/, sebagai jembatan migrasi dari mdb ke Firebird. Setelah instalasi selesai, lihat pada Control Panel - Administrative Tools - Data Sources (ODBC)

2. Add User DSN, pilih Firebird/Interbase(r) driver, kemudian akan muncul layar sbb
Panah merah paling atas, adalah nama utk DSN, panah merah kedua lokasi file database Firebird (FDB). Kolom yg lain tinggal anda sesuaikan saja dengan setting database Firebird anda.

3. Jalan MS Access, File - Open, File of type, pilihan paling bawah yaitu ODBC Databases ()
Akan muncul layar baru dengan 2 tab, pilih Machine Data Source, akan muncul nama DSN yg tadi kita buat, tinggal kita klik saja OK

Kemudian akan muncul layar yg menampilkan table dari database yg ditunjuk oleh DSN tsb, seperti dibawah,
Table itu sudah bagian dari database Firebird, tinggal kita pilih table mana yg akan kita insert data, sebagai target, kemudian OK.

Kemudian kita buka database Microsoft Access kita (mdb) dengan cara Link Tables, cukup right-click, pilih Link Tables dan pilih database mdb kita sbg source.


Dua table sudah bisa diakses, tinggal copy-paste saja antara source table ke target table. Field 1 source akan masuk ke field 1 target, dst. Hal yg perlu diperhatikan :
  • Unique Primary Key pada table target, tentunya tidak akan bisa menerima data yg duplikat (tidak unik) begitu juga utk field source lain yg unik.
  • Perbedaan tipe data antara field source dan target, misalnya, MS Access memiliki tipe data binary dgn nilai True/False, Firebird tidak mengenal tipe data ini, sehingga sebelum copy-paste harus kita rubah dulu pada source table, begitu juga utk field dgn tipe data yg lain.
  • Saat copy-paste, jika terjadi error dikarenakan berbagai kondisi, maka data dari table source yg tdk berhasil masuk ke target, akan dibuatkan table tersendiri, tinggal dicari tahu saja sebab musabab error-nya.
  • Anda boleh copy sebagian demi sebagian sehingga jika ada row yg bermasalah lebih mudah dilacak.
Selamat mencuba,

No comments:

Post a Comment