BAB 2 LANDASAN TEORI. adanya sebuah data maka sebuah database tidak akan dibutuhkan, arti dari data sendiri

Ukuran: px
Mulai penontonan dengan halaman:

Download "BAB 2 LANDASAN TEORI. adanya sebuah data maka sebuah database tidak akan dibutuhkan, arti dari data sendiri"

Transkripsi

1 BAB 2 LANDASAN TEORI 2.1 Database Sebuah database sangat erat hubungannya dengan sebuah data, dimana tanpa adanya sebuah data maka sebuah database tidak akan dibutuhkan, arti dari data sendiri menurut Hoffer, Prescott, & Topi (2009, p46) adalah perwakilan penyimpanan dari objek dan kejadian yang memiliki pengertian dan kepentingan dalam lingkungan pengguna, Connolly & Begg(2010, p14) juga mengatakan bahwa data adalah sebuah jembatan antara komponen mesin dan komponen manusia, dijelaskan juga oleh Deliana, Cahya, & Kaisariza(2009, p1) bahwa data adalah kumpulan fakta yang dikumpulkan sebagai hasil pengalaman, observasi, atau percobaan dengan sistem komputer. Dari ketiga definisi diatas maka dapat disimpulkan bahwa data adalah sekumpulan fakta yang terjadi dan memiliki arti bagi pengguna yang dicatat dan disimpan di dalam suatu record. Didasari oleh definisi mengenai data yang telah dijabarkan diatas, data memiliki kegunaan yang penting bagi para pengguna dari data itu sendiri, dimana data merupakan fakta-fakta yang terjadi dan dibutuhkan oleh seorang pengguna atau suatu institusi atau organisasi yang akan diolah menjadi informasi dimana informasi yang terolah merupakan informasi yang dibutuhkan oleh para penggunanya. Dengan data yang fiktif atau tidak benar maka informasi yang dihasilkan akan menyesatkan pengguna informasi tersebut. Gambar 2.1 menunjukan contoh dari data client : Gambar 2. 1 Contoh data Client (Sumber : Connolly & Begg(2010,p11)) 6

2 7 dimana data pada tabel Client yang ada pada gambar 2.1 berupa CR76, CR74, dan sebagainya dan data-data tersebut menunjukan atau memberikan informasi bahwa clientno CR76 memiliki nama depan John dan nama belakang Kay beralamat di 56 High St.London SW1 4EH dan no telponnya Untuk penyimpanan data dan pengolahannya maka dibutuhkan sebuah database untuk menampung atau menyimpan data. Menurut Connolly & Begg (2010,p54) Database merupakan sekumpulan data yang saling berelasi, selain itu Connolly & Begg (2010, p54) juga menjelaskan dengan lebih rinci bahwa Database merupakan sekumpulan data yang berelasi secara logika dan deskripsinya, yang di-desain untuk memenuhi kebutuhan informasi dari sebuah organisasi. Kemudian dari kedua definisi mengenai database diatas dapat disimpulkan bahwa database adalah sekumpulan data yang saling berhubungan dimana data tersebut digunakan oleh sebuah organisasi atau perusahaan dalam melaksanakan proses bisnisnya. Sebuah database memiliki beberapa komponen yakni : 1. Entitas : merupakan sebuah objek yang direpresentasikan pada database 2. Atribut : merupakan karakteristik yang mendeskripsikan objek 3. Hubungan : merupakan hubungan antar entitas Untuk penjelasan lebih lanjut dan contoh dari entitas,atribut, dan hubungan dapat dilihat pada subbab mengenai Entity Relationship Diagram. Di dalam suatu database data disimpan ke dalam file-file yang diorganisasikan bedasarkan sebuah schema atau struktur tertentu yang disimpan pada perangkat keras khusus seperti yang tertera pada gambar 2.1 dibawah

