SINTAX SQL, INNER JOIN, LEFT JOIN, RIGHT JOIN, AND FULL JOIN

21 December 2012 13:00:43 Dibaca : 335

Syntax dasar dalam SQL ( Structured Query Language )

LEVEL DATABASE Membuat database Untuk membuat database baru, sehingga tidak berlaku jika database sudah ada atau anda tidak memiliki privilege. Sintaksnya : CREATE DATABASE nama_db

Menghapus database Untuk menghapus database beserta seluruh table di dalamnya. Perintah ini tidak berlaku jika database tidak ada atau anda tidak memiliki privilege. Sintaksnya : DROP DATABASE nama_db

Menggunakan database Untuk menjadikan database menjadi default dan referensi dari table yang nantinya anda gunakan. Perintah ini tidak berlaku jika database tidak ada atau anda tidak memiliki privilege. Sintaksnya : USE nama_db

Menampilkan database Untuk menampilkan daftar yang ada dalam system saat itu. Sintaksnya : SHOW DATABASES

LEVEL TABEL Membuat table Untuk membuat table minimal anda harus menentukan namanya dan tipe kolom yang anda inginkan. Sintaks yang paling sederhana (tanpa ada definisi lain) adalah :

CREATE TABLE nama_tbl (kolom1 tipekolom1(),kolom2 tipekolom2(), …)

Contoh : Anda ingin membuat table dengan nama profil yang memiliki kolom nama (bertipe char, lebar 20), kolom umur (bertipe integer), kolom jenis_kelamin (bertipe enum, berisi M dan F). Sintaksnya : REATE TABLE profil (nama CHAR(20), umur INT NOT NULL, jenis_kelamin ENUM(‘F’,’M’) )

Sedangkan perintah yang agak lengkap dalam membuat sebuah table adalah dengan menyertakan definisi tertentu. Misalnya perintah seperti ini : CREATE TABLE peserta ( No SMALLINT UNSIGNED NOT NULL AUTO_INCREMENT, Nama CHAR(30) NOT NULL, BidangStudi ENUM(‘TS’,’WD’) NOT NULL, PRIMARY KEY (No), INDEX (Nama, BidangStudi) )

Perintah di atas berarti membuat table peserta dengan kolom No sebagai PRIMARY KEY yaitu indeks table yang unik yang tidak bisa diduplikat dengan atribut AUTO_INCREMENT yaitu kolom yang otomatis dapat mengurutkan angka yang diisikan padanya. Sedangkan kolom Nama dan BidangStudi dijadikan indeks biasa.

Membuat indeks pada table Menambahkan indeks pada table yang sudah ada baik yang unik ataupun yang biasa. Sintaksnya : CREATE INDEX nama_index ON nama_tbl (nama_kolom) CREATE UNIQUE INDEX nama_index ON nama_tbl (nama_kolom)

Menghapus table Untuk menghapus table dalam database tertentu. Jika dilakukan maka semua isi, indeks dan atribut lain akan terhapus. Sintaksnya : DROP TABLE nama_tbl

Menghapus indeks Untuk menghapus indeks pada suatu table. Sintaksnya : DROP INDEX nama-index ON nama_tbl

Melihat informasi table Untuk melihat table apa saja yang ada di database tertentu. Sintaksnya : SHOW TABLES FROM nama_db

Sedangkan untuk melihat deskripsi table atau informasi tentang kolom gunakan sintaks : DESC nama_tbl nama_kolom atau SHOW COLUMNS FROM nama_tbl FROM nama_db

Mendapatkan atau menampilkan informasi dari table Untuk menampilkan isi table dengan option-option tertentu. Misalnya untuk menampilkan seluruh isi table digunakan : SELECT * FROM nama_tbl

Untuk menampilkan kolom-kolom tertentu saja : SELECT kolom1,kolom2,… FROM nama_tbl

Untuk menampilkan isi suatu kolom dengan kondisi tertentu SELECT kolom1 FROM nama_tbl WHERE kolom2=isikolom Modifikasi struktur table Dapat digunakan untuk mengganti nama table atau mengubah strukturnya seperti manambah kolom atau indeks, menghapus kolom atau indeks, mengubah tipe kolom dsb. Sintaks umum : ALTER TABLE nama_tbl action

SINTAX SQL, INNER JOIN, LEFT JOIN, RIGHT JOIN, AND FULL JOIN

Untuk menambah kolom baru di tempat tertentu dapat menggunakan : ALTER TABLE nama_tbl ADD kolom_baru type() definisi

Untuk menambah kolom_baru bertipe integer setelah kolom1 digunakan : ALTER TABLE nama_tbl ADD kolom_baru INT NOT NULL AFTER kolom1

Untuk menambah indeks baru pada table tertentu baik yang unik ataupun yang biasa: ALTER TABLE nama_tbl ADD INDEX nama_index (nama_kolom) ALTER TABLE nama_tbl ADD UNIQUE nama_indeks (nama_kolom) ALTER TABLE nama_tbl ADD PRIMARY KEY nama_indeks (nama_kolom)

Untuk mengubah nama kolom dan definisinya, misalnya mengubah nama kolom_baru dengan tipe integer menjadi new_kolom dengan tipe char dengan lebar 30 digunakan: ALTER TABLE nama_tbl CHANGE kolom_baru new_kolom CHAR(30) NOT NULL

Untuk menghapus suatu kolom dan seluruh atributnya, misal menghapus kolom1 : ALTER TABLE nama_tbl DROP kolom1

Untuk menghapus indeks baik yang unik ataupun yang biasa digunakan : ALTER TABLE nama_tbl DROP nama_index ALTER TABLE nama_tbl DROP PRIMARY KEY

Modifikasi informasi dalam table. Untuk menambah record atau baris baru dalam table, sintaksnya : INSERT INTO nama_tbl (nama_kolom) VALUES (isi_kolom) atau INSERT INTO nama_tbl SET nama_kolom=isi_kolom

Misalnya untuk menambah dua baris pada table profil dengan isi nama = deden & ujang dan isi umur = 17 & 18 adalah : INSERT INTO profil (nama,umur) VALUES (deden,17), (ujang,18) atau INSERT INTO profil SET nama=deden, umur=17 INSERT INTO profil SET nama=ujang, umur=18

Untuk memodifikasi record atau baris yang sudah ada yang bersesuaian dengan suatu kolom. Misalnya untuk mengubah umur deden menjadi 18 pada contoh di atas dapat digunakan sintaks : UPDATE profil SET umur=18 WHERE nama=qalit

