by : hanung nindito prasetyo data yang terdiri atas sejumlah perintah (command) yang dapat...
TRANSCRIPT
By : Hanung Nindito Prasetyo
Program Studi Teknik KomputerJurusan Teknologi InformasiPoliteknik Telkom2012
HanungNP/Basis Data/Politel/2012
DBMS merupakan perantara bagi pemakaidengan basis data dalam disk.
Cara berinteraksi / berkomunikasi antarapemakai dengan basis data tersebut diaturdalam bahasa khusus yang ditetapkan oleh pihakpembuat DBMS.pembuat DBMS.
Bahasa tersebut dapat disebut sebagai bahasabasis data yang terdiri atas sejumlah perintah(command) yang dapat dituliskan / diberikanuser untuk kemudian diproses oleh DBMS untukmelakukan suatu aksi tertentu.
Contoh : SQL, dBase, dsb.
HanungNP/Basis Data/Politel/2012
Sebuah Bahasa basis data biasanya dapatdipilah ke dalam 2 kelompok, yaitu :
1. Data Definition Language (DDL)2. Data Manipulation Language (DML)2. Data Manipulation Language (DML)
HanungNP/Basis Data/Politel/2012
DDL adalah bahasa basis data yangdigunakan untuk menggambarkan desainbasis data secara keseluruhan.
Dengan DDL kita dapat membuat tabelbaru, membuat indeks, mengubah tabel,baru, membuat indeks, mengubah tabel,menentukan struktur penyimpanan tabel,dsb.
Hasil dari kompilasi perintah DDL adalahkumpulan tabel yang disimpan dalam filekhusus yang disebut Kamus Data (DataDictionary).
HanungNP/Basis Data/Politel/2012
DML berisi kumpulan perintah yangberguna untuk melakukan manipulasi danpengambilan data pada suatu basis data.
Manipulasi data dapat berupa :Manipulasi data dapat berupa :1. Penyisipan / Penambahan data baru
ke suatu basis data.2. Penghapusan data dari suatu basis
data.3. Pengubahan data di suatu basis data.
HanungNP/Basis Data/Politel/2012
Hasil kompilasi dari perintah DDL adalah satu set dari tabelyang disimpan dalam file khusus disebut datadictionary/directory. Satu set directory adalah satu file yangberisi meta data yaitu “data mengenai data” file inidikonsultasikan sebelum data sebenarnya dibaca ataudimodifikasikan dalam satu sistem database.
Statement yang terdapat dalam DDL :- CREATE DATABASE
TABLEINDEXINDEXVIEW
- DROP DATABASETABLEINDEXVIEW
- ALTER TABLE
HanungNP/Basis Data/Politel/2012
Data Definition menggunakan SQL :
Tabel Dokter (Kode_Dok menunjukkan primary key dari tabel dokter)
Kode_Dok Nama_Dok
D001D003D004D015
Alfian JoniKuniawanEsti YulianaSri Ningsih
Tabel Pasien (Kode_Pas menunjukkan primary key dari tabel pasien)
Kode_Pas Nama_Pas Jekel Alamat
P051P063P004P015P125P023
ElfisLinda YatiHelmiDepi HaryantoYanti OctaviaDevi Marlina
LPLLPP
Sungai PenuhTanjung TanahSemurupSebukarSungai PenuhSungai Penuh
HanungNP/Basis Data/Politel/2012
Tabel Berobat
Kode_Pas Kode_Dok Tgl_Berobat Nama_sakit
P051P063P004P015P051P063P015
D004D015D001D003D004D015D004
12-05-200510-04-200510-04-200512-05-200515-05-200515-05-200516-05-2005P015
P015D004D004
16-05-200522-05-2005
Create Database → membuat database
Bentuk Umum :
Create Database (nama_database);
HanungNP/Basis Data/Politel/2012
Contoh :Buat file database dengan nama puskesmas→ Create Database puskesmas
utk menggunakan database gunakan perintah>> use namadatabase
Create Table → membuat tabelBentuk Umum :Create Table nama_tabel (nama_kolom1, tipe_data, lebar_data,….);Create Table nama_tabel (nama_kolom1, tipe_data, lebar_data,….);
Keterangan : nama_tabel → nama yang diberikan di tabel baru. Nama tabel maksimal
terdiri dari 8 karakter. Tidak boleh memakai spasi, terdiri dari huruf. nama_kolom → nama yang diberikan untuk kolom baru, maksimal terdiri dari
10 karakter. Tidak boleh memakai spasi, terdiri dari huruf, angka dan lain-lain. type_data → jenis data yang nilainya dimasukkan dalam kolom yang telah
ditentukan. lebar_data → nomor spasi karakter untuk mengikuti data yang dimasukkan
dalam kolom yang telah ditentukan.
HanungNP/Basis Data/Politel/2012
Contoh :- Buat tabel Dokter
→ Create Table Dokter (Kode_Dok int(4) notnull,nama_dok varchar(25) notnull);
- Buat tabel Berobat→ Create Table Berobat (Kode_Pas int(4) notnull,
Kode_Dok int(4) notnull,tgl_berobat date(8) notnull,nama_sakit varchar(25) notnull);nama_sakit varchar(25) notnull);
HanungNP/Basis Data/Politel/2012
• untuk melihat tabel yg sudah dibuat, perintah;>> show tables;
• utk melihat struktur tabel>> describe namatabel>> describe namatabel
HanungNP/Basis Data/Politel/2012
8lokasi
Pegawai Departemen
(0,N
) (0,N
)mengepalai
(0,1)
bekerjauntuk
Nama
NmDepan Inisial NmBlk
JenisKel
Alamat Gaji
NoKTP
nama nomor
JmlPegawai
(1,N)(1,1)
(1,1)
(1,N)
Proyek
Tanggungan
memimpin
(0,N
) (0,1
)
menanggung
bekerjapada
(0,N
)
mengatur
(1,1
)(0
,N)
NamaJenisKel TglLahir
Hubungan
Nomor Nama Lokasi
TglMulai
LamaJam
JmlPegawai
(1,N)
(1,N)
(1,1
)
HanungNP/Basis Data/Politel/2012
indeks dalam database dapatdiumpamakan seperti indeks dalamsebuah buku yang tebal, sehingga itemtertentu dapat ditemukan dengan cepat.tertentu dapat ditemukan dengan cepat.Sebuah indeks dalam basis databerfungsi untuk mempercepat pencariandata berdasarkan kolom tertentu.
HanungNP/Basis Data/Politel/2012
Sebuah perintah :SELECT * FROM pegawai WHERE nip=‘198308282008122002’;
jika nip tidak dijadikan indeks, maka pencarian jika nip tidak dijadikan indeks, maka pencariandata akan dilakukan pada seluruh tabel, dapatdianalogikan seperti mencari sesuatu dalamsebuah buku dan buku tersebut tidakdilengkapi dengan indeks.Tetapi jika terdapatindeks yang berkaitan dengan nip maka akanditemukan lebih cepat.
HanungNP/Basis Data/Politel/2012
Dengan penambahan indeks pada suatudata akan menambah kecepatanpengaksesan data tersebut, tanpa harusmengubah urutan fisik datanya dan jugamengubah urutan fisik datanya dan jugadapat mempercepat proses pencarian databerdasarkan nilai field tertentu.
HanungNP/Basis Data/Politel/2012
Tabel 1.1 adalah tabel ad yang takberindeks sehingga jika dicari nilai-nilaitertentu pada kolom company, makanilai-nilai yang ada di masing-masingnilai-nilai yang ada di masing-masingbaris harus diperiksa. Ini lah yangdisebut full-tabel scan.
HanungNP/Basis Data/Politel/2012
Tabel 1.2 merupakan tabel yg sama tapidengan tambahab indeks. Indeks berisisebuah masukan untuk masing-masingbaris dalam tabel ad, akan tetapi nilaibaris dalam tabel ad, akan tetapi nilainom_company pada indeks telah terurut.
HanungNP/Basis Data/Politel/2012
Create Index → membuat index.Bentuk Umum :Create (unique) Index nama_index on nama_tabel (nama_kolom);
Keterangan :unique → pilihan perincian yang dapat digunakan untukmenguatkan nilai data di dalam kolom namaindex menjadi unik.nama_index → nama index yang baru.nama_tabel → nama tabel yang berisi kolom index akan dibuat.nama_tabel → nama tabel yang berisi kolom index akan dibuat.nama_kolom → nama dari kolom tempat index akan dibuat. Yangterdiri dari Asc untuk pilihan index naik dan Desc untukpilihan index menurun.
Contoh :- Buat index data pasien berdasarkan kode_pas dengan
nama pasien2→ Create index pasien2 on pasien (kode_pas);
- Buat index data berobat berdasarkan kode_dok dengannama obat2→ Create index obat2 on berobat (kode_dok);
HanungNP/Basis Data/Politel/2012
View adalah tabel virtual yang isinyadidefinisikan oleh query database.Viewbukanlah sebuah tabel fisik, tetapisekumpulan instruksi yang menghasilkansekumpulan instruksi yang menghasilkansekumpulan data.
HanungNP/Basis Data/Politel/2012
View hanya bisa dibuat di dalam databaseyang sedang digunakan.
View bisa menggunakan data dari view lain. Kita tidak bisa membuat indeks untuk view. Jika ada lebih dari satu kolom view yang
memiliki nama yang sama, kolom tersebutharus diberi alias.
Kolom didalam view sama dengan kolomditabel asal.
HanungNP/Basis Data/Politel/2012
Create View → untuk membuat tabel view.Create view lebih bersifat manipulasi data daripadapernyataan definisi data.
Bentuk Umum :Create View nama_view [(nama_kolom1,…)]As Select statement [with check option];
Keterangan :nama_view → harus dimulai dari huruf, bilangan atau garisnama_view → harus dimulai dari huruf, bilangan atau garis
bawah. Maksimal terdiri dari 9 karakter.with check option → merupakan klausa optimal yang
menyebabkan semua perubahan danpenyisipan ke view akan diperiksa untukmengetahui apakah semua itu memenuhidefinisi view.
HanungNP/Basis Data/Politel/2012
Contoh :- Buat view dengan nama pasienview yang berisi semua
data pasien.→ Create view pasienview As select * from pasien;
- Buat view dengan nama berobatview yang berisikode_pas, kode_dok dan tgl_berobat.→ Create view berobatview (kode_pas, kode_dok, tgl_berobat)
As select kode_pas, kode_dok, tgl_berobat from berobat ;
Drop (database, table, index, view) → Drop (database, table, index, view) →digunakan untuk menghapus database, tabel,index, dan view.
Bentuk Umum :Drop Database nama_database ; → untuk menghapus databaseDrop Table nama_tabel ; → untuk menghapus tabelDrop Index nama_index ; → untuk menghapus tabel indexDrop View nama_view ; → untuk menghapus view
HanungNP/Basis Data/Politel/2012
Contoh :Hapus database pasien
→ Drop database pasien ;Hapus tabel berobat
→ Drop table berobat ;Hapus tabel index dokter
→ Drop index dokter ;Hapus tabel view pasien
→ Drop view pasien ;
Alter Table → digunakan untuk menambah Alter Table → digunakan untuk menambahsatu atau lebih kolom di tabel yang barudibuat.Bentuk Umum :Alter Table nama_tabel
ADD (nama_kolom, jenis_kolom) → untuk menambah kolomMODIFY (nama_kolom, jenis_kolom) → untuk mengubah kolomDROP (nama_kolom, jenis_kolom) → untuk menghapus kolom
HanungNP/Basis Data/Politel/2012
Contoh :
1. Tambahkan kolom alamat (Alt) dengan panjang 25karakter pada tabel Dokter→ Alter table dokter add (alt char(25)) ;
2. Ubah panjang kolom nama dokter (nama_dok) menjadi15 karakter→ Alter table dokter modify (nama_dok char(15)) ;
3. Hapus kolom tanggal berobat (tgl_berobat) dari tabel3. Hapus kolom tanggal berobat (tgl_berobat) dari tabelberobat→ Alter table berobat drop (tgl_berobat char(8)) ;
HanungNP/Basis Data/Politel/2012