Selasa, 03 Maret 2015

BAHASA QUERY KOMERSIAL

0 komentar

STRUKTUR QUERY LANGUAGE (SQL)

           Dibuat oleh IBM tahun 1970 untuk digunakan dalam hubungannya dengan database.
JENIS SQL :
  1. Interactive, langsung dapat dioperasikan
  2. Embedded, disisipkan ke dalam sebuah program

PENGELOMPOKAN STATEMEN SQL
1.   Data Definition Language (DDL)
      CREATE  DATABASE               DROP  DATABASE
      CREATE  TABEL                       DROP TABEL
      CREATE  INDEX                       DROP INDEX
      CREATE  VIEW                         DROP VIEW
      ALTER TABLE

2.   Data Manipulation Language
      INSERT, SELECT, UPDATE, DELETE
3.   Data Access
     GRANT , REVOKE
4.  Data Integrity
     RECOVER TABLE
5.  Auxiliary
      UNLOAD, LOAD, RENAME COLUMN




KASUS DATA DEFINITION LANGUAGE (DDL)

         PEMBUATAN DATABASE/TABLE,INDEX DAN VIEW
      1.   Pembuatan Database
            Nama Database adalah berasal dari nama
            organisasi atau perusahaan
            Sintaks : 
            CREATE DATABASE (nama_db)
Contoh :  
Buat database dengan nama organisasi PT.ABC CREATEDATABASE PT. ABC
2.   Pembuatan Tabel
Sintaks :
CREATE TABLE  nama_table (nama_kolom1 jenis_kolom1,nama_kolom2,jenis_kolom2,….)
Contoh :
Struktur databse sebagai berikut :
MHS (NPM char(8), NAMA char(25), ALAMAT char(30))
CREATE TABLE MHS  (NPM char(8) not null, NAMA char(25) notnull,  ALAMAT char(30) notnull)
3.   Pembuatan Index
Sintaks :
CREATE [UNIQUE] INDEX  nama_index 
ON nama_table (nama_kolom) ;
Contoh :
Buat index data mahasiswa berdasarkan NPM dengan nama MHSIN Dimana NPM tidak boleh sama CREATE UNIQUE  INDEX MHSIN ON MHS(NPM)
4.   Pembuatan View
Sintaks :
CREATE VIEW nama_view[(nama_kolom1,….)]
AS SELECT statement
[WITH CHECK OPTION] ;
Contoh :
Buat view dengan nama MHSVIEW yang berisi    semua data mahasiswa
CREATE VIEW MHSVIEW
AS SELECT * FROM MHS
         MENGHAPUS DATABASE, TABLE, INDEX DAN VIEW
      Sintaks :  DROP DATABASE nama_db ;
      DROP  TABLE  nama_table ;
      DROP  INDEX nama_index ;
      DROP  VIEW  nama_view ;
      Contoh : Hapus table mhs
      DROP TABLE MHS
         MERUBAH STRUKTUR TABEL
      Sintaks :  ALTER TABLE nama_table
      ADD (nama_kolom, jenis_kolom
      [BEFORE nama_kolom])
      MODIFY (nama_kolom, jenis kolom)
      DROP (nama_kolom jenis kolom)
                  Contoh  :
                  1.   Tambahkan kolom JKEL dengan panjang 1 char pada table MHS
                        ALTER TABLE MHS ADD (JKEL char(1));
                  2.   Ubah panjang kolom MTKULIAH menjadi 30 char
                        ALTER TABLE MKUL  MODIFY (MTKULIAH  char(30));                                           3.      Hapus kolom JKEL dari data table MHS      
                        ALTER TABEL MHS DROP (JKEL char(1));

DATA MANIPULATION LANGUAGE (DML)
1.   INSERT
      Sintaks :  INSERT INTO
                        Nama_table [(nama_kolom1,…)]
      Contoh :
      Masukan data matakuliah berkas akses dengan kode KK222  dan besarnya 2
      INSERT INTO MKUL VALUES(“KK222”,”Berkas Akses”, 2);
2.   UPDATE
      Sintaks : UPDATE nama_table
                        SET  nama_kolom = ekspresi
                        WHERE kondisi ;
      Contoh :
      Ubah alamat menjadi “Depok” untuk mahasiswa
      yang memiliki NPM “50096487”
      UPDATE MHS
      SET ALAMAT=”Depok” 
      WHERE NPM=”50096487”;


3.   DELETE
Sintaks : DELETE FROM nama_table
                     WHERE kondisi
Contoh :
Hapus data nilai matakuliah “KK021” bagi mahasiswa yang mempunyai NPM “ 10296832”
                     DELETE FROM NILAI WHERE
                     NPM=”10296832” AND KDMK=”KK021”

Tabel dibawah ini untuk mengerjakan Select (tampilan)
dari SQL 




Tabel Nilai
NIM
NO. MK
MID
FINAL
10296832
10296126
31296500
41296525
21196353
50095487
1029632
KK021
KD132
KK021
KU122
KU122
KD132
KD132
60
70
55
90
75
80
40
75
90
40
80
75
0
30

