Dibuat oleh: Dinda Ayu Muthia Pertemuan 1 Database 1. Konsep Dasar Database Basis data (Database) adalah sekumpulan data yang saling berhubungan. Prinsip utama basis data adalah pengaturan data atau arsip. Tujuan utamanya adalah kemudahan dan kecepatan dalam pengambilan data atau arsip. Sistem basis data merupakan perpaduan antara basis data dan sistem manajemen basis data (DBMS). DBMS (Database Management System) adalah software yang menangani semua akses ke basis data. Contoh dari DBMS yaitu Microsoft Access, MySQL, Oracle, Server 2000, Interbase, Paradox, dan Lain-Lain. 2. Komponen-komponen Database Entitas adalah sekumpulan objek yang terdefinisikan yang mempunyai karakteristik sama dan bisa dibedakan satu dan lainnya. Objek dapat berupa barang, orang, tempat atau suatu kejadian. Contoh: entitas mahasiswa, pelanggan, mobil. Atribut adalah deskripsi data yang bisa mengidentifikasikan entitas yang membedakan entitas tersebut dengan entitas yang lain. Contoh: Entitas pelanggan, atributnya kode_pelanggan, nama_pelanggan, notelpon. 3. Hierarki Database Character: Berupa angka, huruf, atau karakter khusus Field: Kumpulan data terkecil yang memiliki makna Record: Kumpulan field sejenis yang saling terkait. Table: Kumpulan dari record-record Database: Kumpulan table yang saling berhubungan. alamat, 4. Normalisasi Normalisasi adalah suatu proses pengelompokan data elemen menjadi table-tabel yang menunjukkan entity dan relasinya. Bentuk-bentuk normalisasi: o Bentuk tidak normal o Bentuk normal tahap pertama (1st Normal Form) => Tidak ada data redudance dan bernilai tunggal o Bentuk normal tahap kedua (2nd normal form) => ketergantungan fungsional secara penuh. o Bentuk normal tahap ketiga => menghilangkan anomali ketergantungan fungsional 5. Microsoft Access Microsoft Access (atau Microsoft Office Access) adalah sebuah program aplikasi basis data dengan model relasional. Klik Blank Database maka akan tampil jendela Blank Database Objek yang ada pada Ms. Access: Table Query Form Report Page Macro Modules Object utama dimana tempat seluruh data disimpan Fasilitas untuk menampilkan, mengubah dan menganalisa data Objek yang digunakan untuk menampilkan data yang tersimpan dalam tabel (untuk pembuatan user interface). objek yang digunakan untuk merangkum dan mencetak data atau suatu laporan secara efektif. digunakan untuk mengakses data diweb secara langsung (online). kumpulan beberapa perintah, yang tersusun dalam sebuah daftar. untuk menuliskan kode program atau prosedur yang dapat digunakan untuk program aplikasi. 6. Membuat Database dengan Ms. Access 2007 Buatlah sebuah database dengan nama koperasi.accdb Klik Menu Create Pilih Table Design Buat tabel sesuai dengan strukturnya. Tabel : Barang Field Name Kdbarang Nmbarang Satuan Harga Type Text Text Text Currency Size 4 30 6 - Keterangan Primary Key Combo Box Combo Box : Klik Field Satuan, Klik tab Lookup pada Field Properties o Display Control : Combo Box o Row Source Type : Value List o Row Source : Pack ; Sachet Membuat primary key Menyimpan table Mengisi data pada table Pertemuan 2 Membuat Relasi Antar Tabel 1. Menambahkan Tabel Pada database koperasi, tambahkan 3 tabel berikut: Table: Karyawan Field Name NIK NmKaryawan Bagian Data Type Size Text 9 Text 30 Text 15 Isikan data sebagai berikut: Table: Penjualan Field Name Nofaktur Tglfaktur NIK Data Type Text Date/Time Text Combo Box : Keterangan Primary Key Combo Box : Administrasi, Kasir Size 5 Keterangan Primary Key 9 Combo Box Ke Tabel Karyawan Klik tab Lookup pada Field Properties o Display Control : Combo Box o Row Source Type : Table/Query o Row Source Isikan data berikut: : Karyawan Table:Detail_Penjualan Field Name Nofaktur Kdbarang Jumbel Data Type Text Text Number Size 5 4 Keterangan Combo Box Combo Box Combo Box : Klik tab Lookup pada Field Properties o Display Control : Combo Box o Row Source Type : Table/Query o Row Source : <sesuaikan tabelnya> Isikan data berikut: 2. Membuat Relasi Pada Tab Database Tools, klik Relationship Memilih table mana saja yang akan direlasikan Pilih tabel satu persatu, kemudian Klik Add dan susun seperti berikut: Untuk membuat relasi antar tabel, tarik garis diagonal dari field kdbarang (primary key) dari tabel Barang ke field kdbarang di tabel Detail_Penjualan, hingga tampil jendela Edit Relationship seperti berikut: Lakukan hal yang sama untuk field nik (primary key) pada tabel karyawan ke tabel Penjualan, dan field Nofaktur (primary key) pada tabel Penjualan ke tabel Detail_Penjualan, hingga menjadi sebuah relasi seperti berikut: Referential Integrity o Referential integrity adalah kondisi dimana foreign key mereferensi primary key pada table parent. o Operasi referensi yang melibatkan modifikasi/penghapusan suatu nilai primary key pada table parent dapat memberikan pengaruh pada record yang merefer nilai primary key tersebut. o Pengaruh tersebut dapat dikontrol dengan menuliskan ON UPDATE dan ON DELETE o CASCADE: penghapusan sebuah record pada tabel parent akan menghapus record yang berhubungan pada tabel child, dan seterusnya secara berulang. Pertemuan 3 Data Definition Language (DDL) 1. Data Definition Language Data Definition Language (DDL) merupakan suatu sub bahasa SQL yang berfungsi mendefinisikan database dan tabel. Perintah yang digunakan diantaranya: CREATE, ALTER, dan DROP. CREATE Digunakan untuk membuat tabel baru. Bentuk Umum : Create Table nama_tabel ( Kolom_1 tipe(panjang), Kolom_2 tipe(panjang), KoloM_n tipe(panjang)) Kolom untuk index unique: constraint nama_field (unique) Contoh : Create Table mahasiswa ( NIM text(8) not null, NAMA text(30) not null, TGL_LAHIR date, ALAMAT text(50)) ALTER Digunakan untuk merubah, menambah (ADD), menghapus (DROP) struktur tabel. Bentuk Umum : Alter Table nama_tabel [spesifikasi perubahan] Contoh : ALTER TABLE mahasiswa2 ADD constraint NIM Primary Key(NIM) DROP Digunakan untuk menghapus table. Bentuk Umum : Drop TABLE nama tabel Contoh : DROP table mahasiswa 2. Membuat Query di Ms. Access 2007 Atur message bar dan security warning Pilih menu Create, lalu pilih Query Design Klik SQL Membuat table dengan nama mahasiswa. Untuk melihat hasilnya, klik tombol RUN. Maka hasilnya adalah table mahasiswa Menambahkan field jenis_kelamin pada tabel mahasiswa Hasilnya Mengubah ukuran dan tipe dari field NIM pada tabel mahasiswa Hasilnya Kembalikan lagi tipe data Nim menjadi Text(8) Menghapus field Jenis kelamin dari tabel mahasiswa Hasilnya Menghapus tabel mahasiswa Hasilnya 3. Latihan Buatlah database baru dengan nama “TokoBuku_NimMasing2” Buatlah table baru dengan nama: Buku Field Name Data Type Size Keterangan KdBuku Text 5 (Not Null) Primary Key Judul Text 40 (Not Null) Tambahkan field harga pada table Buku dengan data type: Currency Tambahkan field pengarang pada table Buku dengan data type: Text dan field size: 30 Ubahlah size field pengarang menjadi 35 Pertemuan 4 Data Manipulation Language (DML) 1. Data Manipulation Language (DML) Data Manipulation Language (DML) merupakan sub bahasa SQL yang berfungsi memanipulasi data yang ada di dalam database. Perintah yang termasuk didalam DML adalah INSERT, SELECT, UPDATE, dan DELETE. INSERT Berfungsi untuk menyisipkan, memasukkan, atau menyimpan data dari luar sistem kedalam database. Bentuk Umum: INSERT INTO nama_tabel (field-1, field-2….field-n) VALUES (value-1, value2,…,value-n); Atau INSERT INTO nama_tabel VALUES (value-1, value-2,…,value-n); Contoh: INSERT INTO mahasiswa (nim,nama,tgl_lahir,alamat) VALUES („12120001‟,‟Sofyan‟,‟23/10/1988‟,‟Dewi Sartika‟); Atau INSERT INTO mahasiswa VALUES („12120002‟,‟Risma‟, „28/04/1989‟,‟TANGERANG‟); SELECT o Perintah select untuk menampilkan isi table keseluruhan. Bentuk Umum: SELECT * FROM nama_tabel; Contoh: SELECT * FROM mahasiswa; o Perintah select untuk menampilkan isi table hanya untuk field tertentu saja: Bentuk Umum: SELECT namafield1, namafield2 FROM namatabel; Contoh: SELECT nim, nama FROM mahasiswa; o Perintah select untuk membentuk tabel baru dengan cara mengcopy (backup) seluruh data dari tabel aktif. Bentuk Umum: SELECT field-1, field-2….,field-n INTO nama_tabel_baru FROM nama_tabel_aktif; Atau SELECT * INTO nama_tabel_baru FROM nama_tabel_aktif; Contoh: SELECT * INTO mahasiswa_baru FROM mahasiswa; o Perintah select untuk menampilkan record tertentu saja Bentuk Umum: SELECT * FROM nama_tabel WHERE namafield=data; Contoh: select * from mahasiswa where nim=‟12061479‟; UPDATE Perintah update berfungsi untuk mengubah satu atau lebih data field yang terdapat pada satu atau lebih record. Bentuk Umum: UPDATE nama_tabel SET field=value WHERE kriteria; Atau UPDATE nama_tabel SET field-1=value-1, field-1=value-1,… ,field- n=value-n WHERE kriteria; Contoh: UPDATE mahasiswa SET nama=”Ahmad” WHERE NIM=”12120002”; DELETE Perintah untuk menghapus satu atau beberapa record dari suatu tabel. Bentuk Umum: DELETE FROM nama_tabel WHERE kriteria; Contoh: DELETE FROM mahasiswa WHERE nim=”12120002”; 2. DML pada Ms. Access 2007 INSERT o Menambahkan 1 baris record ke dalam tabel: insert into mahasiswa values ('12061479','Dinda Ayu Muthia','1988/03/13', 'Depok'); Hasil: o Tambahkan record pada tabel mahasiswa menggunakan DML dengan data sebagai berikut: Nim Nama Tgl_Lahir Alamat 12061473 Nisa 08/08/1988 Bogor 12061551 Fely 09/07/1988 Jakarta SELECT o Tampilkan seluruh record pada tabel mahasiswa Hasil: o Tampilkan seluruh data Nim dan Nama mahasiswa Hasil: o Tampilkan data mahasiswa yang mempunyai nim=12061479 Hasil: o Buatlah tabel baru dengan nama mhs yang isinya merupakan seluruh data pada tabel mahasiswa Hasil: UPDATE o Ubahlah nama mahasiswa dengan nim=12061473 menjadi „Annisa‟ o Data mahasiswa sebelum diubah o Setelah di run, hasilnya: DELETE o Hapuslah data mahasiswa dengan nim= 12061551 o Hasil: 3. Latihan Berdasarkan database TokoBuku_NimMasing2, isikan data pada table Buku sebagai berikut: Ubahlah harga buku dengan kode=B002 menjadi 25000 Hapuslah record dengan kode=B004 Pertemuan 5 Data Definition Query 1. Query Query adalah suatu objek database yang dapat digunakan untuk menampilkan, menyunting atau menganalisa suatu data dengan memberikan baris-baris perintah tertentu. Pada aplikasi ini sudah dilengkapi dengan Structured Query Language (SQL) yang menjadi standard bahasa dalam mengolah database. 2. Membuat Query di Ms. Access 2007 Berikut adalah langkah-langkah dalam membuat Query: Klik Tab Create Pilih icon Query Design View, muncul jendela Show Tables. Keterangan Field : Nama field yang ingin ditampilkan Table : Nama tabel dari field yang ditampilkan Sort : Mengurutkan data hasil query Show : Mengatur field ditampilkan atau tidak Criteria : Syarat dari data yang ingin ditampilkan Jika ingin menggunakan semua field pada tabel maka kita hanya klik dan drop tanda * pada tabel barang ke baris field. Terdapat 3 pilihan pada toolbars View, yaitu : Design View : untuk menampilkan desain tabel query Datasheet View: untuk menampilkan data hasil query SQL View : untuk membuat query dengan script SQL Contoh : Membuat Query dengan field sebagai berikut: Field Asal Tabel Kdbarang Barang Nmbarang Barang Syarat : Tampilkan barang dengan kode “B003” Kriteria sesuai dengan syarat yang diinginkan Jalankan query dengan mengklik tanda seru ! berwarna merah pada icon toolbar, maka akan tampil hasil query dalam bentuk datasheet view. Kemudian jalankan query melalui SQL View, maka akan tampil script SQL yang terbuat sebagai berikut: SELECT Barang.kdbarang, Barang.nmbarang FROM Barang WHERE(((Barang.kdbarang)= "B003")); 3. Membuat Ekspresi di Query Buatlah Query baru seperti dibawah ini: Menambahkan ekspresi Subtotal didapat dari harga dikalikan dengan jumbel Hasilnya: Jika Subtotal>=50000, maka Diskon 10%, selain itu tidak mendapat diskon. Hasilnya: Total didapat dari subtotal dikurangi diskon Hasilnya: Pertemuan 6 Join 1. Join Join merupakan operasi yang digunakan untuk mendapatkan data gabungan dari dua tabel atau lebih. Join dipakai untuk memperoleh data-data yang lebih detail dari tabeltabel yang saling memiliki hubungan. Operasi join biasanya digunakan dalam perintah select. Join memiliki dua jenis operasi, antara lain: Inner Join dan Outer Join 2. Inner Join Inner join akan menghasilkan data yang berpasangan saja. Data-data yang tidak berpasangan tidak akan ditampilkan (dieliminasi). 3. Outer Join Outer join hampir sama dengan inner join. Bedanya kalau inner join data yang ditampilkan hanya yg berpasangan saja, sedangkan outer join menampilkan kedua-duanya, yaitu berpasangan dan yang tidak berpasangan. Operasi outer join terbagi menjadi 3 yaitu: o Left outer join Data yang ada pada tabel sebelah kiri akan ditampilkan sama sesuai pasangannya. Jika ada data yang tidak memiliki pasangan, pada tabel sebelah kanan akan diisikan NULL. o Right outer Join Data yang ada pada tabel sebelah kanan akan ditampilkan semua sesuai pasangannya. Jika ada data yang tidak memiliki pasangan, pada tabel sebelah kiri akan diisikan null. o Full outer Join: Semua data dari tabrl-tabel yag dijoin ditampilkan, baik itu yang secara left outer join, right join maupun inner join. 4. Contoh Penerapan Buatlah database baru: “Nim masing-masing” Buatlah table sebagai berikut: Data tabel: C Contoh Inner Join SQL View : select d.Area_id, d.nama_area, d.luas_area, p.penduduk_id, p.nama_penduduk (d.area_id=p.area_id); Hasilnya: from area d inner join penduduk p on Contoh Outer Join (Right Outer Join) SQL View : select d.Area_id, d.nama_area, d.luas_area, p.penduduk_id, p.nama_penduduk from area d Right outer join penduduk p on (d.area_id=p.area_id); Hasilnya: Pertemuan 7 MySQL 1. Pengenalan MySQL Mysql adalah sebuah program database server yang mampu menerima dan mengirimkan datanya dengan sangat cepat, multi user serta meggunakan perintah standar SQL (Structure Query Language). Perbedaan antara MySQL dan SQL, MySQL adalah program database server sedangkan SQL adalah bahasa yang digunakan didalamnya. 2. Penggunaan Mysql dengan Command Prompt Instal Apache2Triad terlebih dahulu Jika diminta password, maka isikan: Password: password Otomatis user untuk mengakses mysql: root dan passwordnya: password Klik Start ketik mysql enter , maka akan muncul tampilan sebagai berikut: 3. Syntax Dasar Mysql Sintak untuk menampilkan semua nama database yang telah ada adalah: mysql>show databases; Sintak untuk bisa masuk kedalam salah satu sistem database adalah: mysql>use nama_database; Contoh: mysql>use koperasi; Sintak untuk menampilkan seluruh tabel yang telah ada di dalam database mysql adalah: mysql>show tables; Sintak untuk melihat struktur tabel: mysql>desc nama_tabel; Contoh: mysql>desc barang; 4. Pengelompokkan Statement SQL Data Definition Language (DDL) o CREATE (Membuat) o ALTER (Mengubah) o DROP (Menghapus) Data Manipulation Language (DML) o INSERT (Menyisipkan data ke dalam tabel) o SELECT (Menampilkan data dari suatu tabel) o UPDATE (Mengubah data di dalam tabel) o DELETE (Menghapus data di dalam tabel) Pertemuan 8 SQL Data Definition Language 1. Create Sintak untuk menciptakan database baru: mysql>create database nama_database; Contoh: mysql>create database penjualan; Sintak untuk membuat sebuah tabel: mysql>create table nama_tabel( field-1 type(lenght), field-2 type(lenght), field-n type(length)); Contoh: mysql>create table barang( kodeBarang char(5) primary key, namaBarang varchar(20), harga int); Tipe data di MySQL VARCHAR TINYINT TEXT DATE SMALLINT MEDIUMINT INT BIGINT FLOAT DOUBLE DECIMAL DATETIME TIMESTAMP TIME YEAR CHAR TINYBLOB TINYTEXT BLOB MEDIUMBLOB MEDIUMTEXT LONGBLOB LONGTEXT ENUM SET BINARY VARBINARY 2. Alter Sintak untuk membuat primary key pada suatu tabel yang sudah terbentuk: mysql> alter table nama_table add primary (nama_field_primary); Contoh: mysql>alter table barang add primary key (kodeBarang); key Sintak untuk menghapus Primary Key: mysql>alter table nama_table drop primary key; Contoh: mysql>alter table barang drop primary key; Sintak untuk mengganti nama tabel: mysql>rename table tabel_lama to tabel_baru; Contoh: mysql>rename table mhs to mahasiswa; Sintak untuk perubahan field table: mysql>alter table nama_table alter spesifikasi kondisi; Contoh: mysql>alter table barang add stok int; atau mysql>alter table barang add stok int after harga; Sintak untuk mengubah nama field: mysql>alter table nama_table change field_lama field_baru type(length); Contoh: mysql>alter table barang change kdBarang kodeBarang char(3); Sintak untuk menghapus field: mysql>alter table nama table drop nama_field; Contoh: mysql>alter table barang drop stok; Sintak untuk membuat validasi menggunakan tipe data enum: mysql>Create table nama_tabel( field-1 type(lenght), field-2 type(lenght), field-n enum(“pilihan1‟,‟pilihan2‟)); Contoh: mysql>Create table pelanggan( kd_pel char(5) primary key, nm_pel varchar(20), alamat varchar(50), telp varchar(15), status enum(“member”,”nonmember”)); 3. Drop Sintak untuk menghapus database: mysql>drop database nama_database; Contoh: mysql>drop database penjualan; Sintak untuk menghapus tabel: mysql>drop table nama_tabel; Contoh: mysql>drop table barang; Pertemuan 9 SQL Data Manipulation Language 1. Insert Berfungsi untuk menyisipkan, memasukkan, atau menyimpan data dari luar sistem kedalam database. Bentuk umum: INSERT INTO nama_tabel VALUES (value-1, value-2,…,value-n); 2. Select Perintah select untuk menampilkan isi table keseluruhan Bentuk umum: SELECT * FROM nama_tabel; Perintah select untuk menampilkan isi table hanya untuk field tertentu saja Bentuk umum: SELECT namafield1, namafield2 FROM namatabel; Perintah select untuk menampilkan record tertentu saja Bentuk umum: SELECT * FROM nama_tabel WHERE namafield=data; Perintah select untuk membentuk tabel baru dengan cara mengcopy (backup) seluruh data dari tabel aktif. Bentuk umum: SELECT field-1, field-2….,field-n INTO nama_tabel_baru FROM nama_tabel_aktif; 3. Update Perintah update berfungsi untuk mengubah satu atau lebih data field yang terdapat pada satu atau lebih record. Bentuk umum: UPDATE nama_tabel SET field=value WHERE kriteria; atau UPDATE nama_tabel SET field-1=value-1, field-1=value-1,… ,fieldn=value-n WHERE kriteria; 4. Delete Perintah untuk menghapus satu atau beberapa record dari suatu tabel. Bentuk umum: DELETE FROM nama_tabel WHERE kriteria; Pertemuan 10 PhpMyAdmin Membuat Database di PhpMyAdmin Phpmyadmin adalah alat yang ditulis dalam PHP yang ditujukan untuk menangani administrasi MySQL melalui web. Untuk membuat database, ketikkan alamat berikut di address bar: localhost/phpmyadmin Jika ada permintaan untuk required authentication, isikan: username : root password : password Jika sudah terisi otomatis, klik OK sehingga akan muncul tampilan sebagai berikut: Membuat Database Membuat Table Struktur Table Apabila telah sukses maka akan tampil tampilan seperti dibawah ini: Menambah Field Maka akan muncul tampilan sebagai berikut: Menghapus field Mengubah field Menyisipkan data (Insert) Mencari Data (Search) Hasil pencarian: Menampilkan Isi Table (Select) Hasilnya: Menghapus Database Menghapus tabel