Untuk menghapus record atau baris tertentu dalam suatu table. Misalnya untuk menghapus baris yang ada nama ujang digunakan

sintaks : DELETE FROM profil WHERE nama=ujang

Jika WHERE tidak disertakan maka semua isi dalam table profil akan terhapus.

SQL adalah kependekan dari Structured Query Language, merupakan sebuah bahasa yang digunakan untuk mengakses data dalam basis data (database) relasional. SQL banyak diterapkan pada pemrograman berbasis client-server seperti PHP, ASP, Java J2EE, dan sebagainya. Contoh software SQL yang terkenal adalah MySQL, MsSQL (Microsoft), Oracle SQL, Postgre SQL (open source). Masing-masing software mempunyai keunggulan sendiri-sendiri, sejauh yang saya tahu Oracle SQL handal dalam hal keamanan dan ukuran database yang bisa mencapai tera byte, sedang MsSQL lebih banyak bermain di Memory untuk processing. Dari ketiga software ini, Oracle SQl bisa dikatakan sebagai pemegang pertama. Perintah dasar SQL pada dasarnya hampir sama baik MySQL, Postgre SQL, MsSQL atau Oracle SQL.

 

Membuat Database Baru di SQL

DDL (Data Definition Language) digunakan untuk mendefinisikan, mengubah, serta menghapus database dan objek-objek yang diperlukan. Membuat basis data di SQL cukup mudah, syntaxnya sebagai berikut.

1

CREATE DATABASE nama_db;

Membuat Tabel di SQL

1

CREATE TABLE nama_tabel;

Sedangkan untuk membuat tabel lengkap dengan fieldnya, perhatikan contoh di bawah ini:

1 2 3 4

CREATE TABLE user ( user_name VARCHAR(30) CONSTRAINT PRIMARY KEY, password VARCHAR(20) NOT NULL, date_of_birth DATETIME );

DML (Data Manipulation Language), digunakan untuk memanipulasi data dalam tabel. Perintahnya adalah:

SELECT untuk menampilkan dataINSERT untuk menambahkan data baruUPDATE untuk mengubah data yang sudah adaDELETE untuk menghapus data

Menampilkan Seluruh Data

1

SELECT * FROM user;

Menyimpan Data ke Tabel SQL

1

INSERT INTO user (user_name, password, date_of_birth) VALUES ('ALIYA HASSAN', 'Cengkareng', 'qwe');

Menghapus Data di Tabel

1

DELETE FROM user WHERE nama='ALIYA HASSAN';

Catatan: Setiap syntax pada SQL selalu diakhiri dengan tanda semicolon atau titik koma (;), abaikan kode ini jika kamu menggunakan PHPMyAdmin untuk mengakses database. Tapi jika kamu menggunakan terminal, ssh, cmd, atau program remote server lainnya perintah ini wajib diperhatikan. Selalu gunakan tanda bintang (*) untuk melihat isi tabel, tanda ini akan membaca baris (row). Pada dasarnya, perintah dasar mysql sama dengan postgre sql maupun oracle sql.

Perintah SQL dan Pengunaannya - SQL (Structured Query Language) adalah sebuah bahasa yang digunakan untuk mengakses data dalam basis data relasional. Bahasa ini secara de facto merupakan bahasa standar yang digunakan dalam manajemen basis data relasional. Saat ini hampir semua server basis data yang ada mendukung bahasa ini untuk melakukan manajemen datanya.

Berikut perintah-perintah dari sql beserta contoh penggunaanya : 1. Create Database : Create database berguna untuk membuat database baru. Syntax dasar:

CREATE DATABASE database_nama

 

Contoh:

CREATE DATABASE databaseku

2. Create Table : Berguna untuk membuat tabel data baru dalam sebuah database. Syntax dasar:

CREATE TABLE ( Column_name1 table_nama data_type Column_name2 table_nama data_type Column_name3 table_nama data_type )

Contoh menggunakan perintah create table :

CREATE TABLE registrasi ( Id int, Nama varchar (255), Email varchar(50), Kota varchar(255) )

3. Select : Digunakan untuk memilih data dari table database. Syntax dasar :

SELECT column_name(s) FROM table_name

Atau

SELECT * FROM table_name

Contoh 1 :

SELECT nama,email FROM registrasi

Contoh 2 :

SELECT * FROM registrasi

4. Select Distinct : Digunakan untuk memilih data-data yang berbeda (menghilangkan duplikasi) dari sebuah table database. Syntax dasar :

SELECT DISTINCT column_name(s) FROM table_name

Contoh :

SELECT DISTINCT kota FROM registrasi

5. Where : Digunakan untuk memfilter data pada perintah Select Syntax dasar :

SELECT column name(s) FROM table_name WHERE column_name operator value

Contoh :

SELECT * FROM registrasi WHERE nama=’KONOE’

6. Order By : Digunakan untuk mengurutkan data berdasarkan kolom (field) tertentu. Secara default, urutan tersusun secara ascending (urut kecil ke besar). Anda dapat mengubahnya menjadi descending (urut besar ke kecil) dengan menambahkan perintah DESC. Syntax dasar :

SELECT column_name(s) FROM table_name ORDER BY column_name(s) ASC|DESC

Contoh 1 :

SELECT * FROMregistrasi ORDER BY email

Contoh 2 :

SELECT * FROM registrasi ORDER BY id DESC

8. Like : Digunakan bersama dengan perintah Where, untuk proses pencarian data dengan spesifikasi tertentu. Syntax dasar :

SELECT column_name(s) FROM table_name WHERE column_name LIKE pattern

Contoh 1 :

SELECT * FROM registrasi WHERE nama LIKE ‘b%’

Keterangan Contoh di atas digunakan untuk pencarian berdasarkan kolom nama yang berhuruf depan “b”. Contoh 2 :

SELECT * FROM WHERE nama LIKE ‘b%’

Keterangan : Contoh di atas digunakan untuk pencarian berdasarkan kolom nama yang berhuruf belakang “b”. 9. In : Digunakan untuk pencarian data menggunakan lebih dari satu filter pada perintah Where. Syntax dasar :

SELECT column_name(s) FROM table_name WHERE column_name IN (value1,value2, . . .)

Contoh :

SELECT * FROM registrasi WHERE kota IN (‘Medan’,’Siantar’)

10. Between : Digunakan untuk menentukan jangkauan pencarian. Syntax dasar :

SELECT column_name(s) FROM table_name WHERE column_name BETWEEN value1 AND value2

Contoh :

SELECT * FROM registrasi WHERE id BETWEEN 5 and 15