4.   SELECT
Sintaks : SELECT [DISTINCT] nama_kolom
                                                                                    FROM nama_table
                                                                                    [ WHERE kondisi ]
                                                                                    [ GROUP BY nama_kolom ]
                                                                                    [HAVING kondisi ]
                                                                                    [ ORDER BY             nama_kolom [ASC/DESC]]
      Contoh : Tampilkan semua data mahasiswa
                                                                                    SELECT NPM, NAMA, ALAMAT
                                                                                    FROM MHS
                                                                                    Atau
                                                                                   SELECT * FROM MHS

      Maka hasilnya adalah :
      NIM
NAMA MHS
ALAMAT MHS
10296832
10296126
31296500
41296525
Nurhayati
Astuti
Budi
Prananingrum
Jakarta
Jakarta
Depok
Bogor

2.      Tampilkan Mata Kuliah yang SKSnya 2 maka penulisannya :
         Select namaMK from matakuliah
         Where sks = 2

           Maka Hasilnya :
NAMAMK
Sistem Basis Data
Pancasila

3.      Tampilkan semua data nilai dimana nilai MID lebih besar sama dengan 60 atau nilai finalnya lebih besar 75.
maka penulisannya :
                                             SELECT *FROM NILAI
                                             WHERE MID >= 60 OR FINAL > 75
                                             Hasilnya :
NIM
NO. MK
MID
FINAL
10296832
10296126
41296525
21196353
KK021
KD132
KU122
KU122
60
70
90
75
75
90
80
75

DATA ACCESS
1.      GRANT
         Sintaks : GRANT hak_akses ON  nama_db
                        [WITH GRANT OPTION]
                        [AS GRANTOR] ;
                        GRANT hak_akses ON  nama_tabel
                        TO  nama_pemakai
[WITH GRANT OPTION]
                        [AS GRANTOR]

Contoh :
Berikan hak akses kepada Adi untuk menampikan
nilai final test
GRANT SELECT (FINAL) ON NILAI TO ADI
2.      REVOKE
         Sintaks : REVOKE hak_akses ON nama_db
                        FROM nama_pemakai ;
                        REVOKE hak_akses ON  nama_tabel
                        FROM nama_pemakai ;
         Contoh :
                        Tarik kembali dari Adi  hak akses untuk menampilkan nilai final test
                        REVOKE SELECT (FINAL) ON NILAI FROM ADI


DATA INTEGRITY
         RECOVER TABLE
Sintaks :
RECOVER TABLE nama_tabel
     Contoh :
                     kembalikan keadaan data mahasiswa    seperti pada saat sebelum terjadi kerusakan
      RECOVER TABLE MHS ;

AUXILIARY
         UNLOAD
      Sintaks  :  
                        UNLOAD TO “ nama_path”
                        [DELIMITER “ Char_pemisah”]
                        SELECT  statement ;


      Contoh :  
Ubah semua data mahasiswa ke bentuk ASCII dan disimpan ke file teks di directory/home/adi
                        UNLOAD TO “/home/adi/teks”
                        DELIMITER “ ½” SELECT * FROM MHS ;
         LOAD
      Sintaks :
                        LOAD FROM “ nama_path”
                        DELIMITER “char_pemisah”
                        INSERT INTO nama_tabel [ nama_kolom] ;
      Contoh :
                        Merubah file teks ke tabel MHS_2 di directory /home/adi :
                        LOAD FROM “/home/adi/teks”
                        DELIMITER “ ½” INSERT INTO MHS_2 ;
         RENAME
      Sintaks :
                        RENAME COLUMN nama_kolom_lama
                        TO nama_kolom_baru
      Contoh :
                        Ganti nama kolom ALAMAT yang ada pada tabel MHS menjadi KOTA
                        RENAME COLUMN MHS ALAMAT TO KOTA





Read more ►

DATABASE TERDISTRIBUSI

0 komentar

            Dalam sebuah database terdistribusi, database disimpan pada beberapa komputer. Komputer-komputer dalam sebuah sistem terdistribusi berhubungan satu sama lain melalui bermacam-macam media komunikasi seperti high speed buses atau telepon line

BENTUK-BENTUK TOPOLOGI  DISTRIBUSI DATA :
a. Fully Connected network



b. Partialy conneted network




C. Tree Strutured Network



d. Ring  network



e. Star network






KEUNTUNGAN DAN  KERUGIAN  
DATABASE TERDISTRIBUSI

KEUNTUNGAN :
         Pengawasan distribusi dan pengambilan data
         Reability dan availability   
         Kecepatan pemrosesan query
         Otonomi lokal   
         Efisien dan fleksibel

KERUGIAN :
         Harga software mahal
         Kemungkinan kesalahan besar
         Biaya pemrosesan tinggi

FRAGMENTASI DATA
      Adalah Relasi dipartisikan ke dalam beberapa bagian,setiap bagian disimpan pada lokasi yang berbeda

