Pangkalan data atau basis data (bahasa Inggris: database), atau sering pula dieja basisdata, adalah kumpulan informasi yang disimpan di dalam komputer secara sistematik sehingga dapat diperiksa menggunakan suatu program komputer untuk memperoleh informasi dari basis data tersebut. Perangkat lunak yang digunakan untuk mengelola dan memanggil kueri (query) basis data disebut sistem manajemen basis data (database management system, DBMS). Sistem basis data dipelajari dalam ilmu informasi.
Istilah “basis data” berawal dari ilmu komputer. Meskipun kemudian artinya semakin luas, memasukkan hal-hal di luar bidang elektronika, artikel ini mengenai basis data komputer. Catatan yang mirip dengan basis data sebenarnya sudah ada sebelum revolusi industri yaitu dalam bentuk buku besar, kuitansi dan kumpulan data yang berhubungan dengan bisnis.
Konsep dasar dari basis data adalah kumpulan dari catatan-catatan, atau potongan dari pengetahuan. Sebuah basis data memiliki penjelasan terstruktur dari jenis fakta yang tersimpan di dalamnya: penjelasan ini disebut skema. Skema menggambarkan obyek yang diwakili suatu basis data, dan hubungan di antara obyek tersebut. Ada banyak cara untuk mengorganisasi skema, atau memodelkan struktur basis data: ini dikenal sebagai model basis data atau model data. Model yang umum digunakan sekarang adalah model relasional, yang menurut istilah layman mewakili semua informasi dalam bentuk tabel-tabel yang saling berhubungan dimana setiap tabel terdiri dari baris dan kolom (definisi yang sebenarnya menggunakan terminologi matematika). Dalam model ini, hubungan antar tabel diwakili denga menggunakan nilai yang sama antar tabel. Model yang lain seperti model hierarkis dan model jaringan menggunakan cara yang lebih eksplisit untuk mewakili hubungan antar tabel.
Istilah basis data mengacu pada koleksi dari data-data yang saling berhubungan, dan perangkat lunaknya seharusnya mengacu sebagai sistem manajemen basis data (database management system/DBMS). Jika konteksnya sudah jelas, banyak administrator dan programer menggunakan istilah basis data untuk kedua arti tersebut.

Lingkungan basis data
Lingkungan basis data adalah sebuah habitat di mana terdapat basis data untuk bisnis. Dalam lingkungan basis data, pengguna memiliki alat untuk mengakses data. Pengguna melakukan semua tipe pekerjaan dan keperluan mereka bervariasi seperti menggali data (data mining), memodifikasi data, atau berusaha membuat data baru. Masih dalam lingkungan basis data, pengguna tertentu tidak diperbolehkan mengakses data, baik secara fisik maupun logis’. (Koh, 2005, dalam Janner Simarmata & Imam Paryudi 2006: 33).

Perangkat lunak basis data
Perangkat lunak basis data yang banyak digunakan dalam pemrograman dan merupakan perangkat basis data aras tinggi (high level):
•    Microsoft SQL Server
•    Oracle
•    Sybase
•    Interbase
•    XBase
•    Firebird
•    MySQL
•    PostgreSQL
•    Microsoft Access
•    dBase III
•    Paradox
•    FoxPro
•    Visual FoxPro
•    Arago
•    Force
•    Recital
•    dbFast
•    dbXL
•    Quicksilver
•    Clipper
•    FlagShip
•    Harbour
•    Visual dBase
•    Lotus Smart Suite Approach
•    db2
Selain perangkat lunak di atas, terdapat juga perangkat lunak pemrograman basis data aras rendah (low level), diantaranya:
•    Btrieve
•    Tsunami Record Manager
Diagram hubungan entitas

