Entity Relationship Diagram
- Contoh Kasus :
Entity Relationship Diagram Rumah Sakit
Sebuah Rumah Sakit didalamnya terdapat banyak entitas, diantaranya yaitu Dokter, Pasien, Obat, dan Kamar, Setiap entitas diatas mempuyai relasi (hubungan) satu dengan lainnya. Contohnya seorang dokter menangani banyak pasien, setiap pasien ditangani seorang dokter atau lebih. Dan begitu juga dengan entitas lainnya. Untuk menggambarkan hubungan yang terjadi antar entitas diatas, kita perlu membuat Entity Relationship Diagramnya
- LANGKAH – LANGKAH MEMBUAT ERD rumah sakit
1.Mengidentifikasikan dan menetapkan seluruh himpunan entitas yang akan terlibat.
- Terdapat 3 Entity yaitu Dokter, Pasien, Kamar dan Obat
2.Menentukan atribut-atribut key dari masing-masing himpunan entitas.
- entitas Dokter : Id_Dokter, Nama_Dokter, Spesialist_Dokter
- entita Pasien : Id_Pasien., Nama_Pasien, Tgl_lhr, Jenis kelamin, alamat
- entitas Kamar : Kd-kamar, nama kamar, keterangan
- entitas Obat : Kd_obat,nama_obat, jenis_obat,satuan, harga
3. Menentukan atribut primary key dari setiap entity.
- entitas Dokter : Id_Dokter
- Entitas Pasien : Id_Pasien
- Entitas Kamar : Kd_ Kamar
- Entitas Obat : Kd_ Obat
4. Menentukan relationship antar entity.
- Dokter - Menangani - Pasien
- Pasien - mendapatkan - Obat
- Pasien - Rawat - Kamar
5. Menentukan atribut-atribut dari setiap relationship (jika ada).
- menangani : Mendiagnosa, memeriksa, memberi resep
- mendapatkan : No.Urut, tanggal
- Rawat : id_rawat, tglmasu, tgl keluar
6. Menentukan Cardinality Ratio.
- Dokter- menangani - Pasien ( N:M)
- Pasien - Mendapatkan - Obat (N:M)
- Pasien - Rawat - Kamar (N:1)
7. Menentukan Participation Constraint.
Normalisasi Pada Database
• Normalisasi merupakan teknik analisis data yang mengorganisasikan atribut-atribut data dengan cara mengelompokkan sehingga terbentuk entitas yang non-redundant, stabil, dan fleksible
• Normalisasi dilakukan sebagai uji coba pada suatu relasi secara berkelanjutan untuk menentukan apakah relasi itu sudah baik, yaitu dapat dilakukan proses insert,update,delete, dan modifikasi pada satu atau beberapa atribut tanpa mempengaruhi integritas data dalam relasi tersebut.
contoh bentuk Unnormalized Form
Pada proses normalisasi terhadap tabel pada database dapat dilakukan dengan tiga tahap normalisasi antara lain :
1. Bentuk Normal ke Satu(1NF)
a. Syarat :
b. Tidak ada set atribut yang berulang atau bernilai ganda.
c. Telah ditentukannya primary key untuk tabel atau relasi.
d. Tiap atribut hanya memiliki satu pengertian.
e. Tiap atribut yang dapat memiiki banyak nilai sebenarnya menggambarkan entitas atau relasi yang terpisah.
contoh :
- Value pada masing-masing kolom hanya ada Satu
2. Bentuk Normal ke Dua(2NF)
Syarat :
a. Bentuk data telah memenuhi kriteria bentuk normal ke satu.
b. Atribut bukan kunci(non-key attribute) haruslah memiliki ketergantungan fungsional sepenuhnya pada primary key
- bentuk norma ke dua (2NF) Memiliki ketergantungan fungsional
contoh :
tabel 1 :
tabel 2 :
tabel 3 :
3. Bentuk Normal ke Tiga(3NF)
a. Syarat :
b. Bentuk data telah memenuhi kriteria bentuk normal ke dua.
c. Atribut bukan kunci(non-key attribute) tidak boleh memiliki ketergantungan fungsional terhadap atribut bukan kunci lainnya. Seluruh atribut bukan kunci pada suatu relasi hanya memiliki ketergantungan fungsional terhadap primary key di relasi itu saja.
tabel 3a
tabel 3b
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.
referensi :
http://blog-dani.com/database/normalisasi-pada-database.html
http://fairuzelsaid.wordpress.com/2010/01/24/sistem-basis-data-normalisasi/
Tipe Data Dalam Database
Tipe data (data type) selalu digunakan untuk menentukan jenis data dari suatu field dalam sebuah tabel.
ada beberapa jenis tipe data dalam database , yaitu
1. Ms. Acsess
Terdapat 10 jenis tipe data dalam database yang disediakan Ms Access, yaitu :
- Auto Number
Menampilkan angka secara otomatis dimulai dari angka 1, dan dilanjutkan 2,3,4 dan seterusnya.
· - Currency
Menampilkan data digit, tanda minus, dan tanda titik desimal dengan 15 digit sebelah kiri tanda titik desimal dan 4 digit disebelah kanan titik desimal
- Date/Time
Menampung data tanggal, waktu, dan tahun dimulai dari 100 sampai dengan 9999.
- Hyperlink
Menampung data teks berwarna, bergaris bawah, dan grafik.
- Lookup Wizard
Menampilakan suatu tipe data dari banyak tipe data yang diambil dari tabel dan Query.
- Memo
Menampung data teks (huruf, bilangan, tanda baca, dan simbol grafik) sebanyak 65535 karakter. Tipe ini tidak dapat diindeks.
- Number
Menampung digit, tanda minus, dan titik desimal. Tipe ini memiliki 5 ukuran bilanngan dan jumlah digit.
- OLE objek
Menampung foto/gambar grafik, rekaman suara dan video, dan spreadsheet. Kapasitas maksimum data tipe ini adalah 1 Gb. Tipe ini tidak dapat diindeks.
- Teks
Menampung data teks (huruf, angka, dan simbol grafik) sebanyak 255 karakter. Standar karakter terpasang sebesar 50 karakter.
- Yes/No
Menampung salah satu dari dua yang ada Yes/No, True/False, dan On/Off.
2. My SQL
tipe-tipe data di MySQL.
- Tinyintma
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 1 byte.
- Smallint
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.
- Mediumint
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.
- Int
Berarti integer dengan range yang normal 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 4 byte.
- Bigint
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 8 byte.
- Float
Berarti floating-point dengan range kecil yaitu antara +1.175494351E-38
sampai +3.402823466E+38 serta dengan single presisi. Atribut yang dibolehkan adalah ZEROFILL. Harga default NULL jika bisa atau 0 jika NOT NULL. Tempat penyimpanan 4 byte.
- Double
Berarti floating-point dengan range besar yaitu antara +2.22507385072014E-308 sampai +1.7976931348623157E308 serta dengan double presisi. Atribut yang dibolehkan adalah ZEROFILL. Harga default NULL jika bisa atau 0 jika NOT NULL. Tempat penyimpanan 8 byte.
- Decimal
Berarti floating-point yang tersimpan sebagai string (1 byte untuk setiap digit, tanda desimal, atau tanda ’-‘). Range harga sama seperti .DOUBLE. Atribut yang dibolehkan adalah ZEROFILL. Tempat penyimpanan sebesar 9Mbyte. Jika D diisi 0 berarti tidak punya nilai desimal.
- Charm (M)
Karakter dengan panjang 0 sampai Mbyte. Atribut yang dibolehkan adalah BINARY. Harga default adalah NULL jika bisa atau “ “ jika NOT NULL. Tempat pemyimpanan Mbyte
- Varchar
Variabel karakter dengan panjang 0 sampai Mbyte. Atribut yang dibolehkan adalah BINARY. Harga default adalah NULL jika bisa atau “ “ jika NOT NULL. Tempat pemyimpanan M+1 byte
- Tinytext
Teks berukuran kecil dengan panjang 0 sampai 2. -1 byte. Harga default adalah NULL jika bisa atau “ “ jika NOT NULL. Tempat penyimpanan sebanyak panjang harga plus 1 byte
- Text
Teks yang normal dengan panjang 0 sampai 2. -1 byte. Harga default adalah NULL jika bisa atau “ “ jika NOT NULL. Tempat penyimpanan sebanyak panjang harga plus 2 byte.
- Mediumtext
Teks berukuran sedang dengan panjang 0 sampai 2. -1 byte. Harga default adalah NULL jika bisa atau “ “ jika NOT NULL. Tempat penyimpanan sebanyak panjang harga plus 3 byte.
- Longtext
Teks berukuran besar dengan panjang 0 sampai 2. -1 byte. Harga default adalah NULL jika bisa atau “ “ jika NOT NULL. Tempat penyimpanan sebanyak panjang harga plus 4 byte.
- Enium
Berarti kolom hanya boleh diisi dengan salah satu dari harga yang ada. Harga default adalah NULL jika bisa atau harga1 jika NOT NULL. Tempat penyimpanan adalah 1 byte untuk enumerasi dengan anggota 1 sampai 255 dan 2 byte untuk enumerasi dengan anggota 256 sampai 65535
- Set
Berarti kolom boleh dikosongi atau diisi dengan beberapa harga dari daftar harga yang ada. Harga default adalah NULL jika bisa atau â€Â “ jika NOT NULL. Tempat penyimpanan adalah 1 byte untuk set dengan anggota 1 sampai 8, 2 byte untuk set dengan anggota 9 sampai 16, 3 byte untuk set dengan anggota 17 sampai 24, 4 byte untuk set dengan anggota 25 sampai 32, atau 8 byte untuk set dengan anggota 33 sampai 64.
- Date
Untuk kolom tanggal dengan format YYYY-MM-DD dan range antara “1000- 01-01â€Â sampai “9999-12-31â€Â. Harga default adalah NULL jika bisa atau “0000- 00-00â€Â jika NOT NULL. Tempat penyimpanan 3 byte.
- Time
Untuk kolom jam dengan format hh:mm: ss atau -hh:mm: ss untuk harga negatif. Range harga antara “-838:59:59â€Â sampai “838:59:59â€Â. Harga default adalah NULL jika bisa atau “00:00:00â€Â jika NOT NULL. Tempat penyimpanan 3 byte.
- Datetime
Gabungan antar hari dan jam dengan format YYYY-MM-DD hh:mm: ss dan range antar “1000-01-01 00:00:00â€Â sampai “9999-12-31 23:59:59â€Â. Harga default adalah NULL jika bisa atau “0000-00-00 00:00:00â€Â jika NOT NULL. Tempat penyimpanan 8 byte.
- Timestamp
Hampir sama dengan DATETIME tapi dengan format YYYYMMDD hhmmss dan range antara 19700101000000 sampai suatu saat di tahun 2037. Harga default adalah hari dan jam saat itu. Tempat penyimpanan 4 byte.
- Year
Untuk kolom tahun denga format YYYY dan range antara 1900 sampai 2155. Harga default adalah NULL jika bisa atau 0000 jika NOT NULL. Tempat penyimpanan 3 byte.
- Data Kosong
NULL berarti kosong atau tidak diisi data atau bisa juga berarti data yang tidak jelas, data yang hilang ataupun yang lainnya.
- Numeric
MySQL dapat menerima masukan berupa angka-angka yang dibagi atas integer (angka tanpa pecahan) dan floating-point (angka dengan pecahan). MySQL juga mengerti notasi scientific yaitu integer atau floating-point yang diikuti tanda ‘e’ atau ‘E’, tanda ‘+’ atau ‘-‘. Misalnya angka 1.34E+12 atau 3.23e-5.
Tipe ini untuk harga integer dan floating-point. Untuk integer kolom haruslah PRIMARY KEY atau indeks yang unik jika ia diberi atribut AUTO_INCREMENT (dapat otomatis mengurutkan angka). Jika diberikan atribut UNSIGNED berarti angka tidak boleh negatif. Sedangkan atribut ZEROFILL menandakan bahwa angka diawali dengan angka nol.
- Tynyblod
Sebuah BLOB (semacam catatan) atau TEXT dengan lebar maksimum 255 (2^8 – 1) karakter.
- Blod
Sebuah BLOB atau TEXT dengan lebar maksimum 65535 (2^16 – 1) karakter.
- Mediumblod
Sebuah BLOB atau TEXT dengan lebar maksimum 16777215 (2^24 – 1) karakter
- Longblod
Sebuah BLOB atau TEXT dengan lebar maksimum 4294967295 (2^32 – 1) karakter.
Bahasa Perintah-perintah SQL
SQL Merupakan sebuah bahasa permintaan yang melekat pada suatu SMBD termasuk MySQL. perintahnya dapat kita sebut dengan Query.
Banyak perintah dan fungsi SQL yang dapat digunakan untuk mendefenisikan maupun memanipulasi database. Suatu rangkaian aktivitas yang berhubungan dengan pemulihan dan pengoptimalan perintah query di dalam database pada SQL dapat dituliskan fasilitas yang memiliki antarmuka grafis yaitu Query Analyzer. Beberapa aktivitas yang dimaksud, antara lain :
- Melakukan query pada database SQL dengan menggunakan perintah-perintah SQL untuk melihat teks atau grid.
- Melihat representasi grafik dari langkah-langkah untuk mengakses query.
- Melakukan analisa kinerja indeks
- Menjalankan skrip Transact SQL dari prosedur tersimpan.
Dalam penggunaannya, perintah SQL dikategorikan menjadi tiga sub perintah, yaitu DDL (Data Definition Language), DML (Data Manipulation Language), DCL (Data Control Language).
1. DDL (Data Definition Language)
DDL merupakan bagian dari SQL yang digunakan untuk mendefenisikan data dan proyek database. Perintah digunakan untuk mendefenisikan suatu proyek, yaitu membuat, mengubah, menghapus dan memberikan izin.
Beberapa perintah pada SQL yang temasuk DDL, seperti :
A. Create, yaitu perintah yang digunakan untuk membuat, termasuk diantaranya membuat database baru, tabel baru, view baru, dan kolom.
contoh :
Create Table untuk Membuat Tabel
Create Index untuk Membuat Index
Create View untuknMembuat View
B. Alter, yaitu perintah yang digunakan untuk mengubah struktur tabel yang telah dibuat. Pekerjaannya mencakup mengganti nama tabel, menambah kolom, mengubah kolom, menghapus kolom, maupun memberikan atribut pada kolom.
Contoh :
Alter Table untuk Mengubah atau menyisipkan ke dalam tabel
C. Drop, yaitu perintah ini digunakan untuk menghapus database dan tabel.
contoh :
Drop Table untuk Menghapus Tabel
Drop Index untuk Menghapus Index
Drop View untuk Menghapus View
2. DML (Data Manipulation Language)
DML merupakan sub bahasa SQL yang digunakan untuk memanipulasi data dalam database yang telah terbuat.
Beberapa Perintah yang digunakan diantaranya :
A. Insert, yaitu perintah yang digunakan untuk menyisipkan atau memasukkan data baru ke dalam tabel. Penggunannya setelah database dan tabel telah selesai dibuat.
B. Select, yaitu perintah yang digunakan untuk mengambil data atau menampilkan data dari satu tabel atau beberapa tabel dalam relasi. Data yang diambil dapat kita tampilkan dalam layar prompt MySQL secara langsung maupun ditampilkan pada tampilan aplikasi.
C. Update, yaitu perintah yang digunakan untuk memperbarui data lama menjadi data terkini. Jika anda memiliki data yang salah atau kurang up to date dengan kondisi sekarang, maka dapat diubah isi datanya dengan menggunakan perintah UPDATE.
D. Delete, yaitu perintah yang digunakan untuk menghapus data dari tabel. Biasanya data yang dihapus merupakan data yang sudah tidak diperlukan lagi. Pada saat menghapus data, perintah yang telah dijalankan tidak dapat digagalkan, sehingg data yang telah hilang tidak dapat dikembalikan lagi.
3. DCL (Data Control Language)
DCL merupakan sub bahasa SQL yang digunakan untuk melakukan pengotrolan data dan server databasenya.
Perintah-perintah DCL, diantaranya :
A. Grand, yaitu perintah yang digunakan untuk memberikan hak/ijin akses oleh administrator (pemilik utama) server kepada user (pengguna biasa). Hak akses tersebut berupa hak membuat (CREATE), mengambil (SELECT), menghapus (DELETE), mengubah (UPLOAD) dan hak khusus berkenaan dengan sistem databasenya.
B. Revoke, Yaitu perintah yang memiliki kegunaan terbalik dengan GRAND, yaitu untuk menghilangkan atau mencabut hak aksesyang telah diberikan kepada user oleh administrator.
Pengertian Database
1.PENGERTIAN DATABASE
database terdiri dari 2 kata, yaitu data dan base.
data adalah merupakan bahan baku informasi, dapat didefinisikan sebagai kelompok teratur simbol-simbol yang mewakili kuantitas, fakta, tindakan, benda, dan sebagainya.
Base adalah sebuah program yang bekerja pada lingkungan basis data pada Office Base. Dengan fasilitas-fasilitas yang disediakan anda dapat dengan cepat dan mudah bekerja pada lingkungan basis data, selain itu anda juga dapat menggunakan Base untuk membuat file tabel, mendefinisikan field, mengisi record, serta untuk membuat file basis data dan menyimpan file basis data.
jadi, Database adalah susunan record data operasional lengkap daru suatu organisasi atau perusahaan, yang diorganisir dan disimpan secara terintegrasi dengan menggunakan metode tertentu sehingga mampu memenuhi informasi yang optimal yang dibutuhkan oleh para pengguna.
2. APLIKASI BERBASIS FILE
Aplikasi basis data terdiri atas sekumpulan menu, formulir, laporan (report), dan program yang memenuhi kebutuhan suatu fungsional unit bisnis/organisasi/instansi (Kroenke, 1990).
Kebutuhan akan aktivitas menentukan kebutuhan akan suatu aplikasi, dan kebutuhan akan aplikasi akan menentukan kebutuhan suatu basis data. Tujuan aplikasi ialah untuk menyediakan informasi dan membantu pemakai membuat keputusan.
3. SYSTEM MANAGEMENT DATABASE
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 yang berbasis berkas , umumnya perancangan sistem didasarkan pada kebutuhan individual pemakai bukan berdasarkan sejumlah pemakai.
Keuntungan sistem database terdistribusi adalah :
1. Pengelolaan secara transparan data terdistribusi dan replicated.
a. Mengurangi ketergantungan data
b. Transparansi jaringan
c. Transparansi replikasid. Transparansi fragmentasi
2. Mengacu pada struktur organisasi
3. Meningkatkan kemampuan untuk share dan otonomi local
4. Meningkatkan ketersediaan data
5. Meningkatkan kehandalan
6. Meningkatkan unjuk kerja
7. Memudahkan pengembangan system
Kelemahan system database terdistribusi adalah :
1. Kompleksitas manajemen
2. Control integritas lebih sulit
3. Biaya pengembangan
4. Keamanan
5. Kurang standarisasi
6. Menambahkan kebutuhan penyimpanan
7. Lebih sulit dalam mengatur lingkungan data
8. Menambah biaya pelatihan.
Macam-macam DBMS :
1.MySQL
MySQL merupakan sebuah perangkat lunak system manajemen basis data SQL (bahasa inggris : data management system) atau DNMS yang multithread, multi-user, dengan sekitar 6 juta instalasi di seluruh dunia. MySQL AB membuat MySQL tersedia sebagai perangkat lunak gratis di bawah lisensi GNU General Public Licenci (GPL), tetapi mereka juga menjual dibawah lisensi komersial untuk kasus-kasus dimana penggunaannya tidak cocok dengan penggunaan GPL . Tidak seperti Apache yang merupakan software yang dikembangkan oleh komunitas umum, dan cipta untuk code sumber dimiliki oleh penulisnya masing-masing, MySQL dimiliki dan disponsori oleh sebuah perusahaan komersial Swedia yaitu MySQL AB. MySQL AB memegang penuh hak cipta hampir atas semua kode sumbernya. Kedua orang Swedia dan satu orang Finlandia yang mendirikan MySQL AB adalah : david axmark, allan larsson, dan Michael “monthy widenius.
2.ORACLE
Oracle adalah relational database management system (RDBMS) untuk mengelola informasi secara terbuka, komprehensif dan terintegrasi. Oracle Server menyediakan solusi yang efisien dan efektif karena kemampuannya dalam hal sebagai berikut:
• Dapat bekerja di lingkungan client/server (pemrosesan tersebar)
• Menangani manajemen space dan basis data yang besar
• Mendukung akses data secara simultan
• Performansi pemrosesan transaksi yang tinggi
• Menjamin ketersediaan yang terkontrol
• Lingkungan yang terreplikasi
3. FIREBIRD
Firebird adalah salah satu aplikasi RDBMS (Relational Database Management System) yang bersifat open source. Awalnya adalah perusahaan Borland yang sekitar tahun 2000 mengeluarkan versi beta dari aplikasi database-nya InterBase 6.0 dengan sifat open source. Namun entah kenapa tiba-tiba Borland tidak lagi mengeluarkan versi InterBase secara open source, justru kembali ke pola komersial software. Tapi pada saat yang bersamaan programmer-progammer yang tertarik dengan source code InterBase 6.0 tersebut lalu membuat suatu team untuk mengembangkan source code database ini dan kemudian akhirnya diberinama Firebird.
4.Microsoft SQL Server 2000
Microsoft SQL Server 2000 adalah perangkat lunak relational database management system (RDBMS) yang didesain untuk melakukan proses manipulasi database berukuran besar dengan berbagai fasilitas. Microsoft SQL Server 2000 merupakan produk andalan Microsoft untuk database server. Kemampuannya dalam manajemen data dan kemudahan dalam pengoperasiannya membuat RDBMS ini menjadi pilihan para database administrator.
5. Database Desktop Paradox
Database desktop merupakan suatu program “Add-Ins”, yaitu program terpisah yang langsung terdapat pada Borland Delphi. Pada database desktop terdapat beberapa DBMS yang terintegrasi di dalamnya antara lain Paradox 7, Paradox 4, Visual dBase, Foxpro, Ms. SQL, Oracle, Ms. Acces, db2 dan interbase. Dari beberapa DBMS tersebut kita akan memilih salah satu yaitu Paradox yang akan dibahas lebih lanjut, khususnya Paradox 7. Dalam Paradox 7 ini, pada 1 file database hanya mengizinkan 1 tabel, berbeda dengan DBMS lain yang mengizinkan beberapa tabel pada 1 file database seperti pada Ms. Acces.
6. 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 PowerPoint. Aplikasi ini menggunakan mesin basis data Microsoft Jet Database Engine, dan juga menggunakan tampilan grafis yang intuitif sehingga memudahkan pengguna.
Microsoft Access dapat menggunakan data yang disimpan di dalam format Microsoft Access, Microsoft Jet Database Engine, Microsoft SQL server, Oracle Database, atau semua kontainer basis data yang mendukung standar ODCB. Para pengguna/programer yang mahir dapat menggunakannya untuk mengembangkan perangkat lunak aplikasi yang kompleks, sementara para programer yang kurang mahir dapat menggunakannya untuk mengembangkan perangkat lunak aplikasi yang sederhana. Access juga mendukung teknik-teknik pemrograman berorientasi objek, tetapi tidak dapat digolongkan ke dalam perangkat bantu pemrograman berorientasi objek.