3 8 Gambar 2. 2 Contoh Database (Sumber : Bedasarkan gambar diatas data yang disimpan dalam sebuah database dinamakan sebuag field, dan kumpulan dari field tersebut dinamakan record, dimana record-record yang ada akan akan disimpan pada sebuah file dan file-file tersebut akan disimpan dalam database. Hirarki data dapat dilihat pada gambar 2.3 : Gambar 2. 3 Hirarki Data (Sumber :

4 9 Dalam melakukan aktivitasnya untuk mendukung kebutuhan informasi perusahaan database memiliki dua jenis konsep dalam pemrosesan data. Kedua konsep dalam pemrosesan data yakni : 1. Online Transaction Processing(OLTP) Menurut Connolly & Begg(2010,p1199) OLTP merupakan sebuah sistem pemrosesan datayang dirancang secara khusus untuk menangani high transaction dengan transaksi yang merubah data operasional yang digunakan dalam operasi sehari-hari seperti sistem Point Of Sales(POS), pengecekan stok barang, pembuatan invoice. Connolly & Begg(2010,p1199) juga mengatakan pada umumnya Sistem OLTP digunakan untuk menangani transaksi yang dapat diprediksi, berulang-ulang, dan di-update secara instensif(sering dilakukan). 2. Online Analytical Processing(OLAP) Menurut Connolly & Begg(2010,p1250) OLAP merupakan proses sintetik dinamik, analisa, dan consolidasi dari multi-dimensi data dalam jumlah besar. Dalam penerapannya OLAP memungkinkan seorang pengguna untuk melihat data organisasi dalam bentuk yang dibutuhkan oleh pengguna tersebut, sebagai contoh OLAP digunakan oleh suatu perusahan untuk menampilkan data perbandingan antara penjualan properti antar kota dalam bentuk tabel perbandingan seperti yang ditunjukan pada gambar 2.4

5 10 Gambar 2. 4 Tabel tiga kolom, dan (b) matriks dua dimensi (Sumber:Connolly & Begg(2010, p1254) Seperti yang dapat dilihat pada gambar 2.4 data yang ditampilkan oleh OLAP dapat berbentuk tabel tiga kolom(a) atau matriks dua dimensi(b) sesuai dengan kebutuhan perusahaan dalam melihat data. 2.2 The Database Management System (DBMS) Menurut Connolly & Begg (2010,p66) DBMS merupakan sebuah perangkat lunak yang berinteraksi antara program aplikasi pengguna dengan database dan memungkinkan seorang pengguna untuk mendefinisikan, membuat, menjaga, dan mengatur data yang ada di dalam database. Seperti yang dikatakan oleh Connolly pada penjelasan DBMS diatas DBMS merupakan sebuah perangkat lunak yang digunakan sebagai perantara antara database dengan pengguna untuk mengatur data yang ada di dalam database. Dalam penggunaan DBMS, untuk mengakses data yang ada di dalam DBMS pengguna diharuskan menggunakan bahasa query, Bahasa query yang paling umum

6 11 adalah SQL lalu menurut Connolly & Begg(2010, p184) SQL dikatakan sebagai sebuah bahasa yang di desain untuk mengubah sebuah input menjadi output yang diinginkan, Sedangkan menurut Ashdown & Kyte (2011, p7-1), SQL merupakan bahasa pemograman tingkat tinggi dimana semua program dan user-nya mengakses Data di dalam database. Lalu dari kedua definisi mengenai SQL yang telah disebutkan dapat ditarik kesimpulan bahwa SQL merupakan sekumpulan perintah yang digunakan oleh user untuk memanipulasi data yang ada di dalam database, baik menambah, mengubah, ataupun menghapusnya. DBMS sendiri dalam penerapannya ke dalam proses bisnis sebuah organisasi/pengguna memiliki beberapa kelemahan dan kelebihan seperti yang dikatakan menurut Connolly&Begg(2010,p77) kelebihan dan kekurangan dari DBMS adalah : 1. Kelebihan Control of Data redundancy, dengan DBMS maka pengulangan/duplikasi data dapat dikendalikan. Pada umumnya pendekatan database akan mengeliminasi data yang berulang/duplikasi sehingga tidak akan ditemukan data yang sama persis, namun dengan digunakannya DBMS maka pengguna dapat mengatur duplikasi data yang terjadi pada database dengan proses denormalisasi. Sebagai contoh :

7 12 Gambar 2. 5 Denormalisasi Tabel Order ( alization/index.6.gif) Dengan dilakukannya proses denormalisasi seperti pada gambar diatas, dimana orderposition menjadi terduplikasi pada tabel Order maka kecepatan akses data akan meningkat. Data consistency, dengan pengendalian redudansi data seperti yang dijelaskan pada point diatas maka resiko terjadinya ketidak-konsisten-an data dapat dikurangi. Dengan penggunaan DBMS jika data diubah oleh pengguna maka perubahan data yang terjadi dapat dilihat dan dirasakan oleh semua pengguna yang sedang menggunakan data tersebut, DBMS juga mencegah pengguna lain untuk mengakes data yang sedang digunakan oleh pengguna yang lain. Sebagai contoh : Andi sedang mengakses data gaji pada database dan mengubah nilai gaji Andi dari RP ,- menjadi RP ,- maka Badrun sebagai pengguna lain tidak dapat mengubah gaji Andi pada saat yang bersamaan. Setelah Andi selesai mengubah nilai gaji-nya, maka nilai gaji andi yang dilihat badrun pun ikut berubah menjadi RP ,-

8 13 More information from the same amount of data, dengan terintegrasinya data yang ada di dalam database maka sebuah organisasi dapat mendapat informasi yang lebih banyak dari data yang sama. Sebagai contoh : Bagian Sales dari suatu perusahaan mempunyai data penjualan yang berisi kode_barang, Pemilik_barang dan bagian gudang memiliki data gudang yang berisi Kode_barang, Nama_barang. Dengan terintegrasinya data pada database maka bagian sales dapat mengakses data gudang untuk mendapatkan nama barang begitu pula dengan bagian gudang yang dapat mengakses data pemilik barang. Improved security and integrity, dengan pemakaian DBMS maka integritas data dan keamanan data dapat dijaga, dimana Integritas data dapat ditekankan pada kepastian dan konsistensi data yang pada umumnya integritas data diekspresikan sebagai Constraint. Sedangkan keamanan data mengacu pada proteksi data pada database terhadap pengguna yang tidak memiliki hak(unauthorized user). Tanpa adanya keaman yang kuat integritas data membuat data pada database menjadi mudah dilihat oleh siapa saja, oleh karena itu system keamanan yang ada pada DBMS memungkinakan keamanan data dapat dijamin. System keamanan pada DBMS bisa berupa username dan password. 2. Kekurangan Complexity, dikarenakan fungsinya yang beragam macam, maka DBMS merupakan sebuah perangkat lunak yang cukup rumit dan kompleks. Pemakai

9 14 yang menggunakan DBMS haruslah mengerti semua fungsi yang dapat dilakukan oleh DBMS karena penyalahgunaan yang terjadi dalam penggunaan DBMS dapat berakibat fatal bagi sebuah organisasi. Sebagai contoh seorang DBA yang ingin mengubah username dan password seorang pengguna, namun dikarenakan DBA tersebut tidak mengerti sepenuhnya tentang fitur yang ada pada DBMS yang digunakan, DBA tersebut secara tidak sengaja menghapus username dan password pengguna. Cost, biaya yang harus dikeluarkan dalam menjaga, dan penggunaan DBMS relative besar dan beraneka ragam tergantung dari kemampuan yang ditawarkannya. Sebagai contoh DBMS untuk 1 orang pengguna mungkin hanya seharga RP. 1 juta sedangkan DBMS untuk sebuah perusahaan besar dengan jumlah pengguna ratusan orang akan memakan biaya sebesar RP. 10 juta. Performance, dengan banyaknya aplikasi yang harus mengakses DBMS secara bersamaan maka performa database akan menurun karena resource yang ada pada database akan dibagi-bagi ke untuk mengangani setiap aplikasi yang mengakses database tersebut. Sebagai contoh seorang pengguna mengakses ke dalam database untuk penampilan data yang terhitung berlangsung selama 15 detik, namun dengan penggunaan DBMS dimana banyak pengguna dapat mengakses database yang sama dalam waktu yang relatif bersamaan maka waktu yang terhitung untuk penampilan data dari database akan memakan waktu sebesar 60 detik.

10 15 Higher impact of a failure, proses centralisasi yang terfokus pada sebuah DBMS akan meningkatkan resiko yang terjadi apabila terjadi sebuah kerusakan pada salah satu komponen DBMS. Sebagai contoh apabila salah satu komponen DBMS rusak atau mengalami gangguan maka semua operasi yang terjadi akan mengalami hambatan. Sebagai contoh jika salah satu data pada database hilang atau corrupt maka semua data yang terhubung dengan data tersebut menjadi tidak dapat diakses dikarenakan Constraint yang ada pada data tersebut dan mengakibatkan semua operasi bisnis tidak dapat beroperasi sebagaimana mestinya. Dalam penggunaannya DBMS juga menyediakan tiga fasilitas kepada pengguna DBMS, fasilitas yang diberikan DBMS kepada pengguna adalah DDL, DML, Acces-Control yang akan dibahas lebih lanjut pada subbab mengenai DDL, subbab mengenai DMLdan subbab mengenai Access-Control. Seperti yang telah dibahas diatas DBMS merupakan software yang dibutuhkan dalam mengatur atau me-manage data yang ada di dalam database, maka dari itu software DBMS yang beredarpun beraneka ragam yakni MS Access, Oracle, SQL Server,dan masih banyak lagi. Oracle yang merupakan salah satu jenis DBMS akan dibahas lebih lebih lanjut pada point Oracle Oracle database merupakan sebuah DBMS yang mendukung SQL, PL/SQL, dan Java dan digunakan untuk menyimpan serta mengambil informasi secara terintegrasi dan komprehensif dalam jumlah yang besar. Seperti yang dikatakan oleh Sthrom

11 16 (2011, p1-1), Oracle database merupakan kumpulan dari data yang dianggap sebagai sebuah unit dimana Oracle database dibentuk untuk dapat menangani berbagai tingkat komplektivitas, mulai dari hirarki yang simpel hingga jaringan yang kompleks dengan hubungan multilevel dan menyediakan operating platform yang kokoh dalam mengimplementasikan fitur object-oriented seperti user-defined types, inheritance, dan polymorphism. Oracle database juga telah melakukan ekstensi terhadap relational model menjadi object-relational model, yang membuatnya cocok untuk menyimpan permodelan bisnis yang kompleks pada relational database. Disamping itu Oracle database merupakan database pertama yang didesain untuk enterprise grid computing yang menyediakan cara untuk mengelola informasi dan aplikasi secara fleksibel dan cost-effective dimana Enterprise grid computing membuat large pool untuk standar industri, ruang penyimpanan modular dan server. Oleh karena itu dengan adanya arsitektur ini, setiap sistem baru dapat secara cepat disediakan dari kumpulan komponen maka tidak dibutuhkan workload yang tinggi, dikarenakan kapasitas yang ada dapat ditambahkan atau dialokasikan dari resource pool sesuai yang diinginkan. Fitur-fitur yang dimiliki oleh Oracle hingga versi terbarunya saat ini yaitu Oracle 11g adalah sebagai berikut : Adanya data integrity yang memastikan bahwa adanya konsistensi, keakuratan dan kebenaran dari data yang disimpan sehingga user mendapat jaminan bahwa data diterima olehnya merupakan data yang benar-benar berasal dari sumber yang valid. Contohnya jika sudah terdapat user yang memiliki kode karyawan 123 maka tidak boleh terdapat user lain yang memiliki kode yang sama.

12 17 Adanya data concurrency yang menunjukan bahwa data yang ditunjukkan baik data yang berasal dari sumber asal dan duplikasinya memiliki hasil yang sama. Memiliki fasilitas self-managing database sehingga proses administratif dapat diotomatisasi dan mempermudah tugas dari DBA dikarenakan adanya performance diagnostics, dan space and memory management. Dengan fitur ini maka Oracle juga secara otomatis akan mengirim alert jika ditemukan adanya masalah pada database. Menyediakan fasilitas Online backup dan crash recovery apabila database mengalami error. Dapat melakukan adaptasi secara otomatis terhadap berbagai kondisi workload dari database server. Menyediakan teknologi high-performance bagi data warehousing, OLAP, dan data mining. Dapat dengan mudah mengelola keseluruhan siklus hidup dari informasi dalam jumlah besar. Memiliki tingkat keamanan data yang tinggi serta terdapat penyesuaian untuk keamanan unique row, auditing, enksripsi data secara transparan, dan pemanggilan secara penuh terhadap data. Melindungi data dari server failure, human error, dan mengurangi waktu downtime yang dibutuhkan. Memiliki Enterprise Manager agar pengelolaan database dapat dilakukan dengan mudah.

13 18 Disamping kelebihan yang diberikan oleh oracle, oracle sendiri memiliki beberapa kekurangan, kekurangan yang dimilliki oleh Oracle diantaranya sebagai berikut : Membutuhkan biaya yang cukup tinggi untuk diimplementasikan terlebih lagi jika user tidak memperhitungkan downtime cost. Kompleksitas yang tinggi menyebabkan membutuhkan waktu pembelajaran yang cukup lama bagi user yang ingin mendalami Oracle database secara menyeluruh. Sebagai sebuah DBMS dengan kompleksitas yang tinggi oracle database memiliki arsitektur tersendiri dimana pada arsitektur tersebut oracle dipecah menjadi dua macam struktur yakni struktur database storage dan struktur database instance dimana akan dijelaskan lebih lanjut pada subbab poin 1 1. Struktur Database Storage Gambar 2. 6 Struktur Oracle Database Storage (Sumber : Oracle Database Concepts 11g Release 2)

14 19 Menurut Ashdown dan Kyte (2011, p1-8), struktur database storage pada Oracle database dibagi menjadi dua yaitu struktur logical dan physical seperti yang tertera pada Ilustrasi struktur database storage pada gambar 2.6 untuk penjelasan lebih lanjut mengenai struktur database Oracle berikut merupakan penjelasan dari struktur physical dan logical yang dimiliki oleh Oracle database : a. Struktur Logical Database Struktur logical database pada Oracle terdiri dari tablespace, data block, extents, dan segment. Dimana dengan adanya struktur ini maka Oracle memiliki fasilitas pengaturan dari disk space yang baik. Untuk penjelasan lebih lanjut mengenai struktur logical dari oracle berikut merupakan komponen-komponen yang terdapat pada struktur logical oracle database : Tablespace Tablespace merupakan suatu logical storage unit yang terdapat di dalam Oracle database. Tablespace dikatakan logical karena tablespace tersebut tidak terlihat di file system tempat database tersebut berada. Lalu Setiap tablespace memiliki paling sedikit satu datafile dimana datafile ini secara fisik terletak di file system server dimana setiap datafile hanya dimiliki oleh satu tablespace. Begitu pula setiap table dan index yang tersimpan di Oracle Database, setiap tabel dan index tersebut dimiliki oleh sebuah tablespace dimana tablespace membangun suatu jembatan penghubung antara Oracle Database dengan filesystem dimana index atau tabel disimpan.

15 20 Data Block Oracle menyimpan data pada Data Blocks (dapat juga disebut Logical Blocks, Oracle Blocks, atau Pages). dimana satu data blocks akan berhubungan dengan sejumlah spesifik byte dari ruang database fisik di dalam disk. Extent Extent merupakan jumlah spesifik dari data block yang berkesinambungan dimana data tersebut dialokasikan untuk menyimpan tipe tertentu dari suatu informasi. Segment Segment merupakan kumpulan dari extent, dimana masing-masing dialokasikan untuk struktur data tertentu dan semuanya disimpan pada tablespace yang sama. b. Struktur Physical Database Struktur fisikal dari ORACLE database terdiri dari datafiles, control files, redo log files, archive log files, alert and trace log files, backup files, parameter files. Untuk pemahaman lebih lanjut mengenai struktur fisik dari database oracle, berikut merupakan penjelasan singkat terhadap struktur fisik database : Datafiles Datafile merupakan file yang terasosiasi dengan tablespace, dimana datafile hanya bisa dimiliki oleh sebuah tablespace. Dalam pembuatan datafile Oracle biasanya membuat datafile untuk tablespace dengan mengalokasikan jumlah tertentu dari disk space ditambah overhead yang dibutuhkan untuk file header.

16 21 Pada saat suatu datafile dibentuk, OS yang menjalankan Oracle bertanggung jawab untuk membersihkan informasi-informasi lama dan authorisasi dari suatu file sebelum dialokasikan ke Oracle dimana Semakin besar ukuran dari suatu file, maka semakin lama proses authorisasi yang dibutuhkan. Pada umumnya Datafile berisi object-object dari suatu schema. Control Files Control files mengandung data data mengenai struktur fisik dari database seperti nama database, nama serta lokasi dari datafile dan redo log file, juga timestamp dari pembuatan database dimana File-file ini sangat penting bagi database, Jika tidak ada control file, maka user tidak dapat membuka data file untuk mengakses data data yang terdapat di dalam database. Red Log Files Online Redo Log File bertujuan untuk instance recovery suatu database yang apabila database mengalami crash dan tidak kehilangan data files, maka instance dapat melakukan prosedur recovery terhadap database dengan informasi yang terkandung di dalamnya. Archive Log Files Archive log file merupakan catatan historis yang mengandung perubahan data yang telah terjadi yang dikeluarkan oleh instance, dengan file ini dan backup dari database, user dapat melakukan proses recovery data-data file yang hilang. Archive log juga memungkinkan adanya recovery dari data files yang telah di restore.

17 22 Parameter Files Parameter file digunakan untuk menentukan bagaimana suatu instance dikonfigurasi ketika mulai berjalan. Dimana Pada parameter file terdapat daftar dari sekumpulan configuration parameter bagi instance dan database. Alert dan Trace Log Files Alert Log File dianggap sebagai special trace file, dimana Alert log files merupakan catatan mengenai pesan dan error yang diatur secara kronologis. Trace log files merupakan file yang berasal dari write server dan background process. dimana ketika internal error ditemukan oleh sebuah proses, maka proses tersebut akan mencatat error tersebut ke trace file. Backup Files Backup File digunakan untuk melakukan pemulihan terhadap database jika database mengalami kegagalan yang dapat disebabkan oleh media failure atau human error yang menyebabkan original file terhapus. 2. Struktur Oracle Database Instance Menurut Ashdown dan Kyte (2011,p1-9), Oracle database memiliki memory structure dan process yang digunakan untuk mengelola dan mengakses database. sehubungan dengan pernyataan diatas ketika aplikasi terhubung ke Oracle database, maka aplikasi tersebut akan terhubung dengan database instance yang merupakan sebuah kumpulan memori yang berfungsi untuk mengelola file database. lalu Instance akan melayani aplikasi tersebut dengan mengalokasikan area pada memory untuk membentuk memory structures dan proses-proses lainnya. Untuk penjelasan lebih lanjut

18 23 mengenai cara kerja oracle database yang terdapat pada gambar 2.6, dibawah ini merupakan komponen komponen yang terdapat dalam Oracle Instance Structures : a. Oracle Database Processes Gambar 2. 7 Struktur Oracle Database Processes (Sumber : Oracle Database 10g : Administration Workshop I) Menurut Ashdown dan Kyte (2011, p1-10), Setiap instance yang terdapat di dalam Oracle database memiliki tiga tipe proses seperti yang terlihat pada gambar 2.7, tiga proses tersebut adalah : Client Processes Client processes merupakan proses yang dibentuk dan dikelola untuk menjalankan kode aplikasi atau Oracle tool. dimana Sebagian besar environment memiliki komputer yang terpisah bagi client processes. Background Processes Background processes merupakan proses yang berfungsi untuk menggabungkan fungsi-fungsi yang digunakan oleh Oracle database program yang berjalan untuk setiap client process.

19 24 Server Processes Server processes merupakan proses yang melakukan komunikasi dengan client processes dan berinteraksi dengan Oracle database untuk memenuhi request yang diterima dari user. b. Instance Memory Structures Gambar 2. 8 Oracle Memory Structure (Sumber : Oracle Database 10g : Administration Workshop I) Menurut Ashdown dan Kyte (2009,p1-10), Oracle database membuat dan menggunakan memory structures (struktur dapat dilihat pada gambar 2.8) untuk kebutuhan menampung data yang disebar diantara para user serta terdapat private data areas untuk setiap user yang terhubung. Menurut (Rani, Singh, & Sharma, 2011) Komponen-komponen yang terdapat dalam instance memory structures yaitu :

20 25 SGA (System Global Area) SGA merupakan struktur memori yang dibentuk pada saat instance diinisialisasikan pertama kali, dimana Komponen komponen yang terdapat pada SGA adalah sebagai berikut : Database Buffer Cache Database buffer cache digunakan untuk menampung data ke dalam memori. Setiap kali user mengakses data, data tersebut akan ditampung ke dalam buffer cache dan akan dikelola dengan menggunakan algoritma LRU. Penjelasan lebih lanjut mengenai buffer cache dapat dilihat pada subbab 2.4 Redo Log Buffer Berupa cache redo (digunakan untuk instance recovery) yang digunakan untuk menulis ke redo log files fisik ke dalam disk. Shared Pool Shared pool merupakan wadah yang berisi cache dari beragam construct yang dapat digunakan secara bersama oleh banyak user. Large Pool Large pool merupakan area optional yang menyediakan alokasi memori dalam jumlah yang besar untuk beberapa proses besar, seperti Oracle backup dan operasi recovery, dan proses server I/O. Java Pool Digunakan untuk seluruh sesi spesifik Java code dan data didalam JVM.

21 26 Streams Pool Streams pool digunakan untuk menyimpan pesan yang berada pada buffered queue dan menyediakan memori untuk pencatatan proses oracle streams. PGA (Program Global Area) PGA merupakan area pada memori dengan fungsi mengatur informasi bagi server process yang akan dibentuk pada saat sebuah server process mulai dijalankan. Dikarenakan setiap server process memiliki PGA tersendiri yang dibentuk ketika proses server mulai berjalan maka akses read beserta write terhadap PGA bersifat eksklusif yaitu hanya kepada server process tersebut. Komponen komponen yang terdapat pada PGA adalah sebagai berikut : Private SQL Area Private SQL area berfungsi untuk menampung informasi mengenai SQL statement yang telah diurai dan informasi lainnya yang berhubungan dengan session untuk melakukan pemrosesan. Ketika server process mengeksekusi sintaks SQL atau PL/SQL, maka private SQL area akan digunakan untuk menampung nilai bind variable. Session Memory Session memory merupakan yang dialokasikan untuk menampung session variables (misalnya informasi logon) dan informasi lainnya yang terkait dengan session tersebut. Jika terdapat di dalam shared server, maka session memory tidak bersifat private melainkan bersifat shared.

22 27 SQL Work Area SQL work area merupakan tempat dimana sekumpulan alokasi khusus dari memori PGA digunakan untuk operasi yang bersifat memory-intensive yaitu operasi yang menggunakan memori dalam jumlah besar seperti penggunaan sort-based operator, bitmap merge, dan bitmap create. Ukuran dari SQL work area dapat diatur sesuai dengan kebutuhan pada umumnya semakin besar ukuran dari work area maka peforma dari operator tertentu akan meningkat namun dengan konsekuensi penggunaan memori yang juga semakin besar DDL Statement DDL statement merupakan sebuah statement yang berfungsi untuk meng-definisikan, mengubah struktur, dan menghapus objek dari dalam database. Statement DDL mengijinkan pengguna untuk : Membuat, mengubah, dan men-drop objects dan struktur database lainnya, termasuk database itu sendiri dan pengguna database. Statement ini dimulai dengan keyword CREATE, ALTER, or DROP. Membuang semua Data di dalam object schema tanpa menghilangkan struktur dari object tersebut. Statement ini dijalankan dengan keyword TRUNCATE. Melakukan proses GRANT dan REVOKE hak aksses dan peran. Statement ini dijalankan dengan keyword GRANT, REVOKE. Berikut adalah penjelasan lebih lanjut tentang Statement DDL dan contoh pemakaian serta hasil yang di-munculkan :

23 28 1. Create Syntax Create digunakan apabila pengguna ingin membuat sebuah tabel, schema, view, ataupun index di dalam database. berikut adalah contoh pemakaian syntax Create: a. Create Schema Create Schema digunakan saat user ingin membuat sebuah schema, format syntax yang digunakan adalah sebagai berikut : CREATE SCHEMA schema name AUTHORIZATION Authorize personel; Dimana Schema name adalah nama dari schema yang ingin dibuat, dan AUTHORIZATIOn merupakan nama dari pembuat schema tersebut, sebagai contoh pemakaian syntax CREATE CHEMA berikut adalah syntax yang digunakan untuk membuat schema haha dengan nama pembuat schema hihi CREATE SCHEMA haha AUTHORIZATION hihi; b. Create Table Untuk membuat suatu tabel di dalam database maka pengguna dapat menggunakan syntax Create table dengan format syntax sebagai berikut : CREATE TABLE table_name ( column_name1 data_type(length), [NOT NULL] [DEFAULT default option][unique], column_name2 data_type(length), [NOT NULL] [DEFAULT],, column_name n data_type(length), [NOT NULL] [DEFAULT], CONSTRAINT Constraint Name {Condition} Primary Key (column_name), FOREIGN KEY (Column_name) REFERENCES (table_name) ON DELETE [CASCADE NO ACTION] ON UPDATE [CASCADE NO ACTION] )

24 29 Dimana table_name merupakan nama table yang ingin dibuat, column_name1-2-n merupakan nama-nama kolom yang ingin dibuat, Data_Type merupakan jenis Data yang akan dimasukan pada tiap kolom yang ada, Length merupakan panjang dari tipe data yang diperbolehkan. [NOT NULL] [DEFAULT] [UNIQUE] merupakan alternative penambahan keterangan dari kolom yang dibuat, apabila NOT NULL digunakan maka pada kolom tersebut haruslah memiliki data, opsi DEFAULT akan memberikan Default option sebagai data Default apabila pada opsi insert pengguna tidak memasukan nilai pada kolom, opsi [UNIQUE] berguna untuk menentukan apakah data pada kolom tersebut unik atau tidak, CONSTRAINT bisa digunakan sebagai Constraint pada kolom ataupun Constraint pada tabel, apabila digunakan pada kolom maka Constraint tersebut hanya berpengaruh pada kolom yang digunakan, apabila pada tabel maka Constraint tersebut akan berpengaruh pada semua tabel. PRIMARY KEY digunakan untuk menentukan primary key pada tabel tersebut, sedankan FOREIGN KEY akan menentukan foreign key di tabel tersebut pada opsi ON DELETE dan ON UPDATE foreign key opsi CASCADE dan NO ACTION merupakan aksi yang dilakukan, CASCADE berarti saat tabel tersebut dihapus maka semua data yang terintegrasi dengan tabel tersebut akan ikut hilang sedangkan pada opsi NO ACTION apabila tabel tersebut dihapus maka semua data yang terintegrasi dengan tabel tersebut akan tetap seperti apa adanya. Berikut adalah contoh pemakaian syntax create table

25 30 CREATE TABLE Persons ( P_Id int NOT NULL, LastName varchar(255) NOT NULL, FirstName varchar(255), Address varchar(255), City varchar(255), CONSTRAINT pk_personid PRIMARY KEY (P_Id) ) Pada contoh diatas Constraint yang dipakai berupa Constraint table, dan hasilnya akan menjadi sebagai berikut : c. Create Index Gambar 2. 9 Tabel Persons Penjelasan lebih lanjut mengenai index akan dibahas pada subbab 2.3. berikut merupakan format dari syntax create index : CREATE INDEX Index_name ON table_name (column_name) Dimana indexname adalah nama index yang ingin dibuat, table_name adalah nama tabel tempat index akan dibuat dan Column_name adalah kolom yang diberikan index. Sebagai contoh syntax dibawah ini akan membuat index001 pada tabel mahasiswa di kolom nama CREATE INDEX idx001 ON Mahasiswa (Nama)

26 31 d. Create View Create View digunakan saat user ingin membuat sebuah View, format syntax yang digunakan adalah sebagai berikut : CREATE VIEW view_name [New_Column_name 1, New_Column_name 2,., New_Column_name n] AS subselect; Dimana View_name adalah nama dari View yang ingin dibuat, New_Column_Name adalah nama kolom yang ingin dibuat, subselect adalah syntax select yang digunakan untuk memasukan data ke dalam view. Sebagai contoh pemakaian syntax CREATE VIEW berikut adalah syntax yang digunakan untuk membuat view haha dengan sumber data tabel persons CREATE VIEW haha AS SELECT * FROM persons; 2. Alter Syntax ALTER digunakan untuk mengubah struktur tabel yang ada setelah tabel tersebut dibuat, untuk mengubah sebuah tabel ada 6 tipe dari ALTER TABLE yang dapat digunakan yaitu : Menambah kolom Menghapus kolom Manambah Constraint Menghapus Constraint Menambah DEFAULT pada kolom Menghapus DEFAULT pada kolom

27 32 Bentuk syntax umum dari Alter adalah sebagai berikut ALTER TABLE table_name {[ADD [COLUMN] column_name datatype(length) [NOT NULL][UNIQUE][DEFAULT default_option]] [DROP [COLUMN] column_name [RESTRICT CASCADE]] [ADD CONSTRAINT constraint_name Constraint Definition] [DROP CONSTRAINT constraint_name [RESTRICT CASCADE]] [ALTER [COLUMN] SET DEFAULT defaultoption] [ALTER [COLUMN] DROP DEFAULT] } Dibawah ini akan dijelaskan lebih lanjut mengenai syntax ALTER TABLE dan contohnya : a. Menambah kolom pada table Format : ALTER TABLE table_name ADD column_name datatype(length); Dimana table_name adalah nama table yang ingin diubah, column_name adalah nama kolom yang ingin ditambahkan, dan datatype adalah jenis Data dari kolom yang baru dan length adalah panjang dari tipe data pada kolom. Contoh Pemakaian syntax ALTER TABLE untuk menambahkan kolom DateofBirth pada tabel persons adalah sebagai berikut : ALTER TABLE Persons ADD DateOfBirth date; Maka Hasil yang akan diperoleh dengan penambahan kolom DateofBirth adalah seperti gambar berikut :

28 33 Gambar Tabel Persons Beserta Datanya-Altered b. Menghapus kolom pada table Untuk menghapus kolom dari sebuah tabel maka format dari Syntax ALTER TABLE yang digunakan adalah sebagai berikut: ALTER TABLE table_name DROP COLUMN column_name; Dimana table_name adalah nama table yang ingin diubah, column_name adalah nama kolom yang ingin dihapus. Sebagai contoh, untuk menghapus kolom DateofBirth dari tabel persons seperti yang ditampilkan pada gambar 2.10 diatas adalah sebagai berikut ALTER TABLE Persons DROP COLUMN DateOfBirth; dibawah ini : Maka hasil dari penghapusan kolom DateofBirth dapat dilihat pada gambar 2.11 Gambar Tabel Persons Beserta Datanya-Altered 2 c. Menambah Constraint pada table Untuk menambahkan sebuah Constraint pada kolom P_id maka format syntax ALTER TABLE yang dapat digunakan adalah

29 34 ALTER TABLE table_name ADD CONSTRAINT constraint_name; Dimana table_name adalah nama tabel yang ingin ditambahkan Constraint, dan Constraint_name adalah nama Constraint yang ingin ditambahkan, berikut adalah contoh penambahan Constraint pk_personid pada tabel Persons : ALTER TABLE Persons ADD CONSTRAINT pk_personid ; d. Menghapus Constraint pada table Untuk menghapus sebuah Constraint pada kolom P_id maka format syntax ALTER TABLE yang dapat digunakan adalah ALTER TABLE table_name DROP CONSTRAINT constraint_name; Dimana table_name adalah nama tabel yang ingin dihapus Constraint-nya, dan Constraint_name adalah nama Constraint yang ingin dihapus, berikut adalah contoh penghapusan Constraint pk_personid pada tabel Persons ALTER TABLE Persons DROPCONSTRAINT pk_personid ; e. Menambah Default pada kolom table Untuk menambahkan default pada kolom dalam sebuah tabel maka format syntax yang dapat digunakan adalah sebagai berikut: ALTER TABLE table_name ALTER column_name SET DEFAULT default_option;

30 35 Dimana table_name adalah nama table yang ingin diubah, column_name adalah nama kolom yang ingin ditambahkan Default, dan Default_option adalah opsi Default yang ingin ditambahkan. Contoh Pemakaian syntax Alter Table untuk men-set Default pada kolom Address pada tabel persons adalah sebagai berikut : ALTER TABLE Persons ALTER Address SET DEFAULT Homeless ; f. Menghapus Default pada kolom table Untuk menghapus Default dari kolom sebuah tabel maka format dari Syntax ALTER TABLE yang digunakan adalah sebagai berikut: ALTER TABLE table_name ALTER column_name DROP DEFAULT; Dimana table_name adalah nama table yang ingin diubah dancolumn_name adalah nama kolom yang ingin dihapus Default-nya. Contoh Pemakaian syntax ALTER TABLE untuk menghapus Default kolom Address pada tabel persons adalah sebagai berikut : ALTER TABLE Persons ALTER Address DROP DEFAULT; 3. Drop Syntax drop digunakan oleh user untuk menghapus object yang ada di dalam database seperti table, schema, index, constraint, view, syntax drop ini dapat digunakan dengan format sebagai berikut

31 36 DROP [TABLE,VIEW, CONSTRAINT, SCHEMA, INDEX] ObjectName RESTRICT CASCADE [WHERE condition] a. Drop Schema Drop Schema digunakan saat user ingin menghapus sebuah schema, format syntax yang digunakan adalah sebagai berikut : DROP SCHEMA schema name [RESTRICT CASCADE]; Dimana Schema name adalah nama dari schema yang ingin dihapus, dan RESTRICT CASCADE merupakan jenis pen-delete-an dimana jika RESTRICT dipilih maka SCHEMA yang mau dihapus haruslah kosong apabila tidak kosong maka proses penghapusan akan gagal, sedangkan pada CASCADE operasi penghapusan akan dijalankan walaupun SCHEMA masih memiliki isi(tidak kosong) jika pengguna tidak menetapkan RESTRICT atau CASCADE maka Default dari DROP SCHEMA adalah RESTRICT. Sebagai contoh pemakaian syntax DROP SCHEMA berikut adalah syntax yang digunakan untuk menghapus schema haha dengan asumsi bahwa pada SCHEMA haha sudah kosong DROP SCHEMA haha; b. DropTable Drop Table digunakan saat user ingin menghapus sebuah Table, format syntax yang digunakan adalah sebagai berikut : DROP TABLE table_name [RESTRICT CASCADE]

32 37 Dimana Table_name adalah nama dari tabel yang ingin dihapus, dan RESTRICT CASCADE merupakan jenis pen-delete-an dimana jika RESTRICT dipilih maka TABLE yang mau dihapus tidak boleh memiliki objek apapun yang bergantung pada tabel yang ingin digapus, sedangkan pada CASCADE operasi penghapusan akan dijalankan dan menghapustable dan objek lain yang bergantung pada tabel tersebut. Jika pengguna tidak menetapkan RESTRICT atau CASCADE maka Default dari DROP TABLE adalah RESTRICT. Sebagai contoh pemakaian syntax DROP TABLE berikut adalah syntax yang digunakan untuk menghapus tabel haha dengan asumsi bahwa pada tabel tidak ada objek yang bergantung pada tabel haha DROP TABLE haha; c. Drop View Drop View digunakan saat user ingin menghapus sebuah View, format syntax yang digunakan adalah sebagai berikut : DROP VIEW view_name [RESTRICT CASCADE] DimanaView_name adalah nama dari View yang ingin dihapus, dan RESTRICT CASCADE merupakan jenis pen-delete-an dimana jika RESTRICT dipilih maka view yang mau dihapus tidak boleh memiliki objek apapun yang bergantung pada view yang ingin digapus, sedangkan pada CASCADE operasi penghapusan akan dijalankan dan menghapus VIEW dan objek lain yang bergantung pada tabel tersebut. Jika pengguna tidak menetapkan RESTRICT atau CASCADE maka Default dari DROP VIEW adalah RESTRICT. Sebagai contoh pemakaian

33 38 syntax DROP VIEW berikut adalah syntax yang digunakan untuk menghapus view haha dengan asumsi bahwa pada view tidak ada objek yang bergantung pada view haha : d. Drop Index Syntax ini digunakan untuk menghapus index yang ada, penjelasan lebih lanjut mengenai index akan dibahas pada subbab2.3. berikut merupakan format dari syntax Drop index : DROP INDEX Index_name ON table_name (column_name) DROP VIEW haha; Dimana indexname adalah nama index yang ingin dibuat, sebagai contoh syntax dibawah ini akan menghapus index001 : DROP INDEX idx001; 4. Grant Syntax grant ini dipakai untuk memberikan akses atau hak khusus atas objek dari database ke pada user tertentu, pada umumnya syntax grant ini dipakai untuk memberikan user tertentu sebuah akses atas suatu objek milik user lainnya. format yang dipakai dalam pembuatan syntax grant adalah sebagai berikut : GRANT Privilege1, Privilege2,., Privilegen ALL PRIVILEGES ON object Name TO User Name PUBLIC [WITH GRANT OPTION];

34 39 Dimana Privilege yang dimaksud adalah hak khusus yang ingin diberikan kepada user seperti SELECT Fungsi dari privilege select akan memberikan user tertentu hak akses untuk mengambil/ menampilkan data dari tabel tertentu, sebagai contoh user Andi sebagai pemilik tabel persons, memberikan hak kepada user badrun untuk menampilkan (dengan perintah select) data atas tabel persons miliknya UPDATE Fungsi dari privilege update akan memberikan user tertentu hak akses untuk melakukan update data pada tabel tertentu, sebagai contoh user Andi sebagai pemilik tabel persons, memberikan hak kepada user badrun untuk mengubah data di tabel persons miliknya. INSERT [ColumnName1, ColumnName2,.,ColumnName n] Fungsi dari privilege insert akan memberikan user tertentu hak akses untuk melakukan insert data pada tabel tertentu, sebagai contoh user Andi sebagai pemilik tabel persons, memberikan hak kepada user badrun untuk menambahkan kolom dengan nama keluarga di tabel persons miliknya. DELETE [ColumnName1, ColumnName2,.,ColumnName n] Fungsi dari privilege delete akan memberikan user tertentu hak akses untuk melakukan penghapusan terhadap tabel tertentu, sebagai contoh user Andi sebagai pemilik tabel persons, memberikan hak kepada user badrun untuk menghapus kolom dengan nama DateOfBirth di tabel persons miliknya.

35 40 REFERENCE [ColumnName1, ColumnName2,.,ColumnName n] Fungsi dari privilege reference akan memberikan user tertentu hak akses untuk melakukan referensi atas suatu kolom tertentu, untuk penjelasan lebih lanjut mengenai reference silahkan lihat subbab poin 1 tentang create table pada bagian constraint. dan object name adalah nama table,view, objek lainnya dimana user mendapat hak khusus dan dapat menjalankan hak khususnya, user name adalah user id yang akan diberikan hak khusus apabila memakai PUBLIC maka semua user yang ada akan mendapat hak khusus yang sudah di deklarasikan atas objek tersebut, dan WITH GRANT OPTION berguna apabila user yang diberikan hak atas object tersebut diperbolehkan untuk memberikan hak kepada user lain, sebagai contoh dibawah ini seorang DBA akan memberikan hak SELECT atas table mahasiswa kepada User andi. GRANT SELECT ON mahasiswa TO andi WITH GRANT OPTION; Contoh diatas berarti DBA tersebut memberikan hak SELECT atas tabel mahasiswa kepada user andi dimana user andi dapat memberikan privileges tertentu kepada user lain. 5. Revoke Syntax revoke ini akan mencabut privileges dari user tertentu sesuai yang telah diberikan pada syntax GRANT. Bentuk pemakaian syntax revoke adalah sebagai berikut REVOKE [GRANT OPTION FOR] Privilege1, Privilege2,., Privilege n ALL PRIVILEGES, ON Object Name FROM Username PUBLIC [RESTRICT CASCADE];

36 41 Dimana Privilege yang dimaksud adalah hak khusus yang ingin diberikan kepada user seperti yang telah dijelaskan pada syntax grant diatas, GRANT OPTION FOR digunakan untuk mencabut hak yang telah diberikan WITH GRANT OPTION pada syntax grant diatas, object name adalah nama table,view, objek lainnya dimana user mendapat hak khusus dan dapat menjalankan hak khususnya, user name adalah user id yang akan diberikan hak khusus apabila memakai PUBLIC maka semua user yang ada akan mendapat hak khusus yang sudah di deklarasikan atas objek tersebut, dan CASCADE atau RESTRICT memili fungsi sama seperti pada syntax drop yang telah dijelaskan pada subbab poin 3. Gambar Ilustrasi Syntax REVOKE Dalam contoh dibawah ini DBA akan mencabut hak SELECT atas table mahasiswa dari user Andi. REVOKE SELECT ON mahasiswa FROM andi;

37 DML Statement DML Statement merupakan statement SQL yang digunakan untuk menambahkan, mengubah, menghapus, dan menampilkan data yang ada di dalam database. Untuk lebih jelasnya DML Statement mengijinkan pengguna untuk : Menampilkan Data dari satu atau lebih table. Hal ini dilakukan dengan Syntax SELECT. Menambahkan baris Data baru ke dalam table atau view. Hal ini dilakukan dengan Syntax INSERT. Mengubah nilai dari suatu Data pada table atau view. Hal ini dilakukan dengan Syntax UPDATE. Menghilangkan baris Data dari table atau view. Hal ini dilakukan dengan Syntax DELETE. Sebagai penjelasan lebih lanjut mengenai format DML Statement dan pemakaiannya, maka semua contoh yang digunakan akan merujuk pada gambar 2.13 yang menunjukan tabel persons dan order. Gambar Tabel Persons dan Orders

38 43 1. Select Syntax ini digunakan untuk menampilkan data dari 1 atau lebih tabel dari dalam database. untuk menampilkan data dari 1 tabel maka akan digunakan syntax select dengan format syntax seperti di bawah ini SELECT [DISTINCT] column_name1,column_name2,column_name n [AS newcolumnname] FROM table_name [alias] [WHERE Condition] [GROUP BY Condition] [ORDER BY Condition] Dimana dalam syntax select pengguna dapat memilih untuk menampilkan data dengan distinct(menampilkan data tanpa ada redudansi/duplikasi) sehingga data yang ditampilkan berupa unique, column name adalah nama-nama kolom yang ingin di tampilkan datanya. Lalu FROM merujuk kepada nama tabel sumber data yang ingin ditampilkan, table_name adalah nama sumber table yang ingn ditampilkan. Setelah pengguna menentukan data yang ingin ditampilkan dan tabel asal data, maka pengguna juga dapat mengatur data-data yang ditampilkan dengan syntax WHERE, GROUP BY, ORDER BY, dimana syntax WHERE berguna sebagai Filter terhadap data-data yang ingin ditampilkan, syntax GROUP BY digunakan apabila syntax select memiliki data agregat yang berupa hasil perhitungan, dan ORDER BY digunakan untuk mensortir data. Contoh penggunaan syntax select : Contoh dibawah User akan menampilkan seluruh data dari table persons SELECT * FROM Persons

39 44 Gambar Tabel Persons beserta datanya 2 Sedangkan untuk menampilkan data lebih dari satu tabel maka syntax join, atau Cartesian product dapat digunakan. Untuk penjelasan lebih lanjut mengenai syntax join dan Cartesian product akan dibahas pada poin a&b. a. Join Join merupakan query yang bertujuan untuk menggabungkan baris Data dari dua atau lebih table atau view. Dimana Join biasanya memiliki paling sedikit satu kondisi join yang terletak pada klausa WHERE dimana kondisi join tersebut akan membandingkan dua kolom dari table yang berbeda sebelum dilakukan penggabungan. Dalam penggunaannya syntax join memiliki dua jenis join yang dapat digunakan pengguna dalam melakukan penggabungan dua tabel atau lebih, jenis-jenis join yang dapat digunakan oleh pengguna adalah INNER JOIN, dan OUTER JOIN. Untuk contoh dan penjelasan lebih lanjut mengenai syntax Join semua contoh penggunaan syntax join yang akan dibahas lanjut pada seksi (i) dan (ii) dibawah ini akan didasari pada tabel persons dan order seperti yang tertera pada Gambar2.14 diatas i. INNER JOIN Inner Join merupakan salah satu jenis join dimana baris Data yang dikembalikan hanya baris yang memenuhi syarat pada kondisi join. Syntax INNER JOIN dapat digunakan dengan format sebagai berikut

40 45 SELECT column_name1,column_name2,column_name n FROM table_name1 INNER JOIN table_name2 ON table_name1.column_name=table_name2.column_name Dimana Column_name merupakan nama colom yang akan digabung, table_name adalah nama table yang akan digabungkan, table_name1.column_name = table_name2.column_name adalah syarat penggabungannya. Contoh Penggunaan syntax INNER JOIN yang akan menggabungkan tabel persons dan orders adalah sebagai berikut: SELECT Persons.LastName, Persons.FirstName, Orders.OrderNo FROM Persons INNER JOIN Orders ON Persons.P_Id=Orders.P_Id ORDER BY Persons.LastName Dan Hasil dari penggabungan syntax join tabel persons dan orders adalah : Gambar Hasil Join Tabel Persons dan Order 2 ii. OUTER JOIN Outer Join merupakan syntax join dimana Data yang ditampilkan merupakan data yang memenuhi syarat dan semua Data dari salah satu table, walaupun pada table lainnya tidak terdapat Data yang sama, untuk penjelasan lebih lanjut dibawah ini akan dibahas mengenai tiga jenis Syntax outer join yaitu :

41 46 LEFT JOIN LEFT JOIN merupakan outer join yang akan mengembalikan semua baris Data yang terdapat pada tabel pertama (tabel pertama akan dianggap menjadi sisi sebelah kiri ). Format dari Syntax LEFT JOIN dalam penggunaanya adalah sebagai berikut: SELECT column_name1,column_name2,column_name n FROM table_name1 LEFT JOIN table_name2 ON table_name1.column_name=table_name2.column_name Dimana Column_name merupakan nama-nama kolom yang akan digabung, table_name adalah nama table yang akan digabungkan, table_name1.column_name=table_name2.column_name adalah syarat penggabungannya. Sebagai contoh penggunaan LEFT JOIN yang akan menggabungkan tabel persons dan tabel orders maka bentuk syntax yang akan digunakan adalah sebagai berikut : SELECT Persons.LastName, Persons.FirstName, Orders.OrderNo FROM Persons LEFT JOIN Orders ON Persons.P_Id=Orders.P_Id ORDER BY Persons.LastName Dari penggunaan syntax left join diatas maka data yang dihasilkan adalah seperti pada gambar 2.16 dibawah ini.: Gambar Hasil Left Join Tabel Persons dan Order

42 47 RIGHT JOIN RIGHT JOIN merupakan outer join yang akan mengembalikan semua baris Data yang terdapat pada tabel kedua (tabel pertama akan dianggap menjadi sisi sebelah kanan ). Format dari Syntax LEFT JOIN dalam penggunaanya adalah sebagai berikut: SELECT column_name1,column_name2,column_name n FROM table_name1 RIGHT JOIN table_name2 ON table_name1.column_name=table_name2.column_name Dimana Column_name merupakan nama-nama kolom yang akan digabung, table_name adalah nama table yang akan digabungkan, table_name1.column_name = table_name2.column_name adalah syarat penggabungannya. Sebagai contoh penggunaan RIGHT JOIN yang akan menggabungkan tabel persons dan tabel orders maka bentuk syntax yang akan digunakan adalah sebagai berikut : SELECT Persons.LastName, Persons.FirstName, Orders.OrderNo FROM Persons RIGHT JOIN Orders ON Persons.P_Id=Orders.P_Id ORDER BY Persons.LastName Dari penggunaan syntax right join diatas maka data yang dihasilkan adalah seperti pada gambar 2.17 dibawah ini.: Gambar Hasil right Join Tabel Persons dan Order

43 48 FULL OUTER JOIN FULL OUTER JOIN merupakan outer join yang memadukan LEFT JOIN dengan RIGHT JOIN sehingga baris Data yang akan dikembalikan dapat berasal dari sisi sebelah kiri table maupun sebelah kanan table. Format dari Syntax Full Outer Join dalam penggunaanya adalah sebagai berikut: SELECT column_name1,column_name2,column_name n FROM table_name1 FULL JOIN table_name2 ON table_name1.column_name=table_name2.column_name DImana Column_name = nama colom yang akan digabung, table_name adalah nama table yang akan digabungkan, table_name1.column_name = table_name2.column_name adalah syarat penggabungannya. Sebagai contoh penggunaan FULL OUTER JOIN yang akan menggabungkan tabel persons dan tabel orders maka bentuk syntax yang akan digunakan adalah sebagai berikut : SELECT Persons.LastName, Persons.FirstName, Orders.OrderNo FROM Persons FULL JOIN Orders ON Persons.P_Id=Orders.P_Id ORDER BY Persons.LastName Dari penggunaan syntax Full Outer join diatas maka data yang dihasilkan adalah seperti pada gambar 2.18 dibawah ini.: Gambar Hasil Full Join Tabel Persons dan Order

44 49 b. Cartesian Product Cartesian product merupakan Top join dimana semua Data ditampilkan dari masing-masing table dikarenakan tidak menggunakan kondisi penggabungan pada syntax join. Cartesian Product ini dapat digunakan dengan format : SELECT Column Name 1, Column Name 2,.., Column Name n FROM Table 1, Table 2, Table n Dari syntax diatas Table 1, Table 2, Table n merupakan Cartesian product Contoh : SELECT * FROM EMPLOYEE, DEPARTMENT c. Subquery Subquery merupakan Statement SELECT yang bersifat nested di dalam SQL Statement lainnya. Subquery berguna ketika ada banyak query yang harus dieksekusi untuk memecahkan satu masalah. Subquery ini dapat digunakan dengan format : SELECT Column Name 1, Column Name 2,.., Column Name n FROM Table Name WHERE Condition IN ( SELECT Column Name FROM Table Name WHERE Condition ); Sebagai Contoh penggunaan subquery adalah sebagai berikut: SELECT first_name, last_name FROM employees WHERE department_id IN (SELECT department_id FROM departments WHERE location_id = 1800);

KONSEP DATABASE ORACLE BKPM 1

KONSEP DATABASE ORACLE BKPM 1 KONSEP DATABASE ORACLE BKPM 1 ORACLE Oracle Server adalah sebuah Database Management System (DBMS) yang memiliki sifat terbuka, comprehensive, dan terintegrasi untuk mengelola informasi. Oracle Server

Lebih terperinci

DATABASE ADMINISTRATOR

DATABASE ADMINISTRATOR DATABASE ADMINISTRATOR Arsitektur Database Oracle By: Arif Basofi 2-2 Tujuan Mengenal Struktur dan Arsitektur Database Oracle 2-3 Arsitektur Database Oracle Oracle Server: DBMS Oracle menyediakan manajemen

Lebih terperinci

Arsitektur Basis Data Oracle

Arsitektur Basis Data Oracle Arsitektur Basis Data Oracle Oracle pertama kali dicetuskan oleh Larry Elisson beserta dua temannya pada tahun 1977. Nama Oracle diambil dari proyek milik CIA di mana dia sebelumnya bekerja. (Wikipedia)

Lebih terperinci

Selayang pandang ORACLE. Budi S

Selayang pandang ORACLE. Budi S Selayang pandang ORACLE Budi S 1 Oracle History Produk dari Oracle Corporation (RSI/Relational Software Incorporated : 1977) memposisikan sbg S/W Database (RDBMS) Versi 1 (1977) Didevelop dgn C dan interface

Lebih terperinci

PENGANTAR TEKNOLOGI SISTEM INFORMASI MANAGEMENT 2

PENGANTAR TEKNOLOGI SISTEM INFORMASI MANAGEMENT 2 PENGANTAR TEKNOLOGI SISTEM INFORMASI MANAGEMENT 2 PERTEMUAN 5 & 6 STRUCTURE QUERY LANGUAGE STRUCTURE QUERY LANGUAGE SQL adalah bahasa query baku untuk DBMS. SQL diambil sebagai bakuan sejak tahun 1992.

Lebih terperinci

Praktikum Basis Data 2. BAB 1 : Pendahuluan

Praktikum Basis Data 2. BAB 1 : Pendahuluan BAB 1 : Pendahuluan 1.1. Sasaran Memahami fitur-fitur Oracle9i Dapat menjelaskan aspek teori maupun fisik dari database relasional Menggambarkan Implementasi Oracle pada RDBMS dan ORDBMS 1.2. Oracle9i

Lebih terperinci

Perangkat Lunak Pengembangan Web

Perangkat Lunak Pengembangan Web Perangkat Lunak Pengembangan Web Pertemuan 5 Database I Program Diploma IPB - Aditya Wicaksono, SKomp 1 Apa itu SQL? Structured Query Language SQL adalah bahasa standar untuk mengakses database SQL memungkinkan

Lebih terperinci

Konsep Dasar. Relatsional dan RDBMS User dan Schema Database Membuat Tabel dan Mendefinisikan Constraint Input Data ke dalam Tabel

Konsep Dasar. Relatsional dan RDBMS User dan Schema Database Membuat Tabel dan Mendefinisikan Constraint Input Data ke dalam Tabel Konsep Dasar Relatsional dan RDBMS User dan Schema Database Membuat Tabel dan Mendefinisikan Constraint Input Data ke dalam Tabel Halaman 1 dari 12 Relasional Database dan RDBMS Sebelum membahas berbagai

Lebih terperinci

Eksekusi file setup.exe yang ada dalam CD atau folder instalasi oracle.

Eksekusi file setup.exe yang ada dalam CD atau folder instalasi oracle. 1 2 3 Eksekusi file setup.exe yang ada dalam CD atau folder instalasi oracle. 4 Isilah konfigurasi instalasi yang akan dibuat. Oracle Home Location : biasanya terisi otomatis dgn drive yang paling banyak

Lebih terperinci

Introduction to SQL. Database Programming. 2 nd Chapter

Introduction to SQL. Database Programming. 2 nd Chapter Introduction to SQL Database Programming 2 nd Chapter SQL SQL adalah sebuah bahasa yang bersifat request oriented Dikembangkan oleh IBM (San Jose Research Laboratory) Bersifat Non Case Sensitif Merupakan

Lebih terperinci

Konsep Sistem Informasi B. BAB 2 - SQL Overview

Konsep Sistem Informasi B. BAB 2 - SQL Overview Konsep Sistem Informasi B BAB 2 - SQL Overview Summary Definisi SQL Komponen-Komponen SQL Latihan What is? Introduction SQL Structured Query Language adalah sebuah bahasa yang digunakan untuk mengakses

Lebih terperinci

STRUCTURE QUERY LANGUAGE DDL & DML

STRUCTURE QUERY LANGUAGE DDL & DML STRUCTURE QUERY LANGUAGE DDL & DML OUTLINE Data Definiton Language (DDL) Data Manipulation Language (DML) Data Control Language (DCL) Proses Pembangunan Database Perintah SQL DATA DEFINITION LANGUAGE (DDL)

Lebih terperinci

PERTEMUAN 14 MENGONTROL AKSES USER

PERTEMUAN 14 MENGONTROL AKSES USER PERTEMUAN 14 MENGONTROL AKSES USER Tujuan Pembelajaran : Membuat User dan Privilege Pengaturan Role Penggunaan statement GRANT dan REVOKE untuk mengatur object privileges TEORI DAN PERCOBAAN 14.1. Mengontrol

Lebih terperinci

Oracle Academic Initiative

Oracle Academic Initiative Oracle Academic Initiative Oracle9i Introduction to SQL Oleh: Tessy Badriyah, SKom.MT Politeknik Elektronika Negeri Surabaya Institut Teknologi Sepuluh Nopember Surabaya BAB 14 : Pengontrolan Akses User

Lebih terperinci

Perkenalan SQL. Ada empat macam tipe database yaitu hirarki, jaringan, relasional, dan objek.

Perkenalan SQL. Ada empat macam tipe database yaitu hirarki, jaringan, relasional, dan objek. Perkenalan SQL Sebuah database adalah sekumpulan informasi yang disusun dengan baik. Untuk mengatur sebuah database, dibutuhkan sebuah Database Management System (DBMS). DBMS merupakan program untuk menyimpan,

Lebih terperinci

MODUL 1. Pembuatan tabel, pendefinisian constraint, export dan import PRAKTIKUM BASIS DATA LANJUT TEKNIK PERANGKAT LUNAK UNIVERSITAS PGRI RONGGOLAWE

MODUL 1. Pembuatan tabel, pendefinisian constraint, export dan import PRAKTIKUM BASIS DATA LANJUT TEKNIK PERANGKAT LUNAK UNIVERSITAS PGRI RONGGOLAWE MODUL 1 Pembuatan tabel, pendefinisian constraint, export dan import PRAKTIKUM BASIS DATA LANJUT TEKNIK PERANGKAT LUNAK UNIVERSITAS PGRI RONGGOLAWE BAGIAN 1 PEMBUATAN TABEL Tujuan Pembelajaran : Memahami

Lebih terperinci

PERTEMUAN 10 PEMBUATAN TABEL

PERTEMUAN 10 PEMBUATAN TABEL PERTEMUAN 10 PEMBUATAN TABEL Tujuan Pembelajaran : Memahami object utama dari database Membuat table Memahami tipe data yang digunakan pada saat pendefinisian kolom pada table Merubah definisi table Drop,

Lebih terperinci

Untuk mencoba contoh-contoh perintah join, silahkan eksekusi query create+insert dibawah ini:

Untuk mencoba contoh-contoh perintah join, silahkan eksekusi query create+insert dibawah ini: JOIN Dalam menampilkan sebuah data seringkali kita perlu menggunakan lebih dari 1 tabel, 2 tabel, bahkan lebih, karena data yang akan ditampilkan terletak pada beberapa tabel. Setiap tabel biasanya memiliki

Lebih terperinci

PRAKTIKUM 5 SISTEM BASIS DATA JOIN

PRAKTIKUM 5 SISTEM BASIS DATA JOIN Mochammad Yusa Sistem Basis Data 1 PRAKTIKUM 5 SISTEM BASIS DATA JOIN Praktikan Mengetahui Asisten Laboratorium NIM. NIM. A. TUJUAN Tujuan dari praktikum ini adalah: 1. Mampu menginputkan data dan record

Lebih terperinci

Sejarah(1) Sejarah(2) STRUCTURE QUERY LANGUANGE (1) Definisi SQL

Sejarah(1) Sejarah(2) STRUCTURE QUERY LANGUANGE (1) Definisi SQL Sejarah(2) STRUCTURE QUERY LANGUANGE (1) Tahun 1987, American National Standards Institute (ANSI) dan International Standards Organization (ISO) membuat standar untuk SQL Tahun 1992, dibentuk versi baru

Lebih terperinci

Pertemuan DDL INDIKATOR. Modul Teori Database Aknela

Pertemuan DDL INDIKATOR. Modul Teori Database Aknela Pertemuan 15-16 DDL INDIKATOR 1. Memahami object utama dari database 2. Membuat table 3. Memahami tipe data yang digunakan pada saat pendefinisian kolom pada table 4. Merubah definisi table 5. Drop, rename

Lebih terperinci

Schema Objects. MI2154 SQL LANJUT Dedy Rahman Wijaya, S.T., M.T., OCA

Schema Objects. MI2154 SQL LANJUT Dedy Rahman Wijaya, S.T., M.T., OCA Schema Objects MI2154 SQL LANJUT Dedy Rahman Wijaya, S.T., M.T., OCA dedyrw@tass.telkomuniversity.ac.id Sasaran Memahami tujuan penciptaan index Mampu menciptakan index Mampu membedakan private & public

Lebih terperinci

Basis Data Relational

Basis Data Relational Basis Data Relational Kebanyakan model yang digunakan adalah Model basis data relasional dengan menggunakan Relational Database Management System (RDBMS). RDBMS menyediakan layanan pengorganisasian data

Lebih terperinci

STRUCTURE QUERY LANGUAGE

STRUCTURE QUERY LANGUAGE STRUCTURE QUERY LANGUAGE Structure Query Language (SQL) merupakan komponen bahasa relational database system. SQL merupakan bahasa baku (ANSI/SQL), non procedural, dan berorientasi himpunan (set-oriented

Lebih terperinci

Oracle Academic Initiative

Oracle Academic Initiative Oracle Academic Initiative Oracle9i Introduction to SQL Oleh: Tessy Badriyah, SKom.MT Politeknik Elektronika Negeri Surabaya Institut Teknologi Sepuluh Nopember Surabaya BAB 11 : Constraint Halaman : 11-0

Lebih terperinci

CONSTRAINT clients_client_num_pk PRIMARY KEY (client_number));

CONSTRAINT clients_client_num_pk PRIMARY KEY (client_number)); Five types of constraints exist within an Oracle database. Each type enforces a different rule. The types are: NOT NULL constraints UNIQUE constraints PRIMARY KEY constraints FOREIGN KEY constraints CHECK

Lebih terperinci

Ms. SQL Server mengimplementasikan database dengan menyimpan 2 struktur, yaitu :

Ms. SQL Server mengimplementasikan database dengan menyimpan 2 struktur, yaitu : Praktikum 1 MEMBANGUN DATABASE DAN MENGATUR KEAMANANNYA Tujuan : 1 Praktikan mampu untuk membuat database dengan tiga (3) metode yang akan diujicobakan pada praktikum I ini. 2 Praktikan mampu untuk mengatur

Lebih terperinci

INTEGRITAS DAN KEAMANAN BASIS DATA. Alif Finandhita, S.Kom, M.T

INTEGRITAS DAN KEAMANAN BASIS DATA. Alif Finandhita, S.Kom, M.T INTEGRITAS DAN KEAMANAN BASIS DATA Alif Finandhita, S.Kom, M.T Informasi yang disimpan pada basis data hanya akan bagus jika DBMS turut membantu mencegah adanya informasi yang salah yang masuk ke basis

Lebih terperinci

SISTEM BASIS DATA By Novareza Klifartha

SISTEM BASIS DATA By Novareza Klifartha SISTEM BASIS DATA By Novareza Klifartha Konsep Sistem Basis Data SISTEM sebuah keterpaduan yang terdiri atas sejumlah komponen fungsional dengan satuan fungsi / tugas tertentu, yang saling berhubungan

Lebih terperinci

B a s i s D a t a C H A P T E R. SQL Operasi DML. Arif Basofi PENS 2015

B a s i s D a t a C H A P T E R. SQL Operasi DML. Arif Basofi PENS 2015 C H A P T E R 15 SQL Operasi DML Arif Basofi PENS 2015 Objectives Tujuan: Mengenal operasi perintah SQL dalam: - DML (Data Manipulation Language) [1] - DDL (Data Definition Language) [2] S Q L DML DML

Lebih terperinci

BAB II PEMBUATAN DAN MANAJEMEN TABLE

BAB II PEMBUATAN DAN MANAJEMEN TABLE BAB II PEMBUATAN DAN MANAJEMEN TABLE 2.1 Bahasan dan Sasaran 2.1.1 Bahasan - pembuatan tabel - pengelolaan tabel 2.1.1 Sasaran 1. Mahasiswa memahami cara pembuatan maupun penghapusan tabel. 2. Mahasiswa

Lebih terperinci

SISTEM BASIS DATA. Oleh : Devie Rosa Anamisa

SISTEM BASIS DATA. Oleh : Devie Rosa Anamisa SISTEM BASIS DATA Oleh : Devie Rosa Anamisa Pengertian Sistem Basis Data Sistem Keterpaduan yang terdiri atas sejumlah komponen fungsional yang saling berhubungan dan secara bersama-sama bertujuan untuk

Lebih terperinci

IMPLEMENTASI TRIGGER, STORED PROCEDURE, FUNCTION DAN VIEW PADA MYSQL DALAM PERANCANGAN SYSTEM INVENTORY CAFFE BOULEVARD JAYAPURA

IMPLEMENTASI TRIGGER, STORED PROCEDURE, FUNCTION DAN VIEW PADA MYSQL DALAM PERANCANGAN SYSTEM INVENTORY CAFFE BOULEVARD JAYAPURA IMPLEMENTASI TRIGGER, STORED PROCEDURE, FUNCTION DAN VIEW PADA MYSQL DALAM PERANCANGAN SYSTEM INVENTORY CAFFE BOULEVARD JAYAPURA DOSEN MATAKULIAH SISTEM MANAJEMEN BASIS DATA Dr. KHAMAMI HERUSUSANTO DISUSUN

Lebih terperinci

DUKUNGAN DATABASE DALAM PEMBANGUNAN SISTEM INFORMASI

DUKUNGAN DATABASE DALAM PEMBANGUNAN SISTEM INFORMASI C H A P T E R 6 DUKUNGAN DATABASE DALAM PEMBANGUNAN SISTEM INFORMASI Arif Basofi PENS 2015 Objectives Tujuan: 1. Memahami pentingnya database dalam pembangunan sistem informasi 2. Mengenal sistem pengorganisasian

Lebih terperinci

SQL. Pemrograman Web II. Ganjil

SQL. Pemrograman Web II. Ganjil SQL Pemrograman Web II Ganjil 2015-2016 Review Database Structured Query Language Apa itu database? Kumpulan data terstruktur yang saling berelasi. Definisi : Kumpulan data, yang terorganisir secara logika,

Lebih terperinci

Sistem Basis Data Danny Kriestanto, S.Kom., M.Eng

Sistem Basis Data Danny Kriestanto, S.Kom., M.Eng Sistem Basis Danny Kriestanto, S.Kom., M.Eng SQL Introduction Setelah Membuat ERD dan Model Relasional, what s next? Bagaimana cara membangun entitas dan relationship tersebut agar dapat digunakan? Bagaimana

Lebih terperinci

PENGANTAR BASIS DATA

PENGANTAR BASIS DATA PENGANTAR BASIS DATA Obyektif : 1. Menjelaskan perbedaan antara file tradisional dan file manajemen basis data 2. Menjelaskan keuntungan dan kerugian apabila menggunakan file manajemen basis data 3. Memahami

Lebih terperinci

Manajemen Sistem Basis Data Integrity dan Security. Lintang Yuniar Banowosari

Manajemen Sistem Basis Data Integrity dan Security. Lintang Yuniar Banowosari Manajemen Sistem Basis Data Integrity dan Security Lintang Yuniar Banowosari http://staffsite.gunadarma.ac.id/lintang Data Integrity Data konsisten dan valid pada keadaan apapun dan konstrain apapun. ATURAN

Lebih terperinci

Optimasi Query. Optimasi Perintah SQL Informasi Jalur Akses Query Faktor-faktor yang berpengaruh terhadap kecepatan akses data

Optimasi Query. Optimasi Perintah SQL Informasi Jalur Akses Query Faktor-faktor yang berpengaruh terhadap kecepatan akses data Bab 4 Optimasi Query POKOK BAHASAN: Optimasi Perintah SQL Informasi Jalur Akses Query Faktor-faktor yang berpengaruh terhadap kecepatan akses data TUJUAN BELAJAR: Setelah mempelajari materi dalam bab ini,

Lebih terperinci

OPTIMALISASI QUERY DALAM BASIS DATA MY SQL MENGGUNAKAN INDEX

OPTIMALISASI QUERY DALAM BASIS DATA MY SQL MENGGUNAKAN INDEX ============================================================================== OPTIMALISASI QUERY DALAM BASIS DATA MY SQL MENGGUNAKAN INDEX Ridho Pamungkas Jurusan Sistem Informasi, Fakultas Teknik, UNIPMA,

Lebih terperinci

Oracle Academic Initiative

Oracle Academic Initiative Oracle Academic Initiative Oracle9i Introduction to SQL Oleh: Tessy Badriyah, SKom.MT Politeknik Elektronika Negeri Surabaya Institut Teknologi Sepuluh Nopember Surabaya BAB 10 : Pembuatan & Pengelolaan

Lebih terperinci

LINGKUNGAN BASIS DATA

LINGKUNGAN BASIS DATA LINGKUNGAN BASIS DATA Tujuan utama dari sistem basis data adalah menyediakan pemakai melalui suatu pandangan abstrak mengenai data, dengan menyembunyikan detail dari bagaimana data disimpan dan dimanipulasikan.

Lebih terperinci

MUKADDIMAH TEORI ASUMSI TABEL. CREATE TABLE contoh ( kode CHAR(5), nama VARCHAR(50) )

MUKADDIMAH TEORI ASUMSI TABEL. CREATE TABLE contoh ( kode CHAR(5), nama VARCHAR(50) ) MUKADDIMAH Awalnya saya diminta untuk melakukan delete terhadap record yang redundan (duplikat) pada sebuah tabel dalam database. Ini terjadi pada aplikasi yang saya buat dengan Visual basic 6 dan menggunakan

Lebih terperinci

SISTEM BASIS DATA II S A N T I W I D I A N T I

SISTEM BASIS DATA II S A N T I W I D I A N T I SISTEM BASIS DATA II S A N T I W I D I A N T I SISTEM Definisi sebuah tatanan yang terdiri atas sejumlah komponen fungsional (dengan tugas/fungsi khusus) yang saling berhubungan dan secara bersama-sama

Lebih terperinci

SISTEM BASIS DATA 1. WAHYU PRATAMA, S.Kom., MMSI.

SISTEM BASIS DATA 1. WAHYU PRATAMA, S.Kom., MMSI. SISTEM BASIS DATA 1 WAHYU PRATAMA, S.Kom., MMSI. PERTEMUAN 2 SBD 1 Lingkungan Basis Data Arsitektur Basis Data. Data Independence. Konsep DBMS, Komponen DBMS, Fungsi DBMS dan Bahasa yang digunakan didalam

Lebih terperinci

S Q L STRUCTURED QUERY LANGUAGE DEFINITION MANIPULATION C O N T R O L D M L SELECT INSERT UPDATE DELETE

S Q L STRUCTURED QUERY LANGUAGE DEFINITION MANIPULATION C O N T R O L D M L SELECT INSERT UPDATE DELETE STRUCTURED QUERY LANGUAGE (SQL) merupakan komponen bahasa relational database system. SQL merupakan bahasa baku (ANSI/SQL), non procedural, dan berorientasi himpunan (set-oriented language). SQL dapat

Lebih terperinci

DATA INTEGRITY/KEINTEGRITASAN DATA

DATA INTEGRITY/KEINTEGRITASAN DATA DATA INTEGRITY/KEINTEGRITASAN DATA Data konsisten dan valid pada keadaan apapun dan konstrain apapun. ATURAN KEINTEGRITASAN DATA 1. Entity integrity Nilai atribut primary key tidak boleh null (tidak dikenal)

Lebih terperinci

TABLE JOIN SQL SERVER 2005

TABLE JOIN SQL SERVER 2005 i TABLE JOIN SQL SERVER 2005 Disusun untuk : Membuat Laporan Table Join SQL SERVER 2005 Oleh : CHOIRUL FADHOLANII NIM : 0931140068 POLITEKNIK NEGERI MALANG Tahun 2011 DAFTAR ISI 1 DAFTAR GAMBAR 2 1 1.

Lebih terperinci

Oracle Academic Initiative

Oracle Academic Initiative Oracle Academic Initiative Oracle9i Introduction to SQL Oleh: Tessy Badriyah, SKom.MT Politeknik Elektronika Negeri Surabaya Institut Teknologi Sepuluh Nopember Surabaya. BAB 12 : Pembuatan View Halaman

Lebih terperinci

PENGENALAN BASIS DATA

PENGENALAN BASIS DATA PENGENALAN BASIS DATA Konsep Basis Data Secara logika data diorganisasikan kedalam : 1. Karakter, merupakan elemen dasar data logikal yang terdiri dari alfabet, angka, atau simbol lain yang memiliki arti.

Lebih terperinci

Pemrograman Basis Data dan SQL

Pemrograman Basis Data dan SQL Pemrograman Basis Data dan SQL Genap 2015-2016 Alen Boby Hartanto, S alen.boby@mercubua INTRO omata Kuliah : Pemrograman Sistem Basis Data dan SQL osks : 3 ojenis : Mata Kuliah Wajib opertemuan : 14 Pertemuan

Lebih terperinci

MODUL 3. View PRAKTIKUM BASIS DATA LANJUT TEKNIK PERANGKAT LUNAK UNIVERSITAS PGRI RONGGOLAWE

MODUL 3. View PRAKTIKUM BASIS DATA LANJUT TEKNIK PERANGKAT LUNAK UNIVERSITAS PGRI RONGGOLAWE MODUL 3 View PRAKTIKUM BASIS DATA LANJUT TEKNIK PERANGKAT LUNAK UNIVERSITAS PGRI RONGGOLAWE Tujuan Pembelajaran : Memahami definisi View Dapat membuat View Dapat Memanggil data melalui View Merubah definisi

Lebih terperinci

DATABASE - MySQL. Muhammad Zen S. Hadi, ST. MSc.

DATABASE - MySQL. Muhammad Zen S. Hadi, ST. MSc. DATABASE - MySQL Muhammad Zen S. Hadi, ST. MSc. Objectives Tujuan: Memahami perintah-perintah dasar DDL dan DML Contents Database DBMS Relational model SQL MySQL MySQL yang support ke relational model

Lebih terperinci

Struktur Penyimpanan. Oleh: Arif Basofi

Struktur Penyimpanan. Oleh: Arif Basofi Struktur Penyimpanan Oleh: Arif Basofi Topik Mendefinisikan tujuan/kegunaan dari pembuatan tablespaces dan data files Membuat tablespaces Memanage/mengelola tablespaces Memperoleh informasi mengenai tablespaces

Lebih terperinci

DASAR-DASAR SQL SERVER 2005

DASAR-DASAR SQL SERVER 2005 DASAR-DASAR SQL SERVER 2005 SQL SQL (Structured Query Language) adalah salah satu bahasa generasi level ke-4 yang awalnya dikembangkan oleh IBM di San Jose Research Laboratory. Berbeda dengan bahasa pemrograman

Lebih terperinci

Modul 3 : Query Penggabungan Tabel

Modul 3 : Query Penggabungan Tabel Modul 3 : Query Penggabungan Tabel Tujuan Praktikum - Mahasiswa dapat membedakan perbedaan macam-macam join tabel. - Mahasiswa mampu melakukan query untuk join tabel. - Mahasiswa dapat membedakan union,

Lebih terperinci

MODUL PEMPROGRAMAN SQL TINGKAT DASAR 1 STANDAR KOMPETENSI: MENERAPKAN BAHASA PEMPROGRAMAN SQL TINGKAT DASAR SMK NEGERI 1 MAJALENGKA

MODUL PEMPROGRAMAN SQL TINGKAT DASAR 1 STANDAR KOMPETENSI: MENERAPKAN BAHASA PEMPROGRAMAN SQL TINGKAT DASAR SMK NEGERI 1 MAJALENGKA MODUL PEMPROGRAMAN SQL TINGKAT DASAR 1 STANDAR KOMPETENSI: MENERAPKAN BAHASA PEMPROGRAMAN SQL TINGKAT DASAR SMK NEGERI 1 MAJALENGKA PENGANTAR SQL TINGKAT DASAR Basisdata atau database adalah kumpulan dari

Lebih terperinci

Obyek pada Oracle. Manajemen Obyek Basis Data dan Dictionary View. Obyek pada Oracle adalah segala hal yang bisa dibuat di Oracle, seperti:

Obyek pada Oracle. Manajemen Obyek Basis Data dan Dictionary View. Obyek pada Oracle adalah segala hal yang bisa dibuat di Oracle, seperti: Manajemen Obyek Basis Data dan Dictionary View Rosa Ariani Sukamto Email: rosa_if_itb_01@yahoo.com Blog: http://udinrosa.wordpress.com Website: http://www.gangsir.com Obyek pada Oracle Obyek pada Oracle

Lebih terperinci

@Tessy Badriyah, SKom. MT. PERTEMUAN 12 VIEW

@Tessy Badriyah, SKom. MT. PERTEMUAN 12 VIEW PERTEMUAN 12 VIEW Tujuan Pembelajaran : Memahami definisi View Dapat membuat View Dapat Memanggil data melalui View Merubah definisi View Insert, Update, dan Delete data melalui View Menghapus (drop) view

Lebih terperinci

BAB 2 LANDASAN TEORI

BAB 2 LANDASAN TEORI BAB LANDASAN TEORI.1 Defenisi Pangkalan Data Pangkalan data atau Database merupakan kumpulan dari item data yang saling berhubungan satu dengan yang lainnya yang diorganisasikan berdasarkan sebuah skema

Lebih terperinci

PERANCANGAN BASIS DATA

PERANCANGAN BASIS DATA BAB IV PERANCANGAN BASIS DATA Database atau basis data adalah kumpulan data yang disimpan secara sistematis di dalam komputer dan dapat dimanipulasi (diolah) menggunakan perangkat lunak (program aplikasi)

Lebih terperinci

B a s i s D a t a - 1 C H A P T E R. SQL Operasi DML. Copyright 2005 PENS-ITS

B a s i s D a t a - 1 C H A P T E R. SQL Operasi DML. Copyright 2005 PENS-ITS C H A P T E R 15 SQL Operasi DML Objectives Tujuan: Mengenal operasi perintah SQL dalam: - DML (Data Manipulation Language) - DDL (Data Definition Language) S Q L DML DML (Data Manipulation Language) adalah

Lebih terperinci

INTERNET PROGRAMMING DATABASE

INTERNET PROGRAMMING DATABASE INTERNET PROGRAMMING DATABASE Muhmmad Zen Samsono Hadi, ST. MSc. zenhadi@eepis-its.edu POLITEKNIK ELEKTRONIKA NEGERI SURABAYA Bahasan Sistem Database ER Diagram Database MySQL Internet Application Pendahuluan

Lebih terperinci

BAB II DASAR TEORI. 2.1 Konsep Dasar Sistem Aplikasi Pengertian Sistem. Pengertian sistem adalah kumpulan dari elemen-elemen yang berinteraksi

BAB II DASAR TEORI. 2.1 Konsep Dasar Sistem Aplikasi Pengertian Sistem. Pengertian sistem adalah kumpulan dari elemen-elemen yang berinteraksi BAB II DASAR TEORI 2.1 Konsep Dasar Sistem Aplikasi 2.1.1 Pengertian Sistem Pengertian sistem adalah kumpulan dari elemen-elemen yang berinteraksi untuk mencapai suatu tujuan tertentu. Suatu sistem mempunyai

Lebih terperinci

Operator Himpunan. Operator Himpunan, DML, DDL, DCL, TCL, Sequence, Index dan Synonym

Operator Himpunan. Operator Himpunan, DML, DDL, DCL, TCL, Sequence, Index dan Synonym Rosa Ariani Sukamto Email: rosa_if_itb_01@yahoo.com Blog: http://udinrosa.wordpress.com Website: http://www.gangsir.com Operator Himpunan, DML, DDL, DCL, TCL, Sequence, Index dan Synonym Operator Himpunan

Lebih terperinci

BAB II LANDASAN TEORI. Data adalah deskripsi tentang benda, kejadian, aktifitas, dan transaksi, yang

BAB II LANDASAN TEORI. Data adalah deskripsi tentang benda, kejadian, aktifitas, dan transaksi, yang 9 BAB II LANDASAN TEORI 2.1.1 Pengertian Data Pengertian data adalah : Data adalah deskripsi tentang benda, kejadian, aktifitas, dan transaksi, yang tidak mempunyai makna atau tidak berpengaruh langsung

Lebih terperinci

SECURITY SYSTEM BASIS DATA

SECURITY SYSTEM BASIS DATA SECURITY SYSTEM BASIS DATA Nama : 1. Rista Afifah U (H1D016007) 2. Nur Aulia R Majdina (H1D016011) 3. Ameilia (H1D016021) 4. Faseh Kurnianto (H1D016033) 5. Aldo Martino A.R (H1D016041) 6. Hananda Ilham

Lebih terperinci

Basis Data Spasial Modul 2

Basis Data Spasial Modul 2 Basis Data Spasial Modul 2 Modul 2 Arsitektur DBMS Tabel Data Manipulation Language (DML) Data Definition Language (DDL) LATIHAN Data Base Management System (DBMS) Perangkat lunak (software) untuk mengelola

Lebih terperinci

BAB 1 PENDAHULUAN. satu hal yang sangat dominan dan terjadi dengan sangat pesat. Informasi

BAB 1 PENDAHULUAN. satu hal yang sangat dominan dan terjadi dengan sangat pesat. Informasi BAB 1 PENDAHULUAN 1.1 Latar Belakang Di era globalisasi ini, perkembangan teknologi informasi sudah merupakan satu hal yang sangat dominan dan terjadi dengan sangat pesat. Informasi merupakan suatu kebutuhan

Lebih terperinci

Praktikum Basis Data 14 Structure Query Language 2

Praktikum Basis Data 14 Structure Query Language 2 Praktikum Basis Data 14 Structure Query Language 2 Pokok Bahasan : - DDL create table - DDL alter table - DDL drop table - DML insert - DML update - DML delete Tujuan : - Mahasiswa dapat menerapkan perintah

Lebih terperinci

BERMAIN DATA DENGAN SQL SERVER

BERMAIN DATA DENGAN SQL SERVER BERMAIN DATA DENGAN SQL SERVER BERKENALAN DENGAN SQL SERVER DBMS merupakan suatu sistem perangkat lunak yang memungkinkan pengguna komputer untuk membuat, memelihara, mengontrol, serta mengakses data pada

Lebih terperinci

Macam - Macam Perintah Pada SQL

Macam - Macam Perintah Pada SQL Macam - Macam Perintah Pada SQL Secara umum SQL hanya memiliki 3 komponen penting, yang digunakan untuk mendefinisikan, memanipulasi serta sebagai pengontrol data yang ada pada sebuah database. Komponen

Lebih terperinci

PERTEMUAN 9 MANIPULASI DATA

PERTEMUAN 9 MANIPULASI DATA PERTEMUAN 9 MANIPULASI DATA Tujuan Pembelajaran : Memahami Statement DML (Data Manipulation Language) Menyisipkan baris ke dalam table Merubah baris dalam table Menghapus baris dari table Mengontrol transaksi

Lebih terperinci

Farida Nur Cahyani Pendahuluan. Membuat Database. 1 Komunitas elearning IlmuKomputer.Com

Farida Nur Cahyani Pendahuluan. Membuat Database. 1 Komunitas elearning IlmuKomputer.Com Membuat Database Oracle Menggunakan DBCA Farida Nur Cahyani farida.nurcahyani@gmail.com Lisensi Dokumen: Seluruh dokumen di IlmuKomputer.Com dapat digunakan, dimodifikasi dan disebarkan secara bebas untuk

Lebih terperinci

Komponen-Komponen SQL a. Data Definition Language (DDL) : Digunakan untuk mendefinisikan data dengan menggunakan perintah : create, drop, alter.

Komponen-Komponen SQL a. Data Definition Language (DDL) : Digunakan untuk mendefinisikan data dengan menggunakan perintah : create, drop, alter. BAB V STRUCTURE QUERY LANGUAGE Pengertian SQL SQL (Struktur Query Language) adalah serangkaian pernyataan pada engine database (termasuk engine Jet) yang berisi informasi apa yang ingin ditampilkan oleh

Lebih terperinci

IMPLEMENTASI CONSTRAINT UNTUK MENJAMIN KONSISTENSI DAN INTEGRITAS DATA DALAM DATABASE

IMPLEMENTASI CONSTRAINT UNTUK MENJAMIN KONSISTENSI DAN INTEGRITAS DATA DALAM DATABASE IMPLEMENTASI CONSTRAINT UNTUK MENJAMIN KONSISTENSI DAN INTEGRITAS DATA DALAM DATABASE Oleh: M. RUDYANTO ARIEF 1 Abstract All of the popular RDBMS products provide table check constraints: Oracle, Informix,

Lebih terperinci

Syntax Syntax SQL. Untuk lebih jelasnya dapat dilihat sebagai berikut : 1. DDL (Definition Data Language) a. CREATE

Syntax Syntax SQL. Untuk lebih jelasnya dapat dilihat sebagai berikut : 1. DDL (Definition Data Language) a. CREATE Syntax Syntax SQL Syntaks SQL terdiri dari DDL (Definition Data Language) dan DML (Data Manipulation Language). DDL merupakan bahasa yang mendefinisikan atau menjelaskan tentang data yang digunakan. Sedangkan

Lebih terperinci

Tutorial Database Oracle Chapter2 Pembuatan User dan Kontrol Hak Akses

Tutorial Database Oracle Chapter2 Pembuatan User dan Kontrol Hak Akses Tutorial Database Oracle Chapter2 Pembuatan User dan Kontrol Hak Akses Oleh: Ardie Jocong Pada Tutorial kedua ini saya akan menjelaskan Bagaimana Membuat Schema atau User di SQL Plus.. ini dia langkah

Lebih terperinci

INTEGRITAS DAN KEAMANAN DATA. Gentisya Tri Mardiani, S.Kom., M.Kom

INTEGRITAS DAN KEAMANAN DATA. Gentisya Tri Mardiani, S.Kom., M.Kom INTEGRITAS DAN KEAMANAN DATA Gentisya Tri Mardiani, S.Kom., M.Kom Integritas Data Integritas data mengacu pada konsistensi dan akurasi data yang disimpan di dalam basis data. Batasan Integritas Data (Data

Lebih terperinci

Tampilan pada Enterprise Manager

Tampilan pada Enterprise Manager Database SQL Server Database SQL Server dapat dibuat menggunakan Enterprise Manager atau Query Analyzer. Penggunaan Enterprise Manager pada SQL Server dapat membantu memudahkan DB owner untuk mengelola

Lebih terperinci

Oracle Academic Initiative

Oracle Academic Initiative Oracle Academic Initiative Oracle9i Introduction to SQL Oleh: Tessy Badriyah, SKom.MT Politeknik Elektronika Negeri Surabaya Institut Teknologi Sepuluh Nopember Surabaya BAB 9 : Manipulasi Data Halaman

Lebih terperinci

BAB II LANDASAN TEORI. konsep dasar dan definisi-definisi yang berkaitan dengan perangkat lunak yang

BAB II LANDASAN TEORI. konsep dasar dan definisi-definisi yang berkaitan dengan perangkat lunak yang BAB II LANDASAN TEORI Pada landasan teori ini diuraikan sejumlah teori untuk membantu dan memecahkan permasalahan yang ada. Beberapa landasan teori tersebut meliputi konsep dasar dan definisi-definisi

Lebih terperinci

LATAR BELAKANG IBM San Jose Research Laboratory.

LATAR BELAKANG IBM San Jose Research Laboratory. SQL LATAR BELAKANG SQL merupakan bahasa basis data relasional standard. Terdapat macam-macam versi SQL. Versi aslinya pertama kali dikembangkan oleh IBM San Jose Research Laboratory. 2 LATAR BELAKANG Bahasa

Lebih terperinci

BAB 11 SECURITY (KEAMANAN)

BAB 11 SECURITY (KEAMANAN) BAB 11 SECURITY (KEAMANAN) 11.1. Level Security Security adalah merupakan tindakan untuk memproteksi kejahatan untuk mencuri atau memodifikasi data dalam sistem database. Macam macam level dalam melakukan

Lebih terperinci

-DATABASE (BASIS DATA)- Nama : Novriansyah Kelas : 2.DB.10 NPM : Dosen : Leli Safitri

-DATABASE (BASIS DATA)- Nama : Novriansyah Kelas : 2.DB.10 NPM : Dosen : Leli Safitri -DATABASE (BASIS DATA)- Nama : Novriansyah Kelas : 2.DB.10 NPM : 33109332 Dosen : Leli Safitri PROGRAM DIPLOMA MANAJEMEN INFORMATIKA FAKULTAS ILMU KOMPUTER DAN TEKNOLOGI INFORMASI UNIVERSITAS GUNADARMA

Lebih terperinci

Praktikum USER, PRIVILEGE DAN ROLE. Tujuan :

Praktikum USER, PRIVILEGE DAN ROLE. Tujuan : Praktikum 9 USER, PRIVILEGE DAN ROLE Tujuan : 1. Mampu membuat user pada Oracle 2. Mampu memonitor user 3. Mampu melakukan manipulasi pada user 4. Mampu mengenal obyek dan system privilege 5. Mampu memberikan

Lebih terperinci

Membuat Function, Stored Procedur dan View pada MySQL

Membuat Function, Stored Procedur dan View pada MySQL Membuat Function, Stored Procedur dan View pada MySQL Bayu Lesmana Putra bayu.lesmana@raharja.info Abstrak Function dan Stored Procedure merupakan fitur utama yang paling penting di MySQL 5. Function dan

Lebih terperinci

Praktikum Basis Data. By. Rita Wiryasaputra, ST., M. Cs.

Praktikum Basis Data. By. Rita Wiryasaputra, ST., M. Cs. Praktikum Basis Data By. Rita Wiryasaputra, ST., M. Cs. SQL: DDL (Data Definition Language) Create Database Create Table Create View Create Index Alter Database Alter Table Alter View Drop Database Drop

Lebih terperinci

M0564-Pengantar Sistem Basisdata 12/ 1

M0564-Pengantar Sistem Basisdata 12/ 1 M0564-Pengantar Sistem Basisdata 12/ 1 SQL : DML (Continue) Query Multi-Table Dapat menggunakan subqueri asalkan kolom yang dihasilkan berasal dari tabel yang sama. Jika kolom yang dihasilkan berasal dari

Lebih terperinci

RENCANA PEMBELAJARAN

RENCANA PEMBELAJARAN FRM/KUL/01/ Written by Checked by Approved by valid date Leon Andretti Abdillah, S.Kom.,MM Merry Agustina, M.M.,M.Kom M.Izman Herdiansyah, ST., MM., Ph.D Mata Kuliah : Praktikum Basis Data Semester :1

Lebih terperinci

Dasar-dasar SQL Cosmas Haryawan Hal : 1/9 DASAR DASAR SQL (Structured Query Language) SQL adalah bahasa standar dalam basis data yang digunakan untuk melakukan manipulasi data. Standardisasi bahasa ini

Lebih terperinci

STRUCTURE QUERY LANGUAGE (SQL)

STRUCTURE QUERY LANGUAGE (SQL) STRUCTURE QUERY LANGUAGE (SQL) Structure Query Language (SQL) adalah bahasa query standar yang digunakan untuk mengakses basis data relasional. SQL mempunyai kemampuan sebagai berikut : a. Query (memperoleh

Lebih terperinci

INTEGRITAS BASIS DATA. OLEH : Slamet Sn Wibowo Wicaksono

INTEGRITAS BASIS DATA. OLEH : Slamet Sn Wibowo Wicaksono INTEGRITAS BASIS DATA OLEH : Slamet Sn Wibowo Wicaksono Integrity Constraint (Batasan Integritas) Constraint (batasan) merupakan aturan yang diberikan pada suatu tabel agar data yang dimasukkan terjamin

Lebih terperinci

MySQL J A M K E T I G A

MySQL J A M K E T I G A J A M K E T I G A MySQL l Apa itu MySQL? l Membuat User Baru l Membuat Database l Tipe Data MySQL l Membuat Tabel l Structured Query Language l Latihan Jam Ketiga l Soal Jam Ketiga Jam Ketiga Apa itu MySQL?

Lebih terperinci

Sistem Basis Data 1. Pertemuan 5 dan 6 Aljabar Relasional dan SQL Rogayah, ST.,MMSI Untuk 3DB01 dan 3DB04

Sistem Basis Data 1. Pertemuan 5 dan 6 Aljabar Relasional dan SQL Rogayah, ST.,MMSI Untuk 3DB01 dan 3DB04 Sistem Basis Data 1 Pertemuan 5 dan 6 Aljabar Relasional dan SQL Rogayah, ST.,MMSI Untuk 3DB01 dan 3DB04 Bahasa Pada Model data Relasional Menggunakan bahasa query, yaitu pernyataan yang diajukan untuk

Lebih terperinci

Praktikum Basis Data 2017 TE UM MODUL 8 TRIGGER A. TUJUAN

Praktikum Basis Data 2017 TE UM MODUL 8 TRIGGER A. TUJUAN A. TUJUAN MODUL 8 TRIGGER Memahami konsep dasar trigger di dalam basis data. Memahami implementasi trigger sebagai bentuk respon atas suatu kejadian. Mampu menyelesaikan kasus-kasus manipulasi data yang

Lebih terperinci

BAB II LANDASAN TEORI

BAB II LANDASAN TEORI BAB II LANDASAN TEORI 2.1. Database Menurut Connolly dan Begg (2010, p65), database adalah suatu kumpulan data yang berhubungan secara logika dan secara deskripsi dari data-data yang dirancang untuk memenuhi

Lebih terperinci

BAB III 3 LANDASAN TEORI

BAB III 3 LANDASAN TEORI BAB III 3 LANDASAN TEORI 3.1 Sistem Informasi Menurut Jogiyanto HM (2003), sistem Informasi merupakan suatu sistem yang tujuannya menghasilkan informasi sebagai suatu sistem, untuk dapat memahami sistem

Lebih terperinci

MODUL 4. Query SELECT dan DML (INSERT, UPDATE, DELETE) PRAKTIKUM BASIS DATA LANJUT TEKNIK PERANGKAT LUNAK UNIVERSITAS PGRI RONGGOLAWE

MODUL 4. Query SELECT dan DML (INSERT, UPDATE, DELETE) PRAKTIKUM BASIS DATA LANJUT TEKNIK PERANGKAT LUNAK UNIVERSITAS PGRI RONGGOLAWE MODUL 4 Query SELECT dan DML (INSERT, UPDATE, DELETE) PRAKTIKUM BASIS DATA LANJUT TEKNIK PERANGKAT LUNAK UNIVERSITAS PGRI RONGGOLAWE BAGIAN 1 QUERY SELECT Tujuan Pembelajaran : Mengetahui kemampuan dari

Lebih terperinci

Database Interfaces. By: Arif Basofi

Database Interfaces. By: Arif Basofi Database Interfaces By: Arif Basofi Tujuan Menggunakan SQL*Plus dan isql*plus untuk mengakses Database Oracle 10g Menjelaskan struktur logika dari sebuah table Menggunakan SQL untuk melakukan query, memanipulasi

Lebih terperinci