Masalah ini muncul ketika aplikasi yang dijalankan di setiap proyek menemui kendala seperti user di setiap proyek tidak ada jaringan internet, update program, minta dihapuskan data, minta di edit datanya dan lain sebagainya yang intinya adalah memudahkan user dan programmer untuk trobleshotting.
Konsep kerjanya adalah kita membuat sebuah file SQL yang akan dieksekusi kemudian kita membuat sebuah batch file untuk mengeksekusi SQL tersebut. namun yang perlu diperhatikan adalah batch file tersebut harus kita convert ke exe terlebih dahulu sebelum dijalankan dengan menggunakan Inno Setup Compiler
Bahan - bahan yang diperlukan untuk menjalankan prosedure diatas :
Sebagai Contoh kita akan membuat user baru di tabel user.
buatlah sebuah file installer untuk mengeksekusi program diatas berikut saya sertakan file installer yang sudah jadi:
; SEE THE DOCUMENTATION FOR DETAILS ON CREATING INNO SETUP SCRIPT FILES!
#define MyAppName "TAMBAH_USER"
#define MyAppVersion "1.5"
#define MyAppPublisher "Casmadi Corp"
#define MyAppURL "http://www.plat-e.blogspot.com/"
#define MyAppExeName "tambah_user.exe"
[Setup]
; NOTE: The value of AppId uniquely identifies this application.
; Do not use the same AppId value in installers for other applications.
; (To generate a new GUID, click Tools | Generate GUID inside the IDE.)
AppId={{025375D2-5632-4D40-BA94-13DCED92741C}
AppName={#MyAppName}
AppVersion={#MyAppVersion}
;AppVerName={#MyAppName} {#MyAppVersion}
AppPublisher={#MyAppPublisher}
AppPublisherURL={#MyAppURL}
AppSupportURL={#MyAppURL}
AppUpdatesURL={#MyAppURL}
DefaultDirName=C:\xampp\htdocs\{#MyAppName}
DisableDirPage=yes
DefaultGroupName={#MyAppName}
DisableProgramGroupPage=yes
OutputDir=D:\update
OutputBaseFilename=add_user
SetupIconFile=D:\update\favicon.ico
Compression=lzma
SolidCompression=yes
[Languages]
Name: "english"; MessagesFile: "compiler:Default.isl"
[Files]
Source: "D:\update\tambah_user.exe"; DestDir: "{app}"; Flags: ignoreversion
Source: "D:\update\tambah_user.sql"; DestDir: "{app}"; Flags: ignoreversion
; NOTE: Don't use "Flags: ignoreversion" on any shared system files
[Run]
Filename: "{app}\{#MyAppExeName}"; Description: "{cm:LaunchProgram,{#StringChange(MyAppName, "&", "&&")}}"; Flags: nowait skipifsilent
Monday, August 1, 2011
Menjalankan File SQL Dengan Sekali Klik
Thursday, January 14, 2010
Fungsi Logika dalam Query Oracle
Kondisi if selain diletakkan dalam bahasa pemrograman, juga bisa dilakukan didalam sql.
contoh dibawah ini merupakan penggunaan logika if dengan 1 kondisi menggunakan decode dalam oracle :
sintaknya :
decode (expression, search_1, result_1)
Contoh Penggunaan :
"Merubah nominal pada tabel TAGIHAN menjadi negative yang mempunyai KODE_AKUN 1600 "
select KODE_AKUN,JML_TAGIHAN AS JUM_TAGIHAN,
decode(KODE_AKUN, '1600', -(JML_BAYAR), JML_BAYAR) JUM_BAYAR
from TAGIHAN;
Untuk kondisi lebih dari satu bisa menggunakan case when
sintaknya :
case when x = y then a else b end
case when x <>then a when x = y then b else c end
Contoh Penggunaan :
"Merubah nominal pada tabel TAGIHAN menjadi negative yang mempunyai KODE_AKUN 1600 dan 2309 "
select JML_TAGIHAN,
case when
(KODE_AKUN IN ('1600','2309')) then -(JML_BAYAR) else JML_BAYAR end AS JUM_BAYAR
from TAGIHAN;
Wednesday, September 2, 2009
SQL Pencarian di Oracle
Didalam oracle untuk pencarian menggunakan metode like walaupun sudah menggunakan % tetap saja hasil yang ditampilkan sesuai dengan apa yang diharapakan.
Contoh Kasus ketika kita ingin mencari nama aset dengan kata kunci 'Mobil','mobil' atau 'MOBIL' maka dengan menggunakan sql seperti dibawah ini akan menghasilkan hasil pencarian yang berbeda.
select * from assetNamun jika dijalankan di Mysql maka query tersebut akan menampilkan semua record nama aset yang mengandung kata 'Mobil Dinas','Mobil','mobil', ataupun 'MOBIL'
where nama_asset LIKE '%Mobil%'
Sedangkan ketika dijalankan di Oracle maka dia akan menampilkan record 'Mobil' atau 'Mobil Dinas' saja. jadi jika kita memasukkan keywordnya 'mobil' atau 'MOBIL' maka hasil pencariannya '', karena dia hanya mencari dengan metode case sensitive Agar pencariannya Optimal dan efektif kita bisa mengunakan fungsi UPPER yang ada didalam oracle, Maka sintak oraclenya setelah ditambahkan UPPER akan menjadi seperti ini :
select * from asset
where upper(nama_asset) LIKE upper('%Mobil%')
dengan penambahan UPPER maka hasil pencarian akan efektif, ketika kita memasukkan keywoard 'Mobil' maka hasil pencarian akan menampilkan semua nama aset yang mengandung 'Mobil','mobil' atau 'MOBIL'
Lanjut ....
