Nama : Iqbal Syah Maulana NPM : 1424370390 Semester : III (Tiga) Kelas : C Sore Prodi : Sistem Komputer
FAKULTAS TEKNIK UNIVERSITAS PEMBANGUNAN PANCABUDI MEDAN 2014
Sistem Manajemen Basis Data Relasional Sebuah sistem manajemen basis data relasional atau dalam bahasa Inggrisnya dikenal sebagai relational database management system (RDBMS) adalah sebuah program komputer (atau secara lebih tipikal adalah seperangkat program komputer) yang dirancang untuk mengatur/memanajemen sebuah basis data sebagai sekumpulan data yang disimpan secara terstruktur, dan melakukan operasi-operasi atas data atas permintaan penggunanya. Contoh penggunaan DBMS ada banyak sekali dan dalam berbagai bidang kerja, misalnya akuntansi, manajemen sumber daya manusia, dan lain sebagainya. Meskipun pada awalnya DBMS hanya dimiliki oleh perusahaan-perusahaan berskala besar yang memiliki perangkat komputer yang sesuai dengan spesifikasi standar yang dibutuhkan (pada saat itu standar yang diminta dapat dikatakan sangat tinggi) untuk mendukung jumlah data yang besar, saat ini implementasinya sudah sangat banyak dan adaptatif dengan kebutuhan spesifikasi data yang rasional sehinggal dapat dimiliki dan diimplementasikan oleh segala kalangan sebagai bagian dari investasi perusahaan.
Sejarah Atas Istilah RDBMS Edgar F. Codd memperkenalkan istilah ini pada makalah seminarnya yang berjudul "A Relational Model of Data for Large Shared Data Banks". Salah satu definisi yang cukup dikenal secara luas atas sebuah sistem basisdata relasional adalah 12 hukum Codd. Namun, pada awal-awal implementasinya banyak model relasional yang tidak mengikuti seluruh elemen-elemen yang terdapat dalam hukum-hukum Codd tersebut yang menjadikan terminologinya berkembang untuk mendeskripsikan sebuah tipikal sistem basisdata yang lebih luas. Dalam cakupan yang minimum sistem tersebut memenuhi kriteria berikut: menyajikan data pada pengguna dalam bentuk relasional (ditampilkan dalam bentuk tabular, sebagai koleksi dari tabel dimana setiap tabel beriisi sekumpulan baris dan kolom) menyediakan operator relasional untuk memanipulasi data dalam bentuk tabular Sistem yang pertama kalinya yang secara relatif memenuhi implementasi atas sebuah model relasional adalah Pusat Studi Ilmiah IB, Inggris, di Peterlee; IS1 (1970-1972) dan implementasi lain yang mengikutinya PRTV (1973-1979). Sistem yang pertama kalinya dijual secara komersil sebagai RDBMS adalah Multics Relational Data Srore pada tahun 1978. Yang lainnya adalah Berkeley Ingres QUEL dan IBM BS12. Pemanfaatan saat ini Ada beberapa ketidaksepahaman terhadap definisi atas "relasional" dari DBMS. Definisi yang paling populer dari sebuah RDBMS seringkali dianggap kurang tepat; beberapa kalangan berargumentasi bahwa penyajian data sebagai kumpulan baris dan kolom sudah cukup memenuhi syarat untuk dikatakan sebagai sebuah RDBMS. Tipikalnya, sebuah sistem basisdata dikatakan memenuhi kriteria sebagai RDBMS apabila memenuhi hukum-hukum yang ditetapkan dalam 12 hukum Codd, namun pada kenyataannya justru kebanyakan sistem basisdata tidak mendukung sepenuhnya implementasi hukum-hukum Codd tersebut. Kalangan lainnya beranggapan apabila sebuah sistem basisdata tidak mengimplementasikan keseluruhan hukum-hukum Codd tersebut, maka sistem tersebut tidak dapat disebut sebagai relasional. Pandangan seperti ini, yang banyak diterima oleh para teoritis dan kalangan-kalangan lainnya yang memegang teguh prinsip-prinsip Codd, tentunya akan mendiskualifikasikan banyak sistem basisdata yang ada saat ini "tidak murni relasional". Dalam kenyataannya, sistem basisdata yang menggunakan SQL (Structured Query Language) untuk mengakses dan memodifikasi data tidak bisa dikatakan sebagai RDBMS menurut definisi ini. Sementara itu, para pendukung atas sistem basisdata yang ada menyebutkan sebuah sistem basisdata yang menerapkan hanya beberapa dari hukum-hukum Codd tersebut disebut sebagai Sistem Manajemen Basisdata Semi-Relasional/Pseudo-Relational Database Management Systems (PRDBMS). Untuk sistem manajemen basis data yang sepenuhnya menerapkan hukum-hukum Codd tersebut selanjutnya disebut sebagai Sistem Manajemen Basisdata Murni-Relasional/Trully-Relational Database Management Systems (TRDBMS). Saat ini, hampir seluruh RDBMS yang ada menerapkan SQL sebagai bahasa query namun juga menyediakan dan mengimplementasi beberapa alternatif lainnya. AlporaDataphor adalah RDBMS yang tersedia secara komersil yang mengikuti secara penuh ke dua belas hukum-hukum Codd tersebut, dan kedua kelompok mengenalnya sebagai RDBMS. Keluhan yang muncul dan dikenal secara umum terhadap keberadaan RDBMS adalah kenyataan bahwa implementasi yang ada saat ini dipandang sebagai terlalu "statis". Spekulasipun bermunculan terhadap kemungkinan untuk membuat sebuah sistem basisdata generasi baru yang menggunakan model "relasional secara dinamis" dengan kolom yang bisa dibuat secara dinamis, ukuran yang berkembang secara dinamis, didefinisikan secara dinamis. Setiap baris dapat diimplementasikan sebagai map (kamus ataupun larik asosiatif) dan kolom-kolom yang tidak dikenal secara sederhana disajikan sebagai field kosong. Beberapa kalangan menganggap hal ini menyalahi model relasioal murni, namun kalangan lain menyanggah bahwa sebuah penggunaan map hanyalah sebagai detail implementasi saja. Sehingga dalam pandangan ini, sebuah "kolom yang tidak ditemukan/tidak ada" secara sederhana hanyalah dipandang sebagai perihal interpretasi dan dianggap sebagai pilihan cara penyajian saja
Pengertian Basis Data Basis data adalah kumpulan file-file yang mempunyai kaitan antara satu file dengan file lain sehingga membentuk suatu bangunan data untuk menginformasikan suatu perusahaan atau instansi dalam batasan tertentu Istilah-istilah Basis data Beberapa hal yang termaksud unsur-unsur dari basis data adalah sebagai berikut: Entititas Entititas adalah orang, tempat, kejadian atau konsep yang informasinya direkam. Pada bidang kesehatan Entity adalah Pasien, Dokter, Kamar. Field Setiap entity mempunyai atribut atau sebutan untuk mewakili suatu entity. Seorang siswa dapat dilihat dari atributnya misalnya, NIM, Nama_siswa, Alamat. Record Record adalah kumpulan isi elemen data (atribut) yang saling berhubunganmenginformasikan tentang suatu entity secara lengkap. Contoh Kumpulan atribut NIP, Nama, dan alamat berisikan 01001245566, Sanusi, Jl. Hati suci No 2 Kupang. Data Value Merupakan data aktual atau infomasi yang disimpan ditiap data elemen. Isi atribut disebut nilai data. Kunci Elemen Data ( Key Data Element ) Tanda pengenal yang secara unik mengidentifikasikan entitas dari suatu kumpulan entitas. Contoh Entitas Mahasiswa yang mempunyai atribut-atribut npm, nama, alamat, tanggal lahir menggunakan Kunci Elemen Data npm. Komponen- komponen Sistem Basis Data ( Database ) Basis data merupakan sistem yang terdiri atas kumpulan file atau tabel yang saling berhubungan dan Database Management System ( DBMS ) yang memungkinkan beberapa pemakai untuk mengakses dan manipulasi file-file tersebut ( Fathansyah,1999 ). Dalam Sistem Basis data memiliki beberapa komponen yaitu: Perangkat Keras ( Hardware ) Perangkat keras yang biasanya terdapat dalam sistem basis data adalah memori sekunder hardisk.
Sistem Operasi ( Operating System ) Sistem Operasi (Operating System) merupakan program yang mengaktifkan atau mengfungsikan sistem komputer, mengendalikan seluruh sumber daya (resource) dan melakukan operasi-operasi dalam komputer. Sistem Operasi yang banyak digunakan Seperti: MS-DOS, MS-Windows 95 MS Windows NT, dan Unix.
Basis data (Database) Sebuah basis data ( Database ) dapat memiliki beberapa basis data. Setiap basis data dapat berisi atau memiliki sejumlah objek basis data seperi file atau tabel.Database Management System ( DBMS ) Pengolahan basis data secara fisik tidak dilakukan oleh pemakai secara langsung, tetapi ditangani oleh sebuah perangkat lunak yang disebut DBMS yang menentukan bagaimana data disimpan, diubah dan diambil kembali. Pemakai ( User ) Bagi pemakai dapat berinteraksi dengan basis data dan memanipulasi data dalam program yang ditulis dalam bahasa pemograman.
Tujuan dan Manfaat Basis Data Tujuan utama dalam pengolahan data dalam sebuah basis data adalah agar kita dapat memperoleh data yang kita cari dengan mudah dan cepat (Fathansyah,1999). Pemanfaatan basis data dilakukan dengan tujuan yaitu: Kecepatan dan kemudahan (Speed ) Pemanfaatan Database memungkinkan kita untuk dapat menyimpan data atau melakukan perubahan ( manipulasi ) dan menampilkan kembali data tersebut dengan cepat dan mudah, dari pada kita menyimpan data secara manual.
Efisien ruang penyimpanan (Space) Dengan Database penggunaan ruang penyimpanan data dapat dilakukan karena kita dapat melakukan penekanan jumlah pengulangan data dengan menerapkan sejumlah pengkodean .Keakuratan (Acuracy) Pemanfatan pengkodean atau pembentukan relasi antar data dengan penerapan aturan atau batasan tipe data dapat diterapkan dalam Database yang berguna untuk menentukan ketidakakuratan pemasukan atau penyimpanan. Keamanan (Security) Dalam sejumlah sistem ( apilkasi ) pengelolah database tidak menerapkan aspek keamanan dalam penggunaan database. Tetapi untuk sistem yang besar dan serius, aspek keamanan juga dapat diterapkan. Dengan begitu kita dapat menentukan siapa yang boleh menggunakan database dan menentukan jenis operasi-operasi apa saja yang boleh dilakukan. Terpeliharanya keselarasan data (Consitant) Apabila ada perubahan data pada aplikasi yang berbeda maka secara otomatis perubahan itu berlaku untuk keseluruhan Data dapat dipakai secara bersama (shared) Data dapat dipakai secara bersama-sama oleh beberapa program aplikasi (secara batch maupun on-line) pada saat bersamaan. Dapat diterapkan standarisasi (standardization) Dengan adanya pengontrolan yang terpusat maka DBA dapat menerapkan standarisasi data yang disimpan sehingga memudahkan pemakaian, pengiriman maupun pertukaran data. Kelemahan Sistem Basis Data Memerlukan tenaga spesialIS Kompleks Memerlukan tempat yang besar Mahal Pengguna Basis Data System Engineer Tenaga ahli yang bertanggung jawab atas pemasangan Sistem Basis Data, dan juga mengadakan peningkatan dan melaporkan kesalahan dari sistem tersebut kepada pihak penjual Database Administrator (DBA) Tenaga ahli yang mempunyai tugas untuk mengontrol sistem basis data secara keseluruhan, meramalkan kebutuhan akan sistem basis data, merencanakannya dan mengaturnya.
Tugas DBAMengontrol DBMS dan software-software Memonitor siapa yang mengakses basis data Mengatur pemakaian basis data Memeriksa security, integrity, recovery dan concurency Program Utilitas yang digunakan oleh DBA : Loading Routines, Membangun versi utama dari basis data Reorganization Routines, Mengatur / mengorganisasikan kembali basis data Journaling Routines, Mencatat semua operasi pemakaian basis data Recovery Routines, Menempatkan kembali data, sebelum terjadinya kerusakan Statistical Analysis Routines, Membantu memonitor kehandalan system Fase Merancang Basis Data Mengumpulkan dan Menganalisis Menentukan kelompok pemakai dan bidang-bidang aplikasinya. Meninjau dokumentasi yang ada. Analisis lingkungan operasi dan pemprosesan data Daftar pertanyaan dan wawancara. Merancang basis data secara konseptual Tujuan dan fase ini adalah menghasilkan conceptual schema untuk basis data yang tergantung pada sebuah DBMS (Database Management System).Blogger Gubug Memilih DBMS (Databse Management System)Pemilihan DBMS ditentukan oleh bebrapa faktor, diantaranya : faktor teknik, ekonomi dan politik organisasi.Contoh faktor teknik : keberadaan DBMS (Relation, Network, Hierarchical, dan lain-lain), struktur penyimpanan dan jalur akses yang mendukung DBMS, pemakai, dan lain-lain. Faktor-faktor ekonomi dan organisasi yang mempengaruhi satu sama lain dalam pemilihan DBMS : struktur data, personal yang telah terbiasa dengan suatu sistem, dan tersedianya layanan penjual. Merancang basis data secara logika (pemetaan model data) Merancang basis data secara fisik Merancang basis data secara fisik merupakan proses memilih struktur- struktur penyimpanan dan jalur-jalur akses ke file-file basis data untuk mencapai performa terbaik di berbagai aplikasi.
DDL (Data Definition Language) DDL atau Data Definition Language adalah kumpulan perintah pada sql yang berfungsi atau digunakan digunakan untuk membuat, mengubah dan menghapus struktur atau definisi tipe data dari objek-objek yang ada pada database. Pada DDL terdapat perintah-perintah untuk membuat, mengubah ataupun menghapus, berikut perintah-perintah dan penjelasannya : 1. Perintah untuk membuat / meng-create : Create Database : merupakan perintah yang berfungsi untuk membuat database baru Create Function : merupakan perintah yang berfungsi untuk membuat fungsi. Create Index : merupakan perintah yang berfungsi untuk membuat index. Create Procedur:merupakan perintah yang berfungsi untuk membuat prosedure Create Table: merupakan perintah yang berfungsi untuk membuat tabel baru. Create Trigger : merupakan perintah yang berfungsi untuk membuat trigger. 2. Perintah untuk merubah / memanipulasi : Alter table: merupakan perintah yang berfungsi untuk merubah struktur tabel. 3. Perintah untuk menghapus : Drop Database : merupakan perintah yang berfungsi untuk menghapus database. Drop Table : merupakan perintah yang berfungsi untuk menghapus tabel.
Contoh perintah DDL : DROP nama_databes; ALTER TABLE nama_tabel ADD JUMLAH INTEGER; Berikut adalah contoh perintah DDL yang digunakan pada MySQL. Klik pada link untuk melihat rincian penggunaan dari perintah tersebut. DDL - Data Definition Language Merupakan kumpulan dari perintah SQL yang digunakan untuk Membuat (create) CREATE DATABASE CREATE FUNCTION CREATE INDEX CREATE PROCEDURE CREATE TABLE CREATE TRIGGER CREATE VIEW Mengubah (alter) ALTER DATABASE ALTER FUNCTION ALTER PROCEDURE ALTER TABLE ALTER VIEW RENAME TABLE Menghapus (drop) DROP DATABASE DROP FUNCTION DROP INDEX DROP PROCEDURE DROP TABLE DROP TRIGGER DROP VIEW struktur dan definisi data dari objek-objek database. Objek-objek database pada yang dimaksud pada MySQL adalah : Database Function Index Procedure (Stored Procedure) Table Trigger View Macam-macam DDL yang ada pada pembuatan tabel. a. CREATE Create digunakan untuk membuat tabel dalam database. Tabel yang dibuat dapat juga menyertakan atribut dan definisi suatu kolom seperti primary key, auto increment atau yang lainnya. Contoh syntax penggunaan CREATE : CREATE TABLE <nama_tabel> ( /* <nama_kolom> <kolom_type> <primary_key, not null, Default <value>> */ NIM INTEGER PRIMARY KEY, nama_depan CHAR(50) NULL, nama_akhir CHAR(75) NOT NULL, tanggallahir DATE NULL ); B. ALTER ALTER digunakan untuk mengubah kondisidari suatu tabel atau objek pada relational database management system (RDBMS) yang sebelumnya telah dibuat dengan menggunakan statement CREATE. Contoh syntax penggunaan ALTER: ALTER <nama_tabel> { ADD[COLUMN] /* <nama_kolom> <type_kolom> <NOT NULL> [Primary Key,Default <value>] */ ALTER[COLUMN] /* <nama_kolom> [SET DEFAULT <default_option>| DROP DEFAULT <value>] */ }; C. DROP DROP digunakan untuk menghapus data yang ada pada database seperti tabel, index atau yang lainnya. Sebuah pernyataan DROP di SQL menghapus objek dari sistem manajemen database relasional (RDBMS). Jenis-jenis benda yang bisa dihapus tergantung pada RDBMS sedang digunakan, tetapi sebagian besar mendukung menhapus tabel, user (pengguna) dan database. Beberapa sistem (seperti PostgreSQL) memungkinkan DROP dan lainnya. Contoh syntax penggunaan DROP: DROP <nama_tabel> Misalnya DROP TABLE tbl_mahasiswa; Referential Integrity Constraint adalah sebuah cara untuk menjaga konsistensi data antara tabel yang saling ber-Relasi. Aturan ini mengharuskan sebuah baris pada sebuah tabel yang terelasikan pada tabel lain harus mengacu pada sebuah baris di dalam tabel tersebut. Terdapat 2 macam tabel yaitu tabel child dan tabel parent. Aturan untuk referential integrity biasanya digunakan jika terjadi proses modifikasi data. a. Aturan untuk Update ( berlaku pada proses modifikasi di parent table ) Cascade : Pembaruan sebuah baris data diikuti dengan pembaruan baris data pada child table yang terelasikan. Restrict : Mencegah proses pembaruan data jika terdapat baris data di child table yang terelasikan. Ignore : Mengabaikan referensi. Boleh memperbarui data pada parent, tapi tidak memperbarui data yang berelasi pada child table. b. Aturan untuk Delete ( berlaku pada proses modifikasi di parent table ) Cascade : Menghapus seluruh baris data pada child table yg terelasikan. Restrict : Mencegah penghapusan jika terdapat baris data yang berelasi pada child table. Ignore : Mengabaikan referensi. Boleh menghapus data, dan tidak ada efeknya bagi child table. c. Aturan untuk Insert Restrict : Tidak boleh menambah data pada child table, jika nilai yang dimasukkan pada kolom yang berelasi tidak terdapat pada parent tabelnya. Ignore walaupun nilai yang dimasukkan pada kolom yang berelasi tidak terdapat pada parent tabel.n: Mengabaikan referensi. Boleh menambah data pada child. Macam-macam objek pada database adalah Tables : Merupakan objek yang memiliki tipe-tipe data aktual Columns : Merupakan bagian-bagian dari tabel yang ada pada database Data Type : Merupakan tipe data yang beragam seperti karakter, numeric, tanggal dan lain sebagainya. Stored Procedure:Merupakan macro dalam kode TransactSQL yang dapat ditulis dan disimpan dalam database dan dapat ditulis menggunakan Transac SQL. Triggers : Merupakan procedure yang disimpan dalam database dan dipicu apabila ada penambahan, update atau pennghapusan dalam sebuah database. Rules : Merupakan penanda sebuah kolom sehingga dapat dimasukkan ke dalam data yang sudah di set atau default. Misal rules dapat digunakan untuk memastikan bahwa nilai yang dimasukkan pada data telepon seseorang merupakan satu nomor saja. Primary Keys : Digunakan untuk mencegah adanya data yang sama pada suatu tabel dalam sebuah database. Foreign Keys : Key yang digunakan bersamaan dengan Primary Key untuk menghubungkan data secara bersamaan dari tabel yang terpisah ketika query sedang disiapkan. Default : data yang dapat di set pada sebuah field, sehingga jika tidak ada data yang dimasukkan selama perintah insert, maka nilai standar akan digunakan secara default. Views : merupakan data referensi pada tabel dalam database atau kumpulan dari beberapa tabel yang memiliki relasi. Indexs : Merupakan objek yang dapat membantu mengelompokkan data dan dapat mencari data tertentu sehingga terkadang index dapat memperlambat proses pencarian data, tergantung seberapa banyak data yang tersimpan dalam sebuah database. Buat syntax DDL untuk dua tabel di bawah yang masih benbentuk CDM. Kemudian lakukan modifikasi jadikan id_pegawai pada tabel pegawai dan id_perusahaan pada tabel perusahaan sebagai primary key dan not null pada masing-masing tabel! Syntax DDL CREATE TABLE pegawai ( /* <nama_kolom> <kolom_type> <primary_key, not null, Default <value>> */ ID_Pegawai Varchar (3) PRIMARY KEY, nama VARCHAR(50) NOT NULL, alamat VARCHAR(75) NOT NULL, ); CREATE TABLE perusahaan ( /* <nama_kolom> <kolom_type> <primary_key, not null, Default <value>> */ ID_Perusahaan Varchar (3) PRIMARY KEY, nama_perusahaan VARCHAR(50) NOT NULL, alamat_perusahaan VARCHAR(75) NOT NULL, bidang_usaha VARCHAR(75) NOT NULL, ); //RELATION BEKERJA ALTER TABLE pegawai ADD ID_Pegawai VARCHAR(3)Bekerja FOREIGN KEY ID_Perusahaan REFERENCES perusahaan
Tabel Matrix Perintah DDL MySQL 5.0 OBJECT CREATE ALTER DROP RENAME DATABASE Yes Yes Yes FUNCTION Yes Yes Yes INDEX Yes Yes PROCEDURE Yes Yes Yes TABLE Yes Yes Yes Yes TRIGGER Yes Yes VIEW Yes Yes Yes
Sejarah DDL (Data Definition Language) Definisi data bahasa konsep dan nama pertama kali diperkenalkan dalam kaitannya dengan CODASYL database model, di mana skema database itu ditulis dalam sintaks bahasa yang menggambarkan catatan , bidang , dan set dari pengguna data model Kemudian digunakan untuk menyebut himpunan bagian dari Structured Query Language (SQL) untuk membuat tabel dan kendala . SQL-92 memperkenalkan bahasa manipulasi skema dan tabel skema informasi untuk skema query. Tabel-tabel informasi yang ditentukan sebagai SQL / schemata dalam SQL: 2003 . DDL Istilah ini juga digunakan dalam arti umum untuk mengacu pada setiap bahasa formal untuk mendeskripsikan data atau struktur informasi. SQL merupakan singkatan dari Structured Query Language. SQL adalah bahasa komputer yang standart untuk mengakses dan memanipulasi database. Seluruh aplikasi database yang beredar di pasaran, baik yang gratis maupun yang berlisensi, mengadopsi bahasa SQL untuk mengolah databasenya. Ada 2 jenis command di dalam SQL, yaitu DDL dan DML.
DML (Data Manipulation Language) DML atau Data Manipulation Language adalah kumpulan perintah query yang digunakan untuk memanipulasi data dalam tabel, seperti menambah, merubah atau menghapus data. Perintah ini tidak terkait dengan struktur dan metadata dari objek-objek yang berada pada tabel-tabel database. Pada DML terdapat perintah-perintah untuk memanipulasi data, berikut perintah-perintah dan penjelasannya : Insert : merupakan perintah yang berfungsi untuk menambah / memasukan data atau record pada database. Delete : merupakan perintah yang berfungs untuk menghapus data pada database. Update : merupakan perintah yang berfungs untuk merubah atau memperbaharui data pada database. Call : Do : Handler : Load Data Infile : Replace : Select : merupakan perintah yang berfungs untuk melihat atau menampilkan data pada database. Truncate : Contoh perintah DML : INSERT INTO nama_table VALUES ('123456','DONI','JAKARTA'); UPDATE nama_table SET NAMA='BUDI' WHERE ALAMAT='JAKARTA'); Untuk DDL (Data Definition Language) akan dijelaskan pada akan dijelaskan disini Pengertian DDL (Data Definition Language). Data manipulation languages (DML) adalah bahasa untuk melakukan manipulasi terhadap data di dalam database seperti insert, update, dan delete record. Sebelumnya telah dibahas mengenai data definition language (DDL) di post dengan judul pengertian data definition language. DML dibagi menjadi dua yaitu procedural DML dan non procedural DML. Berikut ini adalah perbedaan keduanya disertai dengan contoh penggunaannya. Data Manipulation Languages Procedural DML Procedural DML digunakan untuk memberi tahu sistem data apa yang dibutuhkan dan bagaimana cara mengambil data tersebut. Procedural DML di embed ke dalam bahasa pemrograman tingkat tinggi. Contoh Procedural DML Menggunakan Java: 1 2 3 4 5 6 7 8 try{ Statement st = connection.createStatement(); ResultSet rs = st.executeQuery("SELECT * FROM mahasiswa"); while(rs.next){ String s = rs.getString(1); //dst... } } catch(SQLException e){} Baris Resultset menyatakan data apa yang dibutuhkan, dimana di dalam baris tersebut terdapat query SQL SELECT * FROM mahasiswa. Sedangkan baris while ke bawah menyatakan cara untuk mengambil data tersebut. Non Procedural DML Non procedural DML digunakan untuk menyatakan data apa yang dibutuhkan bukan bagaimana data tersebut diambil. Non procedural disebut juga dengan declarative programming. Contoh Non Procedural: SELECT ... FROM ... WHERE ... INSERT INTO ... VALUES ... UPDATE ... SET ... WHERE ... DELETE FROM ... WHERE ... Contoh di dalam statement SQL: 1 2 INSERT INTO Persons (Id, LastName, FirstName) VALUES (5, 'Al Azhar', 'Fahmi')
Data Manipulation Language ( DML) Bahasa Manipulasi Data (DML) adalah suatu keluarga bahasa komputer yang digunakan oleh program komputer dan / atau pengguna database untuk menyisipkan, menghapus dan update data dalam database . Read-only query, yaitu SELECT , data ini dapat dianggap sebagai salah satu bagian dari DML atau di luar itu, tergantung pada konteksnya. Saat ini bahasa manipulasi data yang paling populer adalah yang dari SQL, yang digunakan untuk mengambil dan memanipulasi data dalam database relasional. Bentuk lain dari DML adalah yang digunakan oleh IMS / DLI, CODASYL database (seperti IDMS ), dan lain-lain . Bahasa Manipulasi Data terdiri dari 'perubahan data SQL' laporan, yang memodifikasi data disimpan tetapi tidak skema atau objek database. Manipulasi objek database persisten (misalnya tabel atau disimpan prosedur) melalui 'skema SQL-' laporan , bukan data yang tersimpan di dalamnya, dianggap bagian dari yang terpisah Data Definition Language . Dalam SQL kedua kategori adalah sama dalam sintaks rinci mereka, tipe data, ekspresi dan sebagainya, namun berbeda dalam fungsi mereka secara keseluruhan. Bahasa Manipulasi Data memiliki kemampuan fungsionalnya yang diselenggarakan oleh kata awal dalam sebuah pernyataan, yang hampir selalu merupakan kata kerja . Dalam kasus SQL, verba ini adalah: SELECT ... INTO INSERT UPDATE DELETE Secara umum untuk manipulasi isi dari tabel pada database terdiri dari 4 (empat) perintah yaitu select, insert, update, dan delete, dan menurut definisi saya sendiri perintah sql yang ada secara umum juga terdiri dari empat perintah tersebut, bahkan untuk perintah-perintah sql lain yang lebih sulit tingkatannya seperti prosedur,fungsi,triger,view juga berbasis pada kombinasi perintah-perintah diatas. Disini secara khusus akan dijelaskan Data Manipulation Language (DML) pada Mysql, Langsung saja dicontohkan dengan struktur tabel sebagai berikut: Tabel Contoh dengan kolom-kolom : idcontoh nama_contoh alamat pekerjaan hobi 1 Saya Jakarta Guru Sepakbola 2 Kamu Bogor Dosen Basket 3 Anda Bandung Karyawan Karate
Penjelasannya bisa dijabarkan sebagai berikut : A. SELECT Untuk menampilkan isi table dengan option-option tertentu. Untuk menampilkan seluruh isi tabel : SELECT * FROM nama_tabel; Contoh penggunaan sintaks dan hasil keluaran atau output : Select * from contoh; idcontoh nama_contoh alamat pekerjaan hobi 1 Saya Jakarta Guru Sepakbola 2 Kamu Bogor Dosen Basket 3 Anda Bandung Karyawan Karate Untuk menampilkan isi tabel dengan kolom tertentu saja : SELECT kolom1, kolom2, ... FROM nama_tabel; Contoh penggunaan sintaks dan hasil keluaran atau output : Select nama_contoh, alamat from contoh; nama_contoh alamat Saya Jakarta Kamu Bogor Anda Bandung Untuk menampilkan isi suatu tabel dengan kondisi tertentu: SELECT * FROM nama_tabel WHERE kolom=kondisi; Contoh penggunaan sintaks dan hasil keluaran atau output : Select * from contoh where hobi=Sepakbola; idcontoh nama_contoh alamat pekerjaan hobi 1 Saya Jakarta Guru Sepakbola Untuk menampilkan isi suatu tabel dengan kondisi tertentu: SELECT kolom1 FROM nama_tabel WHERE kolom2=kondisi; Contoh penggunaan sintaks dan hasil keluaran atau output : Select nama_contoh from contoh where hobi=Sepakbola; nama_contoh Saya
B. INSERT Untuk menambah record atau baris baru dalam table: INSERT INTO nama_tabel (nama_kolom) VALUES (isikolom) atau INSERT INTO nama_tabel SET nama_kolom='isikolom' Contoh penggunaan sintaks: insert into contoh(nama_contoh,alamat,pekerjaan,hobi) Values (Saudara,Semarang,Pedagang,Sepakbola); Ini akan menambah record (baris) pada tabel contoh yang berisi seperti diatas, sehingga isi tabel menjadi : idcontoh nama_contoh alamat pekerjaan hobi 1 Saya Jakarta Guru Sepakbola 2 Kamu Bogor Dosen Basket 3 Anda Bandung Karyawan Karate 4 Saudara Semarang Pedagang Sepakbola
C. UPDATE Untuk memodifikasi record atau baris yang sudah ada dalam suatu tabel pada database sesuai dengan kondisi yang diinginkan: UPDATE nama_tabel SET kolom1='isi_kolom' WHERE kolom2='kondisi'; Contoh penggunaan sintaks: update contoh set nama_contoh =Kalian where hobi=Karate; Ini akan merubah kolom nama_contoh pada tabel contoh menjadi Kalian untuk kolom hobi yang berisi Karate.
D. DELETE Untuk menghapus record atau baris tertentu dalam suatu table: DELETE FROM nama_tabel WHERE nama_kolom='isikolom'; Jika WHERE tidak disertakan maka semua isi dalam table akan terhapus. Contoh penggunaan sintaks: delete from contoh where nama_contoh =Kalian; ini akan menghapus row atau baris pada tabel contoh untuk kolom nama_contoh yang berisi Kalian. .Dikarenakan pengguna tidak harus menentukan cara mendapatkan data dalam basisdata, maka sistem basisdata harus mencari alat yang efektif untuk mengakses data. Komponen DML dari bahasa SQL merupakan nonprocedural. Query adalah pernyataan yang digunakan pengguna untuk mengambil data. Dibawah ini contoh bahasa SQL : Contoh 1 : Untuk mendapatkan data mahasiswa yang memiliki NPM sama dengan 0957201000526. Select mahasiswa.nama from mahasiswa where mahasiswa.npm=0957201000526
Contoh 2 : Mengganti Npm Mahasiswa yang Kode A03 Update Mahasiswa Set NPM = 0957201000526 Where kode = A03 Contoh 3 : Menyisipkan data Mahasiswa dengan Kode, Npm, Nama. Insert into mahasiswa values (A01 , 0957201000526 , Norbenah)