Koneksi PHP ke Database My SQL Koneksi PHP
Koneksi PHP ke Database My. SQL -Koneksi PHP ke My. SQL -Query (Create, Drop, Select, Insert, Update, delete) Oleh : Ardi Sanjaya, M. Kom
PHP dan SQL Database Arsitektur Aplikasi Web Database menyangkut 3 sistem: q Web client (contoh: user browser) q Web server (contoh: apache) q Database server (contoh: My. SQL server) Browser Web Server Browser + PHP Database
Database My. SQl adalah sebuah database yang mampu berinteraksi dengan aplikasi lain. Umumnya semua database menggunakan ODBC (Open Database Conectivity) sebagai komponen penghubung database dengan aplikasi. My. SQL memiliki beberapa API selain ODBC untuk dapat berinteraksi dengan PHP
Koneksi PHP ke My. SQL Untuk koneksi PHP ke database My. SQL dilakukan dengan fungsi-fungsi : - mysql_connect() Untuk menghubungkan ke My. SQL server mysql_connect (nama_server, username, password) - mysql_select_db() - dsb
Koneksi PHP ke My. SQL (lanj) Contoh :
Pembuatan Database My. SQL 1. Dengan script Mysql_create_db(“mydata”) 2. Menggunakan tool phpmyadmin (App. Serv)
Mengakses Data n mysql_query() Untuk memberikan query buat mengakses data yang ada pada database yang aktif. mysql_query(string_query) Example: <? php $id_cari=321; $query_aktif="SELECT name FROM person WHERE id=$id_cari"; $hasil_aktif=mysql_query($query_aktif); ? >
Mengakses Data (lanj) n mysql_fetch_array() Untuk mengambil data hasil query. mysql_fetch_array(hasil_query) Example: <? php $query_aktif="SELECT id, name FROM person "; $hasil_aktif=mysql_query($query_aktif); while ($row = mysql_fetch_array($hasil_aktif)) { echo $row[0]; // ID echo $row[1]; // Name } ? >
Contoh
Contoh
Create n CREATE q Sintak untuk membuat tabel CREATE TABLE nama_tabel ( nama_atribut type_data ); Contoh: CREATE TABLE person ( id INTEGER NOT NULL PRIMARY KEY, name VARCHAR(200), birthdate DATE, );
Drop n DROP q q Untuk menghapus database atau tabel dalam database yang ada Sintak untuk menghapus database DROP DATABASE nama_database Contoh: <? php $link = mysql_connect(); mysql_drop_db(“nama_database", $link); ? >
Drop (2) n DROP q Sintak untuk menghapus tabel DROP TABLE nama_tabel Contoh: DROP TABLE person, book;
Insert n INSERT q q Untuk menambah row/data ke dalam tabel database yang ada Sintak untuk insert INSERT INTO nama_tabel (nama_col, …, …) VALUES (nilai 1, …, …) Contoh: <? php $query_postperson = "INSERT INTO person VALUES (1, 'Diana', '". date('Y-m-d'). "')"; $hasil_postperson = mysql_query($query_postperson ); ? >
Update n UPDATE q q Untuk mengubah nilai yang ada dalam row Sintak untuk update UPDATE nama_tabel SET nama_col 1=nilai 1, nama_col 2=nilai 2, … WHERE batasan Contoh: <? php $query_postperson = "UPDATE person SET name='Anne' WHERE id=321 "; $hasil_postperson = mysql_query($query_postperson ); ? >
Delete n DELETE q q Untuk menghapus row yang ada pada tabel Sintak untuk delete DELETE FROM nama_tabel WHERE batasan Contoh: <? php $query_hapus = "DELETE FROM person WHERE id=321 "; $hasil_hapus = mysql_query($query_hapus ); ? >
Select n SELECT q q Untuk menampilkan data Sintak untuk select SELECT [DISTINCT] ekspresi_select FROM tabel_yang_terlibat WHERE batasan, relasi_antar_tabel GROUP BY pengelompokan HAVING batasan ORDER BY pengurutan [ASC | DESC]
Select - Condition • SELECT – Conditions (WHERE) SELECT FROM WHERE columns What do you want to see ? tables What tables are involved ? criteria What are the constraints ? Example : Select First. Name, Last. Name, City From Employees Where Country = ‘USA’ Order By First. Name;
Where Clauses • WHERE Clauses – Operators • • < , =, > , <> Between Like In – NOT – AND – OR
Select - Aggregations • SELECT – Aggregations Aggregate Functions : Sum, Avg, Min, Max, Count Example : Select Count(*) From Products;
Group By • GROUP BY Untuk mengelompokan data. Example : Select Category, Count(*) From Products Group By Category; CAUTIONS !! All non-aggregate function columns defined after the SELECT clause must also be defined after the GROUP BY clause.
Having • HAVING Untuk menspesifikkan data yang ingin ditampilkan. Example : Select Category, Count(*) From Products Group By Category Having count(*) > 5;
- Slides: 22