Keterangan : Contoh di atas digunakan untuk mencari data yang memiliki nomor id antara 5 dan 15. 11. Insert Into : Digunakan untuk menambahkan data baru di tabel database. Syntax dasar :

INSERT INTO table_name VALUES (value1,value2,value3, . . .)

Atau

INSERT INTO table_name (column1,column2,column3, . . .) VALUES (value1,value2,value3, . . .)

Contoh 1 :

INSERT INTO registrasi VALUES (1,’konoe’,’konoe@gmail.com’,’Medan’)

Contoh 2 :

INSERT INTO registrasi (id,nama,email,kota) VALUES (1,'konoe','konoe@gmail.com','Medan')

12. Update : Digunakan untuk mengubah/memperbarui data di tabel database. Syntax dasar:

UPDATE table_name SET column1=value,column2=value, . . . WHERE some_column=some_value

Contoh :

UPDATE registrasi SET email=’konoe@yahoo.com’, kota=’Medan’ WHERE

13. Delete : Digunakan untuk menghapus data di table database. Tambahkan perintah Where untuk memfilter data-data tertentu yang akan dihapus. Jika tanpa perintah Where, maka seluruh data dalam tabel akan terhapus. Syntax dasar :

DELETE FROM table_name WHERE some_column=some_value

Contoh :

DELETE FROM registrasi WHERE id=1

14. Inner Join : Digunakan untuk menghasilkan baris data dengan cara menggabungkan 2 buah tabel atau lebih menggunakan pasangan data yang match pada masing-masing tabel. Perintah ini sama dengan perintah join yang sering digunakan. Syntax dasar :

SELECT column_name(s) FROM table_name1 INNER JOIN table_name2 ON table_name1.column_name=table_name2 column-name

contoh :

SELECT registrasi.nama,registrasi.email,order.no_order FROM registrasi INNER JOIN order ON registrasi.id=order.id ORDER BY registrasi.nama

15. Left Join : Digunakan untuk menghasilkan baris data dari tabel kiri (nama tabel pertama) yang tidak ada pasangan datanya pada tabel kanan (nama tabel kedua). Syntax dasar :

SELECT column_name(s) FROM table_name1 LEFT JOIN table_name2 ON table_name1.column_name=table_name2. column_name

contoh :

SELECT registrasi.nama,registrasi.email,order.no_order FROM registrasi LEFT JOIN order ON registrasi.id=order.id ORDER BY registrasi.nama

16. Right Join : Digunakan untuk menghasilkan baris data dari tabel kanan (nama tabel kedua) yang tidak ada pasangan datanya pada tabel kiri (nama tabel pertama). Syntax dasar :

SELECT column_name(s) FROM table_name1 RIGHT JOIN table_name2 ON table_name1.column_name=table_name2 column_name

contoh :

SELECT registrasi.nama,registrasi.emailmorder.no_order FROM registrasi RIGHT JOIN order ON registrasi.id=order.i ORDER BY registrasi.nama

17. Full Join : Digunakan untuk menghasilkan baris data jika ada data yang sama pada salah satu tabel. Syntax dasar

SELECT column_name(s) FROM table_name1 FULL JOIN table_name2 ON table_name1.column_name=table_name2 column_name

Contoh :

SELECT registrasi.nama,registrasi.email,order.no_order FROM registrasi FULL JOIN order ON registrasi.id=order.id ORDER BY registrasi.nama

18. Union : Digunakan untuk menggabungkan hasil dari 2 atau lebih perintah Select. Syntax dasar :

SELECT column_name(s)FROM table_name1 UNION column_name(s) FROM table_name2

Atau

SELECT column_name(s) FROM table_name1 UNION ALL SELECT column_name(s) FROM table_name2

Contoh :

SELECT nama FROM mhs_kampus1 UNION SELECT nama FROM mhs_kampus2

18. Alter Table : Digunakan untuk menambah, menghapus, atau mengubah kolom (field) pada tabel yang sudah ada. Syntax untuk menambah kolom :

ALTAR TABLE table_name ADD column_name datatyoe

Contoh :

ALTER TABLE Persons ADD DateOfBirth date

Syntax untuk menghapus kolom :

ALTER TABLE table_name DROP COLUMN column_name

Contoh :

ALTER TABLE Persons DROP COLUMN DateOfBirth

Syntax untuk mengubah kolom :

ALTER TABLE table_name ALTER TABLE clumn_name datatype

Contoh:

ALTER TABLE Persons ALTER COLUMN DateOfBirth year

 

 

19. Now () : Digunakan untuk mendapatkan informasi waktu (tanggal dan jam saat ini.) Syntax dasar

Now()

Contoh :

SELECT NOW()

20. Curdate : Digunakan unutk mendapatkan informasi tanggal saat ini. Syntax dasar :

Curdate()

Contoh :

SELECT CURDATE()

21. Curtime() : Digunakan untuk mendapatkan informasi jam saat ini. Syntax dasar :

Curtime()

Contoh :

SELECT CURTIME()

22. Extract() : Digunakan untuk mendapatkan informasi bagian-bagian dari data waktu tertentu, seperti tahun, bulan, hari, jam, menit, dan detik tertentu. Syntax dasar

Extract(unit FROM date)

INNER JOIN

Jika Anda telah memahami fungsi join pada database relasional untuk menghubungkan berbagai table, maka artikel berikut akan menjelaskan dan menunjukkan contoh penggunaan variasi join pada MySQL versi 5.0. JOIN sendiri merupakan konstruksi bahasa yang tidak bisa berdiri sendiri, biasanya berupa klausa pada bagian referensi table pada SELECT, UPDATE atau DELETE statement. Tipe-tipe JOIN

 

 

NORMALISASI DATABASE

20 November 2012 18:10:13 Dibaca : 461

NORMALISASI DATA

 

       DataBase (basis data dalam bahasa indonesia) dapat diartikan sebagai kumpulan sejumlah data berupa informasi yang disimpan dengan struktur yang sedemikian rupa sehingga dapat diolah kemudian dengan mudah. Sedangkan untuk membuat suatu database yang harus diperhatikan adalah jenis data;

* Data Master, yaitu data yang sifatnya tidak selalu berubah-ubah. Data master ini digunakan    sebagai pendukung di dalam proses input transaksi.

* Data Transaksi, yaitu data yang akan selalu muncul dan berubah. Data transaksi ini selalu bergantung kepada master.

Normalisasi pada database adalah proses pernormalan suatu database yang disusun agar menghindari terjadinya redudancy (kemubaziran data). Dalam melakukan normalisasi, ada beberapa tahap yang harus dilakukan,