BEBERAPA PERATURAN YANG HARUS DIDEFINISIKAN
KETIKA MENDEFINISIKAN FRAGMENT :
        Kondisi lengkap
        Kondisi penyusunan kembali
        Kondisi disjoin.

TIGA JENIS  FRAGMENTASI :
1.   Fragmentasi horisontal   
2.   Fragementasi vertikal   
3.   Fragmentasi campuran
    Cara yang sederhana untuk membangun fragmentasi campuran sbb :
a.      Menggunakan fragmentasi horisontal pada fragmentasi vertikal
b.      Menggunakan fragmentasi vertical pada fragmentasi horisontal

CONTOH KASUS JENIS-JENIS FRAGMENTASI
Ujian  (NIM,Nama_Mhs,Kode_MK,Mt_Kuliah, Nil_Akhir,Grade)
NIM
Nama_Mhs
Kode_MK
Mt_Kuliah
Nil_Akhir
Grade
123
124
125
126
127
128
129
Fathi
Farah
Sarah
Salsabila
Azizah
Farhan
Faiz
101
102
101
101
103
103
102
Sistem Basis Data
Peranc. Sistem
Sistem Basis Data
Sistem Basis Data
Visual Basic
Visual Basic
Peranc. Sistem
78
60
40
90
70
40
80
B
C
D
A
B
D
A

Fragmentasi horisontal
terbagi menjadi 2 fragment yang berbeda
1.      Relasi Mt_Kuliah=“Sistem Basis Data”
NIM
Nama_Mhs
Kode_MK
Mt_Kuliah
Nil_Akhir
Grade
123
125
126
Fathi
Sarah
Salsabila
101
101
101
Sistem Basis Data
Sistem Basis Data
Sistem Basis Data
78
40
90
B
D
A

2.      Relasi Mt_Kuliah=“Peranc. Sistem”
NIM
Nama_Mhs
Kode_MK
Mt_Kuliah
Nil_Akhir
Grade
124
129
Farah
Faiz
102
102
Peranc. Sistem
Peranc. Sistem
60
80
C
A


3.      Relasi Mt_Kuliah=“Visual Basic”
NIM
Nama_Mhs
Kode_MK
Mt_Kuliah
Nil_Akhir
Grade
127
128
Azizah
Farhan
103
103
Visual Basic
Visual Basic
70
40
B
D

Fragment di atas memenuhi kondisi jika Nama_Mhs dan Mt_Kuliah adalah hal-hal yang memenuhi syarat Fragmentasi vertical : berdasarkan dekomposisi-nya dengan menambahkan tupel id
NIM
Nama_Mhs
Kode_MK
Mt_Kuliah
Nil_Akhir
Grade
Tuple_ID
123
124
125
126
127
128
129
Fathi
Farah
Sarah
Salsabila
Azizah
Farhan
Faiz
101
102
101
101
103
103
102
Sistem Basis Data
Peranc. Sistem
Sistem Basis Data
Sistem Basis Data
Visual Basic
Visual Basic
Peranc. Sistem
78
60
40
90
70
40
80
B
C
D
A
B
D
A
1
2
3
4
5
6
7

Relasi 1 = NIM, Nama_Mhs, Mt,Kuliah, Nil_Akhir, Grade, Tuple_ID
NIM
Nama_Mhs
Mt_Kuliah
Nil_Akhir
Grade
Tuple_ID
123
124
125
126
127
128
129
Fathi
Farah
Sarah
Salsabila
Azizah
Farhan
Faiz
Sistem Basis Data
Peranc. Sistem
Sistem Basis Data
Sistem Basis Data
Visual Basic
Visual Basic
Peranc. Sistem
78
60
40
90
70
40
80
B
C
D
A
B
D
A
1
2
3
4
5
6
7



Relasi 2 = NIM,Kode_MK,Nil_Akhir,Grade,Tuple_ID
NIM
Kode_MK
Nil_Akhir
Grade
Tuple_ID
123
124
125
126
127
128
129
101
102
101
101
103
103
102
78
60
40
90
70
40
80
B
C
D
A
B
D
A
1
2
3
4
5
6
7

Fragmentasi Campuran Terdapat relasi berdasarkan Mata Kuliah yang sama Relasi 1a.
NIM
Nama_Mhs
Mt_Kuliah
Nil_Akhir
Grade
Tuple_ID
123
125
126
Fathi
Sarah
Salsabila
Sistem Basis Data
Sistem Basis Data
Sistem Basis Data
78
40
90
B
D
A
1
3
4

Relasi 1b.
NIM
Nama_Mhs
Mt_Kuliah
Nil_Akhir
Grade
Tuple_ID
124
129
Farah
Faiz
Peranc. Sistem
Peranc. Sistem
60
80
C
A
2
7

Relasi 1c

NIM
Nama_Mhs
Mt_Kuliah
Nil_Akhir
Grade
Tuple_ID
127
128
Azizah
Farhan
Visual Basic
Visual Basic
70
40
B
D
5
6


Read more ►
 

Copyright © Hendri Pratama Design by O Pregador | Blogger Theme by Blogger Template de luxo | Powered by Blogger