PERANCANGAN BASIS DATA

Dosen :

Achmad Zakki Falani, S.Kom
Fakultas Ilmu Komputer Universitas Narotama Surabaya

NEXT

Kriteria Penilaian:

    

Kehadiran Tugas Keaktifan NIlai UTS Nilai UAS

: : : : :

10 15 15 30 30

% % % % (Reg.) % (Reg.)

 Nilai UAS

: 60 % (Ins.)
BACK NEXT

Definisi Basisdata
Beberapa definisi basisdata (database) adalah sbb:  Sekumpulan data store(bisa dalam jumlah besar) yang tersimpan dalam magnetic disk, optical disk, dan media penyimpan sekunder lainnya.  Sekumpulan program-program aplikasi umum yang mengeksekusi dan memproses data secara umum (hapus,cari,update,dll)  Basisdata terdiri dari data yang di-share bagi banyak user dan memungkinkan penggunaan data yang sama pada waktu bersamaan oleh banyak user  Koleksi terpadu dari data-data yang saling berkaitan dari suatu enterprise.Mis. Basisdata RS akan terdiri dari data-data seperti pasien, karyawan, dokter, perawat, dll.
BACK NEXT

Tujuan Perancangan Database : • untuk memenuhi informasi yang berisikan kebutuhan-kebutuhan user secara khusus dan aplikasi-aplikasinya. • mendukung kebutuhan-kebutuhan pemrosesan dan beberapa obyek penampilan (response time.Definisi Perancangan Basisdata Perancangan Database adalah proses untuk menentukan isi dan pengaturan data yang dibutuhkan untuk mendukung berbagai rancangan sistem. processing time. • memudahkan pengertian struktur informasi. dan storage space) BACK NEXT .

Pengumpulan data dan analisis 2. Perancangan database secara fisik 6. Perancangan database secara logika (data model mapping) 5. Implementasi Sistem database.Proses Perancangan Database 6 Fase proses perancangan database : 1. 6 fase di atas tidak harus diproses berurutan. Pada beberapa hal. BACK NEXT . rancangan tsb dapat dimodifikasi dari yang pertama dan sementara itu mengerjakan fase yang terakhir (feedback loop antara fase) dan feedback loop dalam fase sering terjadi selama proses perancangan. Pemilihan DBMS 4. Perancangan database secara konseptual 3.

BACK NEXT . Untuk menentukan kebutuhan-kebutuhan suatu sistem database.Fase 1 : Pengumpulan data dan analisa Proses identifikasi dan analisa kebutuhan-kebutuhan data disebut pengumpulan data dan analisa. Kebutuhan-kebutuhan dari para pemakai dan aplikasi-aplikasi inilah yang kemudian dikumpulkan dan dianalisa.pertama-tama harus mengenal bagian-bagian lain dari sistem informasi yang akan berinteraksi dengan sistem database. termasuk para pemakai yang ada dan para pemakai yang baru serta aplikasi-aplikasinya.

2.Aktifitas-aktifitas pengumpulan data dan analisa : 1. 4. BACK NEXT . Menentukan kelompok pemakai dan bidang-bidang aplikasinya. Analisa lingkungan operasi dan pemrosesan data. Peninjauan dokumentasi yang ada. Daftar pertanyaan dan wawancara. 3.

kita harus merinci aplikasi-aplikasi database yang diketahui dan transaksi-transaksi yang mungkin.Fase 2 : Perancangan database konseptual Tujuan dari fase ini adalah menghasilkan conceptual schema untuk database yang tergantung pada sebuah DBMS yang spesifik. Dalam conceptual schema. BACK NEXT . Sering menggunakan sebuah high-level data model seperti ER/EER model selama fase ini.

Perancangan skema konseptual : menguji kebutuhan-kebutuhan data dari suatu database yang merupakan hasil dari fase 1. 2.Aktifitas paralel perancangan database secara konseptual : 1. Perancangan transaksi : menguji aplikasi-aplikasi database dimana kebutuhan-kebutuhannya telah dianalisa pada fase 1. dan menghasilkan perincian transaksitransaksi ini. BACK NEXT . dan menghasilkan sebuah conceptual database schema pada DBMS independent model data tingkat tinggi seperti EER (enhanced entity relationship) model.

dll). struktur penyimpanan. Struktur data Jika data yang disimpan dalam database mengikuti struktur hirarki. 3. Personal yang telah terbiasa dengan suatu sistem Jika staf programmer dalam suatu organisasi sudah terbiasa dengan suatu DBMS. network. BACK NEXT . diantaranya: 1. pemakai. 4. Tersedianya layanan penjual Keberadaan fasilitas pelayanan penjual sangat dibutuhkan untuk membantu memecahkan beberapa masalah sistem. 2. hierarchical. dll.Fase 3 : Pemilihan DBMS Pemilihan database ditentukan oleh beberapa faktor. dan jalur akses yang mendukung DBMS. maka suatu jenis hirarki dari DBMS harus dipikirkan. maka hal ini dapat mengurangi biaya latihan dan waktu belajar. Teknik Keberadaan DBMS dalam menjalankan tugasnya seperti jenis -jenis DBMS (relational.

Pada fase ini.Fase 4 : Perancangan database secara logika (pemetaan model data) Fase selanjutnya dari perancangan database adalah membuat sebuah skema konseptual dan skema eksternal pada model data dari DBMS yang terpilih. skema konseptual ditransformasikan dari model data tingkat tinggi yang digunakan pada fase 2 ke dalam model data dari DBMS yang dipilih pada fase 3. BACK NEXT . Fase ini dilakukan oleh pemetaan skema konseptual dan skema eksternal yang dihasilkan pada fase 2.

Penyesuaian skema ke DBMS yang spesifik : mengatur skema yang dihasilkan pada langkah 1 untuk disesuaikan pada implementasi yang khusus di masa yang akan datang dari suatu model data yang digunakan pada DBMS yang dipilih.Pemetaan diproses dalam 2 tingkat : 1. BACK NEXT . 2. Pemetaan system-independent : Pemetaan ke dalam model data DBMS dengan tidak mempertimbangkan karakteristik atau hal-hal yang khusus yang berlaku pada implementasi DBMS dari model data tsb.

BACK NEXT . dirancang spesifikasi-spesifikasi untuk database yang disimpan yang berhubungan dengan struktur-struktur penyimpanan fisik. penempatan record dan jalur akses.Fase 5 : Perancangan database fisik Perancangan database secara fisik merupakan proses pemilihan struktur-struktur penyimpanan dan jalur-jalur akses pada file-file database untuk mencapai penampilan yang terbaik pada bermacam-macam aplikasi. Selama fase ini.

2. Space Utility Jumlah ruang penyimpanan yang digunakan oleh file-file database dan struktur-Struktur jalur akses. 3. Transaction throughput : Rata-rata jumlah transaksi yang dapat diproses per menit oleh sistem database. bank.Petunjuk pemilihan perancangan database secara fisik : 1. Response time juga dipengaruhi oleh beberapa faktor yang tidak berada di bawah pengawasan DBMS. dll). Response time Waktu yang telah berlalu dari suatu transaksi database yang diajukan Untuk menjalankan suatu tanggapan. Pengaruh utama pada response time adalah di bawah pengawasan DBMS yaitu : waktu akses database untuk data item yang ditunjuk oleh suatu transaksi. Hasil dari fase ini adalah penentual awal dari struktur penyimpanan dan jalur akses untuk file-file database. dan merupakan parameter kritis dari sistem transaksi (misal. digunakan pada pemesanan tempat di pesawat. BACK NEXT . seperti penjadwalan sistem operasi atau penundaan komunikasi.

kita dapat melaksanakan sistem database. Transaksi-transaksi database sekarang harus dilaksanakan oleh para programmmer aplikasi. dihimpun dan digunakan untuk membuat skema database dan file-file database (yang kosong) kemudian database tsb dimuat (disatukan) dengan datanya. Perintah-perintah dalam DDL dan SDL(storage definition language) dari DBMS yang dipilih. perubahan-perubahan yang rutin mungkin diperlukan untuk format ulang datanya yang kemudian dimasukkan ke database yang baru. Jika data harus dirubah dari sistem komputer sebelumnya.Fase 6 : Implementasi sistem database Setelah perancangan secara logika dan secara fisik lengkap. BACK NEXT .

ALASAN PERANCANGAN BASIS DATA  Sistem basis data telah menjadi bagian dalam sistem informasi suatu organisasi  Kebutuhan menyimpan data dl jumlah besar semakin mendesak  Fungsi-fungsi dalam organisasi semakin dikomputerisasikan  Semakin kompleks data & aplikasi yg digunakan. maka relationship antar data harus dimodelisasikan  Dibutuhkannya kemandirian data .

KONVERSI & LOADING DATA  Tahap ini dilakukan apabila sistem basis data yg ada digantikan sistem basis data baru  Semua data yg ada ditransfer ke basis data baru & konversi aplikasi yg ada utk basis data baru .

jika tidak sesuai perlu reorganisasi basis data  Perawatan & upgrade sistem aplikasi basis data jika diperlukan. .PENGOPERASIAN & PERAWATAN  Pengoperasian basis data setelah divalidasi  Memonitor kinerja sistem.

Pada perancangan model konseptual basis data ini penekanan dilakukan pada struktur data dan relasi antara field. Pada perancangan model konseptual ini dapat dilakukan dengan menggunakan model data relasional.Model Konseptual Basis Data Model konseptual merupakan kombinasi beberapa cara untuk memproses data untuk beberapa aplikasi. BACK NEXT .

mengubah dan mengakses pada suatu Basis data. menghapus. Bila terdapat kesulitan pada pengujian tersebut maka perlu dipecahkan relasi pada beberapa tabel lagi atau dengan kata lain perancangan basis data belum optimal. BACK NEXT . Contoh: .Tabel usermanager yang dapat dinormalisasi ke beberapa aplikasi. Pada proses normalisasi dilakukan pengujian pada beberapa kondisi apakah ada kesulitan pada saat menambah/menyisipkan.Teknik Normalisasi Proses normalisasi adalah proses pengelompokan data elemen menjadi tabel-tabel yang menunjukkan entity dan relasinya.

Entity Entity atau entitas. BACK NEXT . dalam basis data entity sama halnya dengan sebuah tabel.

dalam basis data sama halnya dengan field.Atribut Atribut. BACK NEXT .

Jenis Atribut        Atribut Atribut Atribut Atribut Atribut Atribut Atribut Sederhana Komposit Bernilai Tunggal Bernilai Jamak Harus Bernilai Bernilai Null Turunan BACK NEXT .

Nama Mahasiswa .Atribut Sederhana Atribut Sederhana : atribut sederhana merupakan atribut atomik yang tidak dapat lagi dipecah menjadi atribut lain. Contoh: Entitas mahasiswa mempunyai atribut sederhana berupa NIM. BACK NEXT .

Entitas dosen mempunyai atribut nama_dosen.Atribut Komposit Atribut Komposit : atribut komposit merupakan atribut yang masih dapat dipecah menjadi sub-sub atribut yang masing-masing memiliki arti tesendiri. kab. glr_blk. BACK NEXT . Contoh: Entitas mahasiswa mempunyai atribut alamat. nama. Maka alamat disini dapat dipecah menjadi sub atribut seperti kota. kode_pos. Maka nama disini dapat dipecah menjadi sub atribut lain seperti glr_dpn.

BACK NEXT . alamat isi data dari atribut ini hanya boleh diisi dengan 1 data. 1 Nama. 1 Alamat. nama. Contoh: entitas mahasiswa mempunyai atribut NIM.Atribut Bernilai Tunggal Atribut Bernilai Tunggal : atribut yang hanya memiliki satu nilai untuk setiap barisnya. Setiap mahasiswa hanya memiliki 1 NIM.

Masak dan Nonton TV) BACK NEXT .Atribut Bernilai Jamak Atribut Bernilai Jamak : yaitu atribut yang boleh memiliki lebih dari satu nilai untuk setiap barisnya. Mahasiswa Roshita memiliki NIM 04102002 beralamat di Jalan Garuda 32 Yogyakarta memiliki Hobby (Olah Raga. Nyanyi. Contoh: entitas mahasiswa mempunyai atribut Hobby isi data dari atribut ini boleh lebih dari 1 data.

sebab jika tidak diisi akan terjadi kesalahan (error) dalam basis data BACK NEXT . Biasanya atribut seperti ini sudah ditetapkan dalam perancangan tabelnya sehingga jika dalam pengisian di kosongi akan terjadi kesalahan. Contoh: entitas mahasiswa mempunyai atribut NIM dan nama_mahasiswa yang harus diisi datanya.Atribut Harus Bernilai (not null) Atribut Harus Bernilai : yaitu atribut yang harus memiliki nilai data untuk setiap barisnya.

Atribut Bernilai Null (is null) Atribut Bernilai Null : yaitu atribut yang boleh tidak memiliki nilai data untuk setiap barisnya. nama_pacar yang boleh tidak terisi. Contoh: entitas mahasiswa mempunyai atribut hobby. BACK NEXT .

Contoh: entitas mahasiswa mempunyai atribut IPK yang diperoleh dari pengolahan atribut Nilai pada tabel (entitas Nilai) dengan kode NIM mahasiswa yang sama dan diproses sehingga menghasilkan IPK untuk mahasiswa yang bersangkutan. BACK NEXT .Atribut Turunan Atribut Turunan : yaitu atribut yang nilai-nilainya diperoleh dari pengolahan atau dapat diturunkan dari atribut lain yang berkaitan.

Jelaskan dengan bahasa Anda sendiri. Buatlah 5 contoh yang lain tentang:  atribut sederhana  atribut komposit  atribut bernilai tunggal  atribut bernilai jamak  atribut harus bernilai (not null)  atribut bernilai null (is null)  atribut turunan BACK NEXT . Menurut Pendapat Anda. tentang Fase Proses Perancangan Database! 2. apakah penggunaan perancangan database mutlak digunakan dalam proses pembuatan sistem informasi? Jelaskan Alasannya? 3.QUIZ I: “Kerjakan Sesuai dengan Analisis Anda Masing-masing” 1.

Soal Buatlah contoh yang lain tentang:        atribut atribut atribut atribut atribut atribut atribut sederhana komposit bernilai tunggal bernilai jamak harus bernilai (not null) bernilai null (is null) turunan BACK NEXT .

Field (Atribut) Kunci setiap field selalu terdapat kunci berupa field atau satu set field yang dapat mewakili record. Contoh lain: Nomor Pegawai (NIDN) bagi data dosen. setiap pencarian cukup dengan menyebut NIM mahasiswa tersebut maka dapat diketahui identitas mahasiswa lainnya seperti nama. Misalnya Nomor Induk Mahasiswa (NIM) merupakan kunci dari tabel mahasiswa suatu Perguruan Tinggi. Kode_Kuliah untuk data Mata kuliah. BACK NEXT . dan lain sebagainya. NIK untuk data karyawan. alamat dan atribut lainnya.

Kunci Kandidat (Candidate Key) Kunci kandidat adalah satu atribut atau satu set atribut yang mengidentifikasikan secara unik suatu kejadian spesifik dari entity. Satu set atribut menyatakan secara tidak langsung dimana anda tidak dapat membuang beberapa atribut dalam set tanpa merusak kepemilikan yang unik. BACK NEXT .

Kunci Kandidat (Candidate Key) Contoh: Tabel pegawai berisi field:  nik  no_ktp  nama_pegawai  tmp_lahir  tgl_lahir  alamat  kota Kunci kandidat dalam tabel pegawai di disamping dapat dipilih sbb :  nik  no_ktp  nama_pegawai (tidak dapat dipakai karena sering seseorang punya nama yang sama dengan orang lain)  tmp + tgl Lahir (mungkin bisa dipakai sebagai kunci karena kemungkinan orang dengan nama yang sama dan tanggal lahir yang sama cukup kecil)  nama + tmp + tgl_lahir (dapat dipakai sebagai kunci)  alamat dan kota (bukan kunci) BACK NEXT .

Kunci Kandidat (Candidate Key) Contoh Kasus: Tentukan Kunci Kandidat dari tabel tersebut Tabel mt_kuliah berisi field: Kunci kandidat dalam tabel mt_kuliah di disamping dapat dipilih sbb :  id_matkul  id_matkul  kode_matkul  kode_matkul  nama_matkul  nama_matkul (mungkin bisa dipakai sebagai kunci karena kemungkinan nama matkul  kurikulum dengan yang lain ada perbedaan)  semester  kurikulum + semester + sks + nilai_minimum (tidak dapat dipakai karena  sks sering matkul punya data yang  nilai_minimum sama dengan matkul lain) BACK NEXT .

tetapi juga dapat mewakili setiap kejadian dari suatu entity. BACK NEXT .Kunci Primer (Primary Key) Primary key adalah satu atribut atau satu set minimal atribut yang tidak hanya mengidentifikasi secara unik suatu kejadian spesifik. Catatan: Setiap kunci kandidat dapat menjadi kunci primer tetapi sebaliknya sebaiknya dipilih satu saja yang dapat mewakili secara menyeluruh terhadap entity yang ada.

 kode_mtkuliah (bisa dipakai untuk data mata kuliah karena kode mata kuliah bersifat unik untuk tiap mata kuliah) BACK NEXT .  no_ktp (bisa dipakai misalnya untuk pegawai yang baru belum mendapatkan nomor pegawai maka bisa digunakan nomor KTP untuk sementara sebagai kunci primer.Kunci Primer (Primary Key) Contoh :  nik (karena sifatnya yang unik maka tidak mungkin pegawai mempunyai Nomor Induk Karyawan yang sama).

Kunci Primer (Primary Key) Contoh Kasus: Tentukan Kunci Primer dari tabel tersebut Tabel mt_kuliah berisi field:  id_matkul  kode_matkul  nama_matkul  kurikulum  semester  sks  nilai_minimum BACK NEXT .

Kunci Alternatif (Alternate Key) Kunci alternatif adalah kunci kandidat yang tidak dipakai sebagai kunci primer. BACK NEXT . Kunci alternatif ini sering digunakan untuk kunci pengurutan misalnya dalam membuat laporan.

Kunci Alternatif (Alternate Key) Contoh Kasus: Tentukan Kunci Alternatif dari tabel tersebut Tabel krs berisi field:  no_krs  id_matkul  nim  nilai_angka  nilai_huruf  lulus BACK NEXT .

Kunci Tamu (Foreign Key) Kunci tamu adalah satu atribut atau satu set minimal atribut yang melengkapi satu hubungan yang menunjukkan ke induknya. Hubungan antara entity induk dengan anak adalah hubungan satu lawan banyak (one to many relationship) BACK NEXT . kunci tamu ditempatkan pada entity anak dan sama dengan kunci primer induk yang direlasikan.

Kunci Tamu (Foreign Key) Contoh Kasus: Tentukan Kunci Tamu dari tabel tersebut BACK NEXT .

Kamus Data Contoh Kamus Data : Nama Database : akademik Nama Tabel : mahasiswa Fungsi : menyimpan data mahasiswa BACK NEXT .

. yang bertemakan akademik?..Soal  Buatlah contoh kamus data yang lain...  Syarat: minim 3 table & 5 field BACK NEXT .

Bahasa Basisdata Contoh Kamus Data Nama Database Nama Tabel Fungsi Nama Field : : akademik : dosen : menyimpan data profil dosen Tipe Panjang Karakter Keterangan id nidn glr_dpn nama glr_blk jab_akademik telp email Integer Varchar Varchar Varchar Varchar Varchar Varchar Varchar 3 15 15 20 15 50 30 30 Primary Key Unique BACK NEXT .

Bahasa Basisdata Contoh Kamus Data : Nama Database : akademik Nama Tabel : mt_kuliah Fungsi : menyimpan data mata kuliah Nama Field id mtk_kode mtk_nama sks semester Tipe Integer Varchar Varchar Char Char Panjang Karakter 3 10 30 1 1 Keterangan Primary Key kurikulum nilai_min Char Char 9 1 BACK NEXT .

Bahasa Basisdata Contoh Kamus Data : Nama Database : akademik Nama Tabel : mtk_open Fungsi : menyimpan data mata kuliah yang dibuka Nama Field id mtk_id dosen_id thn_ajaran aktif Tipe Integer Integer Integer Char Char Panjang Karakter 10 3 3 9 1 Keterangan Primary Key BACK NEXT .

BACK NEXT .ERD (Entity Relationship Diagram)  ERD merupakan suatu model untuk menjelaskan hubungan antar data dalam basis data berdasarkan objekobjek dasar data yang mempunyai hubungan antar relasi.

BACK NEXT . Simbol dari entiti ini biasanya digambarkan dengan persegi panjang. Pada dasarnya ada tiga simbol yang digunakan. untuk menggambarkannya digunakan beberapa notasi dan simbol. yaitu : Entiti merupakan objek yang mewakili sesuatu yang nyata dan dapat dibedakan dari sesuatu yang lain. Atribut Setiap entitas pasti mempunyai elemen yang disebut atribut yang berfungsi untuk mendeskripsikan karakteristik dari entitas tersebut. Hubungan / Relasi Hubungan antara sejumlah entitas yang berasal dari himpunan entitas yang berbeda. c. Gambar atribut diwakili oleh simbol elips.ERD (Entity Relationship Diagram) Symbol  ERD untuk memodelkan struktur data dan hubungan antar data. b. Isi dari atribut mempunyai sesuatu yang dapat mengidentifikasikan isi elemen satu dengan yang lain. a.

ERD (Entity Relationship Diagram) Relasi Satu ke satu (One to one) Hubungan relasi satu ke satu yaitu setiap entitas pada himpunan entitas A berhubungan paling banyak dengan satu entitas pada himpunan entitas B A B entitas 1 entitas 2 entitas 3 entitas 4 entitas 1 entitas 2 entitas 3 entitas 4 BACK NEXT .

ERD (Entity Relationship Diagram) Relasi Satu ke banyak (One to many) Setiap entitas pada himpunan entitas A dapat berhubungan dengan banyak entitas pada himpunan entitas B. A entitas 1 entitas 2 entitas 3 B entitas 1 entitas 2 entitas 3 entitas 4 entitas 5 BACK NEXT . tetapi setiap entitas pada entitas B dapat berhubungan dengan satu entitas pada himpunan entitas A.

A entitas 1 entitas 2 entitas 3 entitas 4 B entitas 1 entitas 2 entitas 3 entitas 4 BACK NEXT .ERD (Entity Relationship Diagram) Relasi Banyak ke banyak (Many to many) Setiap entitas pada himpunan entitas A dapat berhubungan dengan banyak entitas pada himpunan entitas B.

ERD (Entity Relationship Diagram) Symbol Symbol E Arti Persegi panjang. Belah ketupat. menyatakan himpunan Entitas E. sebagai penghubung antara Himpunan relasi dengan himpunan entitas dan himpunan entitas dengan atributnya. menyatakan himpunan Relasi Garis. menyatakan Atribut (atribut yang berfungsi sebagai key digarisbawahi). BACK NEXT a R . Lingkaran/Elips. atribut a sebagai key.

BACK NEXT .ERD (Entity Relationship Diagram) Keterangan : Banyak pegawai bekerja pada satu departemen.

Gambarkan diagram ER dari proses transaksi pembelian tersebut dan buatkan tabeltabelnya! . Sebuah perusahaan retail memiliki banyak pelanggan yang telah memesan sejumlah barang produksi.ERD (Entity Relationship Diagram) Contoh Kasus : 1.

.SOLUSI ER Diagram : PELANGGAN 1 Order N BARANG N Proses 1 PENJUALAN Keterangan: Satu pelanggan dapat memesan banyak barang. Banyak barang dapat diproses pada satu kali penjualan.

SOLUSI Tabel : .

identik dengan penambahan map arsip baru ke dalam lemari arsip yang telah ada. identik dengan perbaikan isi lembaran arsip yang ada di sebuah map arsip. 8. Pengambilan data dari field/tabel (retrieve/search). 6. Penghapusan data dari sebuah field/tabel (delete). 3. identik dengan perusakan nilai arsip sekaligus dengan isinya. Penghapusan basis data (drop database). yang identik dengan perusakan map arsip lama yang ada di dalam lemari arsip. BACK NEXT . yang identik dengan pembuatan lemari arsip yang baru. 5. yang identik dengan pencarian lembaran arsip dari sebuah map arsip. identik dengan penambahan lembaran arsip ke sebuah map arsip. Pengubahan data dari sebuah field/tabel (update). Pembuatan basis data baru (create new database). 4. Pembuatan file/tabel baru ke suatu basis data (create table).Operasi Dasar Basis Data 1. identik dengan penghapusan sebuah lembaran arsip yang ada di sebuah map arsip. 7. Penambahan atau pengisian data baru ke dalam field/tabel di sebuah basis data (insert). 2. Penghapusan file/tabel dari suatu basis data (drop table).

pengetahuan mengenai SQL akan menjadi kebutuhan untuk para perancang database.SQL Menggunakan Structures Query Language (SQL) SQL adalah bahasa standar database yang digunakan untuk query. Karena semakin banyak organisasi yang memutuskan untuk mengkonsolidasikan database mereka ke dalam sistem seluas usaha. manipulasi dan memperbarui RDBMS. BACK NEXT .

dll. Data Definition Language (DDL) Dengan bahasa inilah kita dapat membuat tabel baru. BACK NEXT . Kamus Data ini selalu diakses ke suatu operasi basis data sebelum file data yang sesungguhnya diakses. Hasil kompilasi perintah DDL adalah kumpulan tabel yang disimpan dalam file khusus yang disebut Kamus Data (Data Dictionary). mengubah tabel.Bahasa Basisdata Sebuah bahasa basisdata (database languange) dapat dipilah ke dalam 2 bentuk. yaitu : 1. menentukan struktur penyimpanan tabel. Kamus Data merupakan suatu metadata yaitu data yang mendeskripsikan data sesungguhnya.membuat indexs.

 SHOW TABLES.SQL DDL (Data Definition Language):  CREATE DATABASE data.  CREATE TABLE nama_tabel.  ALTER TABLE nama_tabel CHANGE field_lama field_baru type_data (panjang) BACK NEXT .  ALTER TABLE nama_tabel_lama RENAME nama_tabel_baru.

yaitu : Prosedural. FoxBase Non-Prosedural.Bahasa Basisdata 2. Contoh: dBaseIII. Data Manipulation Language (DML) Berguna untuk melakukan manipulasi dan pengambilan data pada suatu basis data. Contoh : SQL data apa yang diinginkan serta bagaimana cara mendapatkannya. yang membuat pemakai dapat menentukan data apa yang diinginkan tanpa menyebutkan bagaimana cara mendapatkannya. Ada 2 Jenis DML. yang mensyaratkan agar pemakai menentukan. penghapusan data dan pengubahan data. Manipulasi data dapat berupa : >> Penyisipan/penambahan data baru. BACK NEXT .

…) VALUES (nilai1.  DELETE FROM nama_tabel WHERE field1=nilai1 BACK NEXT .nilai2.…)  UPDATE nama_tabel SET field1=nilai1.….SQL DML (Data Manipulation Language):  SELECT nama_field FROM nama_tabel  INSERT INTO nama_tabel (field1.field2.

namafield    BACK NEXT . SQL mendukung penggunaan wildcards dengan lambang asterisk (*). Informasi bertipe string yang terletak di antara pernyataan SQL dapat diapit dengan kutip ganda (“) atau kutip tunggal („). maka nama tersebut harus diapit dengan lambang ([]). Pada waktu menampilkan data (recordset). contoh: [nama pegawai] Untuk menunjuk field khusus pada tabel khusus dalam pernyataan SQL digunakan notasi dot (.) -> namatabel.SQL Aturan Penulisan SQL:   Semua Keywords dari statement SQL diketik dengan menggunakan huruf besar. Jika nama field atau tabel memiliki spasi di tengahnya.

data apa yang akan ditampilkan dari database Menyisipkan recordset Mengubah recordset Menghapus recordset BACK NEXT .SQL Command SQL: Perintah CREATE ALTER DROP SELECT INSERT UPDATE DELETE Keterangan Membuat tabel atau field Mengubah tabel dengan menambah field atau mengubah definisi field Men-DROP tabel Mendefinisikan recordset.

Anda dapat menggunakan klausa berikut untuk diimplementasikan dalam statement SQL.SQL Ketika menggunakan query. Klausa SQL: Klausa FROM WHERE Keterangan Menentukan tabel mana yang datanya akan ditampilkan Menentukan kondisi query GROUP BY HAVING ORDER BY Menentukan grup / kelompok dari informasi yang dipilih Digunakan bersama GROUP BY untuk menentukan kondisi untuk tiap grup dalam query Menentukan urutan (sort) data dari query BACK NEXT .

Loop  Entity = Tabel  Atribut = Field  Recordset = Record = Data = Baris data BACK NEXT .

Catatan:  Dalam membuat database usahakan jangan gunakan spasi  Gunakan huruf kecil semua. untuk memudahkan mengingat string database kita dalam berprogramming BACK NEXT .Resep SQL di MySQL (DDL)  Membuat Database Sintaks: CREATE DATABASE „nama_database‟. --resep_01 CREATE DATABASE „db_akademik‟.

BACK NEXT . --resep_02 CREATE TABLE buku ( isbn char(10) PRIMARY KEY. ).Resep SQL di MySQL (DDL)  Membuat Table Sintaks: CREATE TABLE nama_table ( nama_kolom1 tipe_data [nilai_default] [constraint kolom] …………………. …………… ... ………………………. judul varchar(50) NOT NULL. penerbit varchar(50) NOT NULL ).………………….

Resep SQL di MySQL (DDL)  Mengetahui Struktur Tabel:  Untuk menampilkan struktur tabel dalam bentuk tabular. gunakan: DESCRIBE nama_table. BACK NEXT . gunakan: SHOW CREATE TABLE nama_table.  Untuk menampilkan perintah struktur tabel dalam bentuk perintah.

jenis_kel CHAR(1) NOT NULL CHECK (jenis_kel=„L‟ OR jenis_kel=„P‟).Resep SQL di MySQL (DDL)  Contoh latihan CREATE TABLE: -. tmplahir VARCHAR(50) NOT NULL. nama VARCHAR(128) NOT NULL.contoh_03 -.0 ke atas CREATE TABLE siswa ( id INT PRIMARY KEY AUTO_INCREMENT. tgllahir DATE NOT NULL ) ENGINE=InnoDB. BACK NEXT .NOTE: klausa check hny dikenal di MySQL 4.

L / P Not Null.Resep SQL di MySQL (DDL) Soal: (Tuliskan dengan SQL)  Buatlah database dengan nama -> db_kemahasiswaan  Buatlah tabel mahasiswa dengan struktur sebagai berikut: Nama Field nim nama jenis_kelamin aktif Tipe Data Varchar(8) Varchar(20) Char(1) Char(1) Keterangan Primary Key Not Null Not Null. 1 / 0. Default 1 BACK NEXT .

BACK NEXT .Resep SQL di MySQL (DDL) Manajemen Table  Merubah Field  Sintaks: ALTER TABLE nama_table CHANGE COLUMN field_lama field_baru tipe_data kriteria.

BACK NEXT .Resep SQL di MySQL (DDL) Manajemen Table  Nama Tabel: mahasiswa  Merubah Field. nim -> id_siswa  Sintaks: ALTER TABLE mahasiswa CHANGE COLUMN nim id_siswa VARCHAR(8) NOT NULL.

nip -> id_pegawai BACK NEXT .Resep SQL di MySQL (DDL) Soal: (Tuliskan dengan SQL)  Nama Tabel: tbl_pegawai  Merubah Field.

BACK NEXT . Perintah tersebut guna menghapus baris pada tabel.Resep SQL di MySQL (DDL)  Menghapus Data dari Tabel TRUNCATE nama_tabel. alias mengosongkan tabel.

BACK NEXT .Resep SQL di MySQL (DDL)  Menghapus Tabel DROP TABLE nama_table.

nilai2.…)  UPDATE nama_tabel SET field1=nilai1.  DELETE FROM nama_tabel WHERE field1=nilai1 BACK NEXT .…) VALUES (nilai1.field2.DML (Data Manipulation Language)  SELECT nama_field FROM nama_tabel  INSERT INTO nama_tabel (field1.….

SELECT / FROM. dapat digunakan satu atau lebih tabel.SQL SELECT / FROM (DML) State. Sintaks: SELECT nama_field FROM nama_tabel BACK NEXT . untuk menampilkan data dari suatu field.

. BACK NEXT .SQL SELECT / FROM SELECT nama_field FROM nama_tabel Nama Tabel: mhs *) Tampilkan semua data dari tabel mhs?..

SQL SELECT / FROM SELECT nama_field FROM nama_tabel Nama Tabel: mhs *) Tampilkan semua data dari field nim dan nama dari tabel mhs?... BACK NEXT .

terdiri dari:  ASC -> mengurutkan dari nilai kecil ke besar  DESC -> mengurutkan dari nilai besar ke kecil Sintaks: SELECT nama_field FROM nama_tabel ORDER BY nama_field ASC / DESC BACK NEXT .SQL SELECT / FROM / ORDER Klausa ORDER.

SQL SELECT / FROM / ORDER

SELECT nama_field FROM nama_tabel ORDER BY nama_field ASC / DESC
Nama Tabel: mhs

*) Tampilkan data dari field nim dan nama dari tabel mhs dari nim terbesar ke terkecil?...
BACK NEXT

SQL SELECT / FROM / WHERE
Klausa WHERE digunakan untuk menampilkan record yang memenuhi kondisi tertentu.
Sintaks: SELECT nama_field FROM nama_tabel WHERE kondisi

BACK

NEXT

SQL SELECT / FROM / WHERE
Klausa Where menggunakan operator sbb:
OPERATOR < <= > >= = <> BETWEEN LIKE IN PENJELASAN Isi field lebih kecil dari suatu nilai Isi field lebih kecil atau sama dengan dari suatu nilai Isi field lebih besar dari suatu nilai Isi field lebih besar atau sama dengan dari suatu nilai Isi field sama dengan dari suatu nilai Isi field tidak sama dengan dari suatu nilai Isi field di antara suatu range Isi field sesuai dengan pola tertentu Isi field sesuai dengan satu atau dari beberapa kriteria

BACK

NEXT

.SQL SELECT / FROM / WHERE Nama Tabel: mhs SELECT nama_field FROM nama_tabel WHERE kondisi *) Tampilkan semua data yang mempunyai jenis kelamin =‘P’ dari tabel mhs?. BACK NEXT ..

Studi Kasus (SELECT) Nama Tabel: mhs nim 01 02 03 04 05        nama ARI. P AMINUDIN RIZA . W DEDI .F alamat SURABAYA SIDOARJO SURABAYA SURABAYA LAMONGAN prodi SISTEM INFORMASI SISTEM KOMPUTER SISTEM INFORMASI SISTEM INFORMASI SISTEM KOMPUTER Tampilan Data yang Mempunyai NIM=“04” Tampilkan Data Mahasiswa yang Mempunyai nama “ARI” Tampilkan Data Mahasiswa yang Mempunyai alamat “SURABAYA” Tampilkan Data Mahasiswa yang Mempunyai NIM “02” – “04” Tampilkan Data Mahasiswa yang Selain NIM “01” Berapa Jumlah Data Mahasiswa yang prodi: “SISTEM INFORMASI” Berapa Jumlah Data Mahasiswa yang alamat: “SURABAYA” BACK NEXT .K ARI.

Resep SQL di MySQL Mengambil Substring  LEFT(str.awal_posisi.jml_str)  SELECT * FROM nama_tabel WHERE LEFT/RIGHT(nama_field.akhir_posisi)  RIGHT(str.jml_str)=‘’  SELECT MID(nama_field.akhir_posisi) as variabel FROM nama_tabel BACK NEXT .jml_str)  MID(str.awal_posisi.

‟b‟. -> abc BACK NEXT .…) mysql> SELECT CONCAT(„a‟.‟c‟).Resep SQL di MySQL  Menggabungkan String Untuk menggabungkan string digunakan operator || atau or. Sebagai gantinya gunakan fungsi CONCAT(str1.str2.

LCase(nama_field) as alias from NAMA_TABLE BACK NEXT .Resep SQL di MySQL Select (UCase & LCase)  UCase -> Mengubah semua teks menjadi huruf besar  LCase -> Mengubah semua teks menjadi huruf kecil  SELECT UCase(nama_field) as alias.

Resep SQL di MySQL Pembulatan:  FLOOR(bil) -> pembulatan ke bawah  CEIL(bil) -> pembulatan ke atas  ROUND(bil) -> pembulatan normal BACK NEXT .

6565 BACK NEXT .5 -203.Resep SQL di MySQL Nama Table: angka x 1.5 1.4777 153.49 1.5 -2.7 2.

4777 153.5 -203. CELL(x) as c.6565 f 1 1 1 2 -3 -204 153 c 2 2 2 3 -2 -203 154 r 1 2 2 3 -2 -203 154 BACK NEXT .49 1.7 2.5 1. ROUND(x) as r FROM angka. FLOOR(x) as f. x 1.5 -2.Resep SQL di MySQL mysql> SELECT x.

Resep SQL di MySQL  Menggunakan SELECT sebagai CALCULATOR mysql> SELECT 1+1. mysql> SELECT SIN(RADIANS(30)). BACK NEXT .

Resep SQL di MySQL Fungsi Agregat:  SUM() -> Jumlah  AVG() -> Rata .rata  MAX() -> Nilai Terbesar  MIN() -> Nilai Terkecil i 1 2 1 3 3 BACK NEXT .

INSERT INSERT INSERT INSERT INSERT INSERT INSERT INTO INTO INTO INTO INTO INTO INTO angka angka angka angka angka angka angka VALUES VALUES VALUES VALUES VALUES VALUES VALUES (1). COUNT(). (7). (5).Resep SQL di MySQL  MAX(). BACK NEXT . MIN(). (6). (2). AVG() CREATE TABLE angka (i int). SUM(). (3). (4).

menghitung jumlah baris di tabel angka menghitung jumlah angka yang genap menghitung total jumlah semua angka menghitung total jumlah angka yang ganjil angka terkecil dan terbesar rata-rata angka rata-ratakan angka.. MIN(). SOAL?..Resep SQL di MySQL          MAX(). tetapi jangan masukkan dalam perhitungan jika angka <> 4 BACK NEXT . AVG(). SUM().. COUNT().

MAX(i) FROM angka. --rata-rata angka mysql> SELECT AVG(i) FROM angka.Resep SQL di MySQL  MAX(). SUM(). COUNT(). --angka terkecil dan terbesar mysql> SELECT MIN(i). BACK NEXT . AVG() --menghitung jumlah baris di tabel angka mysql> SELECT COUNT(i) FROM angka. --menghitung jumlah angka yang genap mysql> SELECT COUNT(i) FROM angka WHERE i % 2 = 0. --rata-ratakan angka. tetapi jangan masukkan dalam perhitungan jika angka <> 4 mysql> SELECT AVG(i) FROM angka WHERE i <> 4. --menghitung total jumlah semua angka mysql> SELECT SUM(i) FROM angka. --menghitung total jumlah angka yang ganjil mysql> SELECT SUM(i) FROM angka WHERE i % 2 = 1. MIN().

BACK NEXT .Resep SQL di MySQL  WITH ROLLUP GROUP By di MySQL dan beberapa database lain memberi opsi WITH ROLLUP. Contoh: mysql> SELECT field1. COUNT(field1) FROM nama_table GROUP BY field1 WITH ROLLUP. Dengan Opsi ini. database akan menambahkan satu baris berisi total.

..Resep SQL di MySQL  Soal: Mencari Nilai Kuadrat dari masing-masing id?. id 1 2 3 4 5 6 BACK NEXT .

.Resep SQL di MySQL  Soal: Mencari Nilai Kuadrat dari masing-masing id yang bernilai ganjil?.. id 1 2 3 4 5 6 BACK NEXT .

Resep SQL di MySQL  Soal: Mencari Nilai Kuadrat dari masing-masing id yang bernilai genap?. id 1 2 3 4 5 6 BACK NEXT ...

NIK 01 02 03 04 05 06 NAMA_KAR ABC DEF GHI JKL MNO PQR NILAI_GAJI 700000 800000 700000 800000 700000 850000 BACK NEXT .Resep SQL di MySQL  Soal: Kelompokkan Data Karyawan berdasarkan jumlah karyawan yang mendapatkan nilai gaji yang sama.

nama_tabel2.Resep SQL di MySQL  Menggabungkan 2 Tabel SELECT nama_tabel1.nama_field FROM nama_table WHERE kondisi relasi tabel1 dengan tabel2 BACK NEXT .nama_field.

 RIGHT JOIN: jika ingin menampilkan semua record dari field tabel kedua (kanan) meskipun tidak cocok dengan nilai pada field tabel pertama (kiri).  LEFT JOIN: kebalikan dari RIGHT JOIN BACK NEXT .Resep SQL di MySQL  Menggabungkan 2 Tabel  INNER JOIN: akan memanggil record yang matching /cocok dari kedua sisi JOIN.

Resep SQL di MySQL  Menggabungkan 2 Tabel  STUDI KASUS SINKRONISAI ACCESS 2 MySQL BACK NEXT .

…) VALUES („nilai1‟.) INSERT INTO nama_tabel (field1. perintah: INSERT INTO nama_tabel VALUES („nilai1‟.….field2.‟nilai2‟.) BACK NEXT .Resep SQL di MySQL  INSERT INTO Perintah SQL INSERT adalah cara utama diSQL untuk menambahkan baris baru kedalam tabel.‟nilai2‟.….

BACK NEXT .Resep SQL di MySQL  INSERT IGNORE INTO Opsi IGNORE untuk INSERT diperkenalkan oleh MySQL dan tidak dikenal pada standar SQL. Opsi IGNORE akan membatalkan perintah INSERT yang bersangkutan jika ternyata penambahan baris melanggar unique atau Primary Key.

Maka gunakan: INSERT IGNORE INTO t1 (1.Resep SQL di MySQL  INSERT IGNORE INTO misal: INSERT INTO t1 (1. akan menghasilkan pesan kesalahan karena melanggar unique.‟satu‟). maka INSERT IGNORE menjadi ekivalen dengan INSERT biasa.‟satu‟). dikarenakan sudah ada baris yg nilainya 1. BACK NEXT . jika sebuah tabel tidak mengandung unique atau PK.

Resep SQL di MySQL  REPLACE INTO REPLACE INTO nama_tabel (field1.) REPLACE INTO pada dasarnya sama dengan INSERT. BACK NEXT .) VALUES („nilai1‟. namun memiliki kelakuan jika penambahan baris baru melanggar unique atau PK.‟nilai2‟. maka baris sebelumnya akan diganti dengan baris baru.field2.….….

 INSERT IGNORE INTO akan membiarkan baris lama yang sudah ada. BACK NEXT . REPLACE INTO akan mengganti dengan baris baru.Resep SQL di MySQL Kesimpulan:  REPLACE INTO sifatnya berlawanan dengan INSERT IGNORE INTO.

s VARCHAR(32) NOT NULL).‟Bandung‟) INSERT IGNORE INTO t2 VALUES (1.‟Jakarta‟).gagal melanggar PK INSERT INTO t2 VALUES (1. -.Resep SQL di MySQL  Contoh latihan: CREATE TABLE t2 (i INT PRIMARY KEY.‟Jakarta‟). INSERT INTO t2 VALUES (1. -.‟Jakarta‟).tidak akan melakukan apa-apa. -.‟Bandung‟). -.‟Jakarta‟) REPLACE INTO t2 VALUES (1. BACK NEXT .tabel kini akan berisi (1.tabel tetap terisi (1.

Resep SQL di MySQL
 INSERT dengan MULTIPLE RECORD INSERT INTO (field1,field2,field3) SELECT field1,field2,field3 from NAMA_TABLE

Catatan: Jumlah field Table Source dan Destination harus sama

BACK

NEXT

Resep SQL di MySQL
 Menghapus Data dari Tabel DELETE FROM nama_table WHERE kondisi;

BACK

NEXT

QUIZ II
Kerjakan sesuai dengan analisis & kemampuan Anda masing-masing: A. Buatlah Database, dengan perintah SQL (20) B. Buatlah Table (beserta atribut key, minim. 3 tabel) yang berelasi, dengan perintah SQL (20) C. Dari Table tersebut isikan data minim. 10 record / baris data (10) D. Kerjakan dengan perintah SQL dari statement berikut: 1. Tampilkan semua data dari tabel master (5) 2. Tampilkan data pada tabel master dengan menggunakan klausa WHERE (5) 3. Tampilkan data pada tabel master dengan menggunakan klausa ORDER BY (5) 4. Tampilkan data pada tabel transaksi dengan menggunakan klausa GROUP BY (5) 5. Tampilkan data pada tabel master dengan menggunakan klausa WHERE & LIKE (5) 6. Tampilkan jumlah baris data pada masing – masing tabel (5) 7. Tampilkan data dari tabel yang berelasi (5) 8. Tambahkan satu record / baris data pada tabel master Anda (5) 9. Ubah data tersebut (5) 10. Hapus data tersebut (5)

BACK

NEXT

Ramez. 1 & Vol. Database Management. Anne. Connoly. 2.. Martin. Implementation and Management. Resep Query. Jeffrey A. 3. Addison Wesley. Database Systems : A Practical Approach to Design. Strachan.. Begg. Informatika. James. Date. Elmasri.. Prentice Hall of India Private Limited. Bandung.J. Fundamentals of Database Systems. 7.DAFTAR PUSTAKA 1. Steven Hariyanto. Third Edition. 1991. California. Mc Fadden. F. Fathansyah. 5. Principles of Database Management. An Introduction to Database System. 1996.. Benjamin/Publishing Company Inc. Shamkant B. Navathe. Carolyn. Inc.. 1989. Jakarta. Thomas. END . Basis Data. C. New York. The Benjamin/Cummings Publishing Company. 1999. Hoffer. Ir. Vol. 1990. Addison Wesley Publishing Company. Dian Rakyat. 2005. 4.. California. 6. 2. New Delhi. 1992.

-0 #43/8 ./.2.79.2.3802:.-028 %.32025:3.-028  % .2.0380.9.*10/ # 3.%.25..# $%3.*9.23 ! /.

..3574/ $$% #$ 07.25.9.3.$9:/.3025:3.25.8:8 $% ..88.3.2...2.:2.9 $&#  % ..3.3025:3.3  07.3.    %....3.88..9 $&# $ # $&# $&#   574/ $$% #$ $$% !&%# $$% #$ $$% #$ $$% !&%# %.:2..9..3025:3...9.25. #    # ! & #  .3$0..25..9..2..-028 32      3.%..88.88.2.5. # %.9.25..3.9..2.3025:3.9 $&# %.88.  %.5.3.9.2....88..

.*9.#0805$"/$" 03.7*5488 #% 897 2*897 $% # 3.-0 #%.2-$:-8973 % 897 2*897  897 .*5488 .2.

2.#% 3.*9..2.-0 # 3.*10/ .7.*5488 .-0  % ..*10/ 2*897  $% 3.2.8.7*5488  .

34507. . .-.:3.393.   % .947.38973/:3...: 47 $0-.-:3.3$973 &39:203.9.#0805$"/$" 03.31:38 % 897 897 286$% % ..-:3..

908 203.80 3.8  ./:7:1-08.*10/ .802:.2.802:.908 203.80 ./:7:10.80 &.8.8..80 03:-.80 3.8 1742 *%  % .9 &.#0805$"/$" $00.7 .*10/ ..80 03:-.2. $%&.

30..  % .#0805$"/$" !02-:.30-.9.33472.9.3  # -  502-:.8 # & -  502-:.9.9.9.  -  502-:.

%.                  % .3.-0.#0805$"/$" .2.

81   . # &  .                 1         .87# .8.3.         7          % .#0805$"/$" 286$%  #  .

.3$%80-.&% # 286$%  286$%$ #$    % .#0805$"/$" 03:3..

  . 7.        % .#0805$"/$" :3870. '  #.9 $&  :2.9.9.%070.%07-08.7   .

'&$ . 39  $#%% $#%% $#%% $#%% $#%% $#%% $#%% .3.3.3.3.'&$               '  % .#0805$"/$"    &% $& #%%.'&$ .'&$ .3.3.3.'&$ .'&$ .'&$ .3.

802:.:2.3907-08.2 5079:3.:2.#0805$"/$"    &% $& '  $  2039:3:2.78/9.3/.8:. 7.9.3 .-0...9070.3. 909.. 7.5 2039:3949.303.9.3.  % .3.3..32.. 2039:3:2.3.7 7.-./.5.3..3..9.3. 7. 2039:3949.3.3...3.3.9.

3907-08.3.3.3.9070.9.3.3. 7..:2.3..7 286$%    # .3. 7..9..3. 286$%'  # .3.#  % . 286$%$&  # .3 286$%$&  # .#0805$"/$"    &% $& ' 2039:3:2. 2039:3:2.3..-0. 7.3.25079:3.9.303.-.3.802:..3.:2.#  2039:3949.8:.# .3./.5. 286$%'  # . 2039:3949.. 7.3.3.9.32.3. 909.3.3/.. 286$% &%  # .78/9..5 286$% &%  # .3.

9:-.9./.-.3 583 /.2.80. 4394 286$%10/  &% 10/ # 3.3203.3202-07458% # &! 03.-0 # &!10/%# &!  % .#0805$"/$" %# &! # &! /$"/.*9.80.9.2-.-.3-0-07...38.78 -078949.5.

9/.7.83 2.#0805$"/$" $4.83/ /        % ..:. 03./7.72.

3 /        % .7.3-073.#0805$"/$" $4..:./7.72.83 2.9/.83/. . 03.

83 2./7..5 /        % .:.72.#0805$"/$" $4. 03.9/.7. 03.3-073.83/.

#0805$"/$" $4.7..9.9.5.3-07/..2. 04254.3203/.3:2.7..7.33.3..38.        *#      !"# *        % ..3 .8..

2.*9.-0 3.39.*10/ 3.2.*9.-0 $%3.-0 3.*10/ # 3.#0805$"/$" 03.*9.-:3.3%.-0/03.-0  % .-0 #43/870.2.89.2.2.

32.-:3.3 ..47/.-0 #  .9.3%.#0805$"/$" 03.370.3202.

.70/:.5.-00/:.4.4/.33./. 7 % 0-.3.47/ /.33203.3802:.2.7#%   % .4.710/9.10/9.4 /03.-05079.3 2085:39/.70... .3/.25.88  #% .

#0805$"/$" 03.-0 $%&$&$ $# $$$$"  % .3%.-:3.

2-. 3.#0805$"/$" $#%%  !0739. $#%% 3.. 3...*9.78-.$"$#%.-0 50739.-0'&$ 3.:9.2. $#%% 3. /$":39:203.29.7.3-..2..*9./.7: 0/.2. '&$  % .-0 10/ 10/ 3.

3.3202-.5.70  % .7820.3 40$"/.3:9...9.2-.3-.:!72.89.3..$#%.3 50739.#0805$"/$" $#% #%  58 #:39:$#%/50703..503./03.7 $"  58 #.7 :36:0.39/.3/. 9073.9.9./.3-078.

 $#%% 9  8.3 $#% #% 9  8..3203....  % ..9:  .3$#%-.703../ 0..783.:! 2.8./.03/03.308.38:/.703. 20.8. .80-:.. -.3/:3:36:0 .:3..7:36:0 /.3508.9.203.9.9:  .-09/.3.#0805$"/$" $#% #%  28.$#% #203.3.3.

7:36:0.503./.3-. #!% 5.7:  % .73. .2.8.2:32020. 3.7: 20.:! 2.7880-0:23..2-.39/03.#0805$"/$" #!%  #!% 3.8.3.-.78-../.9.3-.3/.:.*9.3.2./03..3$#% 3.78-.-0 10/ 10/ '&$ 3.

38:/..2.39 /03.78-.7:  % .3 #!% 81.7.3/03.3-.3$#%  #% $#% #% .78.93..3202-. ..3203./.3-.#0805$"/$" 0825:. #!% ..3.-07.

3/:3  .5.3. .3.  9/. 9.3/:3 $#% #% 9'&$  ....320.79.20...3 #%%9 %!## 8'##   % &  $#%% 9'&$  .   % . #!% 9'&$  ..79.59078  .9.#0805$"/$" 4394.-03.79..-0909.:.5..79.3-078  .7! $#%% 9'&$  .  9.

9.#0805$"/$" $#%/03.9.30893.3&%!# # $#%%  10/ 10/ 10/ $%10/ 10/ 10/ 1742*% .7:88.3 :2.2.943.0/.-0$4:7.  % .10/%.

/.-0 % #  3.9.5:8.2.-0 # 43/8  % .#0805$"/$" 03.*9.7%.

3/.47/.-0 .9.3.97-:90 232 9.80 /03. $"   .9.232  70.33/.2.7%..$"   :./03.3.-.-090780-:98.350739."& 07.8 /03.3-070.-0 -08079..83  :..88 02.%.350739.25:.3808:.9.83 2.9.

-02.-02.8   %./.# &!   %.5.83 2.:8.78/./..789.$"/.3:2.47/.5.-.3/.8907/03.-02.8907/03.79./.25..3203:3.9.9..8907/03.9.38...9.78/.25.3.9:70.3-070.-.   07.3802:.3203:3.3.:8.#   %./.2-.5././.:8.8/03.:8.902039-07:9  %./.9.9.839.25.3/.-0   %..8907   %.350739.3/03.3/.9.25.5.-097.9.3203:3.25.-0.-02.2.9.9.38.9.25.25.3. ##   %.3203:3.3/.5.#    %.9.79.3.3/./.

89073/.   &-./.90780-:9   % .9.-02./.90780-:9   .9.-.78/.5.9.9.5:8/.

.2039.90   33974/:.-.23.3/.743$97.80$89028 %003.94083 2502039.9.9.3 330....%#!&$%  4334 %42.-.5574..20.80$8902 //843 080!:-83425.02039 //843080   ..90 $.3 '4  '4  047   2.841 .2.87 #.94394.80 ..80 $89028!7.39 :3/.9.9.943 .-.3.

1473.3.9.3 3.:2238!:-83 425.-.80.//03  41107 01170.23.   ..02039  03. .

88.50841.1473.90290/ 00   . %7//943 . 7 ..793 .80.208!73. ..    .02039  !7039.3.9.7.394 #0805":07 .38.!:-83425.3/:3   $90.     .413/.!7.9 . 31472.9.9.9.3#.-.0..03.33.79.

Sign up to vote on this title
UsefulNot useful