1. Unnormalized

Pada tahap ini, kita mengambil seluruh data yang ada dan diperlukan dalam database itu sendiri. Misalnya pada contoh bon faktur di bawah ini,

Kita ambil data-data yang diperlukan pada database nantinya, sperti * Nama Supplier * Alamat Supplier * No. Telp. * No. Nota * Tanggal Transaksi * Kode Barang * Nama Barang * Harga * Quantity * Total * Subtotal * Pemberi * Penerima

2. Normal Satu

Pada tahap ini, kita bagi seluruh data yang diperlukan menjadi beberapa bagian berdasarkan jenis data tersebut,

Supplier * Nama Supplier * Alamat * No. Telp.

Transaksi * No. Nota * Kode Barang * Tanggal Transaksi * Nama Barang * Harga Barang * Satuan * Quantity * Total * Sub Total

3. Normal Dua

Pada tahap ini, kita bagi berdasarkan jenis dan memberikan primary key pada masing-masing tabel,

Supplier * Kode Supplier * Nama Supplier * Alamat * No. Telp.

Master Barang * Kode Barang * Nama Barang * Harga * Satuan

Transaksi * No. Nota * Tanggal Transaksi * Kode Barang * Nama Barang * Harga * Satuan * Quantity * Pemberi * Penerima

4. Normal Tiga

Pada tahap ini, kita bagi menjadi lebih terperinci untuk menghindari terjadinya redudancy,

Supplier * Tetap

Master Barang * Tetap

Transaksi Dibagi menjadi: Header Transaksi * No. Nota * Tanggal Transaksi * Kode Supplier * Pemberi * Penerimaan

Detail Transaksi * No. Nota * Kode Barang * Quantity

Syarat perlunyya normalisasi:

  • Fleksibilitas

Struktur database harus menunjang semua cara untuk menampilan data, sehingga ketika user menjalankan aplikasi dan meminta sesuatu dalam datbase, database harus dapat berjlan memenuhi permintaan user.

  • integritas data

Semua data dalam database yang berkaitan harus terhubung dalam suatu relationship. Sehingga ketika suatu data berubah,maka semua data yang berkaitan dengan data tersebut harus dapat berubah secara otomatis.

  • Efficiency

Pada database, ukuran suatu database merupakan hal yang penting. Maka dalam database, kita harus mengurangi redudansi data yang bisa menyebabkan ukuran databse membengkak.

  • Menghindari modification anomaly

Desain database yang baik menyajikan suatu keyakinan bahwa ketika user melakukan perubahan dalam database, maka tidak terjadi hal yang tidak diinginkan.

Kapan tidak memakai normalisasi

  • ketika kita ingin mempertahankan kesederhanaan database, sehingga user dapat melakukan query sendiri.
  • jika tidak ingin melakukan query yang rumit. normalisasi biasanya akan membuat rumit query karena melibatkan banyak tabel.
  • tidak selamanya normalisasi membuat baik, malah akan menyebabkan database semakin buruk

Normalisasi database biasanya jarang dilakukan dalam database skala kecil, dan dianggap tidak diperlukan pada penggunaan personal. Namun seiring dengan berkembangnya informasi yang dikandung dalam sebuah database, proses normalisasi akan sangat membantu dalam menghemat ruang yang digunakan oleh setiap tabel di dalamnya, sekaligus mempercepat proses permintaan data.

Proses normalisasi model data dapat diringkas sebagai berikut:

a.     Menemukan entitas-entitas utama dalam model data.

b.     Menemukan hubungan antara setiap entitas.

c.     Menentukan atribut yang dimiliki masing-masing entitas.

Normalisasi model data dilakukan dengan mengikuti langkah-langkah sederhana, mengubahnya agar memenuhi apa yang disebut sebagai bentuk normal pertama, kedua, lalu ketiga secara berturutan.

Langkah-Langkah Normalisasi

1.Bentuk Normal Pertama ( 1NF )

Bentuk First Normal Form (1NF)

Sebuah model data dikatakan memenuhi bentuk normal pertama apabila setiap atribut yang dimilikinya memiliki satu dan hanya satu nilai. Apabila ada atribut yang memiliki nilai lebih dari satu, atribut tersebut adalah kandidat untuk menjadi entitas tersendiri.

2.Bentuk Normal Kedua ( 2NF )

Sebuah model data dikatakan memenuhi bentuk normal kedua apabila ia memenuhi bentuk normal pertama dan setiap atribut non-identifier sebuah entitas bergantung sepenuhnya hanya pada semua identifier entitas tersebut.

3.Bentuk Normal Ketiga (3NF)

Bentuk Third Normal Form (3NF)

Tabel 1 dan 2 sudah memenuhi criteria bantuk 3NF, namun tidak untuk tabel 3, karena bila kita ingin merubah value bobot dari nilai, maka kita akan melakukan perubahan pada banyak record/baris yang lainnya. Sehingga pada bentuk 3NF, tabel 3 dapat dipecah lagi menjadi 2 tabel agar memenuhi kriteria bentuk 3NF

B.FIRST NORMAL FORM ( 1NF )

Implementasi 1-NF dari table data yang belum ternormalisasi di atas adalah dengan cara mengeliminasi keberadaan repeating groups dan dekomposisi relasi menjadi dua atau lebih dengan syarat “tidak boleh ada informasi yang hilang karena proses dekomposisi” Adapun caranya adalah :

1. Membuat 3 tabel yang memiliki fungsi sebagai berikut :

  • TBFaktur, berfungsi untuk menyediakan atribut-atribut yang bersifat atomic dari tiap nomor faktur (ID_Faktur), seperti : Tanggal, Nama_Pelanggan, Total_Bayar, Diskon dan Nama_Petugas
  • TBProduk, berfungsi untuk menyediakan atribut-atribut yang berulang atau tidak bernilai tunggal pada tiap nomor faktur (ID_Faktur), seperti : Nama_Barang dan harga
  • TBTransaksiDetail, berfungsi sebagai penghubung antara nomor faktur (ID_Faktur) dengan kode barang (ID_Barang) agar proses dekomposisi tidak menyebabkan kerusakan informasi.

2. Menentukan type data dari tiap atribut dan membuat digram relasional sebagai berikut

3. Pada table TBTransaksiDetail terdapat atribut “Harga” yang berfungsi untuk menyimpan harga per transaksi, sedangkan atribut “Harga_Default” yang terdapat pada table TBProduk adalah atribut yang berfungsi untuk menyimpan harga barang terbaru dari tiap jenis barang.Hal ini berguna untuk mengantisipasi adanya perubahan harga dari waktu ke waktu.

