Mengambil Data Dari Database Kemudian Melakukan Perhitungan

Tulisan yang lalu sempat membahas teknik mengambil data dari suatu database dengan bahasa Matlab. Berikutnya adalah dari data yang diambil tersebut akan kita gunakan untuk perhitungan. Permasalah yang muncul adalah teknik mengkonversi data karena data yang diambil lewat instruksi “select” pada Visual Query Builder adalah tipe “cell”. Anggaplah Anda sudah membuat ODBC dari suatu database (Access, MySQL, dll) di windows. Buka Visual Query Builder Anda lalu koneksikan disertai perintah sql “Select”. Beri nama variabel keluaran Matlab di workspace-nya “a”.

Setelah ditekan tombol “execute” maka di workspace Anda menjumpai suatu variabel “a” yang jika diketik pada Command Window muncul:

>> a

a =

‘001’ ‘bata’ ‘550’

‘002’ ‘pasir’ ‘300000’

‘003’ ‘koral’ ‘200000’

‘004’ ‘semen’ ‘55000’

Misal kita diminta menjumlahkan harga bata dengan harga pasir (550 + 300000). Jika langsung menggunakan instruksi a(1,3)+a(2,3) akan muncul pesan error: ??? Undefined function or method ‘plus’ for input arguments of type ‘cell’. Itu tandanya Matlab menolak karena yang dijumlahkan bukan numerik. Ikuti langkah berikut ini untuk melakukan konversi.

Gunakan instruksi “cell2mat” untuk merubah format “cell” dari database menjadi format “mat”. Perhatikan instruksi pada command window di bawah ini:

>> bata=str2num(cell2mat(a(1,3))) % merubah cell ke mat dilanjutkan ke numerik !!!

bata =

550

>> pasir=str2num(cell2mat(a(2,3)))

pasir =

300000

>> bata+pasir

ans =

300550

Bagaimana melakukannya di GUI (Form)? Itu ceritanya lain lagi .. tapi prinsip konversi tipe datanya tetap sama.

 

Iklan

3 respons untuk ‘Mengambil Data Dari Database Kemudian Melakukan Perhitungan

    • misalnya ada edit text yg menunggu user memasukan angka volume, di m-file bisa kita ketik:

      volume = str2double(get(hObject, ‘String’));
      if isnan(volume)
      set(hObject, ‘String’, 0);
      errordlg(‘Masukan dengan Bilangan’,’Salah Input’);
      end

      % Menyimpan
      handles.metricdata.volume = volume;
      guidata(hObject,handles)

      • makasih mas, masalah udah beres
        tapi ada satu problem lagi
        seandainya ada dua edit text kosong, edit_1 sama edit_2, dan ada button proses penjumlahan untuk kedua edit text tersebut
        seandainya saat gui baru di jalankan, dan kita blm menginputkan angka pada edit text tersebut, kita menekan button proses, untuk validasi input yang nilainya belum di inputkan gmn mas?
        makasih mas

Tinggalkan Balasan

Isikan data di bawah atau klik salah satu ikon untuk log in:

Logo WordPress.com

You are commenting using your WordPress.com account. Logout /  Ubah )

Foto Google+

You are commenting using your Google+ account. Logout /  Ubah )

Gambar Twitter

You are commenting using your Twitter account. Logout /  Ubah )

Foto Facebook

You are commenting using your Facebook account. Logout /  Ubah )

Connecting to %s