Monday, August 1, 2011

Menjalankan File SQL Dengan Sekali Klik

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 :

  1. File SQL yang akan dieksekusi
  2. Batch_To_Exe_Converter
  3. Inno Setup Compiler
Sebagai Contoh kita akan membuat user baru di tabel  user.
  1. Buat file sqlnya dengan nama tambah_user.sql  
  2. insert into user (user,password) values ('coba','jangantanya')
  3. Buat batch file untuk mengeksekusi sql diatas dengan nama tambah_user.bat
  4. @echo off cd C:\Program Files\PostgreSQL\8.3\bin\ CLS SET PGPASSWORD=postgres echo on psql -Upostgres brantas_lokal < C:\tambah_user.sql
  5. Convert File diatas (tambah_user.bat) menjadi exe dengan Bat_To_Exe_Converter
  6. Buka Inno Setup Compiler
buatlah sebuah file installer untuk mengeksekusi program diatas berikut saya sertakan file installer yang sudah jadi:
; Script generated by the Inno Setup Script Wizard.
; 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

Jalankan file diatas dengan menekan tombol F9, hasil dari kompile file diatas akan menghasilkan file dengan extention exe, yang bisa langsung mengeksekusi file sql yang telah kita buat

Lanjut ....