4. Primary key yang digunakan pada TBTransaksiDetail adalah “ID_Transaksi”. Atribut kunci tersebut merupakan candidate key yang dibentuk dari superkey hasil penggabungan 2 atribut yaitu : ID_Faktur dan ID_Barang

C.SECOND NORMAL FORM( 2NF )

Suatu relasi berada dalam 2nd normal form jika dan hanya jika:

oBerada dalam bentuk first normal form (1-NF)

oSemua atribut bukan kunci memiliki dependensi sepenuhnya dengan kunci primer (Primary Key)

Jika kita lihat kembali relasi bentuk 1-NF yang telah dibuat sebelumnya, maka atribut bukan kunci pada table TBFaktur yang tidak memiliki dependensi sepenuhnya dengan primary key (ID_Faktur), yaitu : “Nama_Petugas”. Oleh sebab itu dekomposisi relasi perlu dilakukan kembali dengan cara :

1.     Mengeliminasi atribut “Nama_Petugas” dari table TBFaktur

2.     Membuat tabel TBPetugas, menyediakan atribut-atribut yang terkait dengan identitas dan data pelanggan

THIRD NORMAL FORM ( 3NF )

Pada Second Normal Form (2-NF) atribut yang terkait dengan “Nama_Pelanggan” tidak didekomposisi dari table TBFaktur karena atribut tersebut masih memiliki dependensi fungsional dengan primary key (ID_Faktur) karena tiap nomor faktur akan berbeda untuk tiap pembeli/pelanggan. Tetapi pada tahap 3-NF (Third Normal Form), atribut “Nama_Pelanggan” harus didekomposisi relasi karena pada tahap ini atribut bukan kunci tidak boleh ada yang berdependensi transitif dengan kunci primer.

 

 

Atribut “Nama_Pelanggan” dikatakan berdependensi transitif terhadap primary key (ID_Faktur) karena :

1.     ID_Pelanggan → Nama_Pelanggan (Nama_Pelanggan berdependensi fungsional terhadap ID_Pelanggan)

2.     ID_Faktur → ID_Pelanggan (ID_Pelanggan berdependensi fungsional terhadap ID_Faktur, karena tiap nomor faktur akan dikeluarkan untuk suatu ID_Pelanggan tertentu)

3.     Sehingga dikatakan bahwa ID_Faktur memiliki dependensi transitif terhadap atribut Nama_Pelanggan

Bahasa - Bahasa dalam DBMS

03 October 2012 23:31:37 Dibaca : 122

1. Bahasa Definisi Data (Data Definition Language/ DDL) DDL adalah perintah-perintah yang biasa digunakan ileh administrator basis data (DBA) utnuk mendefinisikan skema ke DBMS. Skema adalah deskripsi lengkap tentang struktur medan, rekaman, dan hubungan data pada basis data

Index merupakan suatu mekanisme yang lazim digunakan pada basis data, yang memungkinkan pengambilan data dapat dilakukan dengan cepat.

 

Data Definition Language Data Definition Language (DDL) digunakan untuk mendefinisikan, mengubah dan menghapus basis data dan objek-objek yang diperlukan, misalnya tabel, view, user, index dan sebagainya.DDL biasa digunakan oleh DBA dalam pembuatan sebuah aplikasi basis data. Secara umum DDL yang digunakan ada empat, yaitu  •  CREATE untuk membuat objek baru.     

 •  USE untuk menggunakan objek.     

 •  ALTER untuk mengubah objek yang sudah ada.     

 •  DROP untuk menghapus objek.

2. Perancangan Basis Data Perancangan Basis Data memiliki beberapa tujuan, diantaranya memenuhi informasi yang berisikan kebutuhan-kebutuhan pengguna secara khusus dan aplikasi-aplikasinya. Memudahkan pengertian struktur informasi. Mendukung kebutuhan-kebutuhan pemrosesan dan beberapa obyek penampilan (response time, processing time, dan storage space). Siklus hidup aplikasi basis data berhubungan dengan siklus hidup sistem informasi. Siklus kehidupan sistem informasi sering disebut macro life cycle, dimana siklus kehidupan basis data merupakan micro life cycle. Proses perancangan basis data merupakan bagian dari siklus hidup sistem informasi. Ada 6 fase proses perancangan basis data, yakni:

1. Pengumpulan data dan analisa Proses identifikasi dan analisa kebutuhan-kebutuhan data disebut pengumpulan data dan analisa. Untuk menentukan kebutuhan-kebutuhan suatu sistem basis data, pertama harus mengenal bagian-bagian lain dari sistem informasi yang akan berinteraksi dengan sistem basis data, termasuk para pemakai yang ada dan para pemakai yang baru serta aplikasi-aplikasinya. Kebutuhan-kebutuhan dari para pemakai dan aplikasi inilah yang kemudian dikumpulkan dan dianalisa. Ada 4 aktivitas pengumpulan data dan analisis, yaitu:     

a.    Menentukan kelompok pemakai dan bidang-bidang aplikasinya.     

b.    Peninjauan dokumentasi yang ada. 

c.    Analisa lingkungan operasi dan pemrosesan data.    

d.    Daftar pertanyaan dan wawancara.

 

2. Perancangan basis data secara konseptual Tujuan dari fase ini adalah menghasilkan conceptual schema untuk basis data yang tergantung pada sebuah DBMS yang spesifik. Sering menggunakan sebuah high-level data model seperti ERD (Entity Relationship Diagram) model selama fase ini. Dalam conceptual schema, kita harus memerinci aplikasi-aplikasi basis data yang diketahui dan transaksi-transaksi yang mungkin.

 3. Pemilihan DBMS Pemilihan basis data ditentukan oleh beberapa faktor, diantaranya : faktor teknik, ekonomi dan  organisasi.

4. Perancangan basis data secara logika (pemetaan model data) Fase selanjutnya dari perancangan basis data adalah membuat sebuah skema konseptual dan skema eksternal pada model data dari DBMS yang terpilih. Fase ini dilakukan oleh pemetaan skema konseptual dan skema eksternal yang dihasilkan pada fase 2. Pada fase ini, skema konseptual ditransformasikan dari model data tingkat tinggi yang digunakan pada fase 2 ke dalam model data dari DBMS yang dipilih pada fase 3.