Diagram Hubungan Entitas atau entity relation diagram merupakan model data berupa notasi grafis dalam pemodelan data konseptual yang menggambarkan hubungan antara penyimpan. Model data sendiri merupakan sekumpulan cara, peralatan untuk mendeskripsikan data-data yang hubungannya satu sama lain, semantiknya, serta batasan konsistensi. Model data terdiri dari model hubungan entitas dan model relasional. Diagram hubungan entitas ditemukan oleh Peter Chen dalam buku Entity Relational Model-Toward a Unified of Data. Chen mencoba merumuskan dasar-dasar model dan setelah itu dikembangkan dan dimodifikai oleh Chen dan banyak pakar lainnya. Pada saat itu diagram hubungan entitas dibuat sebagai bagian dari perangkat lunak yang juga merupakan modifikasi khusus, karena tidak ada bentuk tunggal dan standar dari diagram hubungan entitas.
Kegunaan
Diagram hubungan entitas digunakan untuk mengkonstruksikan model data konseptual, memodelkan struktur data dan hubungan antar data dan mengimplementasikan basis data secara logika maupun secara fisik dengan DBMS (Database Management system). Dengan diagram hubungan entitas ini kita dapat menguji model dengan mengabaikan proses yang harus dilakukan. Diagram hubungan entitas dapat membantu dalam menjawab persoalan tentang data yang diperlukan dan bagaimana data tersebut saling berhubungan.
Symbol
Entitas
Entitas adalah suatu objek yang dapat didefinisikan dalam lingkungan pemakai, sesuatu yang penting bagi pemakai dalam konteks sistem yang akan dibuat. Sebagai contoh pelanggan, pegawai dll. Seandainya A adalah seorang pegawai maka A adalah isi dari pegawai, sedangkan jika B adalah seorang pelanggan maka B adalah isi dari pelanggan. Karena itu harus dibedakan entitas sebagai bentuk umum dari deskripsi tertentu dan isi entitas seperti A dan B dalam contoh di atas.
•    Fisik Entitas
Entitas yang bersifat fisik. Contoh : pegawai, guru, dan karyawan.
•    Konsep Entitas
Entitas yang tidak bersifat konsep. Contoh: gaji,sekolah

