8 Bab 2 - Landasan Teori

Embed Size (px)

Citation preview

  • 5/24/2018 8 Bab 2 - Landasan Teori

    1/50

    4

    BAB II

    LANDASAN TEORI

    2.1 Konsep DatabaseBeberapa definisi tentangDatabase :

    1. Menurut Gordon C. Everest :Database adalah koleksi atau kumpulan data yang mekanis,

    terbagi/shared, terdefinisi secara formal dan dikontrol terpusat pada

    organisasi.

    2. Menurut C.J. Date :Database adalah koleksi data operasional yang tersimpan dan dipakai

    oleh sistem aplikasi dari suatu organisasi.

    a. Data input adalah data yang masuk dari luar system.b. Data output adalah data yang dihasilkan sistem.c. Data operasional adalah data yang tersimpan pada system.

    3. Menurut Toni Fabbri :Databaseadalah sebuah sistemfile-fileyang terintegrasi yang mempunyai

    minimalprimary keyuntuk pengulangan data.

    4. Menurut S. Attre :Database adalah koleksi data-data yang saling berhubungan mengenai

    suatu organisasi / enterprisedengan macam-macam pemakaiannya.

    Jadi Database System adalah sistem penyimpanan data memakai

    komputer. Sifat-sifat database:

    a. Internal : Kesatuan (integritas) dari file-file yang terlibat.b. Terbagi/share : Elemen-elemen database dapat dibagikan pada para

    user baik secara sendiri-sendiri maupun secara serentak dan pada

    waktu yang sama (concurrent sharing).

  • 5/24/2018 8 Bab 2 - Landasan Teori

    2/50

    5

    Elemen-elemen database:

    a. Tipe :1. Enterprise = Suatu jenis organisasi, misalnya Bank, Hotel,

    Universitas dan lain-lain.

    2. Entity = File = Obyek pada enterprise berdasarkan data yangdisimpan.

    3. Atribute= Field= Data item = Beberapa hal yang ingin diketahuidari suatufile.

    4. Record = Satu setfieldyang merupakan ciri khas dari suatu file.

    Istilah entitydan atributebiasanya digunakan pada tingkat konseptual dan

    logikal, sedangkan file, record dan field pada tingkat internal/fisikal.

    Hubungan: Enterprise terdiri dari beberapa entity, entity terdiri dari

    beberapa recorddanrecordterdiri dari beberapafield.

    EnterpriseEntity / FileRecordAtribute/Field

    b. Isi / Nilai :1. DataFile :Seluruh isi data padafile.2. DataRecord: Satu set isi data pada suatu susunan fielddari suatu

    file.

    3. Data Value: Isi data masing-masing data elemen.Sumber-sumber daya suatu organisasi / enterprise ada 5 M sumber

    daya, yaitu:

    a. Man : Manajemen Personalia (Manusia).b. Machine : Manajemen peralatan (Mesin).c. Material : Manajemen industri (Bahan Baku).d. Money : Manajemen Keuangan (Uang).e. Message : Manajemen Informasi.

    Gambar 2.1.1 HubunganEnterprise

  • 5/24/2018 8 Bab 2 - Landasan Teori

    3/50

    6

    DATA merupakan sumber daya yang paling penting dalam

    perusahaan, data perlu disimpan dan dimanajemen (rencana, desain,

    operasi, kontrol dan evaluasi). Proses manajemen dilaksanakan dalam

    siklus hidup (Life Cycle).

    Manajemen data dapat dilakukan secara administrasi manual atau

    dengan memakai komputer, secara umum Sistem Database adalah

    sistem penyimpanan data memakai komputer. Ada 4 Komponen DATA

    PROCESSINGyang menggunakan SistemDatabase:

    1. Perangkat Keras (Hardware): Penyimpanan Sekunder2. Perangkat Lunak (Software) : Program Aplikasi, DBMS3. Data :Database mempunyai sifat internal (integritas dari file-file

    yang terlibat) dan terbagi / share

    4. User : User pembuat program aplikasi, end user (user pemakaidata langsung), DBA (Penanggung jawab).

    Penanggung-jawab sistem database adalah DBA (Database

    Administrator):

    1. Syarat menjadi DBA:a. Berkeahlian teknik.

    b. Berkeahlian tentang enterprise.2. DBA yaitu orang / group yang bertanggungjawab pada seluruh

    pengontrolan database

    3. Tanggung jawab DBA:a. Menetapkan isi database.

    b. Menetapkan struktur data pada penyimpanan sekunder danmetode akses.

    c. Melayani kebutuhan user.d. Mendefinisikan pengecekan kewenangan penggunaan

    database oleh user dan menetapkan prosedur validasi suatu

    database.

    e. Menetapkan strategi backup dan recovery.

  • 5/24/2018 8 Bab 2 - Landasan Teori

    4/50

    7

    f. Memonitor unjuk kerja dan melayani kebutuhan akanperubahan-perubahan kepentingan.

    4. Untuk melaksanakan tanggungjawabnya DBA harus mempunyaibeberapa program utility, misalnya:

    a. Create Routine: Untuk membuat databasebarub.Reorganization Routine: Untuk menyusun kembali database

    (misal : untuk menghapus tempat-tempat kosong dari record-

    recordyang sudah tidak berlaku)

    c.Journalizing / Logging Routine: Untuk mencatat semua operasiyang telah dikerjakan, siapa user-nya.

    d.Recovery Routine: Memperbaiki kerusakan databasepada posisisebelum kerusakan.

    e. Statistical Analisys Routine: Untuk memonitor hasil-hasildatabase.

    Salah satu alat penting DBA adalah Data Dictionary yaitu segala

    sesuatu kekurangan tentang elemen-elemen databasemisal: Data apa

    saja yang dipakai suatu program aplikasi, data apa yang dibutuhkan

    untuk suatu laporan dari suatu departemen.

    Kedudukan DBA:

  • 5/24/2018 8 Bab 2 - Landasan Teori

    5/50

    8

    2.1.1 DBMS (Database Managemen System)1. Menutut C.J. Date: DBMS adalah merupakan software yang

    mengontrol seluruh akses pada database untuk melayani

    kebutuhan user.

    2. Menurut S, Attre: DBMS adalahsoftware, hardware,firmwaredan procedure-procedure yang memanage database. Firmware

    adalah softwareyang telah menjadi modul yang tertanam pada

    hardware(ROM).

    3. Menurut Gordon C. Everest: DBMS adalah manajemen yangefektif untuk mengorganisasi sumber daya data.

    Jadi DBMS: Semua peralatan komputer (Hardware+ Software

    + Firmware). DBMS dilengkapi dengan bahasa yang berorientasi

    pada data (High level data langauage) yang sering disebut juga

    sebagai bahasa generasi ke 4 (fourth generation language).

    Fungsi DBMS:

    a. Definisi data dan hubungannyab. Memanipulasi datac. Keamanan dan integritas datad. Securitydan integritas datae.Recovery/perbaikan dan concurency dataf. Data dictionaryg. Unjuk kerja /performance

    Peralatan untuk menetapkan/menentukan pendekatan database

    disebut DBMS. DBMS merupakan software (dan hardware) yang

    kusus didesain untuk melindungi dan memanage database.Dengan

    menggunakan DBMS, maka dapat:

    a. Mendefinisikan data dan hubungannya.b. Mendokumentasikan struktur dan definisi data.c. Menggambarkan, mengorganisasikan dan menyimpan data

    untuk akses yang selektif/dipilih dan efisien.

  • 5/24/2018 8 Bab 2 - Landasan Teori

    6/50

    9

    d. Hubungan yang sesuai antara user dengan sumber daya data.e. Perlindungan terhadap sumber daya data akan terjamin, dapat

    diandalkan, konsisten dan benar.

    f. Memisahkan masalah logical dan physical sehingga merubahimplementasi database secara fisik tidak menghendaki user

    untuk merubah maksud data (logical).

    g. Menentukan pembagian data kepada para useruntuk mengaksessecara concurentpada sumber daya data.

    Contoh DBMS:

    1. Database Hierarchy: Pengaksesan data harus mengikuti aturanhierarchyyang sudah didefinisikan terlebih dahulu.

    Contoh: IMS-2 (Information Management System) oleh IBM,

    1968

    2. Data Network: Data membentuk jaringan yang lebih bebas darimodel hierarchy.

    Contoh: IDMS (Integrated Database Management System) oleh

    Cullinett SoftwareInc, 1972

    3. Data Relational: Data dikelompokkan secara bebas menurut

    jenisnya lewat proses normalisasi

    Contoh:

    a. INGRES oleh UN of CA & Relational Tech., 1973b. System-R oleh IBM Research, 1975c. ORACLE oleh Relational Software Inc. , 1979d. DBASE II oleh Ashton-Tate, 1981e.

    2.1.2 Pendekatan TraditionalVS DatabaseMengapa memilih pendekatan database karena pendekatan

    pemrosesan data sebelum pendekatan databaseadalah terpusat pada

    program aplikasi.

  • 5/24/2018 8 Bab 2 - Landasan Teori

    7/50

    10

    Pendekatan traditional, berorientasi pada program aplikasi dan

    tiap-tiap aplikasi berdiri sendiri-sendiri. contoh: aplikasi produk,

    aplikasi inventory dsb. Sehingga terdapat masalah-masalah:

    a. Data redundancy: Duplikasi data yang sama pada beberapafile. Redundansi dapat direduksi/dikurangi tetapi tidak dapat

    dihilangkan sama sekali sehingga akan menyebabkan

    inconsistency (data tidak konsisten), incosistency dapat

    dihilangkan dengan caraPropagating Updateyaitu melakukan

    updatesecara serentak padafield-fieldyang redundansi.

    Contoh: Jika pelanggan pindah alamat dan nomer telponnya

    maka seharusnya ketiga fileyang memuat data tersebut harus

    diubah / update (contoh file Anggota, file transaksi

    peminjaman, file Pengembalian), bila salah satu saja dari file

    yang mengandung data tersebut terlewat di-update maka

    terjadilah tidak konsisten tadi. Untuk itu perlu adanya

    propagating updateketigafiletersebut.b. Data Isolation: Datanya terisolasi bagi user dan untuk

    melihatnya harus membuka program terlebih dahulu.

    c. Ketidakmampuannya dalam menjawab kebutuhan/pertanyaansewaktu-waktu.

    d. Ketidakmampuan dalan sharing data yaitu elemen-elemendatabase dapat dibagikan pada para user baik secara sendiri-

    sendiri maupun serentak dan pada waktu yang sama.

    e. Biaya pengembangan yang tinggi sehingga tidak responsifterhadap kebutuhan perubahan.

    Gambar 2.1.3 Pendekatan Traditional

  • 5/24/2018 8 Bab 2 - Landasan Teori

    8/50

    11

    Pendekatan Database, berarti data bebas dari program aplikasi

    (Data independent).

    a. Kemarin : Melakukan Desainb. Hari ini : Dioperasikanc. Yang akan datang : Dikembangkan

    Keuntungannya:

    a. Mengurangi data redundancy: Data redundansi dapatdireduksi/dikurangi, tetapi tidak dapat dihilangkan sama sekali

    (untuk kepentingan keyfield)

    b. Data integrity: Integritas/kesatuan data dapat dipertahankan, halini sebagi akibat dari penghindaran inconsistency dan

    pengontrolansecurity.

    c. Data independent: Kebebasan data, contoh Jika terdapatperubahan struktur file pelanggan maka program tersebut

    haruslah diubah. Jadi bahwa program yang telah dibuat tidak

    bebas terhadap database yang ada, apapun yang terjadi pada

    struktur file, setiapkali hendak melihat data dengan utility List,dll. ini berarti perintah-perintah dalam paket DBMS bebas

    terhadap database.

    d. Data security: Kontrol sekuriti dapat dilakukan. DBA dapatmengatur kewenganan penggunaan database (update, retrieve,

    delete).

    e. Data consistency: Inconsistency dapat dihilangkanf. Mudah dalam penggunaan datanya.

    Gambar 2.1.4 PendekatanDatabase

  • 5/24/2018 8 Bab 2 - Landasan Teori

    9/50

    12

    g. Membutuhkan sedikit memoryuntuk penyimpanan data.Kerugiannya:

    Mahal (teknologi DBMS, Operation, Conversion, Planning, Risk)

    2.2 Teori Desain Database2.2.1 Diagram Konteks

    Diagram konteks merupakan kejadian tersendiri dari suatu

    diagram alir data. Dimana satu lingkaran mempresentasikan seluruh

    sistem. Diagram konteks ini harus berupa suatu pandangan yang

    mencakup masukan-masukan dasar, sistem-sistem, dan keluaran.

    Diagram konteks ini merupakan tingkatan tertinggi dalam

    diagram aliran data dan hanya memuat satu proses, menunjukkan

    sistem secara keseluruhan. Proses tersebut diberi nomor nol. Semua

    entitas eksternal yang ditunjukkan pada diagram konteks berikut

    aliran data-aliran data utama menuju dan dari sistem. Diagram

    tersebut tidak memuat penyimpanan data dan tampak sederhana

    untuk diciptakan, begitu entitas-entitas eksternal serta aliran data-

    aliran data menuju dan dari sistem diketahui penganalisis dari

    wawancara dengan user dan sebagai hasil analisis dokumen.

    Diagram konteks menggaris bawahi sejumlah karakteristik penting

    dari suatu sistem:

    a. Kelompok pemakai, organisasi atau sistem lain dimana sistemkita melakukan komunikasi yang disebut juga sebagai

    terminator.

    b. Data, dimana sistem kita menerima dari lingkungan dan harusdiproses dengan cara tertentu.

    c. Data yang dihasilkan sistem kita dan diberikan ke dunia luar.d. Penyimpanan data yang digunakan secara bersama antara sistem

    kita dengan terminator. Data ini dibuat oleh sistem dan

    digunakan oleh lingkungan atau sebaliknya dibuat oleh

    lingkungan dan digunakan oleh sistem kita.

  • 5/24/2018 8 Bab 2 - Landasan Teori

    10/50

    13

    e. Batasan antara sistem kita dan lingkungan.Diagram konteks dimulai dengan penggambaran terminator,

    aliran data, aliran control penyimpanan, dan proses tunggal yang

    menunjukkan keseluruhan sistem. Bagian termudah adalah

    menetapkan proses (yang hanya terdiri dari satu lingkaran) dan

    diberi nama yang mewakili sistem. Nama dalam hal ini dapat

    menjelaskan proses atau pekerjaan atau dalam kasus ekstrim berupa

    nama perusahaan yang dalam hal ini mewakili proses yang dilakukan

    keseluruhan organisasi.

    Terminator ditunjukkan dalam bentuk persegi panjang dan

    berkomunikasi langsung dengan sistem melalui aliran data atau

    penyimpanan eksternal. Antar terminator tidak diperbolehkan

    komunikasi langsung. Pada kenyataannya hubungan antar terminator

    dilakukan, tetapi secara definitive karena terminator adalah bagian

    dari lingkungan, maka tidak relevan jika dibahas dalam konteks

    diagram.

    Tabel 2.2.1 Simbol-simbol Diagram Konteks

    No Simbol Keterangan

    1.Terminator

    2.

    Aliran Data/Data

    flow

    3.Atau Proses

  • 5/24/2018 8 Bab 2 - Landasan Teori

    11/50

    14

    Diagram konteks memiliki aturan sebagai berikut:

    a. Jika terdapat banyak terminator yang mempunyai banyakmasukan dan keluaran diperbolehkan untuk digambarkan lebih

    dari satu kali sehingga mencegah penggambaran yang terlalu

    rumit, dengan ditandai secara khusus untuk menjelaskan bahwa

    terminatoryang dimaksud adalah identik. Tanda tersebut dapat

    berupa asterisk(*) atau pagar (#).

    b. Jika terminatormewakili individu sebaiknya diwakili oleh peranyang dimainkan personil tersebut. Alasan pertama adalah

    personil yang berfungsi untuk melakukan itu dapat berganti

    sedang diagram konteks harus tetap akurat walaupun personil

    berganti. Alasan kedua adalah seorang personil dapat

    memainkan lebih dari satu peran.

    c. Karena focus utama adalah mengembangkan model, makapenting untuk membedakan sumber (resource) dan pelaku

    (handler). Pelaku adalah mekanisme, perangkat, atau media

    fisik yang mentransportasikan data ke/dari sistem, karena pelaku

    seringkali familier dengan pemakai dalam implementasi sistem

    berjalan, maka sering menonjol sebagai sesuatu yang harus

    digambarkan lebih dari sumber data itu sendiri. Sedangkan

    sistem baru dengan konsep pengembangan teknologinya

    membuat pelaku menjadi sesuatu yang tidak perlu digambarkan.

    Aliran dalam contextdiagram memodelkan masukan ke sistem

    dan keluaran dari sistem seperti halnya sinyal kontrol yang diterima

    atau dibuat sistem. Aliran data hanya digambarkan jika diperlukan

    untuk mendeteksi kejadian dalam lingkungan dimana sistem harus

    memberikan respon atau membutuhkan data untuk menghasilkan

    respon. Selain itu, aliran data dibutuhkan untuk menggambarkan

    transportasi antara sistem dan terminator. Dengan kata lain aliran

    data digambarkan jika data tersebut diperlukan untuk menghasilkan

    respon pada kejadian tertentu. Dalam hal ini kita seharusnya

  • 5/24/2018 8 Bab 2 - Landasan Teori

    12/50

    15

    menggambar context diagram dengan asumsi bahwa masukan

    disebabkan dan diawali oleh terminator, sedangkan keluaran

    disebabkan dan diawali oleh sistem. Dengan mencegah interaksi

    yang tidak perlu (extraneous prompts) yang berorientasi pada

    implementasi masukan-keluaran dan mengkonsentrasikan

    pemodelan pada jaringan aliran data.

    Kadang-kadang diperlukan dialog karena terminatortidak tahu

    sistem memerlukan masukan atau sistem tidak memberikan keluaran

    karena tidak tahu terminator membutuhkannya. Dalam hal ini

    interaksi menjadi diperlukan dan diasumsikan menjadi bagian esensi

    sistem.

    2.2.2 DFD LevelData flow diagram adalah suatu gambaran grafis dari suatu

    sistem yang menggambarkan proses keseluruhan sampai proses

    terkecil, aliran data dan penyimpanan data atau arus data dari suatu

    sistem, merupakan model logis yang menjelaskan sistem sebagai

    jaringan kerja (sub sistem) dari proses yang dihubungkan satu

    dengan yang lainnya dan atau dihubungkan dengan tempat

    penyimpanan data serta dihubungkan pula dengan sumber dan

    tujuan.

    Pembuatan DFD hanyalah merupakan proses mengidentifikasi

    berbagai proses, mengaitkan dengan arus data untuk membuat

    hubungan, menyediakan terminator untuk menerima input dan

    mengeluarkan ouput. DFD juga merupakan alat yang berfungsi

    untuk menggambarkan secara rinci mengenai sistem sebagai jaringan

    kerja antar fungsi yang berhubungan satu sama lain dengan

    menunjukkan arus data yang mengalir serta penyimpanannya.

  • 5/24/2018 8 Bab 2 - Landasan Teori

    13/50

    16

    Tabel 2.2.2 Simbol-simbol DataFlowDiagram

    Empat symbol dasar yang digunakan untuk memetakan

    gerakan-gerakan diagram aliran data adalah:

    a. ExternalEntity(Entitas) / TerminatorSuatu entitas dapat disimbolkan dengan suatu notasi kotak

    sebagai berikut:

    Kotak ini digunakan untuk menggambarkan suatu entitas

    eksternal (bagian lain, sebuah perusahaan, seseorang, atau

    mesin) yang dapat mengirim data atau menerima data dari

    sistem. Entitas ini disebut juga sumber atau tujuan data, dan

    dianggap eksternal terhadap sistem yang sedang digambarkan.

    Setiap entitas diberi label dengan sebuah nama yang sesuai.

    Meskipun berinteraksi dengan sistem, namun dianggap di luar

    batas-batas sistem. Entitas tersebut harus diberi nama dengan

    No. Simbol Keterangan

    1. MenunjukkanEntity

    Yaitu pemakai atau pelaku dalam

    konteks sistem yang dibuat

    2.

    Menunjukkan proses

    3. Menunjukkan alat penghubung, yangdigunakan untuk menghubungkan

    entity dengan proses

    4. Menunjukkan output atau data yang

    dikeluarkan dri suatu proses

  • 5/24/2018 8 Bab 2 - Landasan Teori

    14/50

    17

    suatu kata benda entitas yang sama bisa digunakan lebih dari

    sekali atas suatu diagram aliran data tertentu untuk menghindari

    persilangan antara jalur-jalur aliran data. Bentuk dari eksternal

    entitydiantaranya adalah sebagai berikut:

    1. Suatu kantor, departemen atau divisi dalam perusahaantetapi di luar sistem yang sedang dikembangkan.

    2. Orang/sekelompok orang di organisasi tetapi di luar sistemyang sedang dikembangkan.

    3. Suatu organisasi atau orang yang berada di luar organisasiseperti misalnya langganan, pemasok, dll.

    4. Sistem informasi yang lain di luar sistem yang sedangdikembangkan.

    5. Sumber asli dari suatu transaksi6. Penerima akhir dari suatu laporan yagn dihasilkan oleh

    sistem.

    b. DataFlow/Arus DataSuatu arus data dapat disimbolkan dengan menggunakan suatu

    notasi tanda panah berikut:

    Tanda panah ini menunjukkan perpindahan data dari satu

    titik ke titik yang lain, dengan kepala tanda panah mengarah ke

    tujuan data. Karena sebuah tanda panah menunjukkan

    seseorang, tempat atau sesuatu, harus digambarkan dalam kata

    benda. Bentuk dari arus data diantaranya adalah sebagai berikut:

    1. Formulir atau dokumen yang digunakan di perusahaan2. Laporan tercetak yang dihasilkan oleh sistem3. Tampilan atau output di layar komputer yang dihasilkan

    oleh sistem

    4. Masukan untuk komputer5. Komunikasi ucapan6. Surat-surat atau memo

  • 5/24/2018 8 Bab 2 - Landasan Teori

    15/50

    18

    7. Data yang dibaca atau direkamkan ke suatufile8. Suatu isian yang dicatat pada buku agenda9. Transmisi data dari suatu komputer ke komputer yang lain

    c. Process/ ProsesSuatu proses dapat disimbolkan seperti:

    Atau

    Bujur sangkar dengan sudut membulat / lingkaran

    digunakan untuk menunjukkan adanya proses transformasi.

    Proses-proses tersebut selalu menunjukkan suatu perubahan

    dalam di dalam atau perubahan data. Jadi, aliran data yang

    meninggalkan suatu proses selalu diberi label yang berbeda dari

    aliran data yang masuk. Proses-proses yang menunjukkan hal itu

    di dalam sistem dan harus diberi nama menggunakan salah satu

    format berikut ini. Sebuah nama yang jelas memudahkan untukmemahami proses apa yang sedang dilakukan. Pemberian nama

    pada proses:

    1. Menetapkan nama sistem secara keseluruhan saatmenamai proses pada level yang lebih tinggi. Contoh:

    sistem kontrol inventaris.

    2. Menamai suatu subsistem utama, menggunakan nama-

    nama seperti: Sistem pelaporan inventaris atau Sistem

    pelayanan konsumen internet.

    3. Menggunakan format kata kerja-kata sifat-kata benda

    untuk proses-proses yang mendetail. Kata kerja yang

    menggambarkan jenis kegiatan yang seperti ini, misalnya

    menghitung, memverifikasi, menyiapkan, mencetakatau

    menambahkan. Contoh-contoh nama proses yang lengkap

    adalah: menghitung pajak penjualan, memverifikasi status

  • 5/24/2018 8 Bab 2 - Landasan Teori

    16/50

    19

    rekening konsumen, menyiapkan invoice pengapalan,

    mencetak laporan yang diurutkan ke belakang, mengirim

    konfirmasi email ke konsumen, memverifikasi neraca

    kartu kredit dan menambah record inventaris.

    d. Data Store(Penyimpanan Data)Data store dilambangkan dengan bujur sangkar dengan ujung

    terbuka. Atau

    Yang menunjukkan penyimpanan data. Penyimpanan data

    menandakan penyimpanan manual, seperti lemari file/sebuah

    file/basis data terkomputerisasi. Karena penyimpanan data

    mewakili seseorang, tempat atau sesuatu, maka diberi nama

    dengan sebuah kata benda. Penyimpanan data sementara seperti

    kertas catatan/sebuahfilekomputer sementara tidak dimasukkan

    ke dalam diagram aliran data. Bentuk dari penyimpanan data

    diantaranya adalah sebagai berikut:1. Suatufileatau databasedi sistem komputer2. Suatu arsip atau catatan manual3. Suatu kotak tempat data di meja seseorang4. Suatu tabel acuan manual5. Suatu agenda atau buku.

    Dalam penggambaran penyimpanan data perlu diperhatikan

    beberapa hal, antara lain:

    a. Hanya proses saja yang berhubungan dengan simpanandata, karena yang mengggunakan / merubah data di

    simpanan data adalah suatu proses.

    b. Arus data yang menuju ke simpanan data dari suatu prosesmenunjukkan proses updateterhadap data yang tersimpan

    di simpanan data. Updatedapat berupa proses:

  • 5/24/2018 8 Bab 2 - Landasan Teori

    17/50

    20

    1. Menambah/menyimpankan record baru ataudokumen baru ke dalam simpanan data.

    2. Menghapus record atau mengambil dokumen darisimpanan data

    3. Merubah nilai data di suatu record atau di suatudokumen yang ada di simpanan data

    c. Arus data yang berasal dari simpanan data ke suatu proses

    menunjukkan bahwa proses tersebut menggunakan data

    yang ada di simpanan data.

    d. Untuk suatu proses yang melakukan kedua-duanya yaitu

    menggunakan dan updatesimpanan data dapat dipilih salah

    satu penggambaran.

    2.2.3 Diagram BerjenjangDiagram berjenjang adalah gambaran mengenai proses-proses

    yang terjadi dalam sistem yang akan dibuat. Untuk menggambar

    proses dari sebuah sistem dibutuhkan beberapa peralatan Visual

    Power Desainer. Dimana peralatan tersebut membantu menjelaskan

    bagaimana proses berlangsung.

    Power Desainer telah merancang dan dikembangkan untuk

    beberapa hal, diantaranya:

    a. Menggambarkan suatu struktur bertingkat guna memahamifungsi dari modul-modul sistem yang akan dipergunakan.

    b. Menyediakan penjelasan secara lengkap terhadap input yangakan digunakan, proses yang dilakukan dan output yang

    diinginkan.

    2.2.4 Dokumen FlowFlow of document identik dengan perancangan sistem,

    maksudnya hampir setiap pengembang sistem memanfaatkan Flow

    of Document sebagai salah satu alat perancangan item untuk

    menggambarkan sistem lama pada tahap analisis, atau

  • 5/24/2018 8 Bab 2 - Landasan Teori

    18/50

    21

    menggambarkan sistem yang baru pada tahap perancangan Flow of

    Document adalah alat pembuatan model yang memungkinkan

    profesional sistem untuk menggambarkan sistem sebagai satu

    jaringan proses fungsional yang dihubungkan satu dengan yang

    lainnya dengan alur data baik secara manual maupun secara

    komputerisasi.

    Bagian alir ini disebut juga bagian alir formulir yang

    menunjukan prosedur dari sistem secara logika yang utama dan arus

    laporan.

    No. Simbol Keterangan

    1. Simbol Proses

    2. SimbolDisplay Monitor

    3 SimbolDocument

    4. SimbolDocument

    5. SimbolInput

    6. Simbol Arsip

  • 5/24/2018 8 Bab 2 - Landasan Teori

    19/50

    22

    7.

    Simbol Penghubung

    Tabel 2.2.3 Simbol-simbolDocument Flow

    2.2.5 ERD (Entity Relationship Diagram)ERD adalah suatu model jaringan yang menggunakan susunan

    data yang disimpan dari sistem acak. Digunakan untuk menunjukkan

    objek data dan hubungan-hubungan yang ada pada objek tersebut

    dengan menggunakan entity dan relationship yang diperkenalkan

    pertama kali oleh Chen pada tahun 1976.

    Selain mudah disajikan oleh perancangan database, entity

    relationship diagram juga menggambarkan hubungan antara entity

    dengan jelas beserta batasan jumlah entity dan partisipasi antar

    entity, serta mudah dimengerti oleh pemakai/ pangguna.

    E-R Diagram merupakan model yang mendiskripsikan

    hubungan antara penyimpanan data yang ada dalam data flow

    diagram (DFD). E-R Diagram digunakan untuk memodelkan

    struktur data atau hubungan antar data. E-R Diagram merupakan

    dasar untuk pengembangan kamus data. Model relasional merupakan

    model yang paling sederhana sehingga mudah digunakan dan

    dipahami oleh pengguna, model ini menggunakan sekumpulan tabel

    berdimensi dua (yang disebut relasi / tabel), dengan masing-masing

    relasi tersusun atas tupeloatau baris dan atribut.

    E-R Diagram menggunakan sejumlah notasi dan simbol-

    simbol yang digunakan sebagai berikut:

  • 5/24/2018 8 Bab 2 - Landasan Teori

    20/50

    23

    No. Simbol Keterangan

    1.

    Menunjukkan entity.

    Yaitu suatu object yang dapat di

    identifikasikan dalam lingkup

    pemakai. Sesuatu yang penting bagi

    pemakai dalam konteks sistem yang

    dibuat.

    2.

    Menunjukkan atribut.

    Yaitu entity yang mempunyai atribut

    dan berfungsi mendiskripsikan

    karakter entity.

    3. Menunjukkan hubungan

    4.

    Menunjukkan alat penghubung. Yang

    digunakan untuk menghubungkan

    entity dengan entity ataupun entity

    dengan atribut.

    Tabel 2.4 Simbol-simbol ER-Diagram

    2.2.6 EntitasEntitas merupakan individu yang mewakili sesuatu yang

    nyata dan dapat dibedakan dari sesuatu yang lain. Dapat berupa

    orang, tempat, objek, atau kejadian.

    2.2.7 AttributeAttribute mendeskripsikan karakteristik dari suatu entitas.

    Attributeterdiri dari beberapa tipe attribute, yaitu:

  • 5/24/2018 8 Bab 2 - Landasan Teori

    21/50

    24

    1. Atribut sederhana (simple attribute)Yaitu attribute atomik yang tidak dapat dipilah lagi.

    Contoh: NRP

    2. Attributekomposit (composite attribute)Yaitu merupakan atribute yang masih dapat diuraikan lagi

    menjadi sub-sub atribut yang masing-masing memilki makna.

    Contoh: Nama bisa dipecah menjadi Nama Depan, Nama

    Tengah, dan Nama Belakang. Alamat bisa dipecah menjadi

    Alamat, Kota, Kode Pos.

    3. Attributebernilai tunggal (Single-Valued Attribute)Ditujukan pada attributes yang memiliki paling banyak satu

    nilai untuk setiap baris data.

    Contoh: untuk setiap baris data mahasiswa hanya boleh berisi

    satu nilai karena tidak mungkin ada dua NRP untuk satu

    mahasiswa yang sama.

    4. Attributebernilai banyak (Multivalued Attribute)Ditujukan pada atribut-atribut yang dapat diisi dengan lebih dari

    satu nilai, tetapi jenisnya sama. Attribute ini dilambangkan

    sebagai elips ganda.

    Contoh: nomor telepon, gelar, hobi, dll.

    5. AttributeturunanAdalah atribut yang nilai-nilainya diperoleh dari pengolahan

    atau dapat diturunkan dari attribute atau tabel lain yang

    berhubungan.Attributeturunan sebenarnya dapat ditiadakan dari

    sebuah tabel karena nilai-nilainya bergantung pada nilai yang

    ada di attributelainnya.

    Contoh: attribute umur yang dapat dikalkulasi dari attribute

    tanggal hari ini (tanggal sistem) dikurangi tanggal lahir.

    Attributeturunan dilambangkan sebagai elips titik-titik.

  • 5/24/2018 8 Bab 2 - Landasan Teori

    22/50

    25

    2.2.8 RelasiRelasi menunjukkan adanya hubungan di antara sejumlah

    entitas yang berasal dari himpunan entitas yang berbeda.

    Contoh: Antara dosen_wali dan Mahasiswa terdapat hubungan

    berupa bimbingan, antara nasabah dan pinjaman bank terdapat

    hubungan peminjam.

    2.2.9 KardinalitasKardinalitas dalam relationshipdigunakan untuk menjelaskan

    batasan pada jumlah entity yang berhubungan melalui suatu

    relationship. Beberapa hubungan antar entityadalah sebagai berikut:

    1. One to one(1 : 1)Setiap attribute pada himpunan entitas A berhubungan paling

    banyak satu entitas dari himpunan entitas B.

    1 1

    2. One to many(1 : M)Setiap entitas pada himpunan entitas A berhubungan banyak

    dengan entitas dari himpunan entitas B, dan tidak sebaliknya.

    1 M

    3.Many to one(M : 1)Setiap entitas pada himpunan entitas A berhubungan dengan

    satu entitas dari himpunan entitas B. di mana satu entitas

    himpunan entitas B bisa memiliki lebih dari satu, dan tidak

    sebaliknya

    M 1

    Gambar 2.2.3 Kardinalitas M to 1

    Gambar 2.2.1 Kardinalitas 1 to 1

    Gambar 2.2.2 Kardinalitas 1 to M

  • 5/24/2018 8 Bab 2 - Landasan Teori

    23/50

    26

    4.Many to many(M : M)Setiap entitas pada himpunan entitas A dapat berhubungan

    dengan banyak entitas pada himpunan entitas B, dan juga

    sebaliknya.

    M M

    Derajat relationship adalah jumlah entity yang berpartisipasi dalam

    suatu relationship. Ada tiga derajat relationship dalam ERD, yaitu:

    1. Unary(derajat satu)Yaitu satu relationship yang dihubungkan dengan satu entity,

    dimana penghubungnya ada dua.

    2. Binary(derajat dua)Yaitu satu relationship dihubungkan dengan dua entity yang

    berbeda.

    3. Teranary(derajat tiga)Yaitu satu relationship menghubungkan tiga entityyang berbeda

    satu sama lain.

    Gambar 2.2.4 Kardinalitas M to M

    Gambar 2.2.5 Simbol Unary

    Gambar 2.2.6 SimbolBinary

  • 5/24/2018 8 Bab 2 - Landasan Teori

    24/50

    27

    Gambar Simbol Teranary

    2.2.10 Hubungan Antar TabelSetiap tabel berisi data yang dideskripsikan oleh sebuah sebuah

    entitas. Contoh: entitas Pegawai dapat ditransformasikan ke dalam

    tabel Pegawai yang biasa berisi data berupa NIP, nama, alamat,

    telepon, dan lain-lain. Untuk membedakan antara baris data yang

    satu dengan yang lalin kita membutuhkan sebuah key. Key adalah

    satu atau gabungan dari beberapa atribut yang dapat membedakansemua baris data (row) dalam tabel secara unik.

    Keyterdiri dari empat macam, yaitu:

    1. Super KeyMerupakan satu atau lebih atribut (kumpulan atribut) yang dapat

    membedakan setiap baris data dalam sebuah tabel secara unik.

    Contoh: pada entitas Pegawai, maka atribut yang dapat menjadi

    superkeyadalah {NIP, nama, alamat}.

    2. Candidate KeyMerupakan satu atau satu set minimal atribut yang bisa dipilih

    untuk menjadiprimary key.

    Contoh: NIP adalah candidate key, nama adalah candidate key

    apabila anda dapat menjamin tidak ada nilai yang sama untuk

    atribut ini. Salah satu dari candidate key dapat menjadi

    primarykey.

    Gambar 2.2.7 Simbol Teranary

  • 5/24/2018 8 Bab 2 - Landasan Teori

    25/50

    28

    3.Primary keyMerupakan satu atribut atau satu set minimal atribut yang tidak

    hanya mengidentifikasi secara unik suatu kejadian spesifik tetapi

    juga dapat mewakili setiap kejadian dari suatu entitas.

    Contoh: NIP lebih dapat dijadikan primary key daripada nama

    dikarenakan NIP pasti unik dan tidak mungkin ada pegawai yang

    memiliki 2 NIP yang sama, namun untuk nama tidak dapat

    memastikan kalau nama tersebut pasti unik.

    4.Foreign keyEntitas Pegawai tidak dapat berdiri sendiri, perlu

    mengkombinasikan dengan entitas lain. Sembarang atribut yang

    menunjuk ke primary key pada tabel lain. Foreign key dapat

    menunjuk pada tabel yang sama (tabel sendiri) tidak selalu harus

    menunjuk pada tabel yang lain.

    2.2.11 NormalisasiNormalisasi adalah suatu proses rancangan database untuk

    mendapatkan bentuk normal. Normalisasi berkaitan dengan suatu

    proses, sedangkan normal form berkaitan dengan outputproses. Jika

    suatu relasi berada dalam bentuk normal, maka dia juga termasuk

    dalam bentuk normal tersebut didalamnya atau dibawahnya.

    Suatu relasi dikatakan sudah berada dalam bentuk normalisasi

    tertentu bila memenuhi beberapa yang lebih tinggi dianggap lebih

    baik dari tingkat dibawahnya. Normalisasi yang akan digunakan

    pada sistem ini hanya sampai dengan tingkat 3 NF (Third Normal

    Form). Tingkatan- tingkatan normalisasi:

    1. Fisrt Normal Form( 1NF )Suatu relasi dikatakan sudah memenuhi bentuk normal kesatu (1

    NF) bila setiap data bersifat atomic yaitu tiap atribut hanya

    mempunyai satu nilai dan tidak ada set atribut yang berulang-

    ulang.

  • 5/24/2018 8 Bab 2 - Landasan Teori

    26/50

    29

    2. Second Normal Form ( 2NF )

    Suatu relasi dikatakan sudah memenuhi bentuk normal kedua (2

    NF) bila relasi tersebut sudah memenuhi bentuk normal kesatu,

    dan atribut yang bukan key sudah tergantung penuh terhadap

    key-nya.

    3. Third Normal Form( 3 NF )

    Suatu relasi dikatakan sudah memenuhi bentuk Normal ketiga (3

    NF) bila relasi tersebut sudah memenuhi bentuk normal kedua

    dan atribut yang bukan key tidak tergantung transitif terhadap

    key-nya.

    2.2.12 Bahasa Basis Data (Database Language)Database Management System (DBMS) merupakan perantara

    bagi pemakai dengan basis data dalam disk. Cara berinteraksi /

    berkomunikasi antara pemakai dengan basis data tersebut diatur

    dalam suatu bahasa khusus yang ditetapkan oleh perusahaan

    pembuat DBMS. Sebuah basis data biasanya dapat dipilah ke dalam

    2 bentuk, yaitu:

    1. DataDefinition Language2. DataManipulation Language

    2.2.13 Data Definiti on LanguagePada DataDefinition Language(DDL) dibahas mengenai hal-

    hal yang berkaitan dengan struktur tabel. Pada bagian ini dibahas

    mengenai bagaimana cara membuat tabel (create table), mengubah

    tabel (alter table), dan menghapus tabel (drop table).

    Tabel merupakan unit dasar penyimpanan data yang terdiri dari

    sejumlah baris (rows) dan sejumlah kolom (column). Kolom-kolom

    pada suatu tabel didefinisikan ketika tabel tersebut dibuat. Jumlah

    baris tergantung pada operasi DML yang dikenakan padanya dan

  • 5/24/2018 8 Bab 2 - Landasan Teori

    27/50

    30

    cenderung berubah. SQL statementyang digunakan untuk membuat

    tabel adalah create tablestatement.

    1. Membuat tabel (create table)Jenis tipe data dalam DDL(Data DefinisiLanguage) :

    a. Char (n)Mendefinisikan string sepanjang n karakter. Bila n tidak

    disertakan, maka panjang karakter adalah 1.

    b. Varchar (n)Mendefinisikan string yang panjangnya bisa berubah-ubah

    sesuai dengan kebutuhan, namun string tersebut dibatasi

    sebanyak n karakter. Oracle merekomendasikan varchar2.

    c. Varchar2 (n)Mendefinisikan string yang panjangnya bisa berubah-ubah

    sesuai dengan kebutuhan, namun string dibatasi sebanyak

    n karakter. Maksimun karakter pada varchar2 adalah 2000

    karakter.

    d. LongMendefinisikan tipe data binary, maksimun 2 Giga Byte,

    disimpan dalam format internal oracle.

    e. Long RawSama dengan long yaitu mendefinisikan tipe data binary

    maksimun 2 Giga Byte, tidak dikonversi oleh oracle (data

    mentah apa adanya).

    f. DateMendefinisikan tanggal, menyimpan tahun, bulan, hari,

    jam, menit dan detik.

    g. Number (n,p)Mendefinisikan angka pecahan, baik fixed decimal atupun

    floating point. Nilai n adalah jumlah bytes total dan p

    adalah presisi angka dibelakang koma.

  • 5/24/2018 8 Bab 2 - Landasan Teori

    28/50

    31

    Keterangan:

    Tipe data non oracle dapat dikonversi sebagai berikut:

    DECIMAL NUMBER

    INTERGER, INT NUMBER(38)

    SMALLINT NUMBER(38)

    FLOAT NUMBER

    REAL NUMBER

    DOUBLE NUMBER

    2. Mengubah table (alter table)Pada prinsip mengubah tabel berarti mengubah struktur tabel.

    Pada pengubahan struktur tabel ini ada beberapa kemungkinan,

    diantaranya adalah mengubah struktur dalam artian

    memodifikasi salah satu atau beberapafieldpada tabletersebut

    atau dalam artian menambah satu atau beberapa field pada

    tabel tersebut.

    Sintaks untuk mengubah struktur tabel adalah sebagai berikut :

    Alter Table nama_tabel

    ADD | MODIFY nama field tipe_data (lebar_field);

    3. Menghapus Tabel (Drop Table)Pada kenyataannya banyak tabel yang harus dihapus karena

    ada beberapa kesalahan atau ada tabel yang sudah tidak

    diperlukan. Untuk dapat menggunakan perintah tersebut ada

    sintaks selengkapnya adalah:

    Drop Table nama_tabel

    Keterangan:

    Perintah drop table ini akan berhasil jika tabel yang dihapus

    adalah tabel yang tidak ada relasinya (tabel yang berdiri

    sendiri). Juga akan berhasil jika yang anda hapus adalah tabel

    relasi (tabel yang mengacuh pada tabel yang lain). Dalam

    kasus ini tabel relasi adalah tabel pasok dan tabel pembelian.

  • 5/24/2018 8 Bab 2 - Landasan Teori

    29/50

    32

    Jika anda menghapus tabel acuan atau tabel references, maka

    perintah drop tableini tidak akan berhasil.

    2.2.14 Data Manipulation LanguageData Manipulation Language adalah bahasa untuk

    memanipulasi data yang terdapat dalam database, operasi DML

    meliputi beberapa hal, diantaranya yaitu:

    a. Pengambilan informasi yang disimpan dalam basis datab. Penyisipan informasi baru ke basis datac. Penghapusan informasi dari basis datad. Modifikasi informasi yang disimpan dalam basis data

    Ada dua jenis DML, yaitu:

    1. ProceduralYaitu yang mensyaratkan agar pemakai menentukan data apa

    yang diinginkan serta bagaimana cara mendapatkannya.

    2. Non proceduralYaitu yang membuat pemakai dapat menentukan data apa yang

    diinginkan tanpa menyebutkan bagaimana cara

    mendapatkannya.

    Pada Data Manipulation Language (DML) akan dibahas

    bagaimana cara memanipulasi data. Manipulasi yang dimaksud

    disini meliputi bagaimana cara memasukkan data atau record ke

    dalam tabel (insert), memperbaharui data (update), menghapus data

    (delete), dan memilih atau menyeleksi data (select).

    1. Memasukkan Data (insert)Pada prinsipnya insert bertujuan mengisikan data / record ke

    dalam suatu tabel. Pengisian data ini bisa berlaku untuk satu

    recordpenuh. Artinya, semua fielddalam record tersebut akan

    diisi. Selain itu, kita juga diijinkan untuk mengisikan beberapa

    fieldsaja dalam recordtersebut.

    Sintaks SQL-nya adalah sebagai berikut:

  • 5/24/2018 8 Bab 2 - Landasan Teori

    30/50

    33

    INSERT INTO nama_tabel(field ke 1, ..., field ke-n)

    VALUES (nilai_field ke-1, ..., nilai_field ke-n)

    Keterangan :

    tabel (field ke 1, ..., field ke-n)

    adalah namafieldyang ada pada tabel dan sifatnya optional.

    (nilai_field ke-1, ..., nilai_field ke-n)

    Adalah isi darifieldpada tabel dan harus diisi.

    2. Memperbaharui Data (update)Pada prinsipnya update adalah memperbaharui data lama

    dengan data baru atau data terkini. Jadi perintah update ini

    digunakan apabila sudah ada suatu data atau record, namun

    record tersebut ternyata salah. Kesalahan pada satu record ini

    bisa terjadi hanya ada pada satufieldsaja atau seluruhfieldpada

    record tersebut. Kesalahan bisa disebabkan karena pengisian

    data atau pengetikan yang kurang teliti atau karena sebab yanglain.

    Sintak untuk updatesebagai berikut:

    UPDATE nama_tabel

    SET nama_field = data_baru

    WHERE nama_field = data_lama

    3. Menghapus Data (delete)Pada prinsipnya delete adalah untuk menghapus data atau

    record. Penghapusan record bisa dilakukan secara keseluruhan.

    Artinya seluruh record dalam tabel tersebut akan dihapus.

    Penghapusan data atau deletion juga bisa dilakukan untuk

    sebagian data saja. Pada penghapusan data tipe ini digunakan

    kondisi wheresebagai suatu kondisi untuk memilih record mana

    yang akan dihapus.

  • 5/24/2018 8 Bab 2 - Landasan Teori

    31/50

    34

    Sintak SQL untuk menghapus record:

    DELETE FROM nama_tabel

    [ WHERE kondisi ]

    4. Memilih Data/ seleksi Data (select)Pada prinsipnya sintak SQL select bertujuan untuk menampilkan

    / menyeleksi data. Yang diinginkan dari sekumpulan datan yang

    ada. Untuk lebih jelasnya perhatikan contoh berikut :

    Select * nama_tabel.

    2.2.15 Data Control Language (DCL) DCL ( Data Control Language )

    Berisi perintah-perintah untuk mngendalikan pengaksesan data.

    Yang termasuk DCL adalah:

    GRANT memberikan kendali pada pengaksesan data.REVOKE mencabut kemampuan pengaksesan dataLOCK TABLE mengunci table

    Perintah yang termasuk dalam SQL DCL adalah :

    1. Grant

    Adalah perintah untuk memberikan hak akses tertentu

    kepada satu orang user atau lebih. Perintah Grant,

    Grant adalah pembelian hak akses data kepada user

    untuk mengakses tabel pada database Oracle. Ada

    beberapa hak yang diberikan kepada useryaitu:

    a. All Privileges : User diberi semua hak untukmengakses data dari tabel

    b. Select : Userdiberi hak akses untuk mengambildata dari tabel

    c. Delete : User diberikan hak akses untukmenghapus data dari tabel

  • 5/24/2018 8 Bab 2 - Landasan Teori

    32/50

    35

    d. Update : User diberikan hak akses untukmengubah data dari tabel

    Syntax: GRANT

    ON TO

    [WITH GRAN OPTION

    2. Revoke

    Adalah perintah untuk mencabut hak akses tertentu

    kepada satu orang user atau lebih.

    Syntax: REVOKE

    FROM ;

    3. Commit

    Konfirmasi menyimpan data di memory ke database

    (Commit) Commit adalah proses transaksi data yang

    disimpan dengan melakukan manipulasi data. Perlu

    diketahui bahwa setiap manipulasi data baik untuk

    menambah, menghapus, dan mengubah data sebaiknya

    menggunakan perintah Commit.

    Berikut ini contoh penggunaan Commit:

    SQL > Insert Into mahasiswa values

    (1,Agus Fajar S P,PanjangJiwo

    No1,1234567,2010,01-Jan-2010);

    1 row created.

    SQL > Commit;

    Commit complete.

    Pernyataan di atas menjelaskan tentang penambahan data

    pada tabel mahasiswa dengan nilai masing-masing field

    yang disesuaikan dengan tipe data dan panjang

    maksimumnya.

    Untuk melihat isi tabel mahasiswa yang sudah dikenai

    perintah commit, gunakan perintah SELECT seperti

    contoh ini:

  • 5/24/2018 8 Bab 2 - Landasan Teori

    33/50

    36

    SQL > Select * From Mahasiswa;

    Syntax :

    COMMIT [WORK];

    Contoh:

    INSERT INTO Pelajar

    VALUES (05438,APOS,09-AUG-1990,1,L);

    COMMIT;

    4. Rollback

    Mengembalikan status transaksi sebelum penyimpanan

    (Rollback). Rollback digunakan untuk membatalkan

    transaksi saat memanipulasi data. Bila anda melakukan

    manipulasi data dan melakukan commit, maka perintah

    rollbackdapat membatalkan transaksi tersebut.

    Contoh penggunaanRollbacksebagai berikut:

    SQL > DELETE From Mahasiswa

    WHERE NIM = 1;

    1 row deleted.

    SQL > ROLLBACK

    Rollback complete.

    Pernyataan diatas menjelaskan tentang penghapusan satu

    baris data dari tabel Mahasiswa dengan nilai kolom

    NIM=1. Untuk mengembalikan nilai seperti semula

    digunakan perintahRollback.

    Syntax:

    ROLLBACK [WORK];

    2.2.16Object-objectDatabaseObject-objectdatabase oracle dapat dibagi atas dua kelompok,

    yakni schema object dan non-schema object. Apa yang dimaksud

    dengan schema? Sebuah schema adalah sekumpulan data yang

    kepemilikannya dipunyai oleh user database yang namanya sama

  • 5/24/2018 8 Bab 2 - Landasan Teori

    34/50

    37

    dengan nama schema tersebut. Object schema dapat dibuat dan

    dimodifikasi menggunakan DDLstatement.

    Object schema pada oracle diantaranya adalah:

    a.Index

    b. Stored procedure dan stored function

    c.Package

    d.Private synonym

    e. Sequence

    Secara umum ada dua jenis sub program yaitu Stored

    procedure dan function. Procedure secara umum diaktivasi oleh

    statement atau kata kunci execute pada oracle. Sedangkan Function

    secara umum diaktivasi dalam statement pemrograman yang juga

    selain membentuk blok juga harus mengevaluasi ekspresi atau nilai

    ketika pemanggilan dilakukan dan akan mengembalikan suatu nilai

    (return value) dari hasil pemrosesan.

    Dalam pemanggilan kedua sub program ini, keduanya dapat

    mengacu pada kumpulan parameter yang bertipe tertentu. Kumpulan

    parameter tersebut pada kasus tertentu dapat tidak digunakan.

    Perbedaan mendasar dari function dan procedure adalah pada

    functionada daerah asal (domain) yang melalui proses tertentu akan

    menghasilkan daerah hasil (range) yang merupakan nilai balik

    (return value). Padaproceduretidak ada sesuatu yang secara khusus

    merupakan nilai balik, tetapi jika nilai yang diolah pada keadaan

    awal dan dihasilkan pada keadaan akhir adalah parameter global,

    maka parameter tersebut dapat saja dianggap sebagai nilai balik.

    Ada dua jenis parameter yang digunakan dalam sub program

    yaitu yang pertama: parameter formal atau input yang digunakan

    dalan mendefinisikan suatu sub program. Parameter formal adalah

    sekumpulan nama yang akan dipakai dalam proses pengisian harga

    tersebut ketika sub program akan dijalankan. Sedangkan yang kedua

  • 5/24/2018 8 Bab 2 - Landasan Teori

    35/50

    38

    adalah parameter aktual. Parameter aktual adalah nilai atau ekspresi

    atau nama variable yang diisi pada proses pemanggilan sub program.

    Pendefinisian variabel dalam sub program, mirip dengan

    sebagaimana program, yaitu mendefinisikan kamus local dimana

    kesemuanya kamus tersebut merupakan private, artinya alokasi

    memory-nya bersifat local dan dialokasikan kembali ketika sebuah

    sub program dapat ditentuka konteks penggunaanya dalam

    pendefinisian di dalam sub program itu sendiri, misalnya apakah

    suatu variabel dideklarasikan secara localatau global.

    Dalam sub program dikenal istilahpass by references,pass by

    value. Istilah by referencesartinya suatu sub program menggunakan

    parameter dengan nilai variabel, konstanta, atau ekspresi yang

    dideklarasikan pada kamus global. Sedangkan by value artinya sub

    program menggunakan langsung nilai parameternya.

    Dalam function atau procedure dapat dilakukan pemograman

    dengan menggunakan sequence, pengulangan (LOOP), seleksi (IF

    atau CASE) ataupun deklarasi variabel.

    STORED PROCEDURE

    Procedure dibentuk dari perintah, variabel, serta alur logic

    yang terdapat pada SQL. Procedure bisa dijalankan secara manual

    pada SQL atau PL/SQL.

    Beberapa hal yang penting dalamprocedureadalah bagaimana

    membuatnya, menghapus, memanggil, dan mengontrol siapa saja

    yang berhak menggunakan.

    Dengan contoh kasus kita dapat membuat suatu procedure

    untuk menampilkan kode_buku, no_induk, nama (siswa) dari tabel

    pinjam. Dimana procedure ini juga dapat dilakukan dengan

    menggunakan function get_judul() dan function get_name() yang

    telah dibuat sebelumnya.

  • 5/24/2018 8 Bab 2 - Landasan Teori

    36/50

    39

    Dalam oracle baik untu FUNCTION maupun PROCEDURE

    tidak dapat mengembalikan nilai berupa RECORD/RESULSET

    yang langsung bisa dilempar ke editor PL/SQL. Untuk

    menampilakannya harus mengubahnya dalam bentuk teks dengan

    menggunakan procedure/package built-in.

    DBMS_OUTPUT.PUT_LINE().

    STORED FUNCTION

    Stored Function tidak jauh berbeda dengan stored procedure

    hanya saja function memberikan nilai balik (return value). Untuk

    membedakan antara function dan procedure di dalam sebuah

    package, biasanya function di sebut dengan istilah stand-alone

    stored function. Secara garis besar oracle membagi fungsi-fungsi

    dalam oracle SQL atas 2 kategori: Single Row dan Multiple Row.

    Single RowFunctionDNS yang hanya menerima satu baris sebagai

    operannya, sedangkan Miltiple Row Function bisa menerima lebih

    dari satu baris sebagai operannya. Jumlah panah yang masuk ke

    masing-masing kotak (Single Row Function dan Multiple Row

    Function) melambangkan operand dan row).

  • 5/24/2018 8 Bab 2 - Landasan Teori

    37/50

    40

    1. Single Row Function

    Gambar di bawah ini memperlihatkan lima kategori Single Row

    Function

    Operasi yang termasuk subkategori general adalah DECODE, yaitu

    yang berlakuumum bagi banyak tipe. Operasi-operasi yang termasuk

    subkategori konversi memiliki nama yang banyak dimulai dengan

    TO_() contoh: Opaerasi untuk menkonversi ke karakter atau string

    bernama TO_CHAR, untuk konversi ke DATE ( Tanggal ) bernama

    TO_DATE, untuk konversi ke numerik bernama TO_NUMBER.Terkecuali ada pada operasi NULL, yang menkorversi Nilai NULL

    menjadi nilai bukan NULL ke tipe CHAR atatu VARCHAR, DATE

    dan NUMERIK.

    2.3 OracleSebuah database Oracle adalah sekumpulan dari data yang

    diperlakukan sebagai sebuah kesatuan dan merupakan software database

    yang banyak dipakai di perusahaan diseluruh dunia saat ini. Tujuan dari

    sebuah database adalah untuk menyimpan dan mengambil kembali

    informasi yang diperlukan dengan cepat. Sebuah server database adalah

    merupakan kunci bagi solusi permasalahan-permasalahan berkaitan dengan

    manajemen informasi. Secara umum sebuah servermampu mengelola data

    yang besar dengan jumlah user yang banyak serta menjamin konkurensi

    bagi userdalam mengakses data secara bersamaan.

    Function

    Single Row

    Function

    Multiple Row

    Function

    Gambar 2.2.8 Single Row Function

  • 5/24/2018 8 Bab 2 - Landasan Teori

    38/50

    41

    Oracle (NASDAQ: ORCL) adalah perusahaan piranti lunak

    enterprise terbesar di dunia yang menyediakan piranti lunak enterprise

    kepada perusahaan dan organisasi terbesar dan paling sukses di dunia.

    Oracle menyediakan produk-produk database, application server,

    collaboration selain enterprise businessapplications dan perangkat

    application development. Oracle adalah perusahaan piranti lunak pertama

    yang mengembangkan dan 100 persen menggunakan piranti lunak

    enterprisedi atas internet di seluruh lini produknya. Sejak diluncurkannya

    databaserelational pertama di dunia pada tahun 1977, Oracle telah menjadi

    bagian penting dalam revolusi teknologi yang secara nyata mengubah bisnis

    modern. PT Oracle Indonesia adalah anak perusahaan dari Oracle

    Corporation, yang didirikan pada tahun 1995.

    Disamping itu sistem security handal, oracle merupakan

    softwaredatabase yang bisa menampung serta mengelolah data dengan

    kapasitas yang sangat besar serta dapat mengaksesnya dengan sangat cepat

    pula. Sintak SQL nya hampir seluruhnya telah memenuhi standart ANSI-92

    lebih lebih memudahkan para programer database dalam membangun

    aplikasi baik dari sisi back end maupun dari front end. Demikian pula

    bagi seorang administrator yang bercimpung dalam menangani administrasi

    databaseserta bertanggung jawab terhadap keamanan databaseakan merasa

    diuntungkan serta dimudahkan dengan software Oracle yang lebih

    establish ini.

    Namun demikian karena harganya relatif mahal maka oracle

    kebanyakan hanya bisa di beli oleh perusahaan ataupun konsultan yang

    mempunyai dana cukup besar pula. Bagi anda yang berminat untuk bekerja

    di perusahaan besar dan berskala internasional sudah saatnya anda mulai

    dari sekarang meng-update pengetahuan anda, yaitu dengan cara

    mempelajari Oracle.

  • 5/24/2018 8 Bab 2 - Landasan Teori

    39/50

    42

    2.3.1 Sekilas SQL dan PL/SQLSQL adalah singkatan dari Structured Query Language. SQL

    secara garis besar terdiri dari 3 bagian yaitu:

    1. DDL (DataDefinition Language)2. DML (DataManipulasi Language)3. DCL (Data Control Language)

    PL/SQL merupakan kombinasi dari SQL dan pemrograman

    bahasa prosedural. Pada prinsipnya PL/SQL ini dalah merupakan

    pemrograman bahasa prosedural yang di dalamnya diletakkan

    sintak-sintak SQL.

    2.3.2 Instalasi OracleLangkah-langkah untuk meng-installOracle XE adalah sebagai

    berikut:

    a. Proses peng-install-an dapat segera dilakukan denganmelakukan double klik pada file instalasi (file bernamaOracelXE.exe).

    b. Saat muncul tampilan windows install wizardseperti di bawahGambar 2.3.1InstallerOracle

    Gambar 2.3.2Preparing to InstallOracle

  • 5/24/2018 8 Bab 2 - Landasan Teori

    40/50

    43

    c. Ini klik tombol next.

    d. Kemudian akan muncul window mengenai perjanjian lisensi.Klik pilihan accept the agreementdan kemudian klik tombol

    next.

    Gambar 2.3.3 Install WizardOracle

    Gambar 2.3.4 Lincense AgreementOracleDatabase10g

  • 5/24/2018 8 Bab 2 - Landasan Teori

    41/50

    44

    e. Setelah itu klik nextuntuk langkah selanjutnya sehingga muncultampilan pemilihan direktori tujuan instalasi seperti di bawah

    ini. Klik tombol nextuntuk melanjutkan.

    f. Kemudian isikanpassworduntuk database.Contoh: p4ssw0rd

    Setelah konfirmasipasswordtersebut silahkan klik tombol next.

    Password ini akan digunakan untuk proses login ke dalam

    database dengan user sys atau system, yaitu user bawaan dari

    Oracle yang otomatis terbentuk pada saat proses instalasi.

    Gambar 2.3.6 Specify Database Password

    Gambar 2.3.5 Choose Destination Location

  • 5/24/2018 8 Bab 2 - Landasan Teori

    42/50

    45

    g. Kemudian akan muncul tampilan dibawah ini (konfirmasisetting-an instalasi Oracle XE), kemudian klik install untuk

    melanjutkan proses instalasi.

    h. Kemudian akan muncul tampilan seperti di bawah ini. Tungguberapa saat sampai proses selesai.

    Gambar 2.3.7 Summary Oracle

    Gambar 2.3.8 Setup Status

  • 5/24/2018 8 Bab 2 - Landasan Teori

    43/50

    46

    i. Setelah itu proses penginstalan selesai dan klikfinish.

    j. Kemudian akan muncul tampilan browser dan silahkan mencobanyadengan memasukkan:

    Username : system

    Password : p4ssw0rd (sesuai dengan password yang dimasukkan padaproses instalasi)

    Gambar 2.3.9Instal Shield Wizard Complete

    Gambar 2.3.10 Oracle Conection

  • 5/24/2018 8 Bab 2 - Landasan Teori

    44/50

    47

    2.3.3 Konfigurasi Setelah InstalasiSetelah instalasi dan koneksi (jika menggunakan client-server)

    dari client ke serverdatabase selesai, Oracle XE sudah siap untuk

    digunakan. Untuk dapat berinteraksi langsung dengan database

    Oracle XE, Anda dapat menggunakan SQL*Plus ataupun i-

    SQL*Plus dari komputer client maupun dari komputer server.

    SQL*Plus adalah interface yang berbasis command line yang

    menghubungkan user dengan database, dimana user dapat

    melakukan perintah-perintah querybaik SQL standar, SQL bawaan

    Oracle (PL/SQL), dan perintah-perintah lainnya. Sama halnya

    dengan i-SQL*Plus yang merupakan fasilitas baru dari Oracle versi

    10 ke atas (Oracle 10g atau Oracle XE), yang membedakannya

    adalah i-SQL*Plusberbasis browser.

    a. Untuk dapat membuka SQL*Plus (tampilan command line)langkahnya adalah sebagai berikut:

    1. klik Start2. Program3. Oracle Database 10g Express Edition4. Run SQL Command Line.

    Atau juga dapat melalui,

    1. Start2. Run3.

    Open : sqlplus

    4. OK, window SQL*Plus command lineakan tampil.Setelah window SQL*Plus command line terbuka, akan

    ada username dan password. Untuk itu, Anda harus

    memasukkan username dan password. Ada user yang

    dibuat secara default ketika proses instalasi, yang

    terpenting adalah user sysdan systemdengan password

    sesuai dengan password yang dimasukkan pada saat

  • 5/24/2018 8 Bab 2 - Landasan Teori

    45/50

    48

    instalasi. Kedua user inilah yang paling vital karena

    mempunyai hak-hak tertinggi (privileges) dalam mengatur

    database. Untuk alasan keamanan, maka password untuk

    kedua userini harus segera diganti setelah proses instalasi.

    Cara untuk masuk ke database, yaitu dengan perintah CONN,

    contohnya:

    --

    SQL> CONN

    Enter user-name: [username]

    Enter password: [*********]

    --

    atau

    --

    SQL> CONN [username]/[password]

    --

    b. Sedangkan untuk dapat membuka i-SQL*Plus (tampilanbrowser) adalah :

    1. klik Start2. Program3. Oracle Database 10g Express Edition4. Go To Database Homepage5. Login (dengan mengisikan username dan password)6. SQL7. SQL Command8. Enter CommandSedangkan cara mengubahpasswordadalah sebagai berikut:

    1. Buka SQL*Plus/i-SQL*Plus

    2. Selanjutnya lakukan koneksi ke database dengan account

    sysatausystem

  • 5/24/2018 8 Bab 2 - Landasan Teori

    46/50

    49

    3. Pada SQL*Plus, setelah terkoneksi, pada prompt SQL

    (SQL> ) ketikkan perintah sebagai berikut:

    --

    SQl> PASSW [nama_user]

    --

    Perintah:

    --

    SQL> PASSW system

    --

    Pada i-SQL*Plus langsung saja ketikkan:

    PASSW system

    Masukkan password lama, kemudian masukkan passwordbaru

    misalnya oraclesys, setelah itu ketikkanpasswordbaru ini sekali

    lagi sebagai verifikasi.

    --

    Changing password for sys

    Old password : *****************

    New password : *********

    Retype password : *********

    --

    Beberapa versi Oracle sebelumnya tidak mendukung prosedur

    PASSW, maka untuk melakukan penggantian password

    gunakan perintah sebagai berikut:

    SQL> alter user [nama_user] identified by [password_baru];

    Disarankan, jangan menggunakan user sysatau systemuntuk

    membangun aplikasi database. Kedua user ini digunakan untuk

    keperluan administratif.Selain itu, sangat beresiko untuk

    memanipulasi data yang dimiliki kedua user ini karena data yang

  • 5/24/2018 8 Bab 2 - Landasan Teori

    47/50

    50

    dimiliki kedua user ini digunakan untuk mendukung jalannya

    databasesecara keseluruhan.

    2.3.4 Mengaktifkan User HRDalam Praktikum basis data semester ini, digunakan basis data

    kepegawaian yang terdiri dari tabel EMPLOYEES,

    DEPARTMENTS, JOBS, LOCATIONS, COUNTRIES, DAN

    JOB_HISTORY.Tabel - tabel tersebut telah ada pada oracle, kita

    hanya perlu mengaktifkannya untuk dapat menggunakannya.

    Caranya adalah sebagai berikut :

    a. Masuk ke i-SQL*Plus, kemudian logindengan user system.b. Masuk ke Administration

    c. Pilih Database UsersGambar 2.3.11Home Oracle

    Gambar 2.3.12AdministrationOracle

  • 5/24/2018 8 Bab 2 - Landasan Teori

    48/50

    51

    d. Ketikkan hr pada form search, kemudian klik Go. Setelahmuncul user HR, klik pada user HR tersebut.

    e. Setelah itu, akan muncul tampilan seperti di bawah ini.Ketikkan password baru pada form yang tersedia. Kemudian

    pilih unlockedpadaAccount Status. Kemudian klikAlter User.

    Gambar 2.3.13Database Login

    Gambar 2.3.14Manage Database Users

  • 5/24/2018 8 Bab 2 - Landasan Teori

    49/50

    52

    f. Kemudian logout, dan login kembali dengan user HR.Masukkan username HR dan password sesuai dengan

    passwordyang diisikan pada saat mengaktifkan user HR.

    g. Masuk ke SQL kemudianSQL Commands, maka akan tampilworkspacesebagai berikut :

    Gambar 2.3.14 User HR

    Gambar 2.3.15 SQL Commands

  • 5/24/2018 8 Bab 2 - Landasan Teori

    50/50

    53

    h. Ketikkan query pada area yang tersedia, kemudian klikrununtuk mengeksekusi query tersebut. Hasil dari queryakan

    ditampilkan di bawah textarea.

    Gambar 2.3.16 SQL Commands