5. Perancangan basis data secara fisik Perancangan basis data secara fisik merupakan proses pemilihan struktur-struktur penyimpanan dan jalur-jalur akses pada file-file basis data untuk mencapai penampilan yang terbaik pada bermacam-macam aplikasi. Selama fase ini, dirancang spesifikasi-spesifikasi untuk basis data yang disimpan yang berhubungan dengan struktur-struktur penyimpanan fisik, penempatan record dan jalur akses. Berhubungan dengan internal schema (pada istilah 3 level arsitektur DBMS). Beberapa petunjuk dalam pemilihan perancangan basis data secara fisik:

  • Response time, ialah waktu akses basis data untuk data item yang ditunjuk oleh suatu transaksi. Response time juga dipengaruhi oleh beberapa faktor yang tidak berada di bawah pengawasan DBMS, seperti penjadwalan sistem operasi atau penundaan komunikasi.
  • Space utility, ialah jumlah ruang penyimpanan yang digunakan oleh file-file basis data dan struktur jalur akses.
  • Transaction throughput, ialah rata-rata jumlah transaksi yang dapat diproses per menit oleh sistem basis data dan merupakan parameter kritis dari sistem transaksi (misal : digunakan pada pemesanan tempat di pesawat, bank, dll). Hasil dari fase ini adalah penentual awal dari struktur penyimpanan dan jalur akses untuk file-file basis data.

6. Implementasi sistem basis data Setelah perancangan secara logika dan secara fisik lengkap, kita dapat melaksanakan sistem basis data. Perintah-perintah dalam DDL dan DML (Data Manipulation Language) dari DBMS yang dipilih, dihimpun dan digunakan untuk membuat skema basis data dan file-file basis data (yang kosong). Sekarang basis data tsb dimuat (disatukan) dengan datanya. Jika data harus dirubah dari sistem komputer sebelumnya, perubahan-perubahan yang rutin mungkin diperlukan untuk format ulang datanya yang kemudian dimasukkan ke basis data yang baru. Transaksi-transaksi basis data sekarang harus dilaksanakan oleh para programmer aplikasi. Spesifikasi secara konseptual diuji dan dihubungkan dengan kode program dengan perintah-perintah dari embedded DML yang telah ditulis dan diuji. Suatu saat transaksi tsb telah siap dan data telah dimasukkan ke dalam basis data, maka fase perancangan dan implementasi telah selesai, dan kemudian fase operasional dari sistem basis data dimulai.

2. Bahasa Manipulasi Data (Data Manipulation laguage/ DML) DML adalah perintah-perintah yang digunakan untuk mengubah , mamnipulasi dan mengambil data pada basis data. Tindakan seperti menghapus, mengubah, dan mengambil data menjadi bagian dari DML. DML pada dasarnya dibagi menjadi dua :

- Prosedural, yang menuntut pengguna menentukan data apa saja yang diperlukan dan bagaimana cara mendapatkannya.

- Nonprosedural, yang menuntut pengguna menentukan data apa saja yang diperlukan, tetapi tidak perlu menyebutkan cara mendapatkannya.

3. DQL  (Data Query Language) DQL adalah singkatan yang dapat berisi banyak makna yang tercantum di bawah ini. DQL - Data Query Language Mungkin ada arti populer untuk DQL dengan definisi yang paling populer adalah bahwa dari data Query Language Lebih DQL Definisi Kami mencari database kami dan tidak bisa menemukan definisi selain Query Language Data DQL Jika Anda memiliki informasi lebih lanjut atau mengetahui definisi lain untuk DQL, beritahukan kami agar kami dapat meninjau dan menambahkan informasi bahwa untuk database kami. Setiap upaya telah dilakukan untuk menyediakan Anda dengan singkatan yang benar untuk DQL. Jika kita merindukan tanda, kami akan sangat menghargai bantuan Anda dengan memasukkan arti benar atau alternatif dalam kotak di bawah ini. Definisi telah disusun dari mesin pencari populer dan beberapa hasil disediakan untuk Anda.

 

4.DCL atau Data Control LanguageDCL (bukan BCL) merupakan perintah SQL yang berhubungan dengan pengaturan hak akses user MySQL, baik terhadap server, database, tabel maupun field. Perintah SQL yang termasuk dalam DCL antara lain :

·                     GRANT

·                     REVOKE

 

Membuat, Menampilkan, Membuka dan Menghapus Database

1. Membuat Database

Bentuk perintah di atas akan membuat sebuah database baru dengan nama nama_database. Aturan penamaan sebuah database sama seperti aturan penamaan sebuah variabel, dimana secara umum nama database boleh terdiri dari huruf, angka dan under-score (_). Jika database yang akan dibuat sudah ada, maka akan muncul pesan error. Namun jika ingin otomatis menghapus database yang lama jika sudah ada, aktifkan option IF NOT EXISTS.Setiap kita membuat database baru, maka sebenarnya MySQL akan membuat suatu folder (direktori) sesuai dengan nama databasenya yang ditempatkan secara default di \mysql\data. Di dalam folder tersebut nantinya akan terdapat file-file yang berhubungan dengan tabel dalam database.Berikut ini contoh perintah untuk membuat database baru dengan nama “mahasiswa” :

 

CREATE DATABASE mahasiswa;

Jika query di atas berhasil dieksekusi dan database berhasil dibuat, maka akan ditampilkan pesan sebagai berikut :

Query OK, 1 row affected (0.02 sec)

 

2. Melihat DatabaseUntuk melihat database yang baru saja dibuat atau yang sudah ada, dapat menggunakan perintah sebagai berikut :

SHOW DATABASES;

Hasil dari perintah di atas akan menampilkan semua database yang sudah ada di MySQL. Berikut ini contoh hasil dari query di atas :

 

+--------------+ | Database     | +--------------+ | mahasiswa    | | mysql        | | test       | +--------------+ 3 rows in set (0.02 sec)

 

3. Membuka DatabaseSebelum melakukan manipulasi tabel dan record yang berada di dalamnya, kita harus membuka atau mengaktifkan databasenya terlebih dahulu. Untuk membuka database “mahasiswa”, berikut ini querynya :

 

USE mahasiswa;

 

Jika perintah atau query di atas berhasil, maka akan ditampilkan pesan sebagai berikut :

Database changed

4. Menghapus DatabaseUntuk menghapus suatu database, sintaks umumnya adalah sbb :

 

DROP DATABASE [IF EXISTS] nama_database;

 

Bentuk perintah di atas akan menghapus database dengan nama nama_database. Jika databasenya ada maka database dan juga seluruh tabel di dalamnya akan dihapus. Jadi berhati-hatilah dengan perintah ini! Jika nama database yang akan dihapus tidak ditemukan, maka akan ditampilkan pesan error. Aktifkan option IF EXISTS untuk memastikan bahwa suatu database benar-benar ada.Berikut ini contoh perintah untuk menghapus database dengan nama “mahasiswa” : 

DROP DATABASE mahasiswa;

Membuat, Mengubah dan Menghapus Table

1. Membuat TableBentuk umum perintah SQL untuk membuat tabel baru adalah sbb:

 

CREATE TABLE nama_tabel ( field1 tipe(panjang), field2 tipe(panjang), ... fieldn tipe(panjang), PRIMARY KEY (field_key) ); 

 

4. TCL

 Kontrol Transaksi (TCL) pernyataan yang digunakan untuk mengelola perubahan yang dilakukan oleh pernyataan DML. Hal ini memungkinkan pernyataan yang akan dikelompokkan bersama ke dalam transaksi logis.

  • COMMIT - menyimpan pekerjaan dilakukan
  • SAVEPOINT - mengidentifikasi titik dalam suatu transaksi yang Anda kemudian dapat memutar kembali
  • ROLLBACK - mengembalikan database ke aslinya sejak COMMIT terakhir
  • SET TRANSAKSI - Mengubah opsi transaksi seperti tingkat isolasi dan apa segmen rollback untuk menggunakan

 

                                    

 

 

Tipe data pada data base manajemen sistem

19 September 2012 09:04:01 Dibaca : 595

Tipe Data Pada MySQL

Seperti yang kita ketahui saat membuat field pada tabel di sebuah database, kita akan di minta untuk menentukan tipe data apa yang akan di gunakan sesuai dengan data yang akan di simpan pada database, berikut keterangan daripada tipe-tipe data di MySQL.

Tipe TINYINT adalahBerarti integer dengan range yang sangat kecil yaitu –2 sampai 2 , -1 atau 0 sampai 2. -1 jika UNSIGNED. Atribut yang dibolehkan adalah AUTO_INCREMENT, UNSIGNED, dan ZEROFILL. Harga default adalah NULL jika bisa atau 0 jika NOT NULL dengan peyimpanan 1 byte.

 

 

Tipe SMALLINT adalah Berarti integer dengan range yang kecil yaitu –2 sampai 2, -1 atau 0 sampai 2.
-1 jika UNSIGNED. Atribut yang dibolehkan adalah AUTO_INCREMENT, UNSIGNED, dan ZEROFILL. Harga default adalah NULL jika bisa atau 0 jika NOT NULL dengan peyimpanan 2 byte.

Tipe MEDIUMINT adalah Berarti integer dengan range yang sangat kecil yaitu –2 sampai 2, -1 atau 0 sampai 2. -1 jika UNSIGNED. Atribut yang dibolehkan adalah AUTO_INCREMENT, UNSIGNED, dan ZEROFILL. Harga default adalah NULL jika bisa atau 0 jika NOT NULL dengan peyimpanan 3 byte.

Data type pada Microsoft Acces 2007

Sebelum kita memulai membuat database sebaiknya kita perlu mengetahui type Data yang terdapat didalam tabel itu sendiri sehingga kita tahu peruntukannya untuk apa saja.

Untuk mengetahui type data tersebut sekarang kita buka aja dulu Ms. Acces 2007 kemudian create Database dan kita simpan dengan nama database1. Maka Secara Otomatis akan muncul worksheet acces dengan tampilan awal yaitu table1, kita save table tersebut dan diberinama table1.

Arahkan cursor ke table1 yang berada dibilah kiri, kemudian klik kanan dan pilih View - Design View dan ketika terbuka maka akan muncul Field Nama, Data Type dan Description.

Penjelasannya adalah sebagai berikut :

 

Field Name adalah untuk nama kolom dalam tabel yang akan kita buat misalkan Nomor urut, nama, tanggal, alamat, jumlah dan lain sebagainya.

Data type adalah jenis data yang disesuaikan fungsinya yang diberinama di Field name tersebut misalkan jika di Field Name kita beri judul Nomor Urut maka Type Datanya bisa dengan memilih Nomor yang muncul Secara Otomatis (maka pilih AutoNumber) atau manual dalam mengisinya (pilih Number).

Description adalah sebagai penjelasan terhadap kolom yang dibuat tadi.

Mengenal dan memahami Data type itu penting agar tidak salah dalam pembuatan tabel nantinya. Adapun Type Data yang disediakan di ms. Acces 2007 adalah sebagai berikut :

1.      Text adalah type data berupa teks atau huruf, angka, spasi dan tanda baca lainnya yang mampu menampung karakter dari huruf dan angka tersebut sebanyak 255 karakter.

2.       Memo adalah type data yang hampir sama dengan Text tetapi karakter yang mampu ditampungnya sangat besar yaitu sampai dengan 65535 karakter.  Memo, adalah tipe data yang berisikan huruf atau kombinasi huruf dan angka.

3.       Number adalah type data yang diperuntukan untuk angka saja.

4.       Date/Time adalah type data yang diperuntukan untuk menampilkan tanggal dan waktu.

5.       Currency adalah type data yang hampir sama dengan number tapi diperuntukan untuk format mata uang.

6.       Yes/No adalah type data untuk sebuah logika Ya atau Tidak.

7.       OLE Object adalah type data yang dipergunakan untuk menampung gambar atau obyek dengan ukuran tidak lebih dari 128 MB.

8.       Hyperlink adalah type data untuk menmapilkan alamat hyperlink dengan batas maksimum penampungannya adalah 2048 karakter.

9.       AutoNumber seperti yang telah dijelaskan diatas, adalah nilai angka atau variasi angka huruf (yang akan berubah hanya angka apabila formatnya perpaduan huruf dan angka) yang akan muncul Secara Otomatis ketika kita menginput data baru dan angka tersebut tidak bisa kita edit.

10.    Lookup Wizard adalah type data untuk menampilkan data dari tabel atau record lainnya atau dengan akta lain data yang diulang.

11.    Attachment adalah type data yang digunakan untuk menampung/menyimpan/menampilkan lampiran persis seperti dalam sebuah email dan semua type data bisa ditampung disini.

 

 

pengertian dan aplikasi data base

12 September 2012 16:16:25 Dibaca : 901

1.       DBMS (DataBase Management System) adalah sistem yang secara khusus dibuat untuk memudahkan pemakai dalam mengelola basis data. Sistem ini dibuat untuk mengatasi kelemahan sistem pemrosesan yang berbasis berkas. pada pendekatan berbasis berkas, umumnya perencanaan sistem didasarkan pada kebutuhan individu pemakai, bukan berdasarkan kebutuhan sejumlah pemakai. setiap kali terdapat kebutuhan baru dari seorang pemakai, kebutuhan segera diterjemahkan ke dalam program komputer.

 

2.       Aplikasi yang digunakan dalam mengelolah database :

    1.     MySQL

MySQL adalah DBMS yang Multi-thread dan Multi-User, dengan 6 juta installasi di seluruh dunia, MySQL dikembangkan di MySQLAB, dan ditawarkan secara gratis dalam GNU General Public Lisence (GNU), namun mereka juga menjual dibawah lisensi komersial untuk kasus-kasus dimana penggunaannya tidak cocok dengan penggunaan GPL.Kedua orang Swedia dan satu orang Finlandia yang mendirikan MySQLAB adalah: David Axmark, Allan Larsson, danMichael “Monty” Widenius. 

2.     Oracle

 oracle logo

Basis data Oracle adalah basis data relasional yang terdiri dari kumpulan data dalam suatu sistem manajemen basis data RDBMS. Perusahaan perangkat lunak Oracle memasarkan jenis basis data ini untuk bermacam-macam aplikasi yang bisa berjalan pada banyak jenis dan merk perangkat keras komputer (platform).Basis data Oracle ini pertama kali dikembangkan oleh Larry Ellison, Bob Miner dan Ed Oates lewat perusahaan konsultasinya bernama Software Development Laboratories (SDL) pada tahun 1977. Pada tahun 1983, perusahaan ini berubah nama menjadi Oracle Corporation sampai sekarang.  

3.     Microsoft SQL Server

Microsoft SQL Server Merupakan produk andalan microsoft untuk database server. Umum digunakan di dunia bisnis yang memiliki basis data berskala kecil hingga menengah, dan berkembang dengan digunakannya SQL Server pada basis data besar. Bahasa Query utamanya adalah Transact-SQL yang merupakan implementasi dari SQL standar ANSI/ISO yang digunakan oleh Microsoft dan Sybase. Microsoft SQL Server dan Sybase/ASE dapat berkomunikasi lewat jaringan dengan menggunakan protokol TDS (Tabular Data Stream). Selain dari itu, Microsoft SQL Server juga mendukung ODBC (Open Database Connectivity), dan mempunyai driver JDBC untuk bahasa pemrograman Java. Fitur yang lain dari SQL Server ini adalah kemampuannya untuk membuat basis data mirroring dan clustering.

4.     Firebird

Firebird (juga disebut FirebirdSQL) adalah sistem manajemen basisdata relasional yang menawarkan fitur-fitur yang terdapat dalam standar ANSI SQL-99 dan SQL-2003. RDBMS ini berjalan baik di Linux, Windows, maupun pada sejumlah platform Unix. Firebird di diarahkan dan di-maintain oleh FirebirdSQL Foundation. Ia merupakan turunan dari Interbase versi open source milik Borland.

5.     Visual Foxpro

Visual FoxPro adalah bahasa pemrograman berorientasi objek dan prosedural dari Microsoft. Awalnya bahasa pemrograman ini dikenal dengan nama FoxBASE yang diluncurkan oleh Fox Software pada awal 1984. Pada tahun 1989 foxbase berkembang menjadi foxpro dan memperkenalkan GUI. Fox Technologies kemudian bergabung dengan Microsoft pada 1992 sehingga di depan nama Foxpro ditambahkan awalan "Visual". Pada tahun 1995 Foxpro berkembang menjadi Visual Foxpro dan dilengkapi dengan pemrograman berorientasi objek, serta dapat membangun aplikasi berbasis web.

6.     Postgre SQL

 

Postgre SQL adalah sebuah sistem basis data yang disebarluaskan secara bebas menurut Perjanjian lisensi BSD. Piranti lunak ini merupakan salah satu basis data yang paling banyak digunakan saat ini, selain MySQL dan Oracle. PostgreSQL menyediakan fitur yang berguna untuk replikasi basis data. Fitur-fitur yang disediakan PostgreSQL antara lain DB Mirror, PGPool, Slony, PGCluster, dan lain-lain. Awal tahun 1982 Michael Stonebraker dari University of California Barkeley membuat sebuah ORDBMS dan merupakan software open source yang gratis. PostgreSQL adalah sistem database yang kuat untuk urusan relasi.

7.     dBase

dBASE adalah sebuah sistem manajemen basisdata (DBMS) yang secara luas digunakan pada mikrokomputer yang dikenalkan oleh Ashton-Tate untuk komputer CP/M, dan kemudian untuk platform Apple II, Apple Macintosh dan IBM PC dengan DOS yang menjadi salah satu perangkat lunak yang paling laris selama beberapa tahun pada saat itu. Ketidakmampuan dBASE untuk bertransisi dengan sistem operasi yang lebih baru, Microsoft Windows pada akhirnya membuat penggunaan dBASE tergantikan oleh produk-produk lainnya yang lebih baru seperti Paradox, Clipper, FoxPro, dan Microsoft Access.

 8. IBM DB/2

IBM DB/2, DB2 memiliki sejarah panjang dan ditenggarai sebagai perangkat lunak basisdata pertama yang mengimplementasikan SQL, meski demikian, umumnya Oracle lebih dikenal sebagai perangkat lunak basisdata pertama yang dikomersilkan secara luas dengan menyertakan dukungan atas SQL. IBM DB2 Enterprise Server Edition merupakan sebuah perangkat lunak sistem manajemen basisdata relasional yang dikembangkan oleh IBM. Perangkat lunak tersebut utamanya berjalan pada sistem operasiUnix (sebut saja AIX), Solaris, Linux, IBM i/OS/400, z/OS, dan Microsoft Windows. DB2 juga diketahui digunakan sebagai sistem basis data pada IBM InfoSphere Warehouse edition.

9.     Microsoft Access (atau Microsoft Office Access)

Microsoft Access (atau Microsoft Office Access) adalah sebuah program aplikasi basis data         komputer relasional yang ditujukan untuk kalangan rumahan dan perusahaan kecil hingga menengah. Aplikasi ini merupakan anggota dari beberapa aplikasi Microsoft Office, selain tentunya Microsoft Word, Microsoft Excel, dan Microsoft Power Point. Aplikasi ini menggunakan mesin basis data Microsoft Jet Database Engine, dan juga menggunakan tampilan grafis yang intuitif sehingga memudahkan pengguna.