•    Entitas Kuat
Entitas yang mempunyai atribut kunci. Entitas ini bersifat mandiri, keberadaanya tidak bergantung pada entitas lainnya. Percepatan entitas kuat selalu memiliki karakteristik yang unik disebut identifier (sebuah atribut tunggal atau gabungan atribut-atribut yang secara unik dapat digunakan untuk membedakannya dari entitas kuat yang lain).
Kebanyakan entitas dalam suatu organisasi dapat digolongkan sebagai entitas kuat (strong entity) yaitu entitas yang mandiri, yang keberadaannya tidak bergantung pada keberadaan entitas yang lainnya. Instansiasi entitas kuat selalu memiliki karakteristik yang unik (dinamakan identifier atau sering disebut sebagai atribut pengidentifikasi) yaitu, sebuah atribut tunggal atau gabungan atribut-atribut yang secara unik dapat digunakan untuk membedakannya dari entitas kuat yang lain.
•    Entitas Lemah
Entitas yang tidak mempunyai atribut kunci. Entitas lemah diidentifikasikan dengan menghubungkan entitas tertentu dari tipe entitas yang lain ditambah atribut dari entitas lemah. Tipe entitas lain yang dipakai untuk mengidentifikasikan suatu entitas lemah disebut identifying owner dan relasi yang menghubungkan entitas lemah dengan owner disebut identifying relationship Contoh entitas pegawai
Atribut
Entytas mempunyai elemen yang disebut atribut, dan berfungsi mendekripsikan karakter dari entitas. Atribut adalah properti atau karakteristik yang dimiliki oleh suatu entitas dimana properti atau karakteristik itu bermakna atau berarti bagi organisasi atau perusahaan, misalnya untuk pencatatan data pegawai di suatu instansi, entitas pegawai mungkin memiliki atribut-atribut nomor induk pegawai, nama, alamat, nomor telepon, gaji pokok dan lainnya. Setiap diagram hubungan entitas bisa terdapat lebih dari satu atribut. Atribut digambarkan dalam bentuk elips.Entitas memiliki himpunan atribut yang berasosiasi dengannya.
Macam-Macam Atribut
Atribut terdiri dari atribut sederhana atau atormis, atribut komposit, atribut berharga tunggal. atribut null-value, atribut kunci, atribut bernilai banyak dan atribut turunan. Masing-masing atribut memiliki ciri tersendiri. Atribut atormis tidak dapat dibagi-bagi menjadi atribut yang sederhana. Atribut komposit adalah atribut yang dapat dipecah menjadi atribut lain, misalnya atribut alamat dapat dipecah menjadi atribut jalan, kecamatan, kelurahan,kota serta kode pos. atribut komposit digunakan pada database untuk kemudahan menjawab pertanyaan-pertanyaan tertentu dalam database atribut berharga tunggal mempunyai satu harga untuk entitas tertentu, atribut null-value tidak mempunyai nilai, atribut kunci merupakan atribut unik dari suatu entitas dan nilai dari atribut kunci akan berbeda untuk masing-masing entitas.atribut bernilai banyak adalah atribut yang entitasnya lebih dari satu, misalnya adalah atribut hobi. Atribut hobi ini bisa terdiri dari atribut berenang, atribut voli dan atribut berbelanja.atribut turunan merupakan atribut yang didapat dari atribut lainnya.Pada entitas pegawai terdapat atribu nomor induk yang biasanya terkandung nilai tahun masuk, misalnya NIP =5195025, berarti Pegawai yang bersangkutan masuk pada tahun 1995), maka jika kita tambahkan atribut Lama_Kerja pada entitas Pegawai, atribut Lama_Kerja dapat kita hitung dengan cara mengurangkan tahun dimana perhitungan dilakukan (katakanlah 2005) dengan tahun mahasiswa yang bersangkutan masuk ke Instansi (Hasilnya 10 tahun).
Hubungan Relasi
Relasi adalah hubungan antara suatu himpunan dengan himpunan entitas yang lainnya. Pada penggambaram diagram hubungan entitas, relasi adalah perekat yang menghubungkan suatu entitas dengan entitas lainnya. Relasi merupakan hubungan yang berarti antara suattu entitas dengan entitas lainnya. Frasa ini berimplikasi bahwa relasi mengijinkan untuk menjawab pertanyaan-pertanyaan yang berkaitan dengan hubungan suatu entits dengan lainya. Hubungan dibedakan antar bentuk hubungan antar entitas dengan isi. Misalnya kasus hubungan antara entitas pegawai dan entitas bagian adalah jam kerja, sedangkan isi hubungannya dapat berupa total jam kerja, gaji lembur. Relasi digambarkan dalam bentuk intan. Pada model data relasi hubungan antar data dihubungkan dengan kunci relasi. Tipe hubungan di antara beberapa buah tipe entitas adalah kumpulan dari relasi di antara entitas-entitas dari tipe entitas tersebut.
Karakteristik dari Relasi
Relasi mempunyai karakteristik terdiri dari kumpulan tuple-tuple, urutan dari tuple-tuple merepresenrasikan data pada tingkat abstrak logis dan urutam data dianggap penting.
Batas Keikutsertaan ( Participation onstrain)
Batas keikutsertaan dari relasi terdiri dari total, parsial, satu ke satu, satu ke banyak atau banyak ke satu, dan banyak ke banyak. Batas total menunjukkan pada semua elemen, misalnya semua karyawan harus bekerja pada suatu departemen. Batas parsial menunjukkan pada suatu entitas tertentu hanya berhubungan dengan satu entitas yang lain. Batas satu ke satu menunjukkan pada atribut kunci pada derajat relasi dapat ditempatkan pada salah satu entitas. Batas satu ke banyak menunjukkan attribut kunci pada derajat relasi ini hanya dapat dimasukan sebagai atribut dari tipe entitas pada sisi N dan batas banyak ke banyak menunjukkan sejumlah entitas berhubungan dengan sejumlah entitas B. Atribut ini harus tetap di nyatakan sebagai atribut relasi dan tidak dapat digabungkan pada salah satu entitas yang terlibat.
Model Relasional
Model relasional adalah model yang menggunakan sejumlah tabel untuk menggambarkan data serta hubungan antara data-data. Setiap tabel memiliki sejumlah kolom, setiap kolom memiliki nama yang unik. Model relasional memiliki struktur record berformat tertentu dimana masing-masing isinya memiliki tipe-tipe yang berbeda (Misalnya tipe data untuk nomor induk pegawai adalah string, tentu berbeda dengan tipe data untuk nama [misalnya: string] yang panjangnya tidak ditentukan, bergantung pada komputer tempat aplikasi diimplementasikan.