Jumat, 24 Oktober 2014

Awal Muharam (Doa Awal Tahun dan Akhir Tahun)

MUHARAM 
adalah bulan pertama dalam tahun Islam (Hijrah). Sebelum Rasulullah berhijrah dari Makkah ke Yathrib, kiraan bulan dibuat mengikut tahun Masihi. Hijrah Rasulullah memberi kesan besar kepada Islam sama ada dari sudut dakwah Rasulullah, ukhuwwah dan syiar Islam itu sendiri.
Pada asasnya, Muharam membawa maksud ‘diharamkan’ atau ‘dipantang’, iaitu Allah SWT melarang melakukan peperangan atau pertumpahan darah. Namun demikian larangan ini ditamatkan setelah pembukaan Makkah (Al Baqarah: 91). Sejak pemansuhan itu, umat Islam boleh melaksanakan tugas dan ibadat harian tanpa terikat lagi dengan larangan berkenaan.
Peristiwa-peristiwa penting:
1 Muharam – Khalifah Umar Al-Khattab mula membuat penetapan kiraan bulan dalam Hijrah.
10 Muharam – Dinamakan juga hari ‘Asyura’. Pada hari itu banyak terjadi peristiwa penting yang mencerminkan kegemilangan bagi perjuangan yang gigih dan tabah bagi menegakkan keadilah dan kebenaran.
Pada 10 Muharam juga telah berlaku:
Nabi Adam bertaubat kepada Allah.
Nabi Idris diangkat oleh Allah ke langit.
Nabi Nuh diselamatkan Allah keluar dari perahunya sesudah bumi ditenggelamkan selama enam bulan.
Nabi Ibrahim diselamatkan Allah dari pembakaran Raja Namrud.
Allah menurunkan kitab Taurat kepada Nabi Musa.
Nabi Yusuf dibebaskan dari penjara.
Penglihatan Nabi Yaakob yang kabur dipulihkkan Allah.
Nabi Ayub dipulihkan Allah dari penyakit kulit yang dideritainya.
Nabi Yunus selamat keluar dari perut ikan paus setelah berada di dalamnya selama 40 hari 40 malam.
Laut Merah terbelah dua untuk menyelamatkan Nabi Musa dan pengikutnya dari tentera Firaun.
Kesalahan Nabi Daud diampuni Allah.
Nabi Sulaiman dikurniakan Allah kerajaan yang besar.
Hari pertama Allah menciptakan alam.
Hari Pertama Allah menurunkan rahmat.
Hari pertama Allah menurunkan hujan.
Allah menjadikan ‘Arasy.
Allah menjadikan Luh Mahfuz.
Allah menjadikan alam.
Allah menjadikan Malaikat Jibril.
Nabi Isa diangkat ke langit.

DOA AKHIR TAHUN HIJRAH
Doa Akhir Tahun dibaca 3 kali pada akhir waktu Asar atau sebelum masuk waktu Maghrib  pada akhir bulan Zulhijjah.

Sesiapa yang membaca doa ini, Syaitan berkata :
“Kesusahan bagiku dan sia-sia lah pekerjaanku menggoda anak Adam pada setahun ini dan Allah binasakan aku satu saat jua. Dengan sebab membaca doa ini, Allah ampunkan dosanya setahun”

DOA AWAL TAHUN
Doa Awal Tahun dibaca 3 kali selepas maghrib pada malam satu Muharram.
Sesiapa yang membaca doa ini, Syaitan berkata :
“Telah amanlah anak Adam ini daripada godaan pada tahun ini kerana Allah telah mewakilkan dua Malaikat memeliharanya daripada fitnah Syaitan”.


Amalan -Amalan Sunat pada bulan Muharam

Antara amalan disunatkan pada bulan Muharam:
1.    Berpuasa. Maksud Hadis: Barang siapa berpuasa satu hari dalam bulan Muharam pahalanya seumpama berpuasa 30 tahun.Maksud Hadis: Barang siapa yang berpuasa tiga hari dalam bulan Muharam, iaitu hari Khamis, Jumaat dan Sabtu, Allah tulis padanya pahala seperti mana beribadat selama 2 tahun.
2.    Banyakkan amal ibadat seperti solat sunat, zikir dan sebagainya.
3.    Berdoa akhir tahun pada hari terakhir bulan Zulhijah selepas Asar sebanyak 3X
4.    Berdoa awal tahun pada 1 Muharram selepas Maghrib 3X

Empat belas perkara sunat dilakukan pada hari Asyura (10 Muharram):

1.    Melapangkan masa/belanja anak isteri. Fadilatnya – Allah akan melapangkan hidupnya pada tahun ini.
2.    Memuliakan fakir miskin. Fadilatnya – Allah akan melapangkannya dalam kubur nanti.
3.    Menahan marah. Fadilatnya – Di akhirat nanti Allah akan memasukkannya ke dalam golongan yang redha.
4.    Menunjukkan orang sesat. Fadilatnya – Allah akan memenuhkan cahaya iman dalam hatinya.
5.    Menyapu/mengusap kepala anak yatim. Fadilatnya – Allah akan mengurniakan sepohon pokok di syurga bagi tiap-tiap rambut yang disapunya.
6.    Bersedekah. Fadilatnya – Allah akan menjauhkannya daripada neraka sekadar jauh seekor gagak terbang tak berhenti-henti dari kecil sehingga ia mati. Diberi pahala seperti bersedekah kepada semua fakir miskin di dunia ini.
7.    Memelihara kehormatan diri. Fadilatnya – Allah akan mengurniakan hidupnya sentiasa diterangi cahaya keimanan.
8.    Mandi Sunat. Fadilatnya – Tidak sakit (sakit berat) pada tahun itu. Lafaz niat: “Sahaja aku mandi sunat hari Asyura kerana Allah Taala.”
9.    Bercelak. Fadilatnya – Tidak akan sakit mata pada tahun itu.
10.Membaca Qulhuwallah hingga akhir 1,000X. Fadilatnya – Allah akan memandanginya dengan pandangan rahmah di akhirat nanti.
11.Sembahyang sunat empat rakaat. Fadilatnya – Allah akan mengampunkan dosanya walau telah berlarutan selama 50 tahun melakukannya. Lafaz niat: “Sahaja aku sembahyang sunat hari Asyura empat rakaat kerana Allah Taala.” Pada rakaat pertama dan kedua selepas Fatihah dibaca Qulhuwallah 11X.
12.Membaca “has biallahhu wa nik mal wa keel, nikmal maula wa nikmannaseer”. Fadilatnya – Tidak mati pada tahun ini.
13.Menjamu orang berbuka puasa. Fadhilat – Diberi pahala seperti memberi sekalian orang Islam berbuka puasa.
14.Puasa. Niat – “Sahaja aku berpuasa esok hari sunat hari Asyura kerana Allah Taala.” Fadilat – Diberi pahala seribu kali Haji, seribu kali umrah dan seribu kali syahid dan diharamkannya daripada neraka.

Kamis, 23 Oktober 2014

Database Normalisasi

Database Normalisasi
Ketergantungan Fungsional
Ketergantungan fungsional (FD) diatur kendala antara dua atribut dalam suatu relasi. Ketergantungan fungsional mengatakan bahwa jika dua tupel memiliki nilai yang sama untuk atribut A1, A2, ..., An kemudian dua tupel harus harus memiliki nilai yang sama untuk atribut B1, B2, ..., Bn.

Ketergantungan fungsional diwakili oleh tanda panah (→), yaitu X → Y, dimana X secara fungsional menentukan atribut Y. Sisi kiri menentukan nilai atribut di sisi kanan.

Armstrong Aksioma
Jika F adalah himpunan dependensi fungsional maka penutupan F, dinotasikan sebagai F +, adalah himpunan semua dependensi fungsional logis tersirat oleh Aksioma F. Armstrong ditetapkan aturan, bila diterapkan berulang kali menghasilkan penutupan dependensi fungsional.

Aturan refleksif: Jika alpha adalah seperangkat atribut dan beta alpha is_subset_of, maka alpha memegang beta.

Aturan Augmentation: jika → b memegang dan y adalah atribut set, maka ay → dengan juga memegang. Itu adalah menambahkan atribut dalam dependensi, tidak mengubah dependensi dasar.

Ketransitifan aturan: Sama seperti aturan transitif dalam aljabar, jika → b memegang dan b → c memegang kemudian → c juga memegang. a → b disebut sebagai fungsional menentukan b.

Ketergantungan Fungsional sepele
Sepele: Jika FD X → Y memegang mana Y subset dari X, maka itu disebut FD sepele. FD sepele selalu terus.

Non-sepele: Jika FD X → Y memegang mana Y tidak subset dari X, maka disebut non-sepele FD.

Benar-benar non-sepele: Jika FD X → Y memegang mana x berpotongan Y = Φ, dikatakan benar-benar non-sepele FD.

Normalisasi
Jika desain database tidak sempurna mungkin berisi anomali, yang seperti mimpi buruk bagi database itu sendiri. Mengelola database dengan anomali adalah nyaris mustahil.

Perbarui anomali: jika item data yang tersebar dan tidak terkait satu sama lain dengan baik, maka mungkin ada contoh ketika kita mencoba untuk memperbarui satu item data yang memiliki salinan itu tersebar di beberapa tempat, beberapa contoh itu bisa diperbarui dengan benar ketika sedikit yang kiri dengan nilai-nilai lama ada. Hal ini membuat database dalam keadaan tidak konsisten.

Penghapusan anomali: kami mencoba untuk menghapus rekor, tapi bagian itu meninggalkan terhapus karena ketidaksadaran, data juga disimpan di tempat lain.

Masukkan anomali: kami mencoba memasukkan data dalam catatan yang tidak ada sama sekali.

Normalisasi adalah suatu metode untuk menghapus semua anomali ini dan membawa database untuk negara dan bebas konsisten dari setiap jenis anomali.

Bentuk Normal Pertama:
Ini didefinisikan dalam definisi hubungan (tabel) itu sendiri. Aturan ini mendefinisikan bahwa semua atribut dalam relasi harus memiliki domain atom. Nilai dalam domain atom adalah unit terpisahkan.


[Gambar: hubungan Terorganisir]
Kami menata kembali hubungan (tabel) seperti di bawah ini, untuk mengubahnya menjadi Bentuk Normal Pertama


[Gambar: Hubungan di 1NF]
Setiap atribut harus hanya berisi nilai tunggal dari domain yang telah ditentukan tersebut.

Bentuk Normal Kedua:
Sebelum kita belajar tentang bentuk normal kedua, kita perlu memahami hal-hal berikut:

Perdana atribut: atribut, yang merupakan bagian dari prime-kunci, adalah Perdana atribut.

Non-prime atribut: atribut, yang bukan merupakan bagian dari prime-key, dikatakan atribut non-prime.

Bentuk normal kedua mengatakan, bahwa setiap atribut non-prime harus sepenuhnya fungsional tergantung pada prime atribut kunci. Artinya, jika X → A memegang, maka tidak boleh ada bagian yang tepat Y dari X, untuk itu Y → A juga memegang.


[Gambar: Hubungan tidak dalam 2NF]
Kami lihat di sini dalam kaitannya Student_Project bahwa atribut kunci utama adalah Stu_ID dan Proj_ID. Menurut aturan, atribut non-key, yaitu Stu_Name dan Proj_Name harus bergantung pada baik, bukan pada salah satu atribut kunci utama secara individual. Tapi kami menemukan bahwa Stu_Name dapat diidentifikasi dengan Stu_ID dan Proj_Name dapat diidentifikasi dengan Proj_ID independen. Hal ini disebut ketergantungan parsial, yang tidak diperbolehkan dalam Bentuk Normal Kedua.


[Gambar: Hubungan dalam 2NF]
Kita melanggar hubungan dua seperti yang digambarkan dalam gambar di atas. Jadi tidak terdapat ketergantungan parsial.

Bentuk Normal Ketiga:
Untuk relasi berada dalam bentuk normal ketiga, itu harus dalam bentuk Normal Kedua dan berikut ini harus memenuhi:

Tidak ada non-prime atribut transitif tergantung pada prime atribut kunci

Untuk setiap dependensi fungsional non-sepele, X → A, maka baik

X adalah superkey atau,

A adalah Perdana atribut.


[Gambar: Hubungan tidak berada dalam 3NF]
Kami menemukan bahwa di atas digambarkan Student_detail hubungan, Stu_ID adalah kunci dan hanya prime atribut kunci. Kami menemukan Kota yang dapat diidentifikasi oleh Stu_ID serta Zip itu sendiri. Zip tidak adalah superkey atau City adalah atribut utama. Selain itu, Stu_ID → Zip → City, sehingga terdapat ketergantungan transitif.


[Gambar: Hubungan dalam 3NF]
Kami pecah relasi seperti di atas digambarkan dua relasi untuk membawa ke 3NF.

Boyce-Codd Normal Form:
BCNF merupakan perpanjangan dari Bentuk Normal Ketiga dengan cara yang ketat. BCNF menyatakan bahwa

Untuk setiap dependensi fungsional non-sepele, X → A, maka X harus merupakan super-kunci.

Dalam digambarkan gambar di atas, Stu_ID super-kunci dalam Student_Detail hubungan dan Zip super-kunci dalam zipcodes hubungan. Jadi,

Stu_ID → Stu_Name, Zip

Dan

Zip → Kota

Menegaskan, bahwa kedua relasi berada dalam BCNF.

Data Manipulation Language

Data Manipulation Language
SQL dilengkapi dengan bahasa manipulasi data. DML memodifikasi contoh database dengan menyisipkan, memperbarui dan menghapus data. DML bertanggung jawab untuk semua modifikasi data dalam database. SQL berisi set berikut perintah dalam bagian DML:

SELECT / FROM / MANA

INSERT INTO / VALUES

UPDATE / SET / MANA

DELETE FROM / MANA

Maskapai konstruksi dasar memungkinkan programmer database dan pengguna untuk memasukkan data dan informasi ke dalam database dan mengambil efisien menggunakan sejumlah pilihan filter.

SELECT / FROM / MANA
SELECT

Ini adalah salah satu perintah query dasar SQL. Hal ini mirip dengan operasi proyeksi aljabar relasional. Ini memilih atribut berdasarkan kondisi dijelaskan oleh klausa WHERE.

DARI

Pasal ini mengambil nama relasi sebagai argumen dari atribut yang harus dipilih / diproyeksikan. Dalam kasus yang lebih dari satu nama relasi diberi klausul ini sesuai dengan produk Cartesian.

MANA

Pasal ini mendefinisikan predikat atau kondisi yang harus sesuai agar memenuhi syarat atribut untuk diproyeksikan.

Sebagai contoh:

Pilih AUTHOR_NAME
Dari BOOK_AUTHOR
Dimana usia> 50;
Perintah ini akan memproyeksikan nama-nama penulis dari hubungan BOOK_AUTHOR yang usianya lebih besar dari 50.

INSERT INTO / VALUES
Perintah ini digunakan untuk memasukkan nilai-nilai ke baris tabel (relasi).

Sintaks

INSERT INTO tabel (column1 [, column2, column3 ...]) VALUES (value1 [, value2, value3 ...])
Atau

Tabel INSERT INTO NILAI (value1, [value2, ...])
Untuk Contoh:

INSERT INTO tutorialspoint (Penulis, Subjek) VALUES ("anonim", "komputer");
UPDATE / SET / MANA
Perintah ini digunakan untuk memperbarui atau memodifikasi nilai kolom tabel (relasi).

Sintaks

UPDATE table_name SET column_name = value [, column_name = value ...] [WHERE kondisi]
Sebagai contoh:

UPDATE tutorialspoint SET Author = "webmaster" MANA Author = "anonim";
DELETE / FROM / MANA
Perintah ini digunakan untuk menghapus satu atau lebih baris dari tabel (relasi).

Sintaks

DELETE FROM table_name [WHERE kondisi];
Sebagai contoh:

DELETE FROM tutorialspoints
MANA Author = "tidak diketahui";

ER Model: Konsep Dasar

Model hubungan entitas mendefinisikan pandangan konseptual database. Ia bekerja di sekitar entitas dunia nyata dan asosiasi di antara mereka. Pada tampilan tingkat, Model ER dianggap baik untuk merancang database.

Kesatuan
Suatu hal yang dunia nyata baik hidup maupun mati yang dapat dengan mudah diidentifikasi dan dibedakan. Sebagai contoh, dalam database sekolah, mahasiswa, guru, kelas dan kursus yang ditawarkan dapat dianggap sebagai entitas. Semua entitas memiliki beberapa atribut atau properti yang memberi mereka identitas mereka.

Sebuah himpunan entitas adalah kumpulan sejenis entitas. Himpunan entitas mungkin berisi entitas dengan atribut berbagi nilai yang sama. Sebagai contoh, Siswa set mungkin berisi semua siswa sekolah; juga Guru mengatur mungkin berisi semua guru sekolah dari seluruh fakultas. Entitas set tidak perlu menjadi menguraikan.

Atribut
Entitas diwakili dengan cara sifat, yang disebut atribut mereka. Semua atribut memiliki nilai. Misalnya, entitas mahasiswa mungkin memiliki nama, kelas, umur sebagai atribut.

Ada ada domain atau rentang nilai yang dapat ditugaskan untuk atribut. Sebagai contoh, nama siswa tidak bisa menjadi nilai numerik. Itu harus abjad. Usia Seorang siswa tidak boleh negatif, dll

JENIS ATRIBUT:
Sederhana atribut:

Atribut sederhana adalah nilai-nilai atom, yang tidak dapat dibagi lagi. Sebagai contoh, telepon-nomor siswa adalah nilai atom 10 digit.

Komposit atribut:

Atribut komposit terbuat dari lebih dari satu atribut sederhana. Sebagai contoh, nama lengkap siswa mungkin memiliki first_name dan last_name.

Derived atribut:

Atribut yang diturunkan adalah atribut yang tidak ada secara fisik dalam database, tapi ada nilai-nilai yang berasal dari atribut lain yang disajikan dalam database. Misalnya, average_salary di departemen harus disimpan dalam database melainkan dapat diturunkan. Sebagai contoh lain, usia dapat diturunkan dari data_of_birth.

Bernilai tunggal atribut:

Atribut bernilai tunggal mengandung nilai tunggal. Sebagai contoh: Social_Security_Number.

Multi-nilai atribut:

Multi-nilai atribut dapat berisi lebih dari satu nilai. Sebagai contoh, seseorang dapat memiliki lebih dari satu nomor telepon, EMAIL_ADDRESSES dll

Jenis atribut ini dapat datang bersama-sama dengan cara seperti:

sederhana atribut bernilai tunggal

atribut multi-nilai sederhana

komposit atribut bernilai tunggal

atribut multi-nilai komposit

ENTITAS-SET DAN KEYS
Key adalah atribut atau kumpulan atribut yang secara unik mengidentifikasi suatu entitas antara himpunan entitas.

Sebagai contoh, roll_number seorang siswa membuat dia / dia diidentifikasi di kalangan siswa.

Super Key: Set atribut (satu atau lebih) yang secara kolektif mengidentifikasi sebuah entitas dalam himpunan entitas.

Candidate Key: kunci super Minimal bernama kunci kandidat yaitu, supers kunci yang tidak ada bagian yang tepat adalah superkey. Sebuah himpunan entitas dapat memiliki lebih dari satu candidate key.

Primary Key: Ini adalah salah satu kunci calon yang dipilih oleh perancang database untuk secara unik mengidentifikasi himpunan entitas.

Hubungan
Hubungan antar entitas disebut hubungan. Misalnya, entitas karyawan memiliki hubungan works_at dengan departemen. Contoh lain adalah bagi siswa yang mendaftar di beberapa kursus. Di sini, Works_at dan mendaftar disebut hubungan.

HUBUNGAN SET:
Hubungan sejenis disebut himpunan relasi. Seperti entitas, hubungan juga dapat memiliki atribut. Atribut-atribut ini disebut atribut deskriptif.

DERAJAT HUBUNGAN
Jumlah berpartisipasi entitas dalam hubungan mendefinisikan derajat hubungan.

Biner = derajat 2

Ternary = derajat 3

n-ary = derajat

PEMETAAN KARDINALITAS:
Kardinalitas mendefinisikan jumlah entitas dalam satu himpunan entitas yang dapat dikaitkan dengan jumlah entitas set lain melalui hubungan set.

Satu-ke-satu: satu entitas dari himpunan entitas A dapat berhubungan dengan paling banyak satu entitas himpunan entitas B dan sebaliknya.


[Gambar: Satu-ke-satu hubungan]
Satu-ke-banyak: Satu entitas dari himpunan entitas A dapat berhubungan dengan lebih dari satu entitas dari himpunan entitas B, tetapi dari himpunan entitas B satu entitas dapat dikaitkan dengan paling banyak satu entitas.


[Gambar: Satu-ke-banyak hubungan]
Banyak-ke-satu: Lebih dari satu entitas dari entitas himpunan A dapat diasosiasikan dengan paling banyak satu entitas himpunan entitas B, tetapi satu entitas dari himpunan entitas B dapat berhubungan dengan lebih dari satu entitas dari himpunan entitas A.


[Gambar: Banyak-ke-satu hubungan]
Banyak-ke-banyak: satu kesatuan dari A dapat berhubungan dengan lebih dari satu entitas dari B dan sebaliknya.


[Gambar: Banyak-ke-banyak hubungan]

DBMS Struktur File

Data relatif dan informasi disimpan secara kolektif dalam format file. Sebuah file adalah urutan catatan yang disimpan dalam format biner. Sebuah disk drive diformat menjadi beberapa blok, yang mampu untuk menyimpan catatan. Catatan file yang dipetakan ke blok-blok disk.

Berkas Organisasi
Metode catatan file pemetaan untuk blok disk mendefinisikan organisasi berkas, yaitu bagaimana catatan file yang terorganisir. Berikut ini adalah jenis-jenis organisasi berkas




[Gambar: Organisasi File]
Organisasi Berkas Heap: Ketika sebuah file dibuat menggunakan Heap Berkas mekanisme Organisasi, Sistem Operasi mengalokasikan area memori ke file yang tanpa rincian akuntansi lebih lanjut. Catatan file dapat ditempatkan di manapun di daerah memori. Ini adalah tanggung jawab perangkat lunak untuk mengelola catatan. Heap Berkas tidak mendukung pemesanan, sequencing atau pengindeksan sendiri.

Organisasi Berkas Sequential: Setiap record file berisi field data (atribut) untuk secara unik mengidentifikasi catatan itu. Dalam mekanisme organisasi berkas sekuensial, catatan ditempatkan dalam file dalam beberapa berurutan berdasarkan field kunci unik atau kunci pencarian. Praktis, tidak mungkin untuk menyimpan semua catatan secara berurutan dalam bentuk fisik.

Organisasi Berkas hash: Mekanisme ini menggunakan fungsi perhitungan Hash pada beberapa bidang catatan. Seperti kita ketahui, file yang merupakan kumpulan catatan, yang harus dipetakan pada beberapa blok dari ruang disk yang dialokasikan untuk itu. Pemetaan ini didefinisikan bahwa perhitungan hash. Output dari hash menentukan lokasi disk blok di mana catatan mungkin ada.

Clustered Organisasi File: Organisasi file Clustered tidak dianggap baik untuk database besar. Dalam mekanisme ini, catatan terkait dari satu atau lebih relasi disimpan di blok disk yang sama, yaitu, urutan catatan tidak didasarkan pada kunci primer atau kunci pencarian. Organisasi ini membantu untuk mengambil data dengan mudah berdasarkan tertentu kondisi join. Selain khususnya kondisi join, di mana data disimpan, semua pertanyaan menjadi lebih mahal.

Operasi File
Operasi pada file database dapat diklasifikasikan ke dalam dua kategori luas.

Perbarui Operasi

Retrieval Operasi

Operasi update mengubah nilai-nilai data dengan penyisipan, penghapusan atau pembaruan. Operasi pengambilan di sisi lain tidak mengubah data tetapi mengambil mereka setelah opsional penyaringan bersyarat. Dalam kedua jenis operasi, pilihan memainkan peran penting. Selain penciptaan dan penghapusan file, mungkin ada beberapa operasi yang dapat dilakukan pada file.

Terbuka: Sebuah file dapat dibuka di salah satu dari dua mode, baca modus atau mode menulis. Dalam modus baca, sistem operasi tidak mengizinkan siapa pun untuk mengubah data itu semata-mata untuk membaca tujuan. File dibuka dalam modus baca dapat dibagi di antara beberapa entitas. Modus lain adalah modus menulis, di mana, modifikasi data diperbolehkan. File dibuka dalam modus menulis dapat dibaca juga tapi tidak dapat dibagi.

Cari: Setiap file memiliki pointer file, yang memberitahu posisi saat ini di mana data yang akan dibaca atau ditulis. Pointer ini dapat disesuaikan. Menggunakan find (mencari) operasi dapat dipindahkan ke depan atau ke belakang.

Baca: Secara default, ketika file dibuka dalam modus baca file poin pointer ke awal file. Ada pilihan di mana pengguna dapat memberitahu sistem operasi untuk mana file pointer yang berlokasi pada saat pembukaan berkas. Data berikutnya ke file pointer dibaca.

Tulis: Pengguna dapat memilih untuk membuka file dalam modus menulis, yang memungkinkan mereka untuk mengedit isi dari file. Hal ini dapat penghapusan, penyisipan atau modifikasi. Pointer file dapat ditemukan pada saat pembukaan atau dapat secara dinamis diubah jika sistem operasi diizinkan melakukannya.

Tutup: ini juga merupakan operasi yang paling penting dari sudut sistem operasi pandang. Ketika permintaan untuk menutup file yang dihasilkan, sistem operasi akan menghapus semua kunci (jika dalam mode bersama) dan menyimpan konten data (jika diubah) ke media penyimpanan sekunder dan melepaskan semua buffer dan berkas penangan yang terkait dengan file tersebut .

Organisasi isi data dalam file memainkan peran utama di sini. Mencari atau menemukan file pointer ke record yang diinginkan dalam file berperilaku berbeda jika file tersebut memiliki catatan diatur secara berurutan atau berkerumun, dan sebagainya.

ER Model Untuk Model Relational

ER Model saat dikonseptualisasikan ke dalam diagram memberikan gambaran yang baik dari entitas-hubungan, yang lebih mudah dimengerti. Diagram ER dapat dipetakan ke skema relasional yaitu, adalah mungkin untuk membuat skema relasional menggunakan diagram ER. Meskipun kita tidak dapat mengimpor semua kendala ER ke dalam model relasional tetapi skema perkiraan dapat dihasilkan.
Ada lebih dari satu proses dan algoritma yang tersedia untuk mengkonversi ER Diagram menjadi Relational Schema. Beberapa dari mereka yang otomatis dan beberapa dari mereka adalah proses manual. Kami dapat fokus di sini pada isi diagram pemetaan ke dasar relasional.
ER Diagram terutama terdiri dari:
• Entitas dan atributnya
• Hubungan, yang merupakan asosiasi antar entitas.
Pemetaan Badan
Sebuah entitas adalah objek dunia nyata dengan beberapa atribut.
Proses pemetaan (Algoritma):

[Gambar: Pemetaan Entity]
• Membuat tabel untuk setiap entitas
• Atribut entitas harus menjadi bidang tabel dengan tipe data masing-masing.
• Menyatakan primary key
Hubungan pemetaan
Suatu hubungan adalah asosiasi antar entitas.
Proses pemetaan (Algoritma):

[Gambar: hubungan Pemetaan]
• Membuat tabel untuk hubungan
• Menambahkan kunci utama dari semua Entitas berpartisipasi sebagai bidang meja dengan tipe data masing-masing.
• Jika hubungan memiliki atribut, menambahkan setiap atribut sebagai bidang meja.
• Menyatakan primary key menyusun semua kunci utama dari entitas yang berpartisipasi.
• Menyatakan semua batasan kunci asing.
Pemetaan Lemah Set Entity
Sebuah entitas lemah set adalah salah satu yang tidak memiliki kunci primer yang terkait dengannya.
Proses pemetaan (Algoritma):


[Gambar: Pemetaan Lemah Set Entity]
• Membuat tabel untuk himpunan entitas lemah
• Tambahkan semua atributnya ke meja sebagai bidang
• Tambahkan kunci utama mengidentifikasi himpunan entitas
• Menyatakan semua batasan kunci asing
Pemetaan entitas hirarkis
ER spesialisasi atau generalisasi datang dalam bentuk entitas set hirarkis.
Proses pemetaan (Algoritma):

[Gambar: Pemetaan entitas hirarkis]
• Buat tabel untuk semua entitas tingkat yang lebih tinggi
• Buat tabel untuk entitas tingkat yang lebih rendah
• Menambahkan kunci utama entitas tingkat yang lebih tinggi dalam tabel entitas tingkat yang lebih rendah
• Dalam tabel tingkat yang lebih rendah, tambahkan semua atribut lainnya dari entitas yang lebih rendah.
• Menyatakan primary key dari tabel tingkat yang lebih tinggi primary key untuk tabel tingkat yang lebih rendah
• Menyatakan batasan kunci asing.



PENGENALAN SISTEM DATABASE
Database:
Database adalah kumpulan data, biasanya menggambarkan kegiatan dari satu atau lebih organisasi terkait.
DBMS:
Database Management System (DBMS), adalah software yang dirancang untuk membantu dalam memelihara, memanfaatkan, dan menggunakan sekumpulan data yang besar dan sangat berkembang pesat
SEJARAH DBMS
Sejak awal adanya komputer, menyimpan dan memanipulasi data telah menjadi fokus utama sebuah aplikasi. Awalnya DBMS yang didesain oleh Charles Bachman di General Electric pada awal tahun 1960 disebut Integrated Data Store. Ini membentuk dasar untuk model data jaringan, yang distandarisasi oleh Conference On Data System Languages (CODASYL) dan sangat berarti bagi sistem database pada tahun 1960-an. Bachman adalah penerima penghargaan pertama dari ACM Turing Award (penghargaan ilmu komputer setara hadiah Nobel) yang bekerja di bidang database pada tahun 1973.
#Definisi
•Data Fakta, teks, hasil pengukuran, gambar, suara, dan video yang bernilai informasi.
•Informasi Data yang telah diproses sebagai bahan dalam proses pengambilan keputusan. •Database Kumpulan data yang terorganisir berdasarkan suatu struktur hubungan.
•Metadata Data yang mendeskripsikan data lain.
Informasi Informasi - dapat dimanfaatkan sebagai dasar untuk pengambilan keputusan dan memahami permasalahan/situasi Sistem
Metadata Deskripsi tentang format dan karakteristik data, termasuk tipenya, ukurannya, nilai-nilai yang absah, dan dokumentasi lainnya.
#Evolusi Teknologi Database
•Flat File  1960an - 1980an
•Hierarchical  1970an - 1990an
•Network  1970an - 1990an
•Relational  1980an – sekarang
•Object-oriented  1990an - sekarang
•Object-relational  1990an - sekarang
Sistem File Versus DBMS
•Kapasitas penyimpanan data
•Kemampuan mengakses data
•Konkurensi data
•Perlindungan data dari kegagalan
•Keamanan data Sistem
Manfaat DBMS
•Independensi data
•Akses data efisien
•Integritas dan keamanan data
•Administrasi data
•Akses konkuren dan Crash Recovery
•Waktu pengembangan aplikasi terkurangi
#TINGKAT ABTRAKSI DALAM DBMS
MODEL RELASIONAL
•Dalam membangun deskripsi tentang pusat data dalam model adalah suatu hubungan, yang dapat dianggap sebagai kumpulan record.
•Deskripsi data dalam istilah model data disebut skema. Dalam model relasional, skema digunakan untuk relasi menentukan nama, nama setiap field (atau atribut atau kolom), dan tipe setiap field. Independensi Data
• Indepedensi data adalah program aplikasi yang telah terisolasi dari perubahan dalam struktur data yang disimpan.
• Independensi data dicapai melalui penggunaan dari tiga tingkat data abstraksi ; khususnya, skema konseptual dan skema eksternal yang mempunyai manfaat yang berbeda pada bidang ini.
TINGKAT ABSTRAKSI DALAM DBMS
Data dalam sebuah DBMS dibagi menjadi tiga tingkatan yaitu:
•Skema Konseptual
•Skema Fisik
•Skema Eksternal
QUERY DALAM DBMS
•Query berfungsi untuk memudahkan mendapatkan informasi dari database yang nantinya akan digunakan untuk menentukan nilai informasi bagi seorang pengguna
•Queries: pertanyaan yang melibatkan data di dalam DBMS.
•Bahsa Query: bahasa khusus yang dapat digunakan untuk menapilkan query yang diinginkan. •Kalkulus relasional: adalah bahasa query formal berdasarkan logika matematika, dan query yang ditampilkan dalam bahasa ini memiliki arti dan maksud yang tepat.
•Aljabar relasional: merupakan bahasa query formal berdasarkan kumpulan operator untuk memanipulasi relasi, yang setara dengan kalkulus.
Independensi Data
• Indepedensi data adalah program aplikasi yang telah terisolasi dari perubahan dalam struktur data yang disimpan.
• Independensi data dicapai melalui penggunaan dari tiga tingkat data abstraksi ; khususnya, skema konseptual dan skema eksternal yang mempunyai manfaat yang berbeda pada bidang ini. #Komponen Sistem Database
•Repositori  Pusat penyimpanan metadata.
•Database Management System (DBMS)  Perangkat lunak untuk mengelola database.
•Database  Pusat penyimpanan data.
•Program Aplikasi  Perangkat lunak pengguna data.
•User Interface  Fasilitas interaksi antara pengguna dan data secara tekstual atau grafis.
•CASE Tools  Computer - Aided Software Engineering.
•Administrator Data  Personil yang bertanggung-jawab memelihara database.
•Developer Sistem  Personil yang bertanggung-jawab merancang program aplikasi beserta struktur datanya dalam database.
•End User  Orang yang menggunakan aplikasi dan database.
#Model Data
•Model Data Kumpulan konstruksi deskripsi data level tinggi yang menyembunyikan banyak detail penyimpanan level rendah. DBMS memungkinkan pengguna untuk menentukan data yang disimpan dalam model data.
•Skema Logis Mendeskripsikan data yang disimpan dalam model data DBMS berupa semua relasi yang disimpan dalam database.
•Skema Fisik Menentukan detail penyimpanan data berupa mendeskripsikan bagaimana relasi dalam skema Logis disimpan pada alat penyimpanan sekunder sepert

Representase ER Diagram

Sekarang kita akan belajar bagaimana ER Model diwakili melalui diagram ER. Setiap objek seperti entitas, atribut dari suatu entitas, hubungan set, dan atribut hubungan set dapat diwakili oleh alat diagram ER.
Kesatuan
Entitas direpresentasikan dengan cara persegi panjang. Persegi panjang diberi nama dengan himpunan entitas yang mereka wakili.

Atribut
Atribut adalah sifat dari entitas. Atribut yang diwakili melalui gerhana. Setiap gerhana merupakan salah satu atribut dan terhubung langsung ke badan-nya (persegi panjang).

Jika atribut adalah komposit, mereka dibagi lagi di pohon seperti struktur. Setiap node kemudian terhubung ke atribut. Itu adalah atribut komposit yang diwakili oleh gerhana yang terhubung dengan gerhana.

Atribut multivalued digambarkan oleh gerhana ganda.

Atribut diturunkan digambarkan oleh gerhana putus-putus.

Hubungan
Hubungan diwakili oleh berlian berbentuk kotak. Nama hubungan ditulis dalam berlian-kotak. Semua entitas (persegi panjang), berpartisipasi dalam hubungan, yang terhubung dengan dengan garis.

HUBUNGAN BINER DAN KARDINALITAS
Sebuah hubungan di mana dua entitas yang berpartisipasi, disebut hubungan binary.
Kardinalitas adalah jumlah instance dari suatu entitas dari hubungan yang dapat dikaitkan dengan relasi.

•Satu-ke-satu
Ketika hanya satu contoh dari entitas terkait dengan hubungan, itu ditandai sebagai '1'. Gambar ini di bawah ini mencerminkan bahwa hanya 1 contoh dari setiap entitas harus dikaitkan dengan hubungan. Ini menggambarkan satu-ke-satu hubungan

• Satu-ke-banyak
Bila lebih dari satu contoh dari entitas terkait dengan hubungan, itu ditandai sebagai 'N'. Gambar ini di bawah ini mencerminkan bahwa hanya 1 contoh dari entitas di sebelah kiri dan lebih dari satu contoh dari entitas di sebelah kanan dapat dikaitkan dengan hubungan. Ini menggambarkan satu-ke-banyak

• Banyak-ke-satu
Bila lebih dari satu contoh dari entitas terkait dengan hubungan, itu ditandai sebagai 'N'. Gambar ini di bawah ini mencerminkan bahwa lebih dari satu contoh dari entitas di sebelah kiri dan hanya satu contoh dari entitas di sebelah kanan dapat dikaitkan dengan hubungan. Ini menggambarkan banyak-ke-satu hubungan

• Banyak-ke-banyak
Gambar ini di bawah ini mencerminkan bahwa lebih dari satu contoh dari entitas di sebelah kiri dan lebih dari satu contoh dari entitas di sebelah kanan dapat dikaitkan dengan hubungan. Ini menggambarkan hubungan banyak-banyak

KENDALA PARTISIPASI
• Total Partisipasi: Setiap entitas pada entitas yang terlibat dalam hubungan tersebut. Partisipasi total diwakili oleh garis ganda.
• Partisipasi parsial: Tidak semua entitas yang terlibat dalam hubungan kapal. Partisipasi parsial diwakili oleh baris.




Normalisasi Database

#Normalisasi Database
•Normalisasi adalah teknik desain database yang dimulai dengan memeriksa hubungan antar atribut.
•Dimana atribut menjelaskan dari data atau hubungan antara data.

Normalisasi menggunakan serangkaian tes untuk membantu mengidentifikasi pengelompokan optimal untuk atribut-atribut yang akhirnya mengidentifikasi seperangkat hubungan sesuai dengan kebutuhan data perusahaan.

#Bagaimana Normalisasi Mendesign Database Dua pendekatan utama menggunakan normalisasi:
1.Pendekatan pertama menunjukkan bagaimana normalisasi dapat digunakan sebagai teknik bottom-up desain database mandiri
2.Pendekatan 2 menunjukkan bagaimana normalisasi dapat digunakan sebagai teknik validasi untuk memeriksa struktur hubungan, yang mungkin telah dibuat dengan menggunakan pendekatan top-down

#Pengantar Penyempurnaan Skema: Persoalan yang Ditimbulkan oleh Redundansi •Redundansi ruang penyimpanan: beberapa data disimpan secara berulang
•Update anomaly: Jika satu copy data terulang tsb diubah, inkonsistensi data dpt terjadi kecuali kalau semua copy dari data tsb diubah dengan cara yang sama
•Insertion anomaly: Mungkin dpt terjadi kesulitan utk menyisipkan data tertentu kecuali kalau beberapa data tidak terkait lainnya juga ikut disisipkan
•Deletion anomaly: Mungkin dpt terjadi kesulitan utk menghapus data tertentu tanpa harus kehilangan beberapa data tidak terkait lainnya

#Persoalan yang Ditimbulkan oleh Redundansi:
•Redundansi ruang penyimpanan: nilai rating 8 yang berkorespondensi dg wages 10 diulang tiga kali
•Update anomaly: Nilai wages (yg terkait dengan nilai rating) dlm baris pertama dpt diubah tanpa membuat perubahan yg sama pada baris kedua dan kelima
•Insertion anomaly: Kesulitan utk menyisipkan employee baru kecuali nilai wage untuk rating dari employee tsb sudah diketahui
•Deletion anomaly: Jika semua baris yang terkait dg nilai rating tertentu dihapus (misalnya baris utk employee ‘Smethurst’ dan ‘Guldu’ dihapus), maka kita akan kehilangan informasi ketergantungan antara nilai rating dan nilai wages yang diasosiasikan dengan nilai rating tsb (yaitu rating = 5 dan wages = 7)

#Penyebab Anomali Mengapa anomali - anomali ini terjadi ?
• Karena menggabungkan dua tema (konsep entitas) dalam satu relasi. Ini mengakibatkan duplikasi – duplikasi sebagai akibat dari ketergantungan antar atribut yang tidak pada tempatnya.
Solusi : Normalisasi
•Normalisasi adalah proses pembentukan struktur basis data sehingga sebagian besar ambiguity bisa dihilangkan.
•Tahap Normalisasi dimulai dari tahap paling ringan (1NF) hingga paling ketat (5NF)
•Biasanya hanya sampai pada tingkat 3NF atau BCNF karena sudah cukup memadai untuk menghasilkan tabel-tabel yang berkualitas baik.

#Sebuah tabel dikatakan baik (efisien) atau normal jika memenuhi 3 kriteria sbb:

1.Jika ada dekomposisi (penguraian) tabel, maka dekomposisinya harus dijamin aman (Lossless-Join Decomposition). Artinya, setelah tabel tersebut diuraikan / didekomposisi menjadi tabel-tabel baru, tabel-tabel baru tersebut bisa menghasilkan tabel semula dengan sama persis.
2.Terpeliharanya ketergantungan fungsional pada saat perubahan data (Dependency Preservation).
3.Tidak melanggar Boyce-Code Normal Form (BCNF) (-akan dijelaskan kemudian-) Jika kriteria ketiga (BCNF) tidak dapat terpenuhi, maka paling tidak tabel tersebut tidak melanggar Bentuk Normal tahap ketiga (3rd Normal Form / 3NF).

#Tabel Universal Tabel Universal (Universal / Star Table) -> sebuah tabel yang merangkum semua kelompok data yang saling berhubungan, bukan merupakan tabel yang baik.

#Functional Dependency •Notasi: A -> B A dan B adalah atribut dari sebuah tabel. Berarti secara fungsional A menentukan B atau B tergantung pada A, jika dan hanya jika ada 2 baris data dengan nilai A yang sama, maka nilai B juga sama #Bentuk-bentuk Normal

1.Bentuk Normal Tahap Pertama (1st Normal Form / 1NF)
2.Bentuk Normal Tahap Kedua (2nd Normal Form / 2NF)
3.Bentuk Normal Tahap (3rd Normal Form / 3NF)
4.Boyce-Code Normal Form (BCNF)
5.Bentuk Normal Tahap (4th Normal Form / 4NF)
6.Bentuk Normal Tahap (5th Normal Form / 5NF)

Pemetaan Diagran ER ke Model Relasional

                          Pemetaan Diagran ER ke Model Relasional

-Untuk setiap entity type E pada diagram ER, buat satu relasi R yang mengandung semua simple attribute dari E.
 -Untuk composite attribute, masukkan komponen-komponen simple attribute-nya -Pilih salah satu dari key attribute E sebagai primary key dari R
 -Kalau primary key-nya bersifat composite maka kumpulan simple attribute yang membentuknya menjadi primary key juga
 -Untuk setiap weak entity type W pada diagram ER dengan owner entity type E, buatlah suatu relasi R yang mengandung semua simple attribute W sebagai atribut dari R
-Masukkan primary key dari E sebagai foreign key dari R
-Primary key dari R adalah kombinasi dari primary key E dan partial key dari W Contoh: relasi DEPENDENT
 -Untuk setiap 1:1 binary relationship type R pada diagram ER, tentukan relasi S dan T yang berpartisipasi pada relationship type R
 -Pilih salah satu relasi, misalkan S, masukkan primary key dari T sebagai foreign key S. Sebaiknya S adalah entity dengan total participation
-Masukkan semua atribut dari relationship type R sebagai atribut dari S. (Lihat relationship Manages, Department berpartisipasi total, muncul MGRSSN)
-Alternatif: gabungkan kedua entity type dan relationship menjadi satu relasi.
 -Hal ini dilakukan bila kedua entity yang berpartisipasi pada relationship mempunyai total participation dan entity tidak terlibat pada relationship lainnya.
-Untuk setiap 1:N binary relationship type R, tentukan relasi S pada sisi N dari relasi yang berpartisipasi pada relationship R.
 -Masukkan primary key dari T sebagai foreign key dari S. Atribut dari R diambil sebagai atribut S
 -(Lihat relastionship WORKS_FOR dan SUPERVISION, muncul DNO dan SUPERSSN)

 -Untuk M:N binary relationship type R, buat relasi S baru yang merepresentasikan R.
 -Masukkan sebagai foreign key dari S, primary key dari entity-entity yang berpartisipasi pada relationship.
 -Kombinasi dari foreign key tsb membentuk primary key dari S. Masukkan juga atribut dari relationship sebagai atribut S (Lihat relasi WORKS_ON)
 -Relationship 1:1 dan 1:N dapat dipetakan dengan cara 5. Berguna bila instance hanya sedikit.
 -Untuk setiap multivalued attribute A, buat suatu relasi R dengan memasukkan atribut A ditambah dengan primary key K dari relasi yang menyatakan entity/relationship type yang mempunyai A sebagai atribut.
 -Primary key dari R ialah kombinasi dari A dan K (Lihat relasi DEPT_LOCS)
 -Untuk tiap n-ary relationship type R dimana (n > 2), buat relasi baru S untuk menyatakan R.
 -Masukkan primary key dari relasi-relasi yang berpartisipasi pada relationship sebagai foreign key dari S. Simple attribute dari R turut dimasukkan.
 -Primary key dari S adalah kombinasi dari semua foreign key (Lihat contoh SUPPLIER)


#CRITICAL SUCCESS FACTOR PERANCANGAN BASIS DATA

 -Bekerja secara interaktif dengan pemakai(user)
 -Memakai metodologi yang terstruktur
-Memakai pendekatan data-driven
 -Memperhatikan struktur dan integritas dari model
 -Memakai konsep visualisasi, normalisasi, validasi transaksi pada model
 -Memakai diagram untuk menggambarkan model
 -Melengkapi model dengan data-dictionary
 -Mau mengulang langkah yang belum tepat.
 -Ada beberapa model data yang ada dan yang paling populer saat ini adalah model data relasional.
-Produk-produk yang mengimplementasikan model data relasional juga telah banyak tersedia.
-Untuk membentuk model data relasional dari diagram ER telah tersedia langkah-langkah penuntunnya Perbedaan antara model Relational dengan Model ER

     #Model ER
 -Entity type
-1:1 atau 1:M relationship
-M:N relationship
-n-ary relationship
-simple attribute
-composite sttribute
-multivalued attribute
-value set
-key attribute

 #Model Relasional
-entity relation
-foreign key atau realtionship relation
-relationship relation + 2 foreign key
-relationship relation + n foreign key
-attribute
-kumpulan dari simple attribute
-relation + foreign key
-domain
-primary key

Model Data Relasional

Model Data Relasional
-Setiap kolom memiliki domain tertentu
-Hubungan antar tabel dinyatakan secara eksplisit dengan duplikasi kolom dari satu tabel pada tabel lain
-Setiap relasi harus memiliki sebuah kolom atau gabungan kolom yang memberikan identifikasi unik untuk setiap baris dari relasi. Identitas ini sering disebut key attribute (atribut kunci)

Terminologi
-Tabel/Relasi/Relation:
-Sebuah bentuk pernyataan data secara grafis dua dimensi yang terdiri dari sekumpulan kolom bernama dan sejumlah baris
-Relasi adalah tabel dengan kolom dan baris.
-Baris/Tuple: Baris-baris yang ada didalam sebuah tabel yang menyatakan isi dari tabel tersebut

Attribute:
-Suatu dikaitkan adalah kolom bernama relasi.
-Tupel adalah panah relasi.
-Derajat relasi adalah jumlah atribut yang dikandungnya.
-Kardinalitas relasi adalah jumlah tuple yang dikandungnya.

Domain:
-Kumpulan nilai-nilai yang berlaku untuk sebuah kolom dari sebuah tabel Setiap atribut dalam relasi didefinisikan pada domain.
-Setiap kolom mempunyai domain tertentu dan beberapa kolom dapat mempunyai sebuah domain yang sama.
Contoh: telp_rumah, telp_kantor

Relation instance:
Kumpulan baris-baris dari relasi yang masing-masing terdiri dari nilai-nilai tertentu yang menyatakan nilai dari informasi yang disimpan pada saat tertentu Sifat-sifat khusus Tabel
-Entri dalam kolom bernilai atomik (tidak dp dibagi)
-Entri dalam kolom berjenis sama
-Setiap baris adalah unik
-Urutan kolom (dari kiri ke kanan) bersifat bebas, tetapi urutan nilai harus
-mengikuti urutan kolom
-Urutan baris (dari atas ke bawah) bersifat bebas
-Setiap kolom mempunyai nama yang unik Nilai atribut pada tuple
-Harus atomic (bernilai tunggal)
-Multivalued attribute harus direpresentasikan pada relasi lain
-Composite attribute dinyatakan dalam simple attribute
-Null value bisa disebabkan karena tidak ada harga, atau tidak berguna

Key attribute pada Relasi
-Setiap baris dari suatu relasi mempunyai identifier yang unik, Satu atau gabungan kolom dapat menjadi identifier
-Superkey: kumpulan dari atribut yang bersifat unik
-Key: -Superkey yang minimal (tidak ada atribut yang dapat dihilangkan dari superkey yang membuat superkey tetap unik)
-Candidate key: Sebuah relasi mungkin mempunyai lebih dari satu key. Masing-masing key disebut candidate key

Primary key:
-Candidate key yang dipilih untuk mengidentifikasi tuple/baris pada suatu relasi
-Nilai primary key tidak boleh mengandung NULL dan harus unik.

Foreign key:
-Satu/beberapa atribut yang merujuk pada relasi lain yang merupakan primary key atrribute(s) di relasi lain tsb dengan domain yang sama

Skema Model Relasional
#Contoh alternatif penulisan DEPARTMENT (DNAME, DNUMBER, MGRSSN, MGRSTARTDATE) dom(DNAME) = Department-names dom(DNUMBERS) = Department-numbers Batasan Model Relasional
-Batasan diperlukan agar basis data selalu berada pada kondisi konsisten meski telah dilakukan pengubahan terhadap basis data tsb
-Batasan tsb disebut integrity constraint

Macam-macam batasan:
-key constraint: nilai candidate key harus unik
-entity integrity: nilai primary key tidak boleh null

Batasan Model Relasional
-Referential integrity: batasan untuk dua relasi yang saling berhubungan dimana bila tuple pada suatu relasi menunjuk tuple pada relasi lain, maka harus merujuk pada tuple yang benar-benar ada pada relasi lain tsb
-Semantic integrity constraint:
batasan yang lebih umum, seperti gaji karyawan biasa tidak boleh lebih besar dari gaji manajer.
-Operasi pengolahan data pada relasi seperti insert, delete, dan modify harus menjaga agar batasan-batasan tsb tidak dilanggar

Pengenalan DBMS

PENGENALAN SISTEM DATABASE
Database:
Database adalah kumpulan data, biasanya menggambarkan kegiatan dari satu atau lebih organisasi terkait.
DBMS:
Database Management System (DBMS), adalah software yang dirancang untuk membantu dalam memelihara, memanfaatkan, dan menggunakan sekumpulan data yang besar dan sangat berkembang pesat
SEJARAH DBMS
Sejak awal adanya komputer, menyimpan dan memanipulasi data telah menjadi fokus utama sebuah aplikasi. Awalnya DBMS yang didesain oleh Charles Bachman di General Electric pada awal tahun 1960 disebut Integrated Data Store. Ini membentuk dasar untuk model data jaringan, yang distandarisasi oleh Conference On Data System Languages (CODASYL) dan sangat berarti bagi sistem database pada tahun 1960-an. Bachman adalah penerima penghargaan pertama dari ACM Turing Award (penghargaan ilmu komputer setara hadiah Nobel) yang bekerja di bidang database pada tahun 1973.
#Definisi
•Data Fakta, teks, hasil pengukuran, gambar, suara, dan video yang bernilai informasi.
•Informasi Data yang telah diproses sebagai bahan dalam proses pengambilan keputusan. •Database Kumpulan data yang terorganisir berdasarkan suatu struktur hubungan.
•Metadata Data yang mendeskripsikan data lain.
Informasi Informasi - dapat dimanfaatkan sebagai dasar untuk pengambilan keputusan dan memahami permasalahan/situasi Sistem
Metadata Deskripsi tentang format dan karakteristik data, termasuk tipenya, ukurannya, nilai-nilai yang absah, dan dokumentasi lainnya.
#Evolusi Teknologi Database
•Flat File  1960an - 1980an
•Hierarchical  1970an - 1990an
•Network  1970an - 1990an
•Relational  1980an – sekarang
•Object-oriented  1990an - sekarang
•Object-relational  1990an - sekarang
Sistem File Versus DBMS
•Kapasitas penyimpanan data
•Kemampuan mengakses data
•Konkurensi data
•Perlindungan data dari kegagalan
•Keamanan data Sistem
Manfaat DBMS
•Independensi data
•Akses data efisien
•Integritas dan keamanan data
•Administrasi data
•Akses konkuren dan Crash Recovery
•Waktu pengembangan aplikasi terkurangi
#TINGKAT ABTRAKSI DALAM DBMS
MODEL RELASIONAL
•Dalam membangun deskripsi tentang pusat data dalam model adalah suatu hubungan, yang dapat dianggap sebagai kumpulan record.
•Deskripsi data dalam istilah model data disebut skema. Dalam model relasional, skema digunakan untuk relasi menentukan nama, nama setiap field (atau atribut atau kolom), dan tipe setiap field. Independensi Data
• Indepedensi data adalah program aplikasi yang telah terisolasi dari perubahan dalam struktur data yang disimpan.
• Independensi data dicapai melalui penggunaan dari tiga tingkat data abstraksi ; khususnya, skema konseptual dan skema eksternal yang mempunyai manfaat yang berbeda pada bidang ini.
TINGKAT ABSTRAKSI DALAM DBMS
Data dalam sebuah DBMS dibagi menjadi tiga tingkatan yaitu:
•Skema Konseptual
•Skema Fisik
•Skema Eksternal
QUERY DALAM DBMS
•Query berfungsi untuk memudahkan mendapatkan informasi dari database yang nantinya akan digunakan untuk menentukan nilai informasi bagi seorang pengguna
•Queries: pertanyaan yang melibatkan data di dalam DBMS.
•Bahsa Query: bahasa khusus yang dapat digunakan untuk menapilkan query yang diinginkan. •Kalkulus relasional: adalah bahasa query formal berdasarkan logika matematika, dan query yang ditampilkan dalam bahasa ini memiliki arti dan maksud yang tepat.
•Aljabar relasional: merupakan bahasa query formal berdasarkan kumpulan operator untuk memanipulasi relasi, yang setara dengan kalkulus.
Independensi Data
• Indepedensi data adalah program aplikasi yang telah terisolasi dari perubahan dalam struktur data yang disimpan.
• Independensi data dicapai melalui penggunaan dari tiga tingkat data abstraksi ; khususnya, skema konseptual dan skema eksternal yang mempunyai manfaat yang berbeda pada bidang ini. #Komponen Sistem Database
•Repositori  Pusat penyimpanan metadata.
•Database Management System (DBMS)  Perangkat lunak untuk mengelola database.
•Database  Pusat penyimpanan data.
•Program Aplikasi  Perangkat lunak pengguna data.
•User Interface  Fasilitas interaksi antara pengguna dan data secara tekstual atau grafis.
•CASE Tools  Computer - Aided Software Engineering.
•Administrator Data  Personil yang bertanggung-jawab memelihara database.
•Developer Sistem  Personil yang bertanggung-jawab merancang program aplikasi beserta struktur datanya dalam database.
•End User  Orang yang menggunakan aplikasi dan database.
#Model Data
•Model Data Kumpulan konstruksi deskripsi data level tinggi yang menyembunyikan banyak detail penyimpanan level rendah. DBMS memungkinkan pengguna untuk menentukan data yang disimpan dalam model data.
•Skema Logis Mendeskripsikan data yang disimpan dalam model data DBMS berupa semua relasi yang disimpan dalam database.
•Skema Fisik Menentukan detail penyimpanan data berupa mendeskripsikan bagaimana relasi dalam skema Logis disimpan pada alat penyimpanan sekunder seperti disk atau tape.

Sabtu, 18 Oktober 2014

latihan visual basic "Cafe Of Yunfa"

kali ini gue masih posting visual basic ni guys hehe..
setelah yang sebelumnya semacam kalkulator sederhana gitu kali ini mengenai penjualan ni guys.
begini tampilan form nya..
dan jangan lupa pembrian nama pada textbox, commandbutton, combobox disamakan dengan di listingnya ya guys.
setelah design selesai, copy aja ni guys listingannya.
lalu periksa penamaan pada texbox commandbutton dll nya udah sesuai list nya belum.
jika sudah, silahkan di running guys..

Private Sub air_Click()
If tehmanis = 1 And air = 1 Then
harga2 = 3000
ElseIf tehmanis = 1 And air = 0 Then
harga2 = 2500
ElseIf tehmanis = 0 And air = 1 Then
harga2 = 500
Else harga2 = 0
End If
End Sub

Private Sub Command1_Click()
menu.Text = ""
paket.Text = ""
daftarmenu.Clear
harga1.Text = ""
delivery.Value = False
ditempat.Value = False
tehmanis.Value = False
air.Value = False
harga2.Text = ""
harga3.Text = ""
jumbel.Text = ""
totbay.Text = ""
ubay.Text = ""
ukem.Text = ""
End Sub

Private Sub Command2_Click()
z = MsgBox("Anda yakin akan keluar dari form ini??", vbQuestion + vbOKCancel, "informasi")
If z = vbOK Then
End
End If
End Sub

Private Sub delivery_Click()
If delivery = 1 Then
harga3 = 5000
Else harga3 = 0
End If
End Sub

Private Sub ditempat_Click()
If delivery = 1 Then
harga3 = 5000
Else harga3 = 0
End If
End Sub

Private Sub Form_Load()
menu.AddItem ("Sarapan Pagi")
menu.AddItem ("Makan Siang")
paket.AddItem ("paket 1")
paket.AddItem ("paket 2")
End Sub

Private Sub jumbel_Change()
totbay.Text = Val(jumbel.Text) * Val(harga1.Text) + (Val(jumbel.Text) * Val(harga2.Text)) + Val(harga3.Text)
ubay.SetFocus
End Sub

Private Sub paket_Click()
If menu.Text = "Sarapan Pagi" Then
Select Case (paket.Text)
Case "paket 1"
daftarmenu.Clear
daftarmenu.AddItem ("Nasi uduk")
daftarmenu.AddItem ("Telur")
daftarmenu.AddItem ("Tempe orek")
harga1 = 5000
Case Else
daftarmenu.Clear
daftarmenu.AddItem ("Nasi Goreng")
daftarmenu.AddItem ("Telur Mata Sapi")
daftarmenu.AddItem ("Tempe Goreng")
harga1 = 7000
End Select
Else
Select Case (paket.Text)
Case "paket 1"
daftarmenu.Clear
daftarmenu.AddItem ("Nasi Putih")
daftarmenu.AddItem ("Ayam Bakar")
daftarmenu.AddItem ("Lalapan")
harga1 = 8000
Case Else
daftarmenu.Clear
daftarmenu.AddItem ("Nasi Putih")
daftarmenu.AddItem ("Rendang")
daftarmenu.AddItem ("Sayur")
daftarmenu.AddItem ("Sambal Ijo")
harga1 = 10000
End Select
End If
End Sub

Private Sub tehmanis_Click()
If tehmanis = 1 And air = 1 Then
harga2 = 3000
ElseIf tehmanis = 1 And air = 0 Then
harga2 = 2500
ElseIf tehmanis = 0 And air = 1 Then
harga2 = 500
Else
harga2 = 0
End If
End Sub

Private Sub ubay_Change()
ukem.Text = Val(ubay.Text) - Val(totbay.Text)
End Sub

Latihan Visual Basic "Fungsi Operator"

berikut ini salah satu contoh latihan visual basic dasar mengenai penjualan. semoga menjadi solusi bagi kalian guys. dipelajari guys logikanya, ga terlalu rumit ko... untuk tampilannya seperti ini ya guys di buat aja dulu desain formnya baru dilihat listingannya. jangan lupa guys untuk nama-nama comandbutton, textbox dll namanya harus sesuai dengan listingannya biar ga debug hehe..
Private Sub and_Click()
If nilai1 = "false" Or nilai2 = "false" Then
hasil = "false"
ElseIf nilai1 = "true" Or nilai2 = "false" Then
hasil = "false"
ElseIf nilai1 = "false" Or nilai2 = "true" Then
hasil = "false"
Else hasil = "true"
End If
End Sub

Private Sub bagi_Click()
hasil = Val(nilai1.Text) / Val(nilai2.Text)
End Sub

Private Sub cmdnot_Click()
If nilai = True Then
hasil2 = Not True
Else hasil2 = Not False
End If
End Sub
Private Sub div_Click()
hasil = Val(nilai1.Text) \ Val(nilai2.Text)
End Sub
Private Sub kali_Click()
hasil = Val(nilai1.Text) * Val(nilai2.Text)
End Sub
Private Sub keluar_Click() a = MsgBox("Anda yakin akan keluar?", vbQuestion + vbOKCancel, "Informasi")
If a = vbOK Then
End
End If
End Sub
Private Sub kurang_Click()
hasil = Val(nilai1.Text) - Val(nilai2.Text)
End Sub
Private Sub kurangdari_Click()
hasil = Val(nilai1.Text) < Val(nilai2.Text) End Sub Private Sub kurangsamadengan_Click() hasil = Val(nilai1.Text) <= Val(nilai2.Text) End Sub Private Sub lagi_Click() nilai1.Text = "" nilai2.Text = "" hasil.Text = "" hasil2.Text = "" nilai1.SetFocus nilai.Text = "" End Sub Private Sub lebihdari_Click() hasil = Val(nilai1.Text) > Val(nilai2.Text)
End Sub
Private Sub lebihsamadengan_Click()
hasil = Val(nilai1.Text) >= Val(nilai2.Text)
End Sub
Private Sub mod_Click()
hasil = Val(nilai1.Text) Mod Val(nilai2.Text)
End Sub
Private Sub or_Click()
If nilai1 = "true" Or nilai2 = "true" Then
hasil = "true"
ElseIf nilai1 = "true" Or nilai2 = "false" Then
hasil = "true"
ElseIf nilai1 = "false" Or nilai2 = "true" Then
hasil = "true"
Else hasil = "false"
End If
End Sub
Private Sub samadengan_Click()
hasil = Val(nilai1.Text) = Val(nilai2.Text)
End Sub
Private Sub tambah_Click()
hasil = Val(nilai1.Text) + Val(nilai2.Text)
End Sub
Private Sub tidaksamadengan_Click()
hasil = Val(nilai1.Text) <> Val(nilai2.Text)
End Sub