Anda di halaman 1dari 68

Pengertian Tipe Data Pointer Pascal

Tipe data pointer adalah tipe data yang berisi alamat memory dari sebuah variabel. Untuk dapat
memahami ini, saya akan membahas terlebih dahulu bagaimana pascal (dan bahasa pemrograman lain)
menyimpan nilai dari sebuah variabel.

Ketika kita mendeklarasikan sebuah variabel (misalkan variabel ‘angka’), pascal akan menyiapkan sebuah
tempat di memory komputer. Tempat ini memiliki alamat, yang berfungsi untuk menandai lokasi variabel
tersebut.

Untuk dapat memahami ini, bayangkan memory komputer sebagai sebuah lemari besar. Variabel
disimpan di dalam setiap laci lemari. Setiap laci tentunya memiliki nomor agar mudah diakses. Nomor
laci inilah yang akan disimpan sebagai pointer.

Sebagai contoh, variabel ‘angka’ bisa ditempatkan di alamat 10023 pada memory komputer. Variabel
lain, misalnya ‘huruf’, akan disimpan di alamat 19920, variabel ‘i’ bisa disimpan di alamat 10033, dst.
Alamat memory inilah yang disimpan ke dalam tipe data pointer.

Pembahasan tentang pointer dan alamat memory ini sangat luas jika dibahas. Di jurusan ilmu komputer /
teknik informatika, terdapat mata kuliah ‘struktur data’ yang secara khusus akan membahas cara
penyimpanan data di dalam memory komputer, yang semuanya akan menggunakan pointer.

Cara Penggunaan Tipe Data Pointer Pascal

Sekarang, kita akan masuk ke praktek cara penggunaan tipe data pointer di dalam pascal.

Untuk dapat membuat pointer, di dalam pascal kita harus menyesuaikannya dengan variabel yang ingin
diakses. Maksudnya seperti ini, jika saya mendeklarasikan sebuah variabel ‘angka’:

var
angka: integer;

Disini variabel ‘angka’ disiapkan untuk menampung tipe data integer.

Untuk bisa menampung alamat memory dari variabel ‘angka’ ini, saya harus membuat pointer yang juga
di-set untuk menampung tipe data pointer integer. Berikut cara penulisannya:

var

pointer_angka : ^integer;

Perhatikan tanda ‘topi’ atau ‘caret’. Inilah cara pendeklarasian tipe data pointer di dalam pascal. ^integer
berarti saya mempersiapkan sebuah pointer untuk variabel integer.

Jika kita butuh pointer ke tipe data lain, penulisannya juga akan berbeda. Misalnya, untuk membuat
pointer ke alamat variabel yang bertipe data char, bisa ditulis sebagai berikut:

var

pointer_kata : ^char;

Baiklah, setelah deklarasi tipe data pointer selesai, lalu bagaimana cara penggunaannya?

Di dalam pascal, kita butuh karakter ‘@’ yang berfungsi untuk menampilkan alamat memory sebuah
variabel.

Perhatikan potongan kode program pascal berikut ini:

var

angka: integer;

pointer_angka : ^integer;

begin
pointer_angka:= @angka;

Baris terakhir: pointer_angka:= @angka adalah kode yang ‘mengaitkan’ kedua variabel ini. Sekarang,
variabel pointer_angka akan berisi alamat memory dari variabel ‘angka’. Silahkan anda pahami sebentar
maksud kalimat ini.

Apabila di tampilkan, variabel pointer_angka akan berisi: 40960. Inilah alamat memory yang
dipergunakan pascal untuk menyimpan variabel ‘angka’. Alamat ini sepenuhnya ditentukan oleh pascal,
terserah akan menyimpan di alamat memory mana.

Baiklah, jika sekarang variabel pointer_angka sudah berisi ‘40960’, lalu bagaimana cara menampilkan isi
dari alamat memory ini?

Jika saya menggunakan perintah:

writeln(pointer_angka);

Yang akan ditampilkan adalah alamat memory, bukan isi dari alamat memory tersebut. Untuk hal ini kita
kembali harus menggunakan karakter topi ‘^’ tetapi letaknya di akhir variabel, seperti berikut:

writeln(pointer_angka^);

Kali ini, perintah diatas akan menampilkan isi dari alamat memory yang ada di alamat ‘40960’.

Huff… anda masih bersama saya? Sebelum terlanjur ngantuk, mari kita langsung masuk ke contoh kode
program pascal:

program tipe_pointer;

uses crt;
var

angka: integer;

pointer_angka : ^integer;

begin

clrscr;

angka:= 99;

writeln('Variabel angka berisi: ',angka);

pointer_angka:= @angka;

writeln('Variabel pointer merujuk ke nilai: ',pointer_angka^);

angka:=74;

writeln('Variabel pointer merujuk ke nilai: ',pointer_angka^);

readln;

end.

Normalisasi Database Beserta Pengertian dan Contohnya

Normalisasi database merupakan suatu pendekatan sistematis untuk meminimalkan redundansi data
pada suatu database agar database tersebut dapat bekerja dengan optimal. Jika anda seorang database
administrator ketika terjadi sesuatu pada database seperti penurunan kinerja, mungkin anda akan
ditanya apakah database tersebut telah di normalisasi?

Tujuan Normalisasi Database

Tujuan normalisasi database adalah untuk menghilangkan dan mengurangi redudansi data dan tujuan
yang kedua adalah memastikan dependensi data (Data berada pada tabel yang tepat).
Jika data dalam database tersebut belum di normalisasi maka akan terjadi 3 kemungkinan yang akan
merugikan sistem secara keseluruhan.

INSERT Anomali : Situasi dimana tidak memungkinkan memasukkan beberapa jenis data secara langsung
di database.

DELETE Anomali: Penghapusan data yang tidak sesuai dengan yang diharapkan, artinya data yang
harusnya tidak terhapus mungkin ikut terhapus.

UPDATE Anomali: Situasi dimana nilai yang diubah menyebabkan inkonsistensi database, dalam artian
data yang diubah tidak sesuai dengan yang diperintahkan atau yang diinginkan.

Normalisasi Database

Normalisasi database terdiri dari banyak bentuk, dalam ilmu basis data ada setidaknya 9 bentuk
normalisasi yang ada yaitu 1NF, 2NF, 3NF, EKNF, BCNF, 4NF, 5NF, DKNF, dan 6NF. Namun dalam
prakteknya dalam dunia industri bentuk normalisasi ini yang paling sering digunakan ada sekitar 5
bentuk.

Normal Form

Data yang direkam dan dimasukkan secara mentah dalam suatu tabel pada bentuk ini sangat mungkin
terjadi inkonsistensi dan anomali data

Contoh Normal Form

Normalisasi Database Form (Rudiawan16)

Normalisasi Database Form (Rudiawan16)

1. Normal Form (1NF)

Bentuk normal yang pertama atau 1NF mensyaratkan beberapa kondisi dalam sebuah database, berikut
adalah fungsi dari bentuk normal pertama ini.
Menghilangkan duplikasi kolom dari tabel yang sama.

Buat tabel terpisah untuk masing-masing kelompok data terkait dan mengidentifikasi setiap baris dengan
kolom yang unik (primary key).

Contoh Normalisasi Database 1NF

Nirmalisasi Database 1NF (Rudiawan16)

Nirmalisasi Database 1NF (Rudiawan16)

dari manual bon pembelian diatas kita dapat menjadi bentuk normal pertama dengan memisah-
misahkan data pada atribut-atribut yang tepat dan bernilai atomik, juga seluruh record / baris harus
lengkap adanya.

2. Normal form (2NF)

Syarat untuk menerapkan normalisasi bentuk kedua ini adalah data telah dibentuk dalam 1NF, berikut
adalah beberapa fungsi normalisasi 2NF.

Menghapus beberapa subset data yang ada pada tabel dan menempatkan mereka pada tabel terpisah.

Menciptakan hubungan antara tabel baru dan tabel lama dengan menciptakan foreign key.

Tidak ada atribut dalam tabel yang secara fungsional bergantung pada candidate key tabel tersebut.

Contoh normalisasi database bentuk 2NF

Normalisasi Database 2NF (Rudiawan16)

Normalisasi Database 2NF (Rudiawan16)

Bentuk normal kedua dengan melakukan dekomposisi tabel diatas menjadi beberapa tabel dan mencari
kunci primer dari tiap-tiap tabel tersebut dan atribut kunci haruslah unik.
3. Normal Form (3NF)

Normalisasi database dalam bentuk 3NF bertujuan untuk menghilangkan seluruh atribut atau field yang
tidak berhubungan dengan primary key. Dengan demikian tidak ada ketergantungan transitif pada setiap
kandidat key. Syarat dari bentuk normal ketiga atau 3NF adalah :

Memenuhi semua persyaratan dari bentuk normal kedua.

Menghapus kolom yang tidak tergantung pada primary key.

Contoh Normalisasi Database Bentuk 3NF

Bentuk normal ketiga mempunyai syarat, setiap relasi tidak mempunyai atribut yang bergantung transitif,
harus bergantung penuh pada kunci utama dan harus memenuhi bentuk normal kedua (2 NF).

Normalisasi Database 3NF (Rudiawan16)

Normalisasi Database 3NF (Rudiawan16)

BCNF Boyce–Codd normal form

Merupakan sebuah teknik normalisasi database yang sering disebut 3.5NF, memiliki hubungan yang
sangat erat dengan bentuk 3NF. Pada dasarnya adalah untuk menghandle anomali dan overlooping yang
tidak dapat di handle dalam bentuk 3NF. Normalisasi database bentuk ini tergantung dari kasus yang
disediakan, tidak semua tabel wajib di normalisasi dalam bentuk BCNF.

Membuat database Pembelian


create database pembelian

use pembelian

Membuat table

create table kendaraan (

no_polisi char(10),

warna char(20),

merek char(30),

tahun char(5),

primary key (no_polisi)

sp_help kendaraan

create table mekanik (

mekanik_id char(5),

nama_mekanik varchar(50),

primary key (mekanik_id)

sp_help mekanik

create table parts (

kode_parts char(20),

nama_parts varchar(50),

harga int,

primary key (kode_parts)


)

sp_help parts

create table bon_pembelian (

no_faktur char(10),

tanggal datetime,

no_polisi char(10),

mekanik_id char(5),

potongan int,

primary key (no_faktur),

constraint FK_nopolisi foreign key (no_polisi) references kendaraan(no_polisi),

constraint FK_mekanik foreign key (mekanik_id) references mekanik(mekanik_id)

sp_help bon_pembelian

create table transaksi_parts (

no_faktur char(10),

kode_parts char(20),

qty int,

harga int,

discount int,

primary key (no_faktur,kode_parts),

constraint FK_nofaktur foreign key (no_faktur) references bon_pembelian(no_faktur),

constraint FK_kodeparts foreign key (kode_parts) references parts(kode_parts)

)
sp_help transaksi_parts

Mengisi data pada table

/*jawaban no.3 */

/** Isi data table kendaraan **/

INSERT INTO kendaraan VALUES('B3117LB','Biru','Supra X','2005')

INSERT INTO kendaraan VALUES('B2121AA','Merah','Supra X','2005')

/** isi data table mekanik **/

INSERT INTO mekanik VALUES('DDE','Djoko Dewanto')

/** isi data table parts **/

INSERT INTO parts VALUES('20W501000CC','Oli Top 1 000cc',27000)

INSERT INTO parts VALUES('SERV001','Engine Tune Up',25000)

/** isi data table bon_pembelian **/

INSERT INTO bon_pembelian VALUES('05103214',GETDATE(),'B3117LB','DDE',2000)

INSERT INTO bon_pembelian VALUES('05103215',GETDATE(),'B2121AA','DDE',0)

/** isi data table transkasi_parts **/

INSERT INTO transaksi_parts (no_faktur,kode_parts,qty,harga,discount)

select '05103214','20W501000CC',2,harga,1000 FROM parts where kode_parts='20W501000CC'

INSERT INTO transaksi_parts (no_faktur,kode_parts,qty,harga,discount)

select '05103214','SERV001',1,harga,2000 FROM parts where kode_parts='SERV001'

INSERT INTO transaksi_parts (no_faktur,kode_parts,qty,harga,discount)

select '05103215','SERV001',1,harga,2000 FROM parts where kode_parts='SERV001'

Menampilkan data dari table yang telah kita isi

/*jawaban no.3 */
select * from kendaraan

select * from mekanik

select * from parts

select * from bon_pembelian

select * from transaksi_parts

/** Relasi antar table hingga terbentuk 1NF **/

select a.no_faktur, a.tanggal,a.no_polisi,e.warna,e.merek,e.tahun,a.mekanik_id,d.nama_mekanik,

b.kode_parts,c.nama_parts,b.qty,b.harga,b.discount,(b.qty*b.harga)-(b.qty*b.discount) as
jumlah,a.potongan,

(select sum((qty*harga)-(qty*discount))-a.potongan from transaksi_parts where no_faktur=a.no_faktur)


as total

from bon_pembelian as a

join transaksi_parts as b ON a.no_faktur=b.no_faktur

join parts as c ON b.kode_parts=c.kode_parts

join mekanik as d ON a.mekanik_id=d.mekanik_id

join kendaraan as e ON a.no_polisi=e.no_polisi

ADVERTISEMENT

Iklan

REPORT THIS AD

REPORT THIS AD

Share this:

TwitterFacebook16
2 RESPONS UNTUK ‘NORMALISASI DATABASE BESERTA PENGERTIAN DAN CONTOHNYA’

Ahmad

Juli 25, 2018 pukul 10:06 am

Artikel yang sangat lengkap padat dan jelas. Penjelasan tentang Normaliasasinya sangat lengkap, jelas
dan mudah untuk saya pahami. Terimakasih.

Izin share blog ya

Jangan lupa kunjungi blog sederhana saya di

http://www.ahmadsi2b.blogspot.com

dan kunjungi pula

http://www.atmaluhur.ac.id

Balas

rudiawan16

Juli 27, 2018 pukul 4:01 am

ok bos ..

Balas

TINGGALKAN BALASAN

Alamat surel Anda tidak akan dipublikasikan. Ruas yang wajib ditandai *

Komentar
Nama *

Surel *

Situs Web

KIRIM KOMENTAR

Beri tahu saya komentar baru melalui email.

© 2019 BELAJAR TI DAN PEMEROGRAMAN

BLOG DI WORDPRESS.COM.

Tutup dan terima Privasi & Cookie: Situs ini menggunakan cookie.

Cara Membuat Tabel HTML dengan tag <table>, <tr> dan <td>

Untuk membuat tabel di HTML, kita membutuhkan setidaknya 3 tag, yaitu tag <table>, tag <tr>, dan tag
<td>:

Tag <table> digunakan untuk memulai tabel

Tag <tr> adalah singkatan dari table row, digunakan untuk membuat baris dari tabel.

Tag <td> adalah singkatan dari table data, digunakan untuk menginput data ke tabel.
Link adalah suatu objek yang dapat berupa teks atau gambar yang dipakai dalam kode, HTML untuk
menuju dari suatu bagian ke bagian yang lain pada halaman yang sama, atau menuju ke halaman (file)
yang berbeda. Default suatu link biasnya ditandai dengan teks warna biru dengan garis bawah, dan jika
pointer mouse ditujukan ke link tersebut, maka akan berubah menjadi telunjuk tangan,

Peran link dalam halaman web sanagt besar dan selalu dibutuhkan untuk memudahakan untuk
memudahkan pengguna web dalam berintraksi dengan halaman-halaman web yang ada. Link dalam
HTML ditandai dengan tag <A> (Anchor) yang terdiri dari atribut HREE yang digunakan untuk menuliskan
lokasi tujuan (file) dari link dan variabel NAME yang digunakan untuk menyimpan nama variabel kunci
sebagai lokasi (bagian) `yang akan dituju` oleh link.

Sintaks link adalah sebagai berikut: <a href=”url”> nama link</a>

Link dapat dibuat pada suatu teks atau gambar dengan cara melatakkan teks atau gambar tersebut di
antara tag pembuka < A HREF> dan tag penutup </A>.

Contoh penulisan kode link adalah sebagai berikut :

......

<A HREF=”tugas.html” NAME=”#bagian1”> Ke BAB 2 </A>

<A HREF=”tugas.html#bagian1” NAME=”#bagian2”>

Ke BAB 1</A>

Link menggunakan gambar :

<A HREF=”tugas.html” NAME=”#bagian1”>

<img src=”logo.jpg> </A>

......

Pada bagian href digunakan untuk referensi file tujuan, sehingga pada contoh di atas dapat ditulis
href=”tugas.html”>.

Jika pada file tugas.html terdapat banyak bab dan penempatan link digunakan untuk berpindah antar
bab, maka pada tiap link diberi nama variabel setelah tag name dan pada href disebutkan bagian bab
yang dituju, sehingga penulisannya menjadi :

Href=”tugas.html1#bagian2”.
1. Mengenal Jenis Link

Keleebihan utama dari dokumen HTML adalah kemampuannya untuk memberikan link dari satu teks
atau gambar menuju ke dokumen atau bagian lain dalam suatu dokumen html. Browser Web akan
meyorot (“highleght”) teks atau gambar yang didefinisikan sebagai link dengan warna dan garis bawah
untuk menunjukkan bahwa itu adalah hyperlink atau link.

a. Link Relatif

Link relatif merupakan link yang fungsinya untuk berpindah antar halaman web komputer yang sama.
Jika dua halaman web berada pada satu direktori yang sama, maka dapat dituliskan nama file halaman
yang dituju. Contohnya :

<a href =”halaman2.html”>Lanjut</A>

b. Link Absolut

Link absolut adalah link yang fungsinya untuk berpindah antara halaman website yang satu dengan
website yang lain di internet. Contohnya :

<a href =https://ilmukomputer1313.blogspot.co.id>Kunjungi blog saya</A>

B. FORMAT LINK ANATAR ISI PADA SUATU HALAMAN WEB

1. Pengertian

Format link antar isi pada suatu halaman web biasa disebut juga dengan link dalam satu halaman,
berbeda dengan hyperlink pada umumnya yang biasa digunakan untuk menghubungkan suatu tulisan
dengan tulisan lain yang berada pada halaman yang berbeda atau blog yang berbeda, link itu lebih
banyak digunakan untuk halaman yang sama. Misalnya membuat tautan link yang mengarah ke atas, ke
tengah, dan ke bawah.

Link ini dibuat untuk dokumen yang panjang sekali, sehingga apabila ditampilkan dalam browser web
akan mengharuskan kita melakukan scroll layar berulang-ulang.

Navigasi untuk penelusuran dokumen dapat dimudahkan dengan membuat link atar bagian, dengan
menandai setiap bagian tersebut dengan memberinya nama. Sehingga dalam dokumen akhir ada bagian
yang bernama, dan di bagian lainnya dapat diletakkan link untuk menuju ke bagian-bagian tersebut.
2. Prinsip Dasar Penggunaan

Prinsip dasarnya adalah kita menandai terlebih dahulu suatu bagian dengan memberi tanda tag anchor
misalnya <a name=”atas”>, kemudian pada bagian yang lain kita buat link untuk memangginya dengan
kode <a href=”#atas”>.

Sintaksnya adalah sebagai berikut :

<a name=”atas”>ATAS</a> <-- objek tujuan

<a href=”#atas”>ke Atas</a <-- link menuju ke tujuan

Perhatikan tanda pagar (#) di atas, untuk objek tujuan tidak memakai tanda pagar, akan tetapi untuk link
yang menuju ke tujuan harus memakai tanda pagar.

Link yang menuju ke suatu bagian tertentu sangat berguna terutama untuk halaman web dengan
postingan yang sangat panjang, sehingga link dengan target dalam satu halaman ini untuk
mempermudah navigasi pengunjung website.

3. Cara Membuat Link dalam Satu halaman

a. Menentukan nama terget

Pilih bagian artikel yang ingin dijadikan sebagai target link, bisa berupa sebuah paragraf, subjudul,
kalimat, atau kata yang kita inginkan. Kemudian dibuat name atau id pada kata yang dipilih tersebut
dengan satu nama variabel, dalam pemberian nama variabel tersebut tanpa menggunakan spasi, karena
spasi pada browser akan berubah menjadi “%20%

Contoh 1 :

<div id=”bab3”> BAB III </div>

Contoh 2 :

<a name=”bab4”> BAB IV </a>

b. Membuat link ke target

Buatlah kalimat atau kata yang ingin dijadikan sebagai link yang akan ditunjukan ke target link, misalnya
sebagai berikut :
* <a href=”#bab3”>Ke Bab III </a>

* <a href=”#bab4”>Ke Bab IV </a>

4. Link ke File

Ada beberapa cara penulisan sintaks link untuk menuju ke suatu halaman tertentu (file). Berikut ini
adalah cara penulisan link yang menuju ke halaman yang berbeda.

* jika file yang dituju berada pada folder/directory yang sama dengan file link, maka cukup dituliskan
nama filenya, misalnya :

<a href=”produk.html”>Daftar Produk</a>

* jika file yang dituju berada pada subfolder di dalamnya, maka dituliskan nama foldernya. misalnya:

<a href=”galery/macam.html”>Galery Produk</a>

* Jika file yang dituju berada pada folder di atas folder yang ditemapati oleh file link, maka
penulisannya seperti berikut:

<a href=”../tentang.html”>About me</a>

* Jika file yang dituju berada dua tingkat di atas folder link, maka dituliskan dua kali titik seperti
berikut ini:

<a href=”../../tentang.html”>About me</a>

Berdasarkan lokasi tujuannya, link dapat dibedakan menjadi 4 macam, yaitu:

a. Link yang menuju ke bagian tertentu pada halaman yang sama <a href=”#bab2”
name=”bab1”>Lihat Bab 2</a>

b. Link yang menuju ke halaman yang lain dalam web yang sama <a href=”galery.html”>Galeri
Foto</a>

c. Link yang menuju ke halaman yang lain dalam web yang berbeda <a
href=”http://www.rusydi94.blogspot.com/tentang.html”>Tutorial Web</a>

d. Link yang menuju ke bagian tertentu pada halaman web yang berbeda <a
href=”http://www.rahul94.blogspot.com/home.html#ling”>Linknya</a>

C. FORMAT LINK ANTAR HALAMAN WEB UNTUK MEMBENTUK SITEMAP


Link merupakan cara untuk membuka atau memanggil halaman web atau file tertentu. Link merupakan
tag yang sangat penting dalam penggunaan HTML, karena dengan adanya link yang akan membedakan
antara dokumen HTML dengan dokumen teks biasa.

Setiap halaman, file, direktori, dan lokasi di internet selalu memiliki alamat URL-nya (Uniform Resourece
Locator) sendiri-sendiri yang menuju pada server web di internet.

Hampir semua link menggunakan teks sebagai penghubungnya. Teks yang berada di antara tag <A> dan
</A> akan menampilkan dengan garis bawah dengan warna standar biru.

Sebenarnya warna ini dapat diubah sesuai dengan keinginan pembuat web dengan menambahkan
atribut LINK, ALINK, dan VLINK dalam tag <BODY>. Atribut LINK digunakan untuk memberi warna pada
link saat mouse diklik dan VLINK digunakan untuk memberikan warna pada link yang sudah dikunjungi.
Sintaksnya adalah sebagai berikut:

<BODY LINK=”green” ALINK=”red” VLINK=”pink”>

Selain mengatur warna pada link, kita juga dapat menghilangkan garis bawah pada suatu link dengan
membuat sintak seperti berikut ini :

<A HREF=http://www.yahoo.com stye=”text-decoration:none”>Ke Yahoo</a>

* Link Antar Halaman Web Untuk Membentuk Sitemap

Link dapat dibuat gambar manapun teks seperti yang telah dijelaskan pada pelajaran sebelumnya.
Untuk membuat link yang menggunakan gambar peta, dapat dilihat pada contoh berikut ini:

....

<img src=”map.jpg” usemap=”#mapku”>

<map name=”mapku”>

<area shape=”rect” coords=”100,100,200,200”>

<area shape=”circle” coords=”50,50,30”>

<area shape=”poly” coords=”300,300,400,400,500,500,600,600”>

</map>
.....

Rect digunakan untuk membuat area map berbentuk segi empat dengan titik awal 100,100dan titik akhir
200,200.

Circle digunakan untuk membuat area map berbentuk lingkaran dengan titik tengah 50,50 dan diameter
30.

Poly digunakan untuk membuat area map berbentuk polygon dengan titik pertama 300,300, titik kedua
400,400, titk ketiga 500,500, titik keempat, 600,600 dan dapat ditambahkan titik berikutnya.

D. FORMAT TARGET LINK, EMAIL, DAN TELEPON

1. Format Target Link

Jika suatu link diklik maka browser akan menampilkan halaman yang dituju oleh link tersebut. Ada dua
macam penampilan oleh browser dalam memunculkan halaman tujuan tersebut.

Pertama, ditampilkan pada jendela yang sama sehingga halaman temapt link itu ditutup dan digantikan
oleh halaman yang dituju dan ini merupakan cara pemunculan default.

Kedua, ditampilkan pada jendela yang baru, sehingga akan muncul jendela yang baru untuk
menampilkan halaman yang dituju.

Dalam pembuatan link ini, harus ditambahkan atribut TARGET=”_blank” dalam tag <a herf>, sehingga
penulisannya adalah sebagai berikut:

<a href=”halaman.html” target=”_blank”>

Berikut ini adalah beberapa target yang dapat diisikan pada link:

· _blank : halaman yang dipanggil akan muncul pada jendela baru.

· _top : halaman yang dipanggil akan mengisi penuh jendela yang sama, mesikipun
tadinya ada frame.

· _self : halaman yang dipanggil akan mengisi temapt yang sama, bila link tersebut dalam
sebuah frame maka halaman yang dipanggil akan mengisi frame tersebut.
· _parent : halaman yang dipanggil akan mengisi FRAMESET satu tingkat lebih tinggi dari
FRAME temapt link yang bersangkutan.

2. Link Email

Link dapat digunakan untuk mengirim ke alamat email, jika link ini diklik akan membuka jendela
pengiriman email dari program email yang terinstall pada komputer (misalnya Microsoft Outlook).

Pada kota tujuan email (ToJ akan tercantum alamat email tujuan.

Contoh:

Link yang langsung menuju ke alamat e-mail.

<a href=”mailto:budi.prihhastomo13@gmail.com?subject=judulnya?”>

Kiri email</a>

3. Link telepon

Link dapat digunakan untuk melakukan panggilan telepon, jika link ini diklik akan melakukan panggilan
telepon pada nomor tujuan. Penulisan kodenya adalah sebagai berikut:

....

<a href=”tel://085290410466”>Klik disini untuk menghubungi saya</a>

....

4. Link SMS

Link dapat digunakan untuk melakukan pengiriman pesan SMS pada nomor tujuan, jika link ini diklik
akan melakukan pengiriman SMS pada nomor tujuan. Penulisan kodenya adlah sebagai berikut :

.....

<a href=”sms:085290410466&body=Pendaftaran”>SMS ke saya:</a>

.....

5. Link Download
Link yang digunakan untuk pengambilan file dari server atau yang lebih dikenal dengan istilah download
adalah link yang ditunjukan kepada fiel-file yang bukan file web, yaitu file yang tidak bisa ditampilkan
oleh browser misalnya: file aplikasi dengan ekstensi EXE, file kompresi (ZIP), file audio (MP3), file
dokumen seperti DOC, XLS, dan lainnya.

Bila link semacam ini diklik, maka akan mucul kotak dialog yang menanyakan apakah anda meyimpan
(save) file itu dalam harddisk atau membukanya dengan program aplikasi yang sesuai.

Penulisan kodenya adalah sebagai berikut :

....

<a href=”Modul”_web.doc”>Download</a>

....

DDL (Data Definition Language)

DDL merupakan perintah SQL yang berhubungan dengan pendefinisian suatu struktur database yang
digunakan untuk membuat, mengubah dan menghapus struktur dan definisi metadata dari objek-objek
database.

Beberapa perintah dasar yang termasuk DDL ini antara lain :

a. CREATE

Perintah ini digunakan untuk membuat, termasuk diantaranya membuat database baru, tabel baru, view
baru, dan kolom.

b. ALTER

Perintah ini digunakan untuk mengubah struktur tabel yang telah dibuat. Pekerjaannya mencakup
mengganti nama tabel, menambah kolom, mengubah kolom, menghapus kolom, maupun memberikan
atribut pada kolom.

c. RENAME

Perintah yang digunakan untuk merubah nama Objek


d. DROP

Perintah ini digunakan untuk menghapus database dan tabel.

DCL (Data Control Language)

DCL merupakan perintah SQL yang berhubungan dengan manipulasi user dan hak akses (priviledges).

Perintah SQL yang termasuk dalam DCL antara lain :

a. GRANT

Perintah ini digunakan untuk memberikan hak / izin akses oleh administrator (pemilik utama) server
kepada user (pengguna biasa). Hak akses tersebut berupa hak membuat (CREATE), mengambil (SELECT),
menghapsu (DELETE), mengubah (UPDATE) dan hak khusus berkenaan dengan sistem databasenya.

b. REVOKE

perintah ini memiliki kegunaan terbalik dengan GRAND, yaitu untuk menghilangkan atau mencabut hak
aksesyang telah diberikan kepada user oleh administrator.

PHP adalah bahasa pemrograman script server-side yang didesain untuk pengembangan web. Selain itu,
PHP juga bisa digunakan sebagai bahasa pemrograman umum (wikipedia). PHP di kembangkan pada
tahun 1995 oleh Rasmus Lerdorf, dan sekarang dikelola oleh The PHP Group. Situs resmi PHP beralamat
di http://www.php.net.

PHP disebut bahasa pemrograman server side karena PHP diproses pada komputer server. Hal ini
berbeda dibandingkan dengan bahasa pemrograman client-side seperti JavaScript yang diproses pada
web browser (client).

Pada awalnya PHP merupakan singkatan dari Personal Home Page. Sesuai dengan namanya, PHP
digunakan untuk membuat website pribadi. Dalam beberapa tahun perkembangannya, PHP menjelma
menjadi bahasa pemrograman web yang powerful dan tidak hanya digunakan untuk membuat halaman
web sederhana, tetapi juga website populer yang digunakan oleh jutaan orang seperti wikipedia,
wordpress, joomla, dll.

Saat ini PHP adalah singkatan dari PHP: Hypertext Preprocessor, sebuah kepanjangan rekursif, yakni
permainan kata dimana kepanjangannya terdiri dari singkatan itu sendiri: PHP: Hypertext Preprocessor.

PHP dapat digunakan dengan gratis (free) dan bersifat Open Source. PHP dirilis dalam lisensi PHP
License, sedikit berbeda dengan lisensi GNU General Public License (GPL) yang biasa digunakan untuk
proyek Open Source.

Kemudahan dan kepopuleran PHP sudah menjadi standar bagi programmer web di seluruh dunia.
Menurut wikipedia pada februari 2014, sekitar 82% dari web server di dunia menggunakan PHP. PHP
juga menjadi dasar dari aplikasi CMS (Content Management System) populer seperti Joomla, Drupal, dan
WordPress.

Dikutip dari situs w3techs.com, (diakses pada 18 Desember 2014), berikut adalah market share
penggunaan bahasa pemrograman server-side untuk mayoritas website di seluruh dunia :

Market Share PHPDapat dilihat dari tampilan diatas bahwa mayoritas website modern saat ini
menggunakan PHP.

Fungsi PHP Dalam Pemrograman Web

Untuk membuat halaman web, sebenarnya PHP bukanlah bahasa pemrograman yang wajib digunakan.
Kita bisa saja membuat website hanya menggunakan HTML saja. Web yang dihasilkan dengan HTML (dan
CSS) ini dikenal dengan website statis, dimana konten dan halaman web bersifat tetap.

Sebagai perbandingan, website dinamis yang bisa dibuat menggunakan PHP adalah situs web yang bisa
menyesuaikan tampilan konten tergantung situasi. Website dinamis juga bisa menyimpan data ke dalam
database, membuat halaman yang berubah-ubah sesuai input dari user, memproses form, dll.
Untuk pembuatan web, kode PHP biasanya di sisipkan kedalam dokumen HTML. Karena fitur inilah PHP
disebut juga sebagai Scripting Language atau bahasa pemrograman script.

Sebagai contoh penggunaan PHP, misalkan kita ingin membuat list dari nomor 1 sampai nomor 10.
Dengan menggunakan HTML murni, kita bisa membuatnya secara manual seperti kode berikut ini:

<!DOCTYPE html>

<html>

<head>

<title>Contoh list dengan HTML</title>

</head>

<body>

<h2>Daftar Absensi Mahasiswa</h2>

<ol>

<li>Nama Mahasiswa ke-1</li>

<li>Nama Mahasiswa ke-2</li>

<li>Nama Mahasiswa ke-3</li>

<li>Nama Mahasiswa ke-4</li>

<li>Nama Mahasiswa ke-5</li>

<li>Nama Mahasiswa ke-6</li>

<li>Nama Mahasiswa ke-7</li>

<li>Nama Mahasiswa ke-8</li>

<li>Nama Mahasiswa ke-9</li>

<li>Nama Mahasiswa ke-10</li>

</ol>

</body>
</html>

Halaman HTML tersebut dapat dibuat dengan mudah dengan cara men-copy-paste tag <li> sebanyak 10
kali dan mengubah sedikit angka-angka no urut di belakangnya. Namun jika yang kita inginkan adalah
menambahkan list tersebut menjadi 100 atau 1000 list, cara copy-paste tersebut menjadi tidak efektif.

Jika menggunakan PHP, kita tinggal membuat perulangan for sebanyak 1000 kali dengan perintah yang
lebih singkat seperti berikut ini:

<!DOCTYPE html>

<html>

<head>

<title>Contoh list dengan PHP</title>

</head>

<body>

<h2>Daftar Absensi Mahasiswa</h2>

<ol>

<?php

for ($i= 1; $i <= 1000; $i++)

echo "<li>Nama Mahasiswa ke-$i</li>";

?>

</ol

</body>

</html>

SQL merupakan singkatan dari Structured Query Language. SQL atau juga sering disebut sebagai query
merupakan suatu bahasa (language) yang digunakan untuk mengakses database. SQL dikenalkan
pertama kali dalam IBM pada tahun 1970 dan sebuah standar ISO dan ANSII ditetapkan untuk SQL.
Standar ini tidak tergantung pada mesin yang digunakan (IBM, Microsoft atau Oracle). Hampir semua
software database mengenal atau mengerti SQL. Jadi, perintah SQL pada semua software database
hampir sama.

Terdapat 3 (dua) jenis perintah SQL, yaitu DDL, DML dan DCL.

1. DDL atau Data Definition Language

DDL merupakan perintah SQL yang berhubungan dengan pendefinisian suatu struktur database, dalam
hal ini database dan table. Beberapa perintah dasar yang termasuk DDL ini antara lain :

CREATE

ALTER

RENAME

DROP

2. DML atau Data Manipulation Language

DML merupakan perintah SQL yang berhubungan dengan manipulasi atau pengolahan data atau record
dalam table. Perintah SQL yang termasuk dalam DML antara lain :

SELECT

INSERT

UPDATE

DELETE

3. DCL atau Data Control Language

DCL (bukan BCL) merupakan perintah SQL yang berhubungan dengan pengaturan hak akses user MySQL,
baik terhadap server, database, tabel maupun field. Perintah SQL yang termasuk dalam DCL antara lain :

GRANT

REVOKE

Membuat, Menampilkan, Membuka dan Menghapus Database

1. Membuat Database

Sintaks umum membuat database baru adalah:

CREATE DATABASE [IF NOT EXISTS] nama_database;


Bentuk perintah di atas akan membuat sebuah database baru dengan nama nama_database. Aturan
penamaan sebuah database sama seperti aturan penamaan sebuah variabel, dimana secara umum
nama database boleh terdiri dari huruf, angka dan under-score (_). Jika database yang akan dibuat sudah
ada, maka akan muncul pesan error. Namun jika ingin otomatis menghapus database yang lama jika
sudah ada, aktifkan option IF NOT EXISTS.Setiap kita membuat database baru, maka sebenarnya MySQL
akan membuat suatu folder (direktori) sesuai dengan nama databasenya yang ditempatkan secara
default di \mysql\data. Di dalam folder tersebut nantinya akan terdapat file-file yang berhubungan
dengan tabel dalam database.

Berikut ini contoh perintah untuk membuat database baru dengan nama “mahasiswa” :

CREATE DATABASE mahasiswa;

Jika query di atas berhasil dieksekusi dan database berhasil dibuat, maka akan ditampilkan pesan sebagai
berikut :

Query OK, 1 row affected (0.02 sec)

2. Melihat Database

Untuk melihat database yang baru saja dibuat atau yang sudah ada, dapat menggunakan perintah
sebagai berikut :

SHOW DATABASES;

Hasil dari perintah di atas akan menampilkan semua database yang sudah ada di MySQL. Berikut ini
contoh hasil dari query di atas :

+--------------+

| Database |

+--------------+

| mahasiswa |

| mysql |

| test |

+--------------+

3 rows in set (0.02 sec)

3. Membuka Database
Sebelum melakukan manipulasi tabel dan record yang berada di dalamnya, kita harus membuka atau
mengaktifkan databasenya terlebih dahulu. Untuk membuka database “mahasiswa”, berikut ini querynya
:

USE mahasiswa;

Jika perintah atau query di atas berhasil, maka akan ditampilkan pesan sebagai berikut :

Database changed

4. Menghapus Database

Untuk menghapus suatu database, sintaks umumnya adalah sbb :

DROP DATABASE [IF EXISTS] nama_database;

Bentuk perintah di atas akan menghapus database dengan nama nama_database. Jika databasenya ada
maka database dan juga seluruh tabel di dalamnya akan dihapus. Jadi berhati-hatilah dengan perintah
ini! Jika nama database yang akan dihapus tidak ditemukan, maka akan ditampilkan pesan error. Aktifkan
option IF EXISTS untuk memastikan bahwa suatu database benar-benar ada.

Berikut ini contoh perintah untuk menghapus database dengan nama “mahasiswa” :

DROP DATABASE mahasiswa;

Halaman 2 (Membuat, Mengubah dan Menghapus Table)

Cara Melakukan Koneksi PHP ke MySQL

Buat Database MySQL

Langkah ini diperlukan ketika Anda belum memiliki database MySQL. Pertama-tama, silakan buat
database MySQL melalui cPanel dengan mengikuti tutorial berikut ini. Dalam tutorial tersebut database
berhasil dibuat menggunakan nama niagahos_namadatabase. Nama niagahos_user sendiri berfungsi
sebagai user dari database. Jika ingin menggunakan nama database Anda sendiri, silakan sesuaikan
dengan nama database yang Anda inginkan.

PENTING: Setelah Anda berhasil membuat database MySQL, jangan lupa catat detail database seperti
nama, username dan password dari database.

Buat File Koneksi PHP untuk Dihubungkan ke Database MySQL

Setelah Anda membuat atau sudah memiliki database MySQL langkah selanjutnya ialah membuat
koneksi php. Di sini koneksi ke database akan berjalan dengan nama niagahos_namadatabase dan user
niagahos_user. Selanjutnya yang tidak boleh Anda lewatkan pada cara membuat koneksi php ialah
memastikan Anda telah menyimpan password dari user database Anda, pada contoh ini menggunakan
password passworddatabase.

Hal lain yang cukup penting, pastikan hostname yang Anda gunakan sudah benar. Kebanyakan hosting
menggunakan hostname bernama localhost, sama halnya jika web hosting Anda berada di layanan
Niagahoster. Apabila Anda tidak menggunakan hosting di Niagahoster, silakan tanyakan ke layanan
hosting Anda mengenai hostname yang Anda gunakan.

Silakan buat file PHP pada direktori utama website maupun direktori yang Anda inginkan. Dalam contoh
ini kami meletakkannya pada direktori public_html dengan nama file koneksidatabase.php. Nantinya
Anda dapat mengaksesnya melalui http://namadomain.com/koneksidatabase.php.

Masukkan script koneksi ke dalam file koneksidatabase.php. Berikut ini adalah contoh kode standar yang
dapat digunakan untuk melakukan koneksi PHP ke MySQL.

<?php

$servername = "localhost";

$database = "niagahos_namadatabase";

$username = "niagahos_user";

$password = "passworddatabase";

// untuk tulisan bercetak tebal silakan sesuaikan dengan detail database Anda

// membuat koneksi

$conn = mysqli_connect($servername, $username, $password, $database);

// mengecek koneksi

if (!$conn) {

die("Koneksi gagal: " . mysqli_connect_error());

}
echo "Koneksi berhasil";

mysqli_close($conn);

?>

Metode utama pada script ini menggunakan function mysqli_connect(). Ini adalah fungsi internal PHP
dan Anda dapat membaca penjelasannya di sini. Di MySQLi, huruf i adalah improved yang berarti versi
update dari MySQL.

Pada baris kode di awal, Anda akan melihat beberapa deklarasi variabel berikut value-nya. Biasanya
diperlukan 4 variabel agar dapat terhubung ke database, yaitu: $servername, $database, $username,
dan $password. Di bagian kode, telah ditentukan detail database sebagai value dari variable tersebut. Di
dalam function mysqli_connect() Anda dapat melihat variabel tersebut digunakan.

Function mysqli_connect() akan mencoba untuk terhubung ke database sesuai value dari variabel. Jika
koneksi tidak berhasil, pesan seperti di bawah ini akan muncul.

if ($conn->connect_error) {

die("Connection failed: " . $conn->connect_error);

Function die() dieksekusi pada bagian ini, dimana akan menghentikan script dan memberikan pesan yang
telah di-set. Karenanya, secara default akan menampilkan Connection failed: dan pesan error akan
membantu untuk menentukan masalahnya.

Jika koneksi berhasil, kode selanjutnya akan dieksekusi.

echo "Connected successfully";

Kode ini akan menampilkan pesan sukses sebagai ganti pesan gagal pada kondisi sebelumnya.

Bagian terakhir adalah kode berikut ini.


mysqli_close($conn);

Kode di atas akan menutup koneksi ke database dengan cara manual. Jika tidak Anda tentukan, koneksi
akan tertutup dengan sendirinya setelah script berakhir. Nah, Anda dapat menggunakan baris kode ini
untuk menutup koneksi.

Anda dapat menjalankan kode di atas dengan mengakses script melalui domain Anda.

Cek Koneksi dan Mengatasi Masalah yang Sering Muncul

Setelah Anda menyelesaikan langkah di atas, selanjutnya cara mengkoneksikan database ke web ialah
cek koneksi ke database dengan mengakses file. Pengecekan dapat Anda lakukan melalui
http://namadomain.com/koneksidatabase.php.

1. Jika kode PHP berjalan dengan baik dan terhubung tanpa ada masalah, Anda akan melihat pesan
berikut ini ketika mengakses script yang ada di website Anda.

2. Jika tidak berhasil terhubung, Anda akan melihat pesan yang berbeda. Sebagai contoh, di sini kami
mengganti password yang ada pada kode PHP dan muncul pesan seperti di bawah ini.

Apabila Anda melihat pesan seperti di atas, hal pertama yang perlu Anda lakukan adalah cek detail
database. Penyebab lain error seperti contoh di atas dapat terjadi adalah karena user yang Anda
gunakan belum terhubung ke database. Untuk memastikannya Anda dapat melakukan pengecekan
apakah user sudah terhubung atau belum melalui menu MySQL Databases di cPanel Anda.

Jika sudah terhubung, Anda akan melihat keterangan seperti gambar di bawah ini.
koneksi php ke mysql

3. Error lain yang sering muncul adalah tampilnya error server host seperti gambar di bawah ini.

Hal seperti di atas dapat terjadi karena hostname yang digunakan salah dan script PHP tidak dapat
terhubung ke server.

Hal yang cukup penting untuk mengecek penyebab error adalah dengan mengecek file error_log. Anda
dapat menemukannya pada folder yang sama dengan script yang Anda jalankan.

Sebagai contoh, jika Anda menjalankan script pada direktori public_html, Anda akan menemukan file
error_log pada direktori public_html. Di dalam file tersebut terdapat semua laporan error yang dapat
Anda gunakan untuk melakukan troubleshooting.

Basis Data Client Server adalah merupakan sebuah paradigma dalam teknologi informasi yang merujuk
kepada cara untuk mendistribusikan aplikasi ke dalam dua pihak: pihak klien dan pihak server.

Secara sederhana, Client Server dapat di artikan sebagai aplikasi manajemen database terpusat (DBMS)
yang diatur dan dikendalikan oleh satu komputer yang disebut server. Server dalam hal ini berfungsi
melayani request (permintaan) dari komputer lain yang disebut workstation atau Client.

Client melakukan permintaan ke Server dengan mengirimkan perintah yang ukurannya sangat kecil,
kemudian server menjalankan perintah tersebut dan mengirimkan langsung hasilnya ke Client.

Cara Backup Database Menggunakan CLI

Melakukan backup atau export database MySQL caranya cukup mudah menggunakan alat mysqldump
yang telah disediakan oleh MySQL.
Perintah untuk melakukan backup atau export database:

mysqldump -u [uname] -p[pass] [dbname] > [backupfile].sql

[uname] merupakan nama pengguna yang memiliki akses ke database;

[pass] kata sandi pengguna dari [uname];

[dbname] merupakan nama database yang ingin dilakukan backup atau export;

[backupfile] merupakan nama untuk file backupnya.

Misal saya ingin melakukan backup database dengan nama pengguna khairil, nama database indoworx
dan saya ingin menyimpan file backup database tersebut menjadi db_idwx.sql maka perintah yang harus
saya jalankan:

mysqldump -u khairil -pkatasandi indoworx > db_idwx.sql

Dengan menjalankan perintah diatas maka akan menghasilkan sebuah file backup bernama db_idwx.sql
yang dapat Anda simpan untuk berjaga – jaga jika terjadi kerusakan atau kehilangan pada database
Anda.

Cara Backup Database Yang Besar dengan Compress

Jika database yang Anda ingin lakukan backup memiliki ukuran data yang besar, Anda dapat melakukan
kompresi pada file database tersebut dengan perintah.

mysqldump -u [uname] -p[pass] [dbname] | gzip -9 > [backupfile].sql.gz

Untuk melakukan uncompress atau ekstrak file terkompresi tersebut Anda dapat menggunakan perintah:

gunzip [backupfile].sql.gz

Cara Restore Database Menggunakan CLI


Cara selanjutnya untuk melakukan restore atau import file database MySQL yang telah kita backup
sebelumnya caranya cukup mudah hampir sama seperti cara backup atau export database yaitu dengan
menggunakan mysql.

Perintah untuk melakukan restore atau import database:

mysql -u [uname] -p[pass] [dbname] < [backupfile].sql

[uname] merupakan nama pengguna yang memiliki akses ke database;

[pass] kata sandi pengguna dari [uname];

[dbname] merupakan nama database yang ingin dilakukan restore atau import;

[backupfile] merupakan nama untuk file yang ingin dilakukan restore.

Misal saya ingin melakukan restore database dengan nama pengguna khairil, nama database indoworx
dan saya ingin menyimpan file backup database tersebut menjadi db_idwx.sql maka perintah yang harus
saya jalankan:

mysql -u khairil -pkatasandi indoworx < db_idwx.sql

Dengan menjalankan perintah diatas maka seluruh data yang telah terbackup pada file db_idwx.sql akan
masuk ke dalam database indoworx.

Entity Relationship Diagram (ERD) adalah sebuah model data yang didasarkan atas persepsi dunia nyata,
yang terdiri dari objek dasar yang disebut dengan entitas dan hubungan (relation) antara objek-objek
tersebut.

Entitas (entity) adalah kelompok orang, tempat, objek, kejadian atau konsep tentang apa yang kita
perlukan untuk men-capture dan menyimpan data.

Kategori entitas:

Orang: agen, kontraktor, pelanggan

Tempat: wilayah, gedung, ruangan, kampus


Objek: buku, mesin, produk

Peristiwa: penerapan, pembatalan, pendaftaran

Konsep: rekening, dana, stok.

Atribut (attribute) adalah sifat atau karakteristik deskriptif suatu entitas. Contoh: entitas Mahasiswa
memiliki atribut: npm, nama, alamat, no_telepon, tgl_lahir.

Beberapa atribut dikelompokkan secara logis menjadi superatribut (superattribute) yang disebut atribut
gabungan (compound attribute).

Misalnya, nama, merupakan atribut gabungan dari nama_depan, nama_tengah, dan nama_keluarga.

Hubungan (relationship) adalah hubungan yang terdapat di antara satu atau lebih entitas.

Misalnya: hubungan antara entitas STUDENT dan MATA KULIAH:

MAHASISWA mengikuti satu atau lebih MATA KULIAH.

MATA KULIAH diikuti oleh nol, satu, atau lebih MAHASISWA.

Contoh Relationship

Kardinalitas (cardinality) adalah jumlah minimum dan maksimum kemunculan satu entitas yang mungkin
dihubungkan dengan kemunculan tunggal dari entitas lain.

Ada sejumlah kemungkinan banyaknya keterhubungan antar entitas tersebut, yaitu:

Satu-ke-satu (one to one)

Satu-ke-banyak (one to many)

Banyak-ke-banyak (many to many)

Satu-ke-satu (1 : 1)
Tingkat hubungan dinyatakan satu-ke-satu jika satu kejadian pada entitas yang pertama hanya
mempunyai satu hubungan dengan satu kejadian yang ada pada entitas kedua, dan sebaliknya, satu
kejadian pada entitas yang kedua hanya bisa mempunyai satu hubungan dengan satu kejadian pada
entitas yang pertama.

Satu-pada-banyak (1 : N atau N : 1)

Tingkat hubungan satu-ke-banyak adalah sama dengan banyak pada satu, tergantung dari arah mana
hubungan tersebut dilihat.

Untuk satu kejadian pada entitas yang pertama dapat mempunyai banyak hubungan dengan kejadian
pada entitas yang kedua, sebaliknya untuk satu kejadian pada entitas yang kedua hanya bisa mempunyai
satu hubungan pada entitas yang pertama.

Banyak-ke-banyak (N : N atau M : N)

Tingkat hubungan banyak-pada-banyak terjadi jika tiap kejadian pada sebuah entitas akan mempunyai
banyak hubungan dengan kejadian pada entitas lainnya, baik dilihat dari sisi entitas yang pertama,
maupun dilihat dari sisi entitas yang kedua.

Contoh Kardinalitas Metode Chen

Sebelum mempelajari CSS anda harus mengetahui HTML DASAR terlebih dahulu . CSS singkatan dari
Cascading Style Sheet . CSS merupakan sebuah bahasa pemrograman yang fungsinya untuk
menstrukturkan komponen-komponen web yang beragam sesuai dengan keinginan kita .

Cascading Style Sheet (CSS) merupakan aturan untuk

mengendalikan beberapa komponen dalam sebuah web sehingga akan lebih terstruktur dan seragam.
CSS bukan merupakan bahasa pemograman.

Sama halnya styles dalam aplikasi pengolahan kata seperti Microsoft Word yang dapat mengatur
beberapa style, misalnya heading, subbab, bodytext, footer, images, dan stylelainnya untuk dapat
digunakan bersama-sama dalam beberapa berkas (file). Pada umumnya CSS dipakai untuk memformat
tampilan halaman web yang dibuat dengan bahasa HTML dan XHTML.

CSS dapat mengendalikan ukuran gambar, warna bagian tubuh pada teks, warna tabel, ukuran border,
warna border, warna hyperlink, warna mouse over, spasi antar paragraf, spasi antar teks, margin kiri,
kanan, atas, bawah, dan parameter lainnya. CSS adalah bahasa style sheet yang digunakan untuk
mengatur tampilan dokumen. Dengan adanya CSS memungkinkan kita untuk menampilkan halaman
yang sama dengan format yang berbeda.

Soal gaya Masalah Besar

HTML tidak pernah dimaksudkan untuk berisi tag untuk memformat dokumen.

HTML itu dimaksudkan untuk menentukan isi dari sebuah dokumen, seperti:

<h1> Ini adalah heading </ h1>

<p> Ini adalah sebuah paragraf. </ p>

Ketika tag seperti <font>, dan atribut warna ditambahkan dengan spesifikasi HTML 3.2 , mulai mimpi
buruk bagi pengembang web. Pengembangan situs web yang besar , dimana informasi font dan warna
yang ditambahkan ke setiap halaman menjadi proses yang panjang dan mahal.

CSS Menyimpan Banyak Kerja .

CSS mendefinisikan cara elemen HTML yang akan ditampilkan. Gaya biasanya disimpan dalam file css
eksternal . Style sheet eksternal memungkinkan anda untuk mengubah tampilan dan tata letak semua
halaman dalam sebuah situs web hanya dengan mengedit satu file tunggal .

Belajar CSS Untuk Pemula

CSS adalah singkatan dari Cascading Style Sheet yang berarti kumpulan kode-kode yang berurutan &
saling berhubungan untuk mengatur format / tampilan suatu halaman HTML. Maka dari itu saya
sarankan anda Belajar HTML Dasar dulu sebelum Belajar CSS.

CSS berfungsi mengatur beberapa gaya / style elemen-elemen HTML seperti mengganti jenis font,
ukuran font, perataan dalam dokumen, &sebagainya. Penggunaan CSS lebih dianjurkan daripada
menggantikan jenis font & sebagainya dengan menggunakan atribut HTML. CSS lebih mudah terapkan
karena untuk merubah banyak elemen HTML dengan style yang sama hanya dengan membuatkan satu
style, beda dengan HTML yang diharuskan merubah setiap atributnya. Bagi yang ingin mempelajari CSS,
anda bisa membaca tulisan tutorial CSS yang saya kumpulkan dibawah ini.

Cascading Style Sheet (CSS)


merupakan salah satu bahasa pemrograman web untuk mengendalikan beberapa komponen dalam
sebuah web sehingga akan lebih terstruktur dan seragam. Sama halnya styles dalam aplikasi pengolahan
kata seperti Microsoft Word yang dapat mengatur beberapa style, misalnya heading, subbab, bodytext,
footer, images, dan style lainnya untuk dapat digunakan bersama-sama dalam beberapa file. Pada
umumnya CSS dipakai untuk memformat tampilan halaman web yang dibuat dengan bahasa HTML dan
XHTML.

.. CSS dapat mengendalikan ukuran gambar, warna body teks, warna tabel, ukuran border, warna border,
warna hyperlink, warna mouse over, spasi antar paragraf, spasi antar teks, margin
kiri/kanan/atas/bawah, dan parameter lainnya.CSS adalah bahasa style sheet yang digunakan untuk
mengatur tampilan dokument. Dengan adanya CSS memungkinkan kita untuk menampilkan halaman
yang sama dengan format yang berbeda .

.. Dasar dari CSS sendiri sebenarnya sudah banyak sekali, namun tampilan yang dihasilkan syntaks –
syntaks dari CSS lama masih belum menarik bagi para end-user atau pengunjung. Syntaks css secara
umum dapat ditulis sebagai berikut :

<html>

<head>

<style type=”text/css”>

…isi css…

</style>

…isi halaman…

</body>

</html>

. atau dpat langsung menuliskan style pada tag html-nya : <img src =”../images/contoh.gif” align=”…”
Padding,Border,Margin…. >

Contoh Css :

height: 35px; width: 100px; border: 1px solid #ff0000; background: #ff0000; background: -moz-linear-
gradient( center top, white 20%, #ff0000 100% ); background: -webkit-gradient( linear, left top, left
bottom, color-stop(.2, white), color-stop(1, #ff0000) )

Apabila suatu style dari css akan dipergunakan untuk beberapa halaman, akan lebih tepat
mendeklarasikan css tersebut ke dalam suatu file css terpisah dan baru dipanggil pada suatu halaman.
Contoh yang paling sederhana adalah sebagai berikut:
Contoh kerangka kode berikut akan disimpan pada file.css

html {…}

body {…}

a {…}

.b {…}

.c {…}

#tujuan{…}

#header h1 a:visited{…}

a.page-numbers:hover {…}

div.content-bottom{…}

table th {…}

fieldset {…}

legend {…}

form {…}

p{…}

h1 {…}

div#nama li{…}

textarea {…}

input[type=”…”] {…}

select {…}

label{…}

pre {…}

code {…}

blockquote {…}

ul {…}
li {…}

Untuk memanggilnya dengan menambahkan kode html seperti berikut <link rel=”stylesheet”
type=”text/css” href=”contoh.css” /> atau dapat juga dengan <style src=”contoh.css” type=”text/css”
media=”screen” />. Pada pemanggilan fungsi dari css terdapat 2 penulisan (class dan id) yang berbeda
dengan fungsi yang berbeda pula. Pada suatu elemen dapat memakai lebih dari 1 class namun hanya
dapat menggunakan satu id. Jika diambil contoh di atas maka pemanggilan dapat digunakan dengan cara
sebagai berikut:

<p></p> dan untuk penulisan id adalah <div id=”header”> </div> atau lebih jelas lagi seperti pada
penggunaan link <a href=”#tujuan “/>. Jadi secara logika kita tidak dapat menggunakan class pada
penggunaan link seperti contoh di atas. Atribut dari css pada dasarnya ada banyak sekali walaupun
jumlahnya terhingga. Atribut untuk CSS dasar meliputi bagian, antara lain;

Background

Border

Classification

Dimension

Font

Generated Content

List and Marker

Margin

Outlines

Padding

Positioning

Table

Text

Sedangkan untuk CSS3 akan ada lebih banyak lagi tambahan atribut dari CSS dasar sehingga akan lebih
mudah dipelajari dari kasus – kasus tertentu yang akan diberikan pada topik pembahasan studi kasus
tentunya masih di Tutorial Pembelajaran.

Struktur Kendali
Struktur kendali merupakan pengatur aliran program dan mempunyai rangkaian perintah

yang harus ditulis untuk memenuhi beberapa keadaan, yaitu :

- Melanjutkan sebuah pernyataan bila kondisi terpenuhi.

- Mengulang suatu perintah jika terpenuhi suatu kondisi.

- Memilih sebuah pilihan dari beberapa alternatif bila kondisi terpenuhi.

Terdapat 2 macam struktur kendali, yaitu:

1. Struktur Kendali Percabangan (pengambilan keputusan)

2. Struktur Kendali Perulangan (looping)

Struktur Kendali Percabangan (Pengambilan Keputusan)

Struktur kendali percabangan (pengambilan keputusan) merupakan struktur kendali yang

berfungsi untuk melakukan pemilihan atas perintah yang akan dijalankan sesuai dengan

kondisi tertentu. Terdapat empat perintah percabangan dalam PHP, yaitu if, if..else, if..elseif, dan

switch.

1. Perintah IF

Perintah if digunakan untuk menjalankan satu atau lebih perintah berdasarkan suatu

kondisi. Sintaks penulisan perintah if adalah sebagai berikut :

if (kondisi)

pernyataan yang akan dijalankan apabila kondisi benar

}
Pada bentuk ini, bagian pernyataan akan dijalankan hanya kalau bagian kondisi bernilai benar.

Contoh penggunaan struktur kendali if :

File : if.php

<html>

<head>

<title>Struktur Kendali IF</title>

<head>

<body>

<?php

$nilai = 80;

if($nilai >= 70)

echo "Nilai Anda $nilai, Anda Lulus";

?>

</body>

</html>

Keterangan :

Pada program tersebut, terdapat pemeriksaan kondisi apakah isi variabel $nilai lebih dari sama

dengan 70. Jika kondisi ini bernilai TRUE (variabel $nilai lebih dari sama dengan 70) maka

perintah echo “Nilai Anda $nilai, Anda Lulus” akan di jalankan. Sebaliknya

jika kondisinya FALSE.


2. Perintah IF – ELSE

Perintah if-else digunakan untuk memilih salah satu pernyataan berdasarkan suatu

kondisi. Perintah ini akan menjalankan pernyataan tertentu bila kondisi bernilai benar dan

akan menjalankan pernyataan yang lain jika kondisi bernilai salah. Sintaks penulisannya

adalah sebagai berikut :

if (kondisi)

pernyataan_1

else

pernyataan_2

Pernyataan_1 dijalankan kalau kalau kondisi bernilai benar, dan

pernyataan_2 dijalankan apablila kondisi bernilai salah.

Contoh penggunaan struktur kendali if-else :

File : ifelse.php

<html>

<head>
<title>Struktur Kendali IF ELSE</title>

<head>

<body>

<?php

$nilai = 50;

if($nilai >= 70) {

echo "Nilai Anda $nilai, Anda LULUS";

else {

echo "Nilai Anda $nilai, Anda GAGAL";

?>

</body>

</html>

3. Perintah IF – ELSEIF

Perintah if-else if digunakan untuk menjalankan suatu pernyataan dengan melibatkan

lebih dari satu kondisi. Sintaks penulisannya sebagai berikut :

if (kondisi_1)

pernyataan_1

elseif (kondisi_2)

{
pernyataan_2

else

pernyataan_3

Pernyataan_1 dijalankan kalau kalau kondisi_1 bernilai benar, dan

pernyataan_2 dijalankan apabila kondisi_2 bernilai benar. Sedangkan Pernyataan_3 akan

dijalankan apabila kondisi_1 dan kondisi_2 bernilai salah.

Contoh penggunaan struktur kendali if-elseif :

File : ifelseif.php

<html>

<head>

<title>Struktur Kendali IF ELSEIF</title>

<head>

<body>

<?php

$waktu = getdate();

if ($waktu[hours] <= 10)

print("Selamat Pagi");
}

elseif ($waktu[hours] <= 15)

print("Selamat Siang");

elseif ($waktu[hours] <= 18)

print("Selamat Sore");

else

print("Selamat Malam");

?>

</body>

</html>

4. Perintah Switch

Perintah switch digunakan sebagai alternatif pengganti dari perintah if-elseif. Dengan

perintah ini program percabangan akan lebih mudah dibuat dan dipelajari. Sintaks penulisan

perintah switch adalah sebagai berikut:

switch (kondisi)

case konstanta_1:
pernyataan_1;

break;

case konstanta_2:

pernyataan_2;

break;

default:

pernyataan_3;

Perintah switch akan menyeleksi kondisi yang diberikan dan membandingkan hasilnya

dengan konstanta-konstanta yang berada pada case. Pembandingan akan dimulai dari

konstanta_1 sampai konstanta terakhir. Jika hasil dari kondisi sama dengan nilai konstanta

tertentu, maka pernyataan pada konstanta tersebut akan dijalankan sampai ditemukan

pernyataan break. Jika hasil dari kondisi tidak ada yang sama dengan konstanta-konstanta

yang diberikan, maka pernyataan pada default yang akan dijalankan.

Contoh penggunaan struktur kendali switch :

File : switch.php

<?php

$jurusan = "SI";

switch($jurusan)

case "KA":
echo "$jurusan = Komputerisasi akuntansi";

break;

case "MI":

echo "$jurusan = Manajemen Informatika";

break;

case "SI":

echo "$jurusan = Sistem Informasi";

break;

case "TI":

echo "$jurusan = Teknik Informatika";

break;

default:

echo "$jurusan tidak terdaftar";

?>

Struktur Kendali Perulangan (Looping)

Struktur kendali perulangan digunakan untuk mengulang suatu perintah sebanyak

yang diinginkan. Contohnya : menampilkan nomor bilangan 1 s.d. 10. Kalau kita menuliskan

secara manual, maka sangat tidak efesien apalagi jika kita ingin menampilkan bilangan 1 s.d.

1000. Ada beberapa perintah perulangan yang dapat digunakan, diantaranya : For, While,

Do ... While, dan Foreach.

1. Perintah For

Perintah for digunakan untuk mengulangi suatu perintah dengan jumlah perulangan
yang sudah diketahui. Pada perintah ini tidak perlu menuliskan suatu kondisi untuk diuji. Kita

hanya perlu menuliskan nilai awal dan akhir variabel penghitung. Nilai variabel penghitung

akan secara otomatis bertambah atau berkurang tiap kali sebuah perulangan dilaksanakan.

Sintaks penulisan perintah for adalah sebagai berikut :

for (nilai_awal; nilai_akhir; penambahan/pengurangan)

pernyataan yang dijalankan

Contoh struktur perulangan dengan for :

File : Latihan1.php

<html>

<head>

<title>Struktur Perulangan dengan FOR</title>

</head>

<body>

<?php

for($i=1; $i<=6; $i++)

echo "<h$i>Ini adalah contoh heading $i</h$i>";

}
?>

</body>

</html>

File : Latihan2.php

<html>

<head>

<title>Struktur Perulangan dengan FOR</title>

</head>

<body>

<?php

for($j=1; $j<=10; $j++)

echo "$j";

echo "<br>";

for($k=1; $k<=10; $k++)

echo "$k <br>";

?>

</body>

</html>
File : Latihan3.php

<html>

<head>

<title>Struktur Perulangan dengan FOR</title>

</head>

<body>

<?php

for($r=1; $r<=10; $r++)

for($s=1; $s<$r; $s++)

echo "*";

echo "<br>";

?>

</body>

</html>

2. Perintah While

Perintah while digunakan untuk mengulangi suatu perintah sampai jumlah yang belum

bisa ditentukan. Perulangan akan terus berjalan selama kondisi masih bernilai benar. Sintaks

penulisan perintah while adalah sebagai berikut:


while (kondisi)

pernyataan yang akan dijalankan

Contoh struktur pengulangan dengan while :

File : Latihan4.php

<html>

<head>

<title>Struktur Perulangan dengan WHILE</title>

</head>

<body>

<?php

$i=1;

while ($i <= 10)

echo "Ini perulangan yang ke-$i<br>";

$i++;

?>

</body>

</html>
3. Perintah Do - While

Perintah do-while, proses pengulangan akan terus dikerjakan jika kondisi yang

diperiksa di while masih bernilai benar. Proses pengulangan akan dihentikan jika kondisi

sudah bernilai salah. Sintaks penulisannya sebagai berikut:

do

pernyataan yang dijalankan

while (kondisi);

Perbedaan antara perintah while dengan do-while adalah terletak dari kondisi yang

diperiksa. Pada perintah while, kondisi yang diperiksa terletak di awal perulangan, sehingga

sebelum masuk ke dalam perulangan while kondisi harus bernilai benar.

Sedangkan pada perintah do-while, kondisi diperiksa di akhir perulangan. Ini berarti

bahwa paling sedikit sebuah perulangan akan dilakukan oleh perintah do...while, karena

untuk masuk ke perulangan tidak ada kondisi yang harus dipenuhi.

Contoh struktur pengulangan dengan do...while :

File : Latihan5.php

<html>

<head>

<title>Struktur Perulangan dengan do while</title>


</head>

<body>

<?php

$i = 1;

do

echo "Ini juga pengulangan yang ke-$i<br>";

$i++;

while ($i <= 6);

$j = 5;

do

echo "<br>Perulangan ini kondisinya tidak terpenuhi<br>";

$j++;

while($j <= 3);

?>

</body>

</html>

4. Foreach

Perintah foreach merupakan sebuah perulangan pada variabel bertipe array. Sintaks

penulisan foreach sebagai berikut:


Foreach variabel array as variabel lain)

pernyataan yang dijalankan

Contoh struktur pengulangan dengan foreach:

File : Latihan6.php

<html>

<head>

<title>Struktur Perulangan dengan foreach</title>

</head>

<body>

<?php

$a = array("Cirebon","Jakarta","Bandung","Yogyakarta");

foreach ($a as $data)

echo "$data <br>";

?>

</body>

</html>

Demikian yang dapat saya jelaskan, semoga bermanfaat ya :) See you next time..
Query

adalah semacam kemampuan untuk menampilkan suatu data dari database dimanamengambil dari
table-tabel yang ada di database, namun tabel tersebut tidak semuaditampilkan sesuai dengan yang kita
inginkan. data apa yang ingin kita tampilkan.misal : data peminjam dengan buku yang dipinjam, maka
nanti akan mengambil data daritable peminjam dan tabel buku.

Query

adalah suatu extracting data dari suatu database dan menampilkannya untuk

“pengolahan” lebih lanjut.

Query

adalah pertanyaan atau permintaan informasi tertentu dari sebuah basisdata yangditulis dalam format
tertentu.

Query

adalah perintah-perintah untuk mengakses data pada sistem basis data

Query

adalah merupakan bahasa untuk melakukan manipulasi terhadap database, yang telahdistandarkan dan
lebih dikenal dengan nama Structured Query Language (SQL)

Bahasa query

(query language) adalah bahasa khusus yang digunakan untuk melakukanquery pada basis data. Contoh
penggunaan bahasa query adalah: SELECT ALL WHERE

kota=”Yogyakarta” AND umur<40. Query ters

ebut meminta semua record dari basis datayang sedang digunakan (misalkan basisdata konsumen) yang
bertempat tinggal di Yogyakartadan berumur lebih dari 40 tahun (kota dan umur adalah nama field yang
telah didefinisikan).Standar bahasa query yang banyak digunakan adalah SQL (structured query
language).Metode ini paling rumit tetapi paling fleksibel dibandingkan metode query yang lain,
querydengan parameter yang telah tersedia dan query by example.

Query dibedakan menjadi 2

, yaitu1. Untuk membuat/mendefinisikan obyek-obyek database seperti membuat tabel, relasi


dansebagainya. Biasanya disebut dengan Data Definition Language (DDL)2. Untuk memanipulasi data,
yang biasanya dikenal dengan Data Manipulation Language(DML). Manipulasi data bisa berupa:a.
Menambah, mengubah atau menghapus data.b. Pengambilan informasi yang diperlukan dari database,
yang mana datanya diambil daritabel maupun dari query sebelumnya

Sabtu, 11 April 2009

Contoh DDL & DML dalam database

Sebuah basis data biasanya dapat dipilih ke dalam 2 bentuk yaitu:

1. Data Definition Language(DDL)

2. Data Manipulation Languange(DML)

1. DDL

Struktur/skema basis data yang menggambarkan/mewakili desain basis data secara keseluruhan
didefinisikan dengan bahasa khusus yang disebut DDL. Dengan bahasa inilah kita dapat membuat tabel
baru, membuat indeks, mengubah tabel, menentukan struktur penyimpanan tabel dan sebagainya. Hasil
dari kompilasi perintah DDL adalah kumpulan tabel yang disimpan dalam file khusus yang disebut Kamus
Data

Contohnya :

a. Create database : adalah perintah yang di gunakan untuk memulai membuat database.

b. Modify database : adalah perintah yang digunakan untuk memodifikasi database.

c. Create table : adalah perintah yang digunakan untuk membuat tabel.

d. Modify table : adalah perintah yang digunakan untuk memodifikasi table.

2. DML

Merupakan bentuk bahasa basis data yang berguna untuk melakukan manipulasi dan pengambilan data
pada suatu basis data. Manipulasi data dapat berupa:

a. Penyisipan/Penambahan data baru ke suatu basis data

b. Penghapusan data dari suatu basis data


c. Pengubahan data dari satu basis data

Contoh-contoh query SQL

Pada kesempatan kali ini saya akan menjelaskan contoh-contoh query dalam MySQL. Tabel-tabel yang
akan kita gunakan adalah sebagai berikut:

matakuliah(kodemk, namamk, sks), berisi daftar matakuliah yang ditawarkan

dosen(nip, nama), berisi daftar dosen pengampu kuliah

mahasiswa(nim, nama, dosenpembimbing), berisi daftar mahasiswa

kuliah(kodekuliah, kodemk, nip, thnakademik, semester), berisi daftar matakuliah dan dosen pengampu

peserta(nim, kodekuliah, nilai), berisi kuliah yang diikuti mahasiswa beserta nilainya dalam huruf

Dalam pembahasan kali ini diasumsikan:

matakuliah hanya ditawarkan sekali dalam setahun, yaitu pada semester 1 (ganjil) saja atau semester 2
(genap) saja dan tidak kedua-duanya.

bila pernah mengulang matakuliah, nilai yang diikutkan untuk perhitungan IP adalah nilai terakhir

matakuliah dikatakan lulus bila nilai yang diperoleh minimal ‘D’

Berikut ini adalah contoh-contoh query dalam MySQL:

1. Menampilkan banyaknya SKS yang telah diselesaikan oleh masing-masing mahasiswa

a. Bila matakuliah yang diulang semua masuk dalam perhitungan

SELECT nim, SUM( sks ) jumlahsks

FROM peserta, (

SELECT kodekuliah, kuliah.kodemk, sks

FROM kuliah, matakuliah

WHERE kuliah.kodemk = matakuliah.kodemk


)A

WHERE peserta.kodekuliah = A.kodekuliah

GROUP BY nim

Penjelasan:

Pada query ini kita menampilkan jumlah SKS yang telah diselesaikan oleh masing-masing mahasiswa bila
matakuliah yang diulang semua masuk dalam perhitungan. Pertama-tama, kita melakukan join tabel
kuliah dengan tabel matakuliah pada kondisi kodemk pada tabel kuliah sama dengan kodemk pada tabel
matakuliah untuk mendapatkankodekuliah, kodemk dan sks.

…(

SELECT kodekuliah, kuliah.kodemk, sks

FROM kuliah, matakuliah

WHERE kuliah.kodemk = matakuliah.kodemk

)A

Lalu hasil join tersebut diberi alias A. Selanjutnya, tabel A tadi kita join-kan dengan tabel peserta pada
kondisi kodekuliah pada tabel peserta sama dengan kodekuliah pada tabelA untuk mendapatkan nim dan
sks yang selanjutnya kita menjumlahkan sks dengan SUM(sks) yang dikelompokkan berdasarkan nim
menggunakan GROUP BY nim.

b. Bila matakuliah yang diulang hanya yang sesuai dengan asumsi yang masuk dalam perhitungan

SELECT nim, SUM( sks ) totalsks

FROM (

SELECT DISTINCT nim, kodemk

FROM peserta, kuliah

WHERE peserta.kodekuliah = kuliah.kodekuliah

)P, matakuliah

WHERE P.kodemk = matakuliah.kodemk

GROUP BY nim

Penjelasan:
Pada query ini kita menampilkan jumlah SKS yang telah diselesaikan oleh masing-masing mahasiswa bila
matakuliah yang diulang hanya dihitung sekali. Pertama-tama kita melakukan join tabel peserta dengan
tabel kuliah pada kondisi kodekuliah pada tabel peserta sama dengan kodekuliah pada tabel kuliah untuk
mendapatkan nim dan kodemk.

…(

SELECT DISTINCT nim, kodemk

FROM peserta, kuliah

WHERE peserta.kodekuliah = kuliah.kodekuliah

)P …

Kata DISTINCT setelah SELECT digunakan untuk menghilangkan pengulangan record yang mempunyai
nim dan kodemk yang sama agar matakuliah yang diulang oleh seorang mahasiswa hanya muncul sekali.
Hasil join tersebut diberi alias P. Lalu tabel P kita join-kan dengan tabel matakuliah pada kondisi kodemk
pada tabel P sama dengan kodemk pada tabel matakuliah untuk mendapatkan nim dan sks yang
dijumlahkan dengan SUM(sks) setelah dikelompokkan berdasarkan GROUP BY nim.

2. Menampilkan data-data yang bisa untuk melakukan perhitungan IPK (berdasar asumsi di atas)

SELECT nim, kuliah.kodemk, nilai, sks

FROM peserta, matakuliah, kuliah

WHERE kuliah.kodekuliah = peserta.kodekuliah

AND kuliah.kodemk = matakuliah.kodemk

AND (

nim, kuliah.kodemk, thnakademik

IN (

SELECT nim, kodemk, MAangry thnakademik ) thnterakhir

FROM peserta, kuliah

WHERE kuliah.kodekuliah = peserta.kodekuliah

GROUP BY nim, kodemk

)
Penjelasan:

Pada query ini kita melakukan join pada tiga tabel, yaitu peserta, matakuliah dan kuliah dengan kondisi
kodekuliah pada tabel kuliah sama dengan kodekuliah pada tabelpeserta dan kodemk pada tabel kuliah
sama dengan kodemk pada tabel matakuliah. Setelah itu kita lakukan operasi intersection dengan query
yang menampilkan tahun terakhir menyelesaikan suatu matakuliah.

AND (

nim, kuliah.kodemk, thnakademik

IN (

SELECT nim, kodemk, MAangry thnakademik ) thnterakhir

FROM peserta, kuliah

WHERE kuliah.kodekuliah = peserta.kodekuliah

GROUP BY nim, kodemk

Pada query untuk menampilkan tahun terakhir menyelesaikan suatu matakuliah, kita melakukan join
pada tabel peserta dan tabel kuliah dengan kondisi kodekuliah pada tabel kuliahsama dengan kodekuliah
pada tabel peserta. Lalu untuk mencari tahun terakhir digunakan fungsi MAangrythnakademik) setelah
dikelompokkan berdasarkan nim dan kodemk denganGROUP BY nim, kodemk. Lalu operasi intersection
dilakukan dengan memeriksa apakah record nim, kodemk, thnakademik dari hasil join tiga tabel ada
pada hasil query untuk menampilkan tahun terakhir menyelesaikan suatu matakuliah.

3. Menampilkan dosen yang pernah mengampu kelas matakuliah yang pesertanya tidak lebih dari 15
mahasiswa

SELECT DISTINCT nip

FROM kuliah, (

SELECT kodekuliah, COUNT( * ) jumlahpeserta

FROM peserta

GROUP

BY kodekuliah
) banyakpeserta

WHERE kuliah.kodekuliah = banyakpeserta.kodekuliah

AND jumlahpeserta <=15

Penjelasan:

Pada query ini kita akan menampilkan dosen yang pernah mengampu matakuliah yang pesertanya <= 15
mahasiswa. Awalnya menggunakan tabel peserta, kita hitung dahulu jumlah peserta dari setiap kuliah
dengan menggunakan COUNTstar setelah dikelompokkan berdasarkan kodekuliah dengan GROUP BY
kodekuliah.

…(

SELECT kodekuliah, COUNT( * ) jumlahpeserta

FROM peserta

GROUP

BY kodekuliah

) banyakpeserta

Setelah itu query tersebut diberi alias banyakpeserta. Lalu pada query utama kita melakukan join pada
tabel banyakpeserta dengan tabel kuliah pada kondisi kodekuliah pada tabelkuliah sama dengan
kodekuliah pada tabel banyakpeserta serta menambahkan kondisi jumlahpeserta <= 15. Pada query
utama kita menampilkan nip yang di dahului dengan kataDISTINCT agar nip yang ditampilkan tidak ada
perulangan.

4. Menampilkan nama mahasiswa yang telah lulus lebih dari 100 SKS

SELECT nama

FROM (

SELECT nim, SUM( sks ) jumlahsks

FROM peserta, kuliah, matakuliah

WHERE nilai < 'E'

AND kuliah.kodekuliah = peserta.kodekuliah

AND kuliah.kodemk = matakuliah.kodemk


GROUP

BY nim

) yanglulus, mahasiswa

WHERE jumlahsks >100

AND yanglulus.nim = mahasiswa.nim

Penjelasan:

Pada query ini kita akan menampilkan nama mahasiswa yang telah lulus > 100 SKS. Mula-mula kita
menghitung jumlah SKS dari matakuliah yang lulus untuk masing-masing mahasiswa. Kita melakukan join
pada tiga tabel peserta, kuliah dan matakuliah dengan kondisi kodekuliah pada tabel kuliah sama dengan
kodekuliah pada tabel peserta dan kodemk pada tabel kuliah sama dengan kodemk pada tabel
matakuliah disertai dengan kondisi nilai < ‘E’ yang berarti nilai >= ‘E’ tidak diikutkan. Lalu sks yang
memenuhi kondisi dijumlahkan dengan SUM(sks) yang diberi alias jumlahsks setelah dikelompokkan
berdasarkan nim dengan GROUP BY nim. Query tersebut diberi alias jumlahlulus.

…(

SELECT nim, SUM( sks ) jumlahsks

FROM peserta, kuliah, matakuliah

WHERE nilai < 'E'

AND kuliah.kodekuliah = peserta.kodekuliah

AND kuliah.kodemk = matakuliah.kodemk

GROUP

BY nim

) yanglulus …

Pada query utama kita melakukan join pada tabel yanglulus dengan mahasiswa dengan kondisi nim pada
tabel yanglulus sama dengan nim pada tabel mahasiswa disertai kondisijumlahsks > 100 untuk
menampilkan nama mahasiswa yang telah lulus > 100 SKS.

5. Menampilkan banyaknya siswa yang telah lulus tugas akhir bila kode matakuliah untuk tugas akhir
adalah ‘M0012’

SELECT COUNT( * ) lulusTA

FROM peserta, kuliah


WHERE nilai < 'E'

AND kuliah.kodekuliah = peserta.kodekuliah

AND kodemk = 'M0012'

Penjelasan:

Pada query kali ini kita akan menampilkan jumlah mahasiswa yang telah lulus tugas akhir bila kode
matakuliah tugas akhir = ‘M0012’. Pertama-tama kita melakukan join pada tabel peserta dankuliah
dengan kondisi kodekuliah pada tabel kuliah sama dengan kodekuliah pada tabel peserta untuk
mendapatkan nilai dan kodemk. Lalu hasil join tersebut kita saring dengan kondisi nilai < ‘E’ dan kodemk
= ‘M0012’ yang selanjutnya setelah disaring kita hitung dengan COUNTstar dan diberi alias lulusTA untuk
menghitung jumlah mahasiswa yang telah lulus tugas akhir.

6. Menampilkan daftar nomor dan nama mahasiswa beserta IP berdasar dua asumsi di atas

SELECT buatip.nim, nama, (

SUM( nilaisks ) / SUM( sks )

) ip

FROM mahasiswa, (

SELECT nim, kuliah.kodemk, (

( 69 – ASCII( UPPER( nilai ) ) ) * sks

) nilaisks, sks

FROM peserta, matakuliah, kuliah

WHERE kuliah.kodekuliah = peserta.kodekuliah

AND kuliah.kodemk = matakuliah.kodemk

AND (

nim, kuliah.kodemk, thnakademik

IN (

SELECT nim, kodemk, MAangry thnakademik ) thnterakhir

FROM peserta, kuliah


WHERE kuliah.kodekuliah = peserta.kodekuliah

GROUP BY nim, kodemk

)buatip

WHERE mahasiswa.nim = buatip.nim

GROUP BY nim

Penjelasan:

Pada query yang cukup panjang ini. kita akan menampilkan nomor dan nama mahasiswa beserta IP
berdasar dua asumsi di atas. Pada awalnya kita membuat query untuk menampilkan nim,kodemk dan
nilai yang sudah dikali sks. Query ini mirip seperti query yang dijelaskan pada nomor 2 dengan sedikit
perubahan.

…(

SELECT nim, kuliah.kodemk, (

( 69 – ASCII( UPPER( nilai ) ) ) * sks

) nilaisks, sks

FROM peserta, matakuliah, kuliah

WHERE kuliah.kodekuliah = peserta.kodekuliah

AND kuliah.kodemk = matakuliah.kodemk

AND (

nim, kuliah.kodemk, thnakademik

IN (

SELECT nim, kodemk, MAangry thnakademik ) thnterakhir

FROM peserta, kuliah

WHERE kuliah.kodekuliah = peserta.kodekuliah

GROUP BY nim, kodemk

)
) buatip

Bagian yang ditebalkan merupakan perubahan yang dilakukan untuk query kali ini. Hasil query tersebut
diberi alias buatip. Lalu kita melakukan join pada tabel buatip dan tabel nama dengan kondisi nim pada
tabel mahasiswa sama dengan nim pada tabel buatip untuk mendapatkan nama. Selanjutnya untuk
menghitung IP, kita menjumlahkan semua nilaisks dan membaginya dengan jumlah sks dengan
SUM(nilaisks) / SUM(sks) setelah dikelompokkan menurut nim-nya dengan menggunakan GROUP BY
nim.

7. Menghitung IP bila asumsi kedua di atas diganti bahwa nilai yang dipakai untuk penentuan IP
adalah nilai yang terbaik (dari serangkaian mengulang matakuliah)

SELECT nim, (

SUM( nilaimaxsks ) / SUM( sks )

)ip

FROM (

SELECT nim, (

( 69 – ASCII( UPPER( nilaimax ) ) ) * sks

)nilaimaxsks, sks

FROM matakuliah, (

SELECT nim, kodemk, MIN( nilai ) nilaimax

FROM peserta, kuliah

WHERE kuliah.kodekuliah = peserta.kodekuliah

GROUP BY nim, kodemk

) nilaiterbaik

WHERE nilaiterbaik.kodemk = matakuliah.kodemk

)buatip

GROUP BY nim

Penjelasan:

Pada query ini kita akan menampilkan IP dengan asumsi kedua diganti menjadi nilai yang dipakai untuk
menghitung IP adalah nilai yang terbaik. Mula-mula kita mencari nilai terbaik pada setiap matakuliah
untuk masing-masing mahasiswa. Kita melakukan join pada tabel peserta dengan tabel kuliah pada
kondisi kodekuliah pada tabel kuliah sama dengan kodekuliah pada tabel peserta untuk mendapatkan
kodemk dan nilai. Lalu kita mencari nilai terbaik dari setiap matakuliah untuk masing-masing mahasiswa
dengan MIN(nilai) setelah dikelompokkan berdasarkan nim dan kodemk dengan menggunakan GROUP
BY nim, kodemk karena nilai ascii ‘A’ < ‘B’ < ‘C’ < ‘D’ < ‘E’.

…(

SELECT nim, kodemk, MIN( nilai ) nilaimax

FROM peserta, kuliah

WHERE kuliah.kodekuliah = peserta.kodekuliah

GROUP BY nim, kodemk

) nilaiterbaik

Hasil query tersebut diberi alias nilaiterbaik. Setelah itu kita melakukan join tabel nilaiterbaik dengan
tabel matakuliah pada kondisi kodemk pada tabel nilaiterbaik sama dengan kodemk pada tabel kuliah
untuk mendapatkan sks.

Selanjutnya ditampilkan nim, nilaimaxsks yang merupakan nilaimax dikali sks serta sks.

…(

SELECT nim, (

( 69 – ASCII( UPPER( nilaimax ) ) ) * sks

)nilaimaxsks, sks

FROM matakuliah, (

SELECT nim, kodemk, MIN( nilai ) nilaimax

FROM peserta, kuliah

WHERE kuliah.kodekuliah = peserta.kodekuliah

GROUP BY nim, kodemk

) nilaiterbaik

WHERE nilaiterbaik.kodemk = matakuliah.kodemk

)buatip

Hasil query tersebut diberi alias buatip. Kemudian kita menghitung IP seperti query pada nomor 6 yaitu
SUM(nilaimaxsks) / SUM(sks) setelah dikelompokkan berdasarkan nimdengan menggunakan GROUP.

Anda mungkin juga menyukai