Pointer

27 Januari 2010

Setelah mengikuti pelatihan dalam modul ini Anda diharapkan telah memiliki kemampuan :
– memahami konsep pointer
– mendeklarasikan tipe data pointer
– memanfaatkan pointer dalam pemecahan masalah

Pengantar
Tipe data primitive (integer, string, boolean) termasuk tipe data statis artinya bahwa tipe data tersebut memiliki keterbatasan cakupan (range) nilai. Sebagai contoh bahwa tipe data integer hanya memiliki nilai antara -32786 s.d 32767. Keterbatasan cakupan nilai pada tipe data statis dapat diatasi dengan menggunakan tipe data pointer.
Jika pada tipe data statis suatu pengenal langsung menyimpan data yang ada di memory maka tipe pointer akan menunjuk ke suatu alamat di memory dan alamat memory tersebut yang menunjuk nilai tertentu di memory. Pengenal yang bertipe pointer selanjutnya dapat menunjuk pengenal bertipe pointer lainnya tanpa batas sehingga akan membentuk suatu pengenal yang dapat menunjuk pengenal lainnya hingga tak terhingga. Keterbatasan hubungan (link) antar pengenal hanya karena kapasitas memory.

Deklarasi Tipe Data Pointer
Setiap pengenal yang bertipe pointer harus terlebih dahulu dideklarasikan/dikenalkan. Misalkan diinginkan suatu pengenal bertipe pointer Integer maka deklarasinya dapat seperti berikut ini:

var
luas : ^integer;
begin
luas^:=50;
writeln(luas^);
end.

Mengalokasikan Memory di Heap
Heap merupakan tempat di memory di komputer yang digunakan sebagai tempat pengalokasian pengenal pointer. Untuk mengalokasikan pengenal pointer digunakan prosedur New.

var
luas : ^integer;
begin
new(luas);
luas^:=50;
writeln(luas^);
end.

Mendealokasikan Memory di Heap
Heap merupakan tempat di memory di komputer yang digunakan sebagai tempat pengalokasian pengenal pointer. Untuk mengalokasikan pengenal pointer digunakan prosedur Dispose.

var
luas : ^integer;
begin
new(luas);
luas^:=50;
writeln(luas^);
dispose(luas);
end.

Latihan 1. Menjumlahkan dua buah bilangan integer dengan pengenal pointer

Program Jumlah(A,B);
Uses Crt;
Var
A,B,C : ^integer;
Begin
Clrscr;
New(A);
New(B);
New(C);
write(‘Nilai A = ‘);readln(A^);
write(‘Nilai B = ‘);readln(B^);
C^:=A^+B^;
writeln(‘ A + B = ‘,C^);
dispose(A);
dispose(B);
dispose(C);
readln;
end.

Pointer Berantai
Suatu pengenal pointer dapat menunjuk ke pengenal pointer lainnya sehingga membentuk hubungan (link) yang berantai sehingga sering disebut dengan link list.
Misalkan diinginkan untuk menyimpan data mahasiswa dengan rekord seperti berikut ini:
Nim : string[8];
Nama : string[30];
maka deklarasi pengenal pointer rekord mahasiswa tersebut dapat didefenisikan sebagai berikut:

 Type Simpul = ^Data
         Data = Record
         Nim : String[8];
         Nama : String[30];
         Berikut : Simpul;
        End;

Var
  Mahasiswa : Simpul;

Dalam deklarasi Type didefenisikan suatu pengenal baru yang bernama simpul. Pengenal simpul menunjuk ke suatu pengenal ^Data yang bertipe rekord. Rekord terdiri atas 3 field yaitu nim, nama dan berikut. Field berikut merupakan field yang digunakan untuk menunjuk (link) ke pengenal simpul yang lainnya.

Latihan 2. Buat program untuk menyimpan data mahasiswa dengan menggunakan pengenal pointer berkait

Program Data_Mahasiswa;
Uses Crt;
Type Simpul = ^Data
         Data = Record
         Nim : String[8];
         Nama : String[30];
         Berikut : Simpul;
        End;
Var
  MahasiswaA,MahasiswaB : Simpul;
  Bantu : Simpul;
Begin
 Clrscr;
 New(MahasiswaA);
 MahasiswaA^.Nim:='10010001';
 MahasiswaA^.Nama:='Irvan Aginta Ginting';
 MahasiswaA^.Berikut:=Nil;
 New(MahasiswaB);
 MahasiswaB^.Nim:='10010002';
 MahasiswaB^.Nama:='Irvan Aginta Ginting';
 MahasiswaB^.Berikut:=MahasiswaA;

 Bantu:=MahasiswaB;
 While (Bantu^.Berikut<Ni>l) Do
 Begin
   Writeln(Bantu^.Nim, Bantu^.Nama);
   Bantu:=Bantu^.Berikut;
 End;

Readln;
End.

Pemrograman Grafis

6 Januari 2010

Setelah mengikuti pelatihan pada Modul XI, Anda diharapkan telah memilki kemampuan untuk :
– memahami konsep gambar
– menciptakan obyek grafis di form
– mengenali control grafis di toolbox
– memanipulasi obyek grafis

Pengantar

Kiasan “Satu Gambar Memiliki Sejuta Arti” merupakan ungakapan yang banyak diutarakan orang. Peminat seni gambar memandang suatu gamar dari beragam segi mulai dari ukuran, bentuk, warna, pencahayaan gambar, kondisi serta waktu pembuatan gambar, serta segi-segi yang lainnya. Para penikmat seni gambar akan mampu menjelaskan elemen gambar yang terkecil hingga yang terbesar. Tentu saja bagi orang yang bukan peminat seni memandang perilaku seniman (spt : seniman gambar) kadang-kadang mememperlihatkan perilaku yang aneh dalam menikmati suatu gambar. Yah.. begitulah seorang seniman. Ha.ha.ha.ha.ha.ha….

Gambar di komputer terbentuk dari himpunan titik-titik gambar. Titik disebut dengan pixel (picture element). Pixel merupakan element terkecil dari suatu gambar. Pixel dapat diberi warna tertentu. Dari himpunan titik dapat dibentuk obyek-obyek gambar seperti garis, lingkaran, segitiga, persegi, balok, ellips, dan sebagainya. Banyak teknik pemrograman yang telah diciptakan untuk menciptakan obyek-obyek gambar.

Semakin banyak titik pembentuk gambar maka kualitas gambar akan semakin baik. Bila layar komputer Anda memiliki resolusi 800 x 600 px menandakan bahwa sepanjang sumbu X dapat diletakkan 800 pixel dan sepanjang sumbu Y dapat ditempatkan 600 pixel. Tentu saja gambar tampilan gambar akan lebih baik bila resolusi layar monitor Anda 1024 X 768, 1024 X 800 atau bahkan lebih.

Di toolbox Visual Basic terdapat dua kontrol yang dapat digunakan untuk memanipulasi gambar yaitu control Picture dan Image. Selain itu control Form juga dapat digunakan sebagai area gambar

a. Menciptakan titik di form
Visual Basic telah menyediakan fungsi Pset untuk menciptakan titik. Format penulisan dari Pset:

Pset (X,Y),Warna

dimana X : adalah posis titik di sumbu X; Y : posisi titik di sumbu Y; Warna adalah warna dari titik.

a. Menciptakan titik di Form
1. Buka Proyek Standar.Exe
2. Simpan Proyek dengan nama PTitik
3. Simpan Form dengan nama FTitik
4. Ganti properti form
– Name : FrmTitik
– Caption : Titik
5. Tuliskan kode berikut di Event Form_Paint

Private Sub Form_Paint()
Pset (1000,1000),yellow
End Sub

6. Eksekusi Proyek dengan menekan tombol F5 di keyboard

Mungkin saja titik di Form sulih melihatnya. Bagian berikut akan dicetak himpunan titik-titik dengan memanfaatkan pernyataan perulangan (looping statement).

7. Tekan simbol Close (X) untuk kembali ke perancangan

b. Menciptakan Garis di Form
1. Ubah kode program di event Form_Paint

Private Sub Form_Pain()
Dim I As Integer
For I=1000 To 2000 Step 1
Pset (I,1000),Yellow
Next I
End Sub

2. Simpan Form dan Proyek dengan mengklik menu File –> Save Project
3. Eksekusi Proyek dengan menekan F5 di keyboard

4. Kembali ke perancangan dengan menekan simbol Close (X)

c. Menciptakan Grafik Sinus di Form
1. Ubah properti Form
-WindowState : Maximized
2. Ubah kode program di Form_Paint

Private Sub Form_Paint()
Dim I,TengahLayar As Integer
Dim Y,Radian As Single
TengahLayar = Screen.Height / 2
For I = 0 To Screen.Width Step 1
Radian = 3.14 / 180 * I
Y = Sin(Radian)
PSet (I, TengahLayar + Y * 1000), yellow
Next I
End Sub

3. Simpan kode dengan menekan tombol Ctrl + S di keyboard
4. Eksekusi Proyek dengan menekan F5 di keyboard

5.Tekan simbol Close (X) untuk mentup Jendela Eksekusi

c. Menciptakan Jaring Laba-Laba di Form
1. Ciptakan Proyek Standard.Exe
2. Simpan Proyek dengan nama PLingkaran
3. Simpan Form dengan nama FLingkaran
4. Ganti properti Form
– Name : FrmLingkaran
– Caption : Lingkaran
– WindowState : Maximized
5. Masukkan control Timer ke Form
– Name : TmrLingkaran
– Interval : 1000 (dalam satuan milisecond. 1 detik = 1000 milisecond)
3. Ketikkan Kode Program Berikut di Jendela Kode.

Dim JariJari As Integer
Dim XTengah, YTengah As Single

4. Tambahkan Event Form_Load

Private Form_Load()
JariJari=0
XTengah=Screen.Width/2
YTengah=Screen.Height/2
Randomize(10)
End Sub

5.Ubah kode program di Form_Paint seperti di bawah ini:

Private Sub Form_Paint()
Circle (XTengah, YTengah), JariJari, RGB(Rnd() * 255, Rnd() * 255, Rnd(255) * 255)
End Sub

6. Tambahkan Event TmrLingkaran_Timer()

Private Sub TmrLingkaran_Timer()
JariJari = JariJari + 100
If (JariJari > YTengah) Then
JariJari = 100
Cls
End If
Form_Paint
End Sub

7. Simpan Kode Program dengan menekan Tombol Ctrl + S
8. Eksekusi Proyek dengan menekan F5

9. Tutup Jendela Eksekusi dengan menekan simbol Close (X)

Jalanya program bekerja dapat dijelaskan seperti berikut:
1. Pada saat Anda menekan F5 maka Event Form_Load akan dikerjakan.
JariJari=0
XTengah=Screen.Width/2
YTengah=Screen.Height/2
Randomize(10);

ctt : Randomize(10) dapat saja Anda tuliskan menjadi Randomize(1), Randomize(2). Angka berapa saja bisa dituliskan. Fungsi Prosedur ini agar Visual Basic setiap memanggil fungsi Rnd akan membangkitkan bilangan acak yang berbeda. Jika Anda tidak menggunakan fungsi Randomize maka bilangan acak yang dibangkitkan dari fungsi Rnd akan tetap sama.

2. Event Form_Paint dikerjakan.
Circle (XTengah,YTengah),JariJari,RGB(Rnd()*255,Rnd()*255,Rnd()*255)

ctt : RGB merupakan fungsi menuliskan warna. R = Red, G=Green, B=Blue. Kalau Anda perhatikan pada fungsi RGB terdapat tiga parameter. Nilai ketiga parameternya akan dirandom mulai dari angka 0 hingga 254. Percampuran antara nilai Red, Green dan Blue tentu akan diberikan sebagai nilai akhir.

Pada tahap ini tentu saja penciptaan lingkaran telah dilakukan, namun karena jari-jari lingkaran masih 0 maka lingkaran tidak terlihat di Form.

3. 50 milisecond ( 1/20 detik) kemudian dikerjakan Event TmrLingkaran_Timer()
JariJari=JariJari+100
IF (JariJari>YTengah) Then
JariJari=100
Cls
End IF
Form_Paint

JariJari ditambah 100. Kemudian diuji apakah JariJari lebih besar dari YTengah. Hal ini dilakukan agar jari-jari lingkaran tidak melebihi layar. Jika JariJari lebih besar dari Y Tengah maka kembalikan nilai JariJari menjadi 100, kemudian form dibersihkan dari obyek grafis. Selanjutnya prosedur Form_Pain dipanggil.

4. Setiap 50 second akan dipanggil kembali Prosedur Form_Paint

b. Menciptakan titik di Control Picture
Control Picture menyediakan beragam fungsi untuk memanipulasi grafis.


Melakukan Query Pada 1 Tabel

5 Januari 2010

Setelah mengikuti pelatihan pada Modul I, Anda diharapkan telah memiliki kemampuan :
1. Mengenali Struktur Tabel
2. Menampilkan Data Field
3. Menuliskan Perintah Aritmatika
4. Memahami Perintah Kondisi
5. Memahami Perintah Pengurutan
6. Fungsi-Fungsi SQL

Pengantar

Bahasa Query Terstruktur (Structured Query Language) merupakan bahasa standar yang digunakan untuk memanipulasi Sistem Manajemen Basis Data Relasional (relational database management system). Standar SQL dimulai dari SQL-89, SQL-92, SQL-2001. Perintah-perintah antar standar bersifat up-ward artinya pada versi terakhir dikenali perintah-perintah versi sebelumnya, namun tidak sebaliknya (undown-ward).

Sistem manajemen basis data relasional merajai pasaran salah satunya karena kepopuleran SQL. Versi sistem manajemen basis data relasional yang beredar dapat dibagi dalam dua versi yaitu Client dan Server. MS-Access, Paradox merupakan contoh basis data client artinya basis data hanya diakses oleh pemakai tunggal (single user). MySql, Interbase, SQL Sever merupakan contoh basis data server artinya bahwa basis data tersebut dapat digunakan oleh banyak pemakai (multi user).

Manipulasi basis data berarti melakukan operasi-operasi seperti menciptakan (create) antara lain basis data, tabel, index, view, domain, stored procedure; menghapus (delete) basis data, tabel, index, view, domain, store procedure, rekord; menampilkan isi (query) basis data, tabel; dan juga mengontrol (control) hak akses, transaksi, dan keamanan. Operasi-operasi tersebut umumnya dapat dilakukan dalam suatu sistem manajemen basis data.

Melakukan query dengan perintah SELECT merupakan operasi yang paling sering digunakan karena umumnya data yang telah disimpan dalam basis data ingin kembali ditampilkan dengan format yang sama atau beda dari data aslinya.

1. Menampilkan Data Per Field
Misalkan diketahui struktur TblSiswa seperti di bawah ini:

Field Type Size Decimal Description
NIS Text 5 Primary Key
Nomor Induk Siswa
Nama Text 25
TempatLahir Text 35
TanggalLahir Date 8
Telelpon Text 12
JenisKelamin Text 1 L=Laki-Laki
P=Perempuan
GolonganDarah Text 2
Agama Text 1 1=Islam
2=Kristen
3=Katolik
4=Hindu
5=Buddha

Dengan anggapan Anda telah melakukan penginputan rekord ke tabel TblSiswa di atas. Selanjutnya akan dilakukan query-query dasar seperti di bawah ini.

a. Menampilkan seluruh NIS (Nomor Induk Siswa)

Select NIS
From TblSiswa

Anda perhatikan bahwa bila kita ingin menampilkan data suatu Field maka nama Field tersebut dituliskan setelah perintah Select.

b. Menampilkan NIS dan Nama

Select NIS,Nama
From TblSiswa

c. Menampilkan NIS dengan judul Nomor_Induk_Siswa

Select NIS As Nomor_Induk_Siswa
From TblSiswa

d. Menampilkan seluruh Field

Select *
From TblSiswa

Sampai saat ini Anda telah memiliki kemampuan untuk menampilkan data per field, gabungan field atau semua field. Yang penting diperhatikan bahwa bila Anda ingin menampilkan data lebih dari satu field maka antar field harus dipisahkan tanda koma dan diakhir nama tabel harus ditambahkan titik koma (semi colon).

2. Melakukan Ekspresi Aritmatika

Dari perintah Select, Anda juga dapat melakukan operasi-operasi aritmatika seperti penjumlahan, perkalian, pembagian atau pengurangan. Berikut ini diberikan beberapa contoh operasi aritmatika pada perintah Select.

a. Hitung penjumlahan 2 + 2

select 2+2;

b. Hitung penjumlahan 2+2 dan beri judul Jumlah

select 2+2 as Jumlah;

c. Hitung penjumlahan 2 +2, perkalian 5*6

select 2+2, 5*6;

Anda tentunya dapat melakukan operasi-operasi aritmatika pada Field-Field yang bertipe Numerik. Di MS-Access tipe numerik dapat berupa Single, Longint, Integer, ShortInt; Di My-SQL dapat berupa Number, ShortInt, TinyInt. Berikut adalah operator-operator aritmatika yang dapat digunakan untuk melakukan operasi-operasi ekspresi yang bertipe Numerik.

Operator Fungsi
+ Menjumlahkan
- Mengurangkan
* Mengalikan
/ Membagikan

Tentu saja Anda dapat bereksperimen dengan menuliskan ekspresi-ekspresi aritmatika lainnya. SQL juga telah menyediakan fungsi-fungsi statistik atau di SQL disebut dengan fungsi-fungsi aggregate seperti Max, Min, Sum, Avg, namun fungsi-fungsi ini akan dibahas pada Modul berikutnya.

3. Melakukan Perintah Kondisi
Pada saat menampikan data ada kalanya kita mengingkan agar data yang ditampilkan memenuhi syarat/kondisi tertentu. Bila kondisi dipenuhi maka data akan ditampilkan; sebaliknya bila kondisi tidak terpenuhi maka data tidak akan ditampilkan. Di perintah Select Anda memungkinkan untuk melakukan kondisi tertentu dengan menggunakan anak kalimat (clause) Where. Baiklah saatnya kita coba bereksperimen.

a. Tampilkan semua Siswa yang berjenis kelamin Perempuan

Select *
From TblSiswa
Where JenisKelamin=”P”

b. Tampilkan semua Siswa yang lahir sebelum 1 Agustus 2000

Select *
From TblSiswa
Where TanggalLahir < #1/08/2000#

c. Tampilkan semua Siswa yang lahir antara tanggal 1 Januari 2000 s.d 1 Agustus 2000

Select *
From TblSiswa
Where TanggalLahir Between #1/01/2000# And #1/08/2000#

Kalau Anda perhatikan di clause Where maka yang dibandingkan adalah Field dari tabel dengan suatu Nilai. Pembandingan di SQL dilakukan dengan menggunakan operator-operator kondisi. Berikut ini merupakan daftar operator kondisi yang dapat digunakan di perintah Select:

Operator Keterangan
= Sama Dengan
< Lebih Kecil Dari
> Lebih Besar Dari
<= Lebih Kecil Dari Atau Sama Dengan
>= Lebih Besar Dari Atau Sama Dengan
<> Tidak Sama Dengan

Ada juga saatnya Anda hanya akan menampilkan jika memenuhi lebih dari satu kondisi. Misalkan Anda ingin menampilkan data Siswa yang berjenis kelamin Perempuan dan Lahir di bawah tanggal 1 Agustus 2000. Untuk menghubungkan satu atau banyak kondisi digunakan operator logika. Berikut ini adalah operator logika yang dapat digunakan dalam perintah SQL.

Operator Keterangan
And Dan
Or Atau
Not Tidak

d. Tampilkan seluruh Siswa yang berjenis kelamin Perempuan dan Lahir sebelum tanggal 1 Agustus 2000.

Select *
From TblSiswa
Where JenisKelamin=”P” And TanggalLahir<#1/01/2000#

Agar perintah SQL lebih mudah dipahami sebaiknya pada tiap kondisi diberi tanda kurung buka dan kurung tutup.

Select *
From TblSiswa
Where (JenisKelamin=”P”) And (TanggalLahir<#1/01/2000#)

e. Tampilkan seluruh Siswa yang Beragama Islam atau Katolik

Select *
From TblSiswa
Where (Agama=1) Or (Agama=3)

Anda tentu saja masih ingat bahwa data Agama kita kodekan di dalam Tabel. Tujuannya tidak lain untuk mengefisienkan penyimpanan TblSiswa di memory.

f. Tampilkan seluruh Siswa yang beragama Islam atau Katolik dan Berjenis Kelamin Perempuan

Select *
From TblSiswa
Where ((Agama=1) Or (Agama=3)) And (JenisKelamin=”P”)

Dalam anak kalimat Where juga diikutikan perintha Like. Perintah Like berfungsi untuk menguji suatu nilai berdasarkan kritereria tertentu. Misalkan Anda ingin mencari semua Siswa yang namanya diawali huruf A maka dapat dilakukan dengan perintah Like. Misalkan lagi Anda ingin mencari nama seorang siswa yang huruf keduanya C maka dengan menentukan format khusus dalam perintah Like.

g. Tampilkan seluruh Siswa yang namanya diawali huruf A

Select *
From TblSiswa
Where Nama Like “A*”;

Tanda * pada perintah like menandakan bahwa seluruh karakter. Selain tanda *, Anda juga dapat memasukkan karakter ? (tanda tanya) dalam perintah Like. Tanda ? berfungsi untuk mengganti satu karakter.

h. Tampilkan seluruh Siswa yang namanya huruf kedua adalah C

Select *
From TblSiswa
Where Nama Like “?C*”;

Ekspresi ?C* dapat dibaca karakter pertama apa saja, diikuti huruf C, diikuti apa saja.

5. Mengurutkan Data

Informasi dalam keadaan terurut tentu akan lebih mudah dibaca. Kalau kita berhatikan bangunan-bangunan di Sekolah Dasar biasanya dijejer mulai dari Kelas 1, Kelas 2, … , Kelas 6. Dengan susunan bangunan seperti di atas akan akan memudahkan para siswa mengenali kelasnya masing-masing. Misalkan lagi di buku Absensi Harian Siswa, Anda perhatikan nama-nama Siswa diurutkan secara Alpabet sehingga pada saat Guru melakukan absensi baik di awal maupun di akhir jam pelajaran akan lebih mudah melakukannya. Pada daarnya data yang sudah terurut (sorted) akan lebih mudah memahaminya dibandingkan dengan data yang disusun secara acak (random).

Dalam SQL terdapat anak kalimat Order By yang berfungsi untuk mengurutkan suatu data. Pengurutan dapat dilakukan pada data numerik (0..9) atau alphabet (A..Z, a..z). Tipe pengurutan ada dua yaitu pengurutan menaik (ascending – A..Z) dan menurun (descending – Z..A).

a. Tampilkan seluruh Siswa yang namanya terurut secara menaik (ascending)

Select *
From TblSiswa
Order By Nama Asc

Bila Anda menggunakan clause Order By dan menyertakan keterangan Asc berarti komputer akan memahaminya bahwa Anda mengurutkan secara menaik. Atau dengan kata lain perintah Asc bersifat default. Perintah di atas dapat juga dituliskan seperti di bawah ini:

Select *
From TblSiswa
Order By Nama

b. Tampilkan seluruh Siswa yang berjenis kelamin laki-laki dan namnya diurutkan secara Menurun menurun (descending)

Select *
From TblSiswa
Where JenisKelamin=”L”
Order By Nama;

Bila terdapat kondisi maka clause Where harus ditulis terlebih dahulu baru diikuti clause Order By.

Pengurutan juga dapat dilakukan pada satu atau banyak field. Bila dilakukan pengurutan pada N Field atau lebih maka pengurutan dilakukan terlebih dahulu pada field 1, field 2, …, field n.

c. Tampilkan seluruh Siswa yang diurutkan berdasarkan Nama dan Alamatnya secara menurun.

Select *
From TblSiswa
Order By Nama, Alamat;

6. Fungsi-Fungsi SQL

Dalam perintah Select, Anda dapat memanfaatkan beragama fungsi-fungsi yang telah disediakan SQL (built-in function). Dengan melihat referensi SQL, Anda tentunya akan melihat beragama fungsi-fungsi mulai dari fungsi string, aritmatika, kondisi, trigonometri, dan sebagainya.
Pada Modul I ini hanya akan dibahas beberapa fungsi string. Pada modul-modul selanjutnya akan dibahas fungsi-fungsi string lainnya. String dapat diartikan sebagai himpunan karakter. Misalkan nama Anda dapat dikatakan sebagai string. String tidak dapat dioperasikan secara matematika. Namun perlu dicatat terdapat satu operasi penggabungan string (string concatenation) yang menggunakan operator aritmatika yaitu, karakter + (plus).

a. distinct
Fungsi ini untuk akan menampilkan data duplikat sekali saja. Misalkan Anda melakukan perintah :

Select distinct(JenisKelamin)
From TblSiswa;

Maka yang ditampilkan hanya L dan P. Perintah distinct akan menuliskan sekali saja Jenis Kelamin yang sama.

b. Left
Fungsi ini untuk mengambil karakter tertentu dari Field mulai dari karakter paling kiri. Misalkan terdapat pernyataan SQL seperti berikut:

Select Left(Nama,2)
From TblSiswa;

maka nama-nama siswa hanya ditampilkan 2 karakter pertama.

c. Right
Fungsi ini digunakan untuk mengambil karakter tertentu dari Field mulai dari karakter paling kanan. Misalkan terdapat pernyataan SQL seperti di bawahi ini:

Select Right(Nama,3)
From TblSiswa;

maka nama-nama siswa hanya ditampilkan 3 karakter terakhir.


Modul III

28 Desember 2009

Setelah mengikuti pelatihan dalam Modul III, Anda diharapkan telah memiliki kemampuan:
– menciptakan struktur tabel
– membuat form dari tag HTML
– mengkoneksikan kode PHP dengan MySQL

Pendahuluan

Setiap sistem dapat saja menerima informasi baik dari lingkungan luarnya (external system) maupun dari sistem itu sendiri (internal system). Informasi dari luar sistem sangatlah banyak. Informasi yang dimasukkan ke sistem harus sesuai dengan kebutuhan sistem. Jangan sampai kita memasukkan informasi yang tidak sesuai dengan kebutuhan sistem. Bila hal ini sampai terjadi maka tentu saja sistem kita akan dipenuhi dengan informasi-informasi yang tidak berguna atau dapat dikatakan informasi-informasi sampah (useless information).

Agar informasi/data di dalam komputer dapat terkelola dengan baik dibutuhkan perangkat lunak khusus untuk pengelolaan data. Perangkat lunak ini sering disebut dengan sistem manajemen basis data (database management system – DBMS). Terdapat beragam jenis DMB seperti hirarki, tree, relasional, semi-obyek, obyek, namun tipe DBMS relasional (relational database management system) merupakan jenis DBMS yang paling banyak digunakan saat ini. Contoh-contoh RDBMS seperti : MS-Acess, MySQL, SQL-Server, Paradox, dsb.

Setiap RDBMS memungkinkan Anda untuk langsung berinteraksi di lingkungan kerjanya (environment window). Namun hal ini umumnya hanya dilakukan oleh orang-orang tertentu saja. Orang-orang yang khusus menangani basis data disebut dengan administrator basis data (database administrator). Tujuan dari pembatasan hak guna (access privilidge) ini adalah agar basis data tetap aman dan terhindar dari gangguan-gangguan orang yang tidak berhak. Mengingat tidak semua pemakai dapat berinteraksi dengan basis data seperti layayaknya seorang administrator basis data, maka perlu dibuat interaksi yang mudah dan menarik.

Struktur Tabel

Informasi/data yang dibutuhkan sistem tentu saja harus diketahui strukturnya. Struktur ini menggambarkan kedudukan data di DBMS. Misalkan kita ingin menyimpan data/informasi siswa sekolah dasar. Seorang siswa tentunya memiliki attribut NIS (Nomor Induk Siswa), Nama, Alamat, Jenis Kelamin, Agama, dsb. Data dari attribut-attribut tersebutlah yang membedakan tiap siswa. Siswa disini dapat juga kita sebut sebagai obyek/entitas. Banyaknya attribut dari suatu entitas disesuaikan dengan kebutuhan. Misalkan, saat ini sering terjadi penyakit demam berdarah, dimana penyakit ini ada kalanya membutuhkan darah segar sesuai dengan golongan darah penderitanya. Untuk mengantisipasi hal ini akan terjadi pada siswa maka bisa saja attribut golongan darah ditambahkan, sehingga bila penyakit demam berdarah benar-benar terjadi pencarian data golongan darah siswa mudah dilakukan. Attribut-attribut seperti Agama, Telepon, nama Bapak dan ibu juga bisa ditambahkan. Dengan demikian attribut-attribut dari siswa dapat didaftar seperti berikut:
NIS
Nama
Alamat
Jenis Kelamin
Agama
Golongan Darah
Telepon
Nama Ayah
Nama Ibu

Setiap attribut tentu saja memiliki data yang berbeda-beda baik dari segi panjang maupun jenis datanya. Sebagai contoh attribut NIS siswa umumnya hanya tersusun atas angka-angka dan panjangnya bisa 5 digit atau 8 digit. Lain lagi halnya dengan attribut Nama, dimana nama seorang siswa tentu saja terdiri atas rangkaian karakter-karakter. Tentu hal yang aneh bila diketahui nama siswa 007 walaupun kemungkinannya saja bisa terjadi tetapi tentu hal tersebut tidak lazim.

Data seorang siswa dapat dituliskan seperti di bawah ini:

NIS 09001
Nama Betra Ginting
Alamat Desa Barusjahe No. 007
Jenis Kelamin Laki-Laki
Agama Katolik
Golongan Darah O
Telepon 081328524100
Nama Ayah Beton Ginting
Nama Ibu Ramida Br Barus

Kita perhatikan attribut NIS dan Telepon tersusun atas rangkaian angka (numerik). NIS terdiri dari 5 digit. Setiap siswa akan memiliki panjang NIS yang sama sehingga panjang maksimum dari NIS adalah 5 digit. Umumnya tiap NIS dibedakan dari nomor digit terakhir. Sedangkan attribut Telepon panjangnya 12 digit. Namun tentu saja tidak semua telepon siswa 12 digit. Namun hingga saat ini kita tahu bahwa digit telepon paling panjang adalah 12 digit.

Selanjutnya kita perhatikan attribut Jenis Kelamin, Golongan Darah, Nama Ayah, Nama Ibu datanya tersusun atas rangkain karakter (alphabet). Sebagai contoh jenis kelamin dapat berula laki-laki atau perempuan. Dalam beberapa sistem jenis kelamin dibuat Pria atau Wanita. Namun saat ini penggunaan jenis kelamin laki-laki atau perempuan lebih lumrah. Perlu diperhatikan bahwa jenis kelamin hanya 2. Dalam komputer keadaan yang nilainya hanya dua dapat juga disimbolkan dengan suatu keterangan misalnya L untuk laki-laki atau P untuk perempuan. Hal ini tentu saja akan menghemat tempat penyimpanan di komputer. Tentu saja kita akan menyimpan data L daripada Laki-laki yang data maksimumnya hanya 1 karakter.

Untuk attribut golongan darah datanya dapat berupa A,B,O,AB. Data golongan darah maksimum 2 karakter. Untuk attribut Nama Ayah dan Nama Ibu bisa kita perkirakan umumnya maksimum panjang nama orang Indonesia mungkin saja 25 karakter. Namun bila suatu saat ditemukan siswa yang namanya melebihi 25 karakter maka struktur dari attribut Nama harus diubah.

Untuk attribut alamat datanya tersusun atas rangkaian angka (numerik) dan karakter (alphabet) sehingga disebut sebagai alphanumerik. Sistem pengalamatan di Indonesia memasukkan jalan, gang, nomo rumah, rt/rw. Panjang maksimum alamat dapat diperkirakan 50 yang merupakan gabungan angka dan karakter.
Gambar berikut merupakan gambaran attribut baik panjang maupun tipe datanya.

Attribut Panjang Tipe Data
NIS 5 Numerik
Nama 25 Alphabet
Alamat 50 Alphanumerik
Jenis Kelamin 1 Alphabet
Agama 10 Alphabet
Golongan Darah 2 Alphabet
Telepon 12 Numerik
Nama Ayah 25 Alphabet
Nama Ibu 25 Alphabet

Sampai saat ini attribut dan tipe data dari entitas sudah kita dapatkan. Namun khususnya tipe data Numerik, Alphabet, dan Alphanumerik dalam implementasinya di sistem manajemen basis data relasional berbeda-beda. Sebagai contoh di MS-Access tipe data numerik dapat disimpan dalam tipe Shortint, Byte, Integer, Longint; sedangkan di MySQL dapat berupa tipe TinyInt, ShortInt, Integer, Number. Dapat dikatakan belum ada standar baku untuk tipe data pada masing-masing sistem manajemen basis data relasional.

Membuat Struktur Tabel Siswa di MYSQL


Modul II

23 Desember 2009

Setelah mengikuti pelatihan dalam Modul II, Anda diharapkan telah memiliki kemampuan:
– Mengenal web server apache
– Mengenal database server MySql
– Mengenal application server PHP

Pengantar

Pada pemrograman web database, halaman-halaman web (web pages) disimpan dalam suatu komputer yang disebut dengan server. Halaman-halaman tersebut dikelola oleh suatu perangkat lunak (software) yang disebut web server. Contoh-contoh dari web server seperti Apache, IIS (Internet Information Server), Xitami, PWS (Personal Web Server), JSP (Java Server Page), dsb.

Pemakai (client) meminta (request) suatu halaman web dengan cara mengetikkan alamat halaman web tersebut di baris alamat pada web browser. Sebagai contoh http://www.respati.ac.id/index.html. Bila halaman web index.html yang dipanggil ada di web server respati.ac.id maka halaman web tersebut akan diberikan (response) ke web browser dan web browser menampilkannya. Bila halaman web yang diminta tidak ada di web server maka di web browser Anda akan muncul keterangan Web Page Not Found yang menandakan bahwa halaman web tidak di temukan di web server.

Halaman web yang terlihat dalam web browser tersusun dari tag-tag HTML (Hypertext Markup Language). Tag-tag HTML sering juga disebut dengan Kode HTML. Kode HTML disimpan dengan akhiran (ekstensi) .HTML atau .html. Kode HTML tidak dapat berinteraksi dengan suatu basis data. Untuk mengatasi kekurangan ini maka perlu dibuat suatu kode yang dapat berinteraksi dengan basis data. Kode yang dapat berinterasksi dengan basis data tetap harus diterjemahkan kedalam kode HTML oleh Web server. Kode yang dapat berinteraksi dengan basis data dioleh suatu program yang disebut dengan application server. Contoh dari application server seperti ASP, PHP, Java, dsb.

Application server berinterasksi denga suatu basis data yang disebut dengan database server. Jenis-jenis database server antara lain MySQL, SQL Server, Oracle, Interbase, dsb. Application server memproses kodenya yang berisikan intruksi untuk memanipulasi suatu basis data. Manipulasi basis data pada umumnya tentang bagaimana defenisi, manipulasi, dan kontrol data.

Latihan 1. Mengaktifkan Web Server (Apache)
-. Klik tombol Start
-. Klik All Programs
-. Klik PHP Triads
-. Klik Apache Console
-. Klik Start Apache

Berikutnya akan muncul jendela Start Apache. Jendela ini tetap harus aktif bila Anda akan menjalankan kode PHP. Anda masih ingat bahwa kode PHP bekerja di web server. Web server di sini adalah Apache.

Latihan 2. Mengaktifkan Web Browser (Mozilla Firefox)
-. Buka Web Browser. Pada latihan ini akan digunakan web browser mozilla firefox. Untuk mengaktifkannya klik Start –> All Programs –> Mozilla Firefox –> Mozilla Firefox. Anda juga dapat menggunakan web browser lainnya seperti Internet Explorer (IE), Apple Safari, dsb.

Latihan 3. Menjalankan Web Server
-.Pastikan web Browser sudah Aktif. Bila belum aktif ikuti langkah-langkah di Latihan 2. Mengaktifkan Web Browser.
-. Ketikkan http://localhost/ di baris alamat dan tekan Enter untuk menjalankan Web Server.

Latihan 4. Mengaktifkan Database Server
-. Klik start
-. Klik All Programs
-. Klik PHP Triads
-. Klik MySQL
-. Klik MySQL-D

Sekilas Anda akan melihat jendela pengaktifan Database Server, namun sesaat kemudian jendela tersebut hilang. Anda tidak perlu risau akan hal tersebut karena memang begitulah adanya.

Latihan 5. Menjalankan Database Server
1. Pastikan web server sudah aktif. Bila web server belum aktif lakukan langkah-langkah di Latihan 1. Mengaktifkan Web Server.
2. Pastikan database server sudah aktif. Bila database server belum aktif ikuti langkah-langkah pada Latihan 4. Mengaktikan Database Server.
3. Pastikan web browser sudah aktif. Bila web browser belum aktif lakukan langkah-langkah seperti di Latihan 2. Mengaktifkan Web Browser. Di web browser Mozilla Firefox, Anda dapat membuka Tab Baru dengan menekan tombol cepat (shortcut) Ctrl + T atau dengan menekan menu File New Tab. Dalam suatu window dapat dibuka banyak Tab. Tiap-tiap Tab ini layaknya seperti sebuah jendela baru. Dalam suatu tab dapat ditampilkan suatu halaman web.
4. Ketikkan http://localhost/phpmyadmin di baris alamat web browser

Latihan 6. Menguji Application Server

1. Buka editor notepad dengan mengklik tombol Start –> All Programs –> Accessories –> Notepad

2. Ketikkan kode program berikut

3. Simpan kode program dengan nama hallo.php. Klik menu File –> Save

selanjutnya akan muncul kotak dialog Save As.
4. Dalam dialog Save As lakukan pengaturan berikut ini:
-Pada combobox Save in arahkan ke c:\Apache\Htdocs

-Pada textbox File Name ketikkan hallo.php
-Pada combobox Save As Type pilih All Type
-Tekan tombol Save untuk melakukan penyimpanan.

5. Pastikan Web Browser Sudah Aktif. Bila belum aktif ikuti langkah-langkah di Latihan 2. Mengaktifkan Web Browser. Tekan Ctrl + T untuk membuka Tab baru dan Ketikkan http://localhost/hallo.php di baris alamat browser.

Bila di web browser Anda tertera tulisan Hallo maka Anda telah sukses membuat kode program PHP. Dari kode program kecil ini selanjutnya Anda dapat mengembangkan program-program yang lebih besar. Dan memang semuanya intinya dimulai dari yang kecil. Sukses buat Anda!

Mungkin Anda bertanya, Bagiamana sih kode program tersebut sebenarnya bekerja? Baiklah berikut ini akan dijelaskan bagaimana pemrosesan umum terjadi.

1. Pada saat Anda mengetikkan http://localhost/hallo.php menandakan bahwa Anda meminta suatu halaman web dengan nama hallo.php di server localhost. Server localhost mengacu kepada tempat web server Anda berada. Karena web server Anda diinstal di komputer Anda maka standar pengacuan dari komputer local adalah localhost. Anda dapat saja mengaturnya misalkan dengan nama perusahanjaya.com, excelentt.com, dsb.

2. Setelah Anda menekan Enter maka web server mencari file hallo.php. Karena Ada maka web server melihat jenis file yang diminta. Web server mengetahui bahwa file yang diminta adalah file PHP maka selanjutnya file tersebut diserahkan ke PHP untuk mengerjakannya. Disini file PHP akan mulai mengeksekusi kode programmnya baris per baris yang dimulai dari :
, yang menandakan akhir dari kode PHP
hasil terjemahan PHP tersebut adalah
Hallo
diberikan kembali ke web browser.
3. Web browser selanjutnya mengirimkan kembali isi file hallo.php ke web browser.
4. Web Browser menapilkan isi file hallo.php


Modul I

19 Desember 2009

Setelah mengikuti pelatihan pada modul i, Anda diharapkan telah memiliki kemampuan:
– pengertian umum tentang aplikasi web database
– pengaksesan web database
– mengenal software perancangan web database
– mengenal HTML

Pengantar

Saat ini para perancang software (software developer) yang akan merancang sistem yang baru umumnya akan menawarkan alternatif basis sistem yang dirancang apakah berbasis web atau tidak bagi para pemakainya (user). Dan pada akhirnya pilihan akan jatuh ke sistem berbasis web. Pilihan ini dilakukan tentu saja dilatarbelakangi oleh beberapa faktor seperti:
– tersedianya perangkat lunak (software) perancangan yang gratis (open source)
– aplikasi dapat diakses oleh semua orang dari berbagai penjuru dunia
– aplikasi dapat dihubungkan dengan teknologi handphone (mobile)

Tersedianya perangkat lunak yang gratis akan lebih memudahkan untuk mengembangkan suatu program. Walaupun diakui suatu perangkat lunak yang gratis tidak memiliki badan resmi yang bertanggung jawab bila suatu saat perangkat lunak tersebut mengalami kegagalan (error). Namun mengingat komunitas web (web community) dewasa ini sudah sangat kuat, kegagalan-kegagalan pada perangkat lunak gratis akan lebih mudah terselesaikan misalnya dengan membentuk suatu forum diskusi.

Aplikasi berbasis web sudah dapat diakses dari handphone. Kemudahan mendapatkan handhpone juga telah turut mendorong para perancang aplikasi untuk membuat aplikasi yang mudah digunakan dari handpone. Dengan jumlah pengguna hanphone yang terus bertambah akan lebih memudahkan pangsa pasar dari aplikasi yang akan dirancang. Hal ini umumnya menjadi pertimbangan utama dari pengguna sistem.

Pada mulanya aplikasi berbasis web masih bersifat statis, artinya halaman web yang terlihat tidak berubah-ubah isinya. Bila dinginkan perubahan isi maka kode programnya juga harus diubah. Dengan kehadiran bahasa pemrograman seperti ASP, PHP, Java telah memungkinkan untuk membuat aplikasi berbasis web yang dinamis, dimana isi dari suatu halaman web dapat diubah-ubah tanpa mengubah kode programnya. Isi dari halaman web dapat diubah-ubah karena bahasa pemrograman ASP, PHP, Java dapat berkomunikasi dengan suatu database seperti MySQL, SQL Server, Oracle, dan lain sebagainya. Dari sini kemudian istilah web database programming (pemrograman webdatabase) muncul.

Pada web statis semua kode program ditulis dalam suatu bahasa yang disebut dengan HTML (hypertext markup language). HTML disusun dengan tag-tag (tanda-tand) secara terstruktur. Tag-tag HTML dapat ditingkatkan fungsinya dengan memanfaatkan kode CSS (Cascade Style Sheet). Selain itu juga kode HTML dapat mengakses kode JavaScript. Namun tag-tag HTML tidak dapat mengakses basis data.

Pada web dinamis, Anda menuliskan kode program dengan memanfaatkan suatu bahasa pemrograman web seperti PHP, ASP, Java, dsb. Dalam bahasa pemroraman ini Anda dapat memasukkan (embedded) tag-tag HTML. Dalam kode program ini juga Anda dapat menuliskan perintah untuk memanipulasi basis data (MySQL, SQL Server, Oracle). Interaksi antara bahasa pemrograman dan basis data dibawah kendali perangkat lunak yang disebut web server (seperti : Apache, IIS, Xitami, JSP, ColdFusion, dsb). Web server selanjutnya memberikan hasil akhir ke web browser. Karena bahasa pemrograman dan basis data bekerja di sisi server sehingga bahasa pemrograman sering disebut application server dan basis data disebut database server.

Software-Software Pembuatan Web Database
Bila Anda ingin membuat suatu sistem web database, berikut ini akan dijelaskan beberapa software yang sebaiknya Anda miliki.
1. Web Server. Web server merupakan software tempat (host) application server dan database server bekerja. Web server akan merespons halaman web yang Anda minta (request). Software web server yang dapat Anda gunakan seperti : Apache, IIS (Internet Information Service), Xitami, JSP, dsb.
2. Application Server. Application server merupakan suatu bahasa pemrograman yang digunakan untuk berkomunikasi dengan basis data. Tiap application server memiliki ciri spesifik. Untuk itu Anda perlu memahami tata cara penulisan (syntax) penulisan dari suatu application server. Hasil akhir dari application server akan diterjemahkan oleh web server kedalam format HTML karena web browser hanya mengenali kode HTML.
3. Database server. Database server merupakan aplikasi yang mengelola data. Pengelolaan basis data mulai dari tahap defenisi (Data Defenition), manipulasi (Data Manipulation) dan kontrol (Data Control). Jenis-jenis database server seperti MySQL, SQL Server, Oracle, dsb.
4. Web Browser. Web browser merupakan aplikasi yang digunakan untuk meminta (request) halaman web yang ada di web server. Web browser yang banyak digunakan seperti Mozilla, Internet Explorer, Apple Safari, dsb.
5. Editor. Kode PHP ditulis dengan menggunakan software pembuatan dokumen teks seperti Notepad, Macromedia Dreamweaver, MS-Word, dsb.

Software-software di atas merupakan software-software standar yang digunakan untuk merancang web database. Bila Anda ingin agar tampilan web database Anda lebih baik lagi, software-software berikut juga perlu dimanfaatkan.

1. Aplikasi suara. Dengan memanfaatkan suara dalam web Anda akan lebih memikat orang lain untuk menggunakannya. Aplikasi suara seperti Winamp, CoolEdit dapat digunakan untuk memanipulasi suara.

2. Aplikasi grafis. Tampilan yang menarik dan interaktif telah menjadi tujuan utama dari perancangan software. Aplikasi seperti Photoshop, CorelDraw dapat digunakan untuk mempercantik tampilan web Anda.

3. Aplikasi video. Jamannya sudah jaman multimedia. Untuk itu anda juga dapat memanfaatkan software seperti Ulead, Adobe FireFox untuk memanipulasi video yang akan ditampilkan di web Anda.

HTML
Hypertext Markup Language (HTML) merupakan bahasa standar yang digunakan untuk memanipulasi halaman web. Aplikasi yang digunakan untuk menampilkan halaman web disebut dengan web browser. HTML tersusun atas rangkaian dari tag-tag. Tiap tag umumnya disusun dalam pasangan tag. Misalkan terdapat tag <B> maka pasangannya adalah </B>.
Untuk memahami HTML yang paling utama adalah menghafal strukturnya. Berikut adalah struktur umum dari HTML:

<HTML>
  <TITLE>
  </TITLE>
  <BODY>
  </BODY>
</HTML>

Latihan 1.
1. Buka Editor Notepad
-klik Start –> All Programs –> Accessories –> Notepad
2. Ketikkan kode HTML Berikut

3. Simpan kode HTML
-klik menu File –> Save.
-Tentukan letak penyimpanan file di combobox Save in.
-pada combobox Save as Type, pilih All Type
-Pada isian File Name ketikkan Lat1.html
-klik tombol Save untuk melakukan penyimpanan

4. Jalankan web browser. Pada modul ini digunakan Mozilla Firefox.
– Klik Start –> All Programs –> Mozilla Firefox –> Mozill Firefox

5. Buka Kode HTML dari Web Browser
– Klik menu File –> Open File
– Arahkan tempat letak file file Lat1.html combobox Look in

Hasil kode HTML di Web Browser:

Berikut ini adalah tag-tag yang dapat digunakan untuk menyusun kode HTML

Tag Keterangan
<html> </html> tag yang digunakan untuk menandai awal kode html
<title></title> untuk memberi judul suatu halaman web
<body></body> tempat untuk memanipulasi isi web
<p></p> membuat paragrap baru
<hn> </hn> membuat judul tulisan. n dimulai dari 1 s.d 6
<br></br> membuat tulisan pindah bari. Layaknya seperti Enter di MS-Word
<hr></hr> membuat garis horizontal
<b>td></b> membuat tulisan cetak tebal
<i></i> membuat tulisan cetak miring
<u></u> membuat tulisan cetak garis bawah
<sub></sub> membuat tulisan cetak setengah spasi di bawah tulisan
<sup></sup> membuat tulisan cetak setengah spasi di atas tulisan
<table></table> membuat tabel
<pre></pre> membuat tulisan seperti apada adanya
<tr></tr> membuat baris baru dalam tabel
<th></th> membuat judul dalam tabel
<td></td> membuat kolom dalam baris pada suatu tabel
<form></form> membuat formulir
<input type=tipe></input type=tipe> membuat obyek di form. Tipe dari obyek dapat berupa text, button, submit, reset, hidden, image

Modul I

5 Mei 2009

Setelah mengikuti pelatihan dalam Modul I ini, Anda diharapkan memiliki kemampuan:
– menjelaskan tentang Bahasa C
– mengenali lingkungan terpadu Bahasa C
– menjalankan kode program sederhana

Pendahuluan


Ikuti

Get every new post delivered to your Inbox.