Modul Sistem Basis Data
-
Upload
slametz-pembuka -
Category
Documents
-
view
1.077 -
download
9
description
Transcript of Modul Sistem Basis Data
![Page 1: Modul Sistem Basis Data](https://reader031.fdocument.pub/reader031/viewer/2022020710/5571fab6497959916992e76b/html5/thumbnails/1.jpg)
MODUL REFERENSI SISTEM BASIS DATA
SQLMySQL on Ubuntu
DEPARTEMEN TEKNIK INFORMATIKAUNIVERSITAS NASIONAL
Update 852011
![Page 2: Modul Sistem Basis Data](https://reader031.fdocument.pub/reader031/viewer/2022020710/5571fab6497959916992e76b/html5/thumbnails/2.jpg)
KATA PENGANTAR
Banyak di kalangan mahasiswa tentunya tidak menyadari, betapa pentingnya mengasah kembali matakuliah yang berhubungan dengan software development yaitu 'basis data' . Seringkali mahasiswa mengejar skil bahasa pemrograman tanpa mengasah kembali kemampuan memanajemen data. Ini kemampuan dasar yang mesti dibekali. Dengan begitu kita dapat membangun aplikasi yang tentunya menggunakan basis data. Apapun bahasa pemrogramannya, databasenya SQL.
Penyusun
Slamet Nurhadi
![Page 3: Modul Sistem Basis Data](https://reader031.fdocument.pub/reader031/viewer/2022020710/5571fab6497959916992e76b/html5/thumbnails/3.jpg)
Informasi:Sistem Operasi : Linux Ubuntu 10.10Database : MySql Server 5.1
Cara menginstall : $ sudo aptget install mysqlserver
Masuk ke dalam server: $ mysql u root p masukan password jika anda menggunakannya.
![Page 4: Modul Sistem Basis Data](https://reader031.fdocument.pub/reader031/viewer/2022020710/5571fab6497959916992e76b/html5/thumbnails/4.jpg)
BAB 1PENDAHULUAN SQL
Jenis SQL:1.Interactive => langsung dapat dioperasikan2.Embedded => disisipkan ke dalam program
Pengelompokan statement SQL
1.(DDL) Data definition Language
CREATE
DATABASE
DROPTABLE
INDEX
VIEW
ALTER TABLE
2.(DML) Data Manipulation LanguageINSERT, SELECT, UPDATE, DELETE
3.Data AceessGRANT, REVOKE
4.Data IntegrityRECOVER TABLE
5.AuxiliaryUNLOAD, LOAD, RENAME COLUMN
![Page 5: Modul Sistem Basis Data](https://reader031.fdocument.pub/reader031/viewer/2022020710/5571fab6497959916992e76b/html5/thumbnails/5.jpg)
MEMBUAT DATABASE
Sintaks : CREATE DATABASE nama_database;
contoh : CREATE DATABASE DatabasePertamaku;
MENGHAPUS DATABASE
Sintaks : DROP DATABASE nama_database;
contoh : DROP DATABASE DatabasePertamaku;
MELIHAT DATABASE sintaks: show databases;
MEMBUAT TABLE
![Page 6: Modul Sistem Basis Data](https://reader031.fdocument.pub/reader031/viewer/2022020710/5571fab6497959916992e76b/html5/thumbnails/6.jpg)
Sintaks : CREATE TABLE NamaTabel (NamaKolom1 TipeDataKolom1, NamaKolom2 TipeDataKolom2);
contoh : CREATE TABLE Teman (nama char(10), alamat varchar(50), email char(20));
MELIHAT TABLE
sintaks: show tables;
![Page 7: Modul Sistem Basis Data](https://reader031.fdocument.pub/reader031/viewer/2022020710/5571fab6497959916992e76b/html5/thumbnails/7.jpg)
MENGHAPUS TABEL
sintaks: DROP TABLE NamaTabel;
Contoh: DROP TABLE Teman;
DESAIN DATABASE
Database Keanggotaan club Film yang berisi keanggotaan yang lengkap, Mungkin anda tahu bagaimana aktifitas Keanggotaan club seperti Meeting dan Attend. Dan membagi 2 bagian (pemisahan tabel) menjadi seperti ini, informasi keanggotaan berisi sebagai berikut:
Nama LengkapTanggal LahirAlamatEmailTanggal Bergabung
dan, daftar aktifitas pertemuan, lokasi dan siapa yang menghadiri. Berisi informasi sebagai berikut:
Tanggal PertemuanLokasiMember ini hadir?
Jika anda hanya membuat digabungkan tabel yang ada, maka akan terlihat seperti ini
Nama LengkapTanggal LahirAlamatEmailTanggal BergabungTanggal PertemuanLokasiMember ini hadir?
![Page 8: Modul Sistem Basis Data](https://reader031.fdocument.pub/reader031/viewer/2022020710/5571fab6497959916992e76b/html5/thumbnails/8.jpg)
Jika Informasi diatas dijadikan kolom pada tabel maka akan menjadi seperti ini
Nama Tgl.Lahir Alamat Email Tgl. Bergabung
Tgl. Petemuan
Lokasi Member hadir?
Adi 10/02/90 jl.Manggis
01/01/11 02/04/11 Semarang Y
Dian 11/04/90 jl.Durian [email protected]
05/12/10 02/04/11 Semarang Y
Andre 02/05/90 jl.Jambu [email protected]
08/05/10 02/04/11 Semarang Y
Bagaimana juga kolom ini bermasalah, bagaimana jika member menghadiri setiap pertemuan ?
Nama Tgl.Lahir Alamat Email Tgl. Bergabung
Tgl. Pertemuan
Lokasi Member hadir?
Adi 10/02/90 jl.Manggis
01/01/11 02/04/11 Semarang Y
Adi 10/02/90 jl.Manggis
01/01/11 05/05/11 Yogya Y
Dian 11/04/90 jl.Durian
05/12/10 02/04/11 Semarang N
Dian 11/04/90 jl.Durian
05/12/10 05/05/11 Yogya Y
Andre 02/05/90 jl.Jambu [email protected]
08/05/10 02/04/11 Semarang Y
Andre 02/05/90 jl.Jambu [email protected]
08/05/10 05/05/11 Yogya Y
Apakah ini masalah ?Pertama ketidakpastian data terduplikasi (ganda). Setiap waktu Pertemuan anda butuh pencatatan yang tidak hanya detail pertemuan tapi juga informasi member yang detail.
![Page 9: Modul Sistem Basis Data](https://reader031.fdocument.pub/reader031/viewer/2022020710/5571fab6497959916992e76b/html5/thumbnails/9.jpg)
Membagi menjadi 2 bagian tabel
berisi member detail
Nama LengkapTanggal LahirAlamatEmailTanggal Bergabung
berisi menghadiri pertemuan
Nama LengapTanggal PertemuanLokasiMember ini hadir?
Jika dibuat tabelnya akan terlihat seperti ini
Tabel member
Nama Tgl.Lahir Alamat Email Tgl. Bergabung
Adi 10/02/90 jl.Manggis [email protected] 01/01/11
Dian 11/04/90 jl.Durian [email protected] 05/12/10
Andre 02/05/90 jl.Jambu [email protected] 08/05/10
Tabel Pertemuan
Nama Tgl. Pertemuan
Lokasi Member hadir?
Adi 02/04/11 Semarang Y
Adi 05/05/11 Yogya Y
Dian 02/04/11 Semarang N
Dian 05/05/11 Yogya Y
Andre 02/04/11 Semarang Y
Andre 05/05/11 Yogya Y
Disini ada 2 buah tabel: tabel member dan tabel pertemuan. Pada tabel member detail tidak boleh ada yang terduplikasi, dan hanya boleh kolom “nama” yang berlebih, yang mana untuk menglink-an 2 tabel bersamaan
![Page 10: Modul Sistem Basis Data](https://reader031.fdocument.pub/reader031/viewer/2022020710/5571fab6497959916992e76b/html5/thumbnails/10.jpg)
MEMBUAT SEBUAH CONTOH DATABASE
Jika anda sudah membuat nama Database maka gunakan nama database yang tersedia dan buatlah tabel sebagai berikut
![Page 11: Modul Sistem Basis Data](https://reader031.fdocument.pub/reader031/viewer/2022020710/5571fab6497959916992e76b/html5/thumbnails/11.jpg)
saya menggunakan nama database dengan nama DatabasePertamaku.
Menggunakan Database
Sintaks : use DatabasePertamaku
dan sekarang buat tabel seperti gambar dibawah ini
buat tabel dengan nama MemberDetails dengan nama kolom sebagai berikut
Sintaks : CREATE TABLE NamaTabel (NamaKolom1 TipeDataKolom1, NamaKolom2 TipeDataKolom2);
Kolom Tipe Data
MemberId integer
FirstName nvarchar(50)
LastName nvarchar(50)
DateOfBirth date
Street varchar(100)
City varchar(75)
State varchar(75)
ZipCode varchar(12)
Email varchar(200)
DateOfJoining date
![Page 12: Modul Sistem Basis Data](https://reader031.fdocument.pub/reader031/viewer/2022020710/5571fab6497959916992e76b/html5/thumbnails/12.jpg)
Kemudian buat tabel Attendance dengan nama kolom sebagai berikut
Kolom Tipe Data
MeetingDate date
Location varchar(200)
MemberAttended char(1)
MemberId integer
![Page 13: Modul Sistem Basis Data](https://reader031.fdocument.pub/reader031/viewer/2022020710/5571fab6497959916992e76b/html5/thumbnails/13.jpg)
Kemudian buat tabel Film dengan nama kolom sebagai berikut
Kolom Tipe Data
FilmId integer
FilmName varchar(100)
YearReleased integer
PlotSummary varchar(2000)
AvailableOnDVD char(1)
Rating integer
CategoryId integer
DELETE FROM MemberDetails WHERE MemberId = 4;
![Page 14: Modul Sistem Basis Data](https://reader031.fdocument.pub/reader031/viewer/2022020710/5571fab6497959916992e76b/html5/thumbnails/14.jpg)
Kemudian buat tabel Category dengan nama kolom sebagai berikut
Kolom Tipe Data
CategoryId integer
Category varchar(100)
![Page 15: Modul Sistem Basis Data](https://reader031.fdocument.pub/reader031/viewer/2022020710/5571fab6497959916992e76b/html5/thumbnails/15.jpg)
Kemudian buat tabel FacCategory dengan nama kolom sebagai berikut
Kolom Tipe Data
CategoryId integer
MemberId integer
![Page 16: Modul Sistem Basis Data](https://reader031.fdocument.pub/reader031/viewer/2022020710/5571fab6497959916992e76b/html5/thumbnails/16.jpg)
Setelah anda membuat tabel maka lihatlah semua tabel pada database anda. Setelah itu tabel yang telah dibuat. masukan data pada setiap kolom. Semuanya akan dibahas pada bab 2.
![Page 17: Modul Sistem Basis Data](https://reader031.fdocument.pub/reader031/viewer/2022020710/5571fab6497959916992e76b/html5/thumbnails/17.jpg)
BAB 2ENTER DATA SQL
Sintaks : INSERT INTO NamaTabel (NamaKolom) VALUES (DataValue);
contoh : INSERT INTO Category (CategoryId, Category) VALUES (1, 'Thriller');
Lalu lanjutkan sehingga menjadi seperti ini
INSERT INTO Category (CategoryId, Category) VALUES (2, 'Romance');
INSERT INTO Category (CategoryId, Category) VALUES (3, 'Horror');
INSERT INTO Category (CategoryId, Category) VALUES (4, 'War');
INSERT INTO Category (CategoryId, Category) VALUES (5, 'Scifi');
INSERT INTO Category (CategoryId, Category) VALUES (6, 'Historical')
![Page 18: Modul Sistem Basis Data](https://reader031.fdocument.pub/reader031/viewer/2022020710/5571fab6497959916992e76b/html5/thumbnails/18.jpg)
MENGINSERT DATA BARUINSERT INTO MemberDetails ( MemberId, FirstName, LastName, DateOfBirth, Street, City, State, ZipCode, Email, DateOfJoining )
VALUES ( 1, ‘Katie’, ‘Smith’, ‘19770109’, ‘Main Road’, ‘Townsville’, ‘Stateside’, ‘123456’, ‘[email protected]’, ‘20040223’ );
INSERT INTO MemberDetails ( MemberId,
![Page 19: Modul Sistem Basis Data](https://reader031.fdocument.pub/reader031/viewer/2022020710/5571fab6497959916992e76b/html5/thumbnails/19.jpg)
FirstName, LastName, DateOfBirth, Street, City, State, ZipCode, Email, DateOfJoining ) VALUES ( 2, ‘Bob’, ‘Robson’, ‘19870109’, ‘Little Street’, ‘Big City’, ‘Small State’, ‘34565’, ‘[email protected]’, ‘20040313’ );
INSERT INTO MemberDetails ( MemberId, FirstName, LastName, DateOfBirth, Street, City, State, ZipCode, Email, DateOfJoining ) VALUES ( 4, ‘Sandra’, ‘Gelis’, ‘19670805’, ‘47 Upper Road’, ‘New Town’, ‘New State’,
![Page 20: Modul Sistem Basis Data](https://reader031.fdocument.pub/reader031/viewer/2022020710/5571fab6497959916992e76b/html5/thumbnails/20.jpg)
‘19122’, ‘[email protected]’, ‘20040222’ );
Mysql browser dapat dijalankan di windows, silahkan anda mencari .exe nya.Jika anda ingin memakai Mysql browser pada Ubuntu anda cukup melakukan instalasi secara online dengan kode sebagai berikut:
$ sudo aptget install mysqlquerybrowser
dan hasilnya sebagai berikut ini
MENGHAPUS RECORD PADA TABLE
Sintaks:
DELETE FROM MemberDetails WHERE MemberId = 4;
![Page 21: Modul Sistem Basis Data](https://reader031.fdocument.pub/reader031/viewer/2022020710/5571fab6497959916992e76b/html5/thumbnails/21.jpg)
INSERT INTO MemberDetails ( MemberId, FirstName, LastName, DateOfBirth, Street, City, State, ZipCode, Email, DateOfJoining ) VALUES ( 4, 'Steve', 'Gee', '19670805', '45 Upper Road', 'New Town', 'New State','19122', '[email protected]',
![Page 22: Modul Sistem Basis Data](https://reader031.fdocument.pub/reader031/viewer/2022020710/5571fab6497959916992e76b/html5/thumbnails/22.jpg)
'20050422' );
Lalu tambahkan data membernya, lihat dibawah ini
INSERT INTO MemberDetails ( MemberId, FirstName, LastName, DateOfBirth, Street, City, State, ZipCode, Email, DateOfJoining ) VALUES ( 7, 'John', 'Jackson', '19740527',
![Page 23: Modul Sistem Basis Data](https://reader031.fdocument.pub/reader031/viewer/2022020710/5571fab6497959916992e76b/html5/thumbnails/23.jpg)
'Long Lane', 'Orange Town', 'New State', '88992', '[email protected]', '20051121' ) ;
mysql> INSERT INTO MemberDetails ( MemberId, FirstName, LastName, DateOfBirth, Street, City, State, ZipCode, Email, DateOfJoining ) VALUES ( 8, 'Jack', 'Jackson', '17540609', 'Main Street', 'Big City', 'Mega State', '34566', '[email protected]', '20050602' );
mysql> INSERT INTO MemberDetails ( MemberId, FirstName, LastName, DateOfBirth, Street,
![Page 24: Modul Sistem Basis Data](https://reader031.fdocument.pub/reader031/viewer/2022020710/5571fab6497959916992e76b/html5/thumbnails/24.jpg)
City, State, ZipCode, Email, DateOfJoining ) VALUES ( 9, 'Seymor', 'Bots', '17560830', 'Long Street', 'Village', 'Platinum State', '65422', '[email protected]', '20050717' );