UNIVERSITAS DHARMA WACANA
FTBS
MK. PEMROGRMAN WEB
BENNY NURDIANTO, M.KOM
Database MySQL & PHP
Database
Basis data (atau database) adalah kumpulan
informasi yang disimpan didalam komputer secara
sistematik sehingga dapat diperiksa menggunakan
suatu program komputer untuk memperoleh
informasi dari basis data tersebut
(http://id.wikipedia.org/wiki/Database).
DBMS
Untuk mengelola database diperlukan suatu
perangkat lunak yang disebut DBMS (Database
Management System).
DBMS merupakan suatu sistem perangkat lunak
yang memungkinkan user (pengguna) untuk
membuat, memelihara, mengontrol, dan mengakses
database secara praktis dan efisien.
RDBMS
RDBMS atau Relationship Database
Management System merupakan salah satu jenis
DBMS yang mendukung adanya relationship atau
hubungan antar tabel. Di samping RDBMS, terdapat
jenis DBMS lain, misalnya Hierarchy DBMS, Object
Oriented DBMS, dsb.
Software DBMS
Beberapa software atau perangkat lunak DBMS yang sering
digunakan dalam aplikasi program antara lain :
⚫ DB2 - http://www-306.ibm.com/software/data/db2/
⚫ Microsoft SQL Server - http://www.microsoft.com/sql/
⚫ Oracle - http://www.oracle.com
⚫ Sybase - http://www.sybase.com/
⚫ Interbase - http://www.borland.com/interbase
⚫ Teradata - http://www.teradata.com/
⚫ Firebird - http://www.firebirdsql.org/
⚫ MySQL – http://www.mysql.com
⚫ PostgreSQL - http://www.postgresql.org/
Hierarki Database
Tentang MySQL
MySQL adalah
bahasa yang berisi perintah-perintah untuk
memanipulasi database, mulai dari melakukan
perintah select untuk menampilkan isi database,
menginsert atau menambahkan isi kedalam
database, mendelete atau menghapus isi database
dan mengedit database.
Tentang MySQL
Beberapa sistem database yang menggunakan SQL
diantaranya ada Ms. Access, MsSQL Server, Oracle,
PostgresSQL, DB2, MySQL, Interbase dan lain
sebagainya.
Untuk menjadi seorang web developer yang handal,
anda harus menguasai perintahperintah sql.
Kenapa memilih mysql??
MySQL itu merupakan salah satu sistem database
yang menggunakan sql. MySQl pun dapat digunakan
secara langsung dengan mengetikkan perintah atau
syntaxnya melalui console.
MySQL juga bisa digunakan secara embeded SQL,
artinya kita dapat menggunakan perintah sql dengan
menyisipkannya kedalam bahasa pemgrogaman
tertentu, PHP misalnya.
Sampai saat ini PHP dan MySQL merupakan
kombinasi yang menakjubkan.
Kelebihan MySQL
Beberapa kelebihan MySQL antara lain :
⚫ Free (bebas didownload)
⚫ Stabil dan tangguh
⚫ Fleksibel dengan berbagai pemrograman
⚫ Security yang cukup baik
⚫ Dukungan dari banyak komunitas
⚫ Kemudahan management database.
⚫ Mendukung transaksi
⚫ Perkembangan software yang cukup cepat.
Apa itu SQL ?
⚫ Apa Itu SQL ?
⚫ Membuat, Menampilkan, Membuka dan Menghapus
Database
⚫ Membuat, Mengubah dan Menghapus Table
⚫ Menambah Record dengan INSERT
⚫ Mengedit Record dengan UPDATE
⚫ Menghapus Record dengan DELETE
⚫ Menampilkan Record dengan SELECT
Apa Itu SQL ?
SQL merupakan singkatan dari Structured Query
Language. SQL atau juga sering disebut sebagai query
merupakan suatu bahasa (language) yang digunakan
untuk mengakses database. SQL dikenalkan pertama
kali dalam IBM pada tahun 1970 dan sebuah standar
ISO dan ANSII ditetapkan untuk SQL.
Standar ini tidak tergantung pada mesin yang
digunakan (IBM, Microsoft atau Oracle). Hampir
semua software database mengenal atau mengerti
SQL. Jadi, perintah SQL pada semua software
database hampir sama.
Jenis Perintah SQL
• Data
DDL Definition
Language
SQ
L • Data
DML Manipulation
Language
DDL
DDL atau Data Definition Language
DDL merupakan perintah SQL yang berhubungan
dengan pendefinisian suatu struktur database,
dalam hal ini database dan table.
DDL
RENAM
CREATE ALTER DROP
E
DML
DML atau Data Manipulation Language
DML merupakan perintah SQL yang berhubungan
dengan manipulasi atau pengolahan data atau record
dalam table.
DML
SELECT INSERT UPDATE DELETE
Struktur MySQL
Tipe Data String :
⚫ char, memiliki panjang 255
⚫ varchar, memiliki panjang 255
⚫ tinytext, memiliki panjang 255
⚫ text, tidak terbatas
⚫ mediumtext, 1 juta
⚫ longtext, 4 Milyar
Struktur MySQL
Tipe Data Numerik :
⚫ int, -2 M sampai dengan 4 M
⚫ tinyint, -128 sampai dengan 255
⚫ mediumint, -8 Juta sampai dengan 8 Juta
⚫ bigint, -92 Triliyun sampai dengan 92 Triliyun
⚫ float, bilangan desimal positif, bilangan real,
memiliki koma-komaan ...
⚫ double, bilangan desimal negatif dan positif, dan
memiliki koma-komaan ...
Struktur MySQL
Tipe Data Date dan TIme :
⚫ date, hanya memuat tanggal saja, dengan formatnya
seperti ini tahun-bulan-tanggal
⚫ time, hanya memuat waktu saja, formatnya
HH:MM:SS (Jam:Menit:Detik)
⚫ datetime, memuat tanggal dan waktu, formatnya
Tahun-Bulan-Hari Jam:Menit:Detik
⚫ year,
Struktur MySQL
Tipe Key :
⚫ Primary Key, Kunci yang menghubungkan antara 1 table
dengan table lainnya
Auto Increment :
⚫ Auto Increment menyebabkan pertambahan nilai urutan
secara otomatis, suatu record
⚫ memiliki nilai 1, kemudian jika ada record yang lain lagi
di insertkan ke dalam database,
⚫ maka urutannya akan menjadi 2 dan begitu
seterus-seterusnya.
Syntax MySQL
Create :
ini digunakan untuk membuat database maupun table.
Database yang memiliki sistem Relationship DBMS di
mana telah di terangkan di awal, bahwa RDBMS itu
sistem database yang berisi informasi dalam bentuk
table-table yang saling berkaitan.
contoh :
create namadatabase;
untuk membuat table syntaxnya seperti ini :
create table(field1(ukuran), field2(ukuran), ...)
Syntax MySQL
Use :
Ini digunakan untuk menggunakan database yang
telah dibuat sebelumnya, yang nantinya database ini
akan di edit atau di modifikasi.
syntaxnya itu seperti ini :
use namadatabase;
Syntax MySQL
Drop :
Ini digunakan untuk menghapus database ataupun
table yang ada.
Syntaxnya adalah seperti ini :
drop database;
untuk menghapus table gunakan :
drop namatable;
Syntax MySQL
Alter :
berfungsi untuk memodifikasi table yang telah di buat,
modifikasi nya seperti menambahhkan field, mengganti size
dari suatu field, menghapus field, dan mengganti nama field.
Sebagai contoh untuk mengganti size dari suatu field adalah
seperti ini :
alter table mahasiswa change nama nama_mahasiswa
varchar(75);
ini berarti, ganti tipe dari field nama menjadi nama_mahasiswa
dengan tipe varchar yg memiliki ukuran 75
Syntax MySQL
Select :
Di gunakan untuk menampilkan isi dari suatu table, bisa
dengan kriteria tertentu bisa juga
dapat menampilkan keseluruhan tanpa adanya kriteria.
Penggunaan standarnya seperti
ini:
select * from nama_table;
Penggunaan ketika ingin menampilkan berdasarkan
kriteria adalah seperti ini :
select * from nama_table where field=kriteria ;
Syntax MySQL
Untuk menampilkan nilai terbanyak :
select max(field) from tablenya;
Untuk menjumlah isi record salah satu field dari suatu
table :
select sum(field) from tablenya;
untuk menghitung berapa jumlah record yang ada dari
suatu table :
select count(*) from tablenya;
Syntax MySQL
Insert :
insert ini digunakan untuk mengisi record suatu table,
syntaxnya seperti ini :
insert into nama_table(field1, field2, ...) values(nilai1,
nilai2, ...)
Contoh :
insert into mahasiswa(nama, nilai) values(‘benny
nurdianto',‘A');
ini berarti masukkan kedalam table mahasiswa, kedalam
field nama berisi benny nurdianto, dan kedalam field
nilai berisi A.
Syntax MySQL
Update :
digunakan untuk memperbarui isi dari suatu record, syntaxnya
seperti ini :
update nama_table set field=nilaibaru where field=kriteria
Contoh :
update mahasiswa set nilai=‘B' where nama=‘benny nurdianto';
ini berarti perbarui atau update table mahasiswa ganti nilainya
menjadi B dari mahasiswa bernama benny nurdianto.
Syntax MySQL
Delete :
digunakan untuk menghapus suatu record dari suatu
table penggunaannya seperti ini :
delete from nama_table where field=kriteria;
Membuat Database & Tabel
Aktifkan Xampp terlebih dahulu.
Setelah semuanya berjalan, kita akan coba masuk
kedalam start | run | cmd.
Membuat Database & Tabel
Masuk ke direktori :
c:\xampp\mysql\bin
dengan cara :
cd c:\xampp\mysql\bin
Membuat Database & Tabel
kemudian selanjutnya ketik :
mysql -u root
Hasil nya akan seperti ini
Membuat Database & Tabel
Buat 1 buah database bernama database mahasiswa.
mysql> create database mahasiswa;
Kemudian kita akan menggunakan database tersebut
untuk di buat table nya.
mysql> use mahasiswa;
Untuk melihat database tersebut sudah memiliki table
apa saja, kita cukup gunakan
mysql> show tables;
Membuat Database & Tabel
Membuat Database & Tabel
Struktur tabel yang akan dibuat:
Membuat Database & Tabel
disini id_mhs nya adalah int yakni hanya untuk
bilangan bulat saja, dan besarnya adalah 5, ini
mengartikan bahwa maksimal jumlah mahasiswa
adalah sebanyak 5 digit,
yakni 99.999 record mahasiswa id_mhs ini berfungsi
sebagai penomoran dari mahasiswa, urutan mulai
dari 1 hingga sekian.
Membuat Database & Tabel
Selanjutnya ada nama_mhs, bertipe varchar,
karena mahasiswa itu terdiri huruf, memiliki ukuran
50 ini digunakan sebagai perwakilan nama
mahasiswa, seperti misalnya ‘benny nurdianto'
terdapat 15 digit huruf, dan padaumunya adalah
paling banyak itu nama orang adalah berjumlah 50.
Misalnya ... "Sukaryo Mangunkusumo
SungTolodo Makan Cokor Kebo" berjumlah 49
digit huruf, termasuk spasi didalamnya.
Begitu juga dengan jenis_kelamin dan alamat,
namun untuk tgl_lahir, menggunakan tipe nya
date.
date sudah otomatis berisi 10 digit, bentuk defaultnya
adalah seperti ini 0000-00-00 sehingga jika
menulis 24 Januari 1987 adalah seperti ini
1987-01-24.
Membuat Database & Tabel
Masukan syntax berikut untuk membuat tabel,
create table tbl_mhsiswa (id_mhs int(5) primary key auto_increment,
nama_mhs varchar(50), jenis_kelamin varchar(10), tgl_lahir date,
alamat varchar(200));
Untuk melihat apakah table yang sudah di buat sudah ada jalankan
perintah :
show tables;
Membuat Database & Tabel
setelah membuat table, untuk merubah namanya
menggunakan syntax alter;
Kemudian show tables untuk melihat perubahan.
Membuat Database & Tabel
misalkan kita ingin menambahkan field yang tadinya
cuma id_mhs, nama_mhs, jenis_kelamin,
tgl_lahir, alamat, sekarang kita akan
menambahkan dengan satu field baru misalnya
status, caranya adalah:
Membuat Database & Tabel
Dan untuk mengapus field yang ada caranya seperti
ini, misalnya kita ingin mendelete field status :
Membuat Database & Tabel
Selanjutnya untuk melihat struktur yang ada,
Dengan cara :
Membuat Database & Tabel
Selanjutnya proses pengisian tabel dengan
menggunakan syntax insert into
Untuk menampilkan hasil pengisian tbl_mhsiswa,
menggunakan syntax select * from
Membuat Database & Tabel
Lakukan pengisian sampai dengan tabel
tbl_mhsiswa memiliki 3 baris isi.
Membuat Database & Tabel
Selanjutnya memanipulasi data pada tabel (Database
Manipulation Laguange).
untuk menghapus :
Membuat Database & Tabel
Untuk meng update data yang telah diisikan bisa
menggunakan syntax update
STMIK DHARMA WACANA
MK. WEB DASAR
BENNY NURDIANTO, S.KOM
PHP bekerja dengan MySQL
Koneksi PHP dan MySQL
Untuk melakukan koneksi antara php dan mysql
sebelumnya terlebih dahulu masuk ke dalam folder
c:\xampp\htdocs\.
Kemudian kita buat sebuah folder dengan nama
latihan10, kemudian buat sebuah file dengan nama
koneksi.php
Referensi :
https://www.niagahoster.co.id/blog/perbedaan-mysql
-dan-mysqli/
Koneksi PHP dan MySQL
Koneksi.php
Database Query
menampilkan isi database menggunakan pengulangan
jenis while. Masuk dulu ke dalam direktori
latihan10 yang tadi, kemudian buat sebuah file
dengan nama selectquery1.php
Untuk dapat menampilkan isi database, pertama
adalah lakukan dulu koneksi, baru kemudian
jalankan querynya untuk menampilkan isi
databasenya.
Database Query
⚫ selectquery1.php / mysqli_fetch_array
Database Query
⚫ hasil
Database Query
⚫ selectquery2.php / mysqli_fetch_row.
Input data dengan mysqli (prepared statement)
Tahap 1 : Prepared
Berikut adalah fungsi mysqli_prepare() untuk proses
penambahan data:
Perhatikan cara penulisan query INSERT diatas. Karena
fungsi prepared statements yang memisahkan query dengan
data, maka di kolom VALUES, kita tidak langsung menuliskan
data yang akan ditambahkan, tetapi menggunakan tanda “?”
sebanyak 5 kali untuk penanda data yang akan diinput. Kelima
data ini selanjutnya akan ditambahkan pada saat proses bind.
Tahap 2 : bind
Proses pengiriman data (bind) dilakukan dengan
fungsi mysqli_stmt_bind_param(). Karena query INSERT kita
membutuhkan 5 variabel, maka
fungsi mysqli_stmt_bind_param() juga harus menyertakan kelima
variabel ini (untuk mengganti karakter (?, ?, ?, ?, ?)).
Dalam contoh diatas,
fungsi mysqli_stmt_bind_param() memiliki 7
argumen. Argumen pertama adalah
variabel $stmt hasil fungsi mysqli_prepare(),
argumen kedua adalah string yang menunjukkan 5
tipe data. Untuk argumen kedua tertulis “sssss”,
yang merupakan singkatan dari “string string
string string string ”.
Type data lain dapat berupa integer (i), atau
decimal (d)
⚫ Tahap 3 : execute dan memeriksa hasil query
Setelah query dan data selesai diinput, kita tinggal
menjalankan query dengan fungsi mysqli_stmt_execute()
Untuk memeriksa apakah hasil query INSERT yang
dijalankan berhasil atau tidak, bisa dilakukan dengan
memeriksa variabel $stmt dan
fungsi mysqli_stmt_affected_rows()
Secara lengkap dapat di lihat pada script di halaman
selanjutnya.
Database Query
⚫ insertquery.php / mysqli_connect
untuk input data ke data base:
Bekerja dengan PHPmyadmin
url => http://localhost/phpmyadmin
Layout phpmyadmin
Browse :
berguna untuk menampilkan record yang telah di insertkan
Structure :
untuk melihat dan memodifikasi struktur table yang ada misalnya kita
mengganti field nama_mhs, menjadi nama_mahasiswa, begitu juga
apabila ingin menambah field, anda cukup mengaddnya ...
Sql :
ini berfungsi untuk menjalankan custom query, anda bisa
menjalankan query mysql disini
Insert :
insert ini digunakan untuk menginsertkan record, berisi form-form
yang siap anda inputkan
Export :
export digunakan untuk mengeksportkan database,
biasanya hal ini kita temukan ketika ingin
memindahkan database lokal ke database hosting,
untuk dionlinekan.
Import :
fasilitas import ini digunakan untuk mengimportkan
database yang sebelumnya telah diexportkan import
berfungsi untuk merubah query-query mysql
kedalam database yang real.
Praktikum :
Buatlah database dengan nama mahasiswa2.
Buat 1 table seperi dibawah ini :
Selanjutnya isi table dengan 3 record :
Menamapilkan data dalam table
⚫ Hasilnya menampilkan data table
Bekerja dengan FORM [input database]
Simpan file dengan nama : input-database.html
Bekerja dengan FORM
Bekerja dengan FORM
Bekerja dengan FORM
Hasil form input :
Bekerja dengan FORM
Buat file proses dengan nama : proses-input-database.php
Bekerja dengan FORM
Proses Input menggunakan form
Hasil inputan tersimpan dalam data base
Periksa hasil inputan dalam phpmyadmin.