Pengantar Teknologi Web

advertisement
Pengantar Teknologi Web 6
Web Database
Database
• Kumpulan data
• Tersimpan dalam suatu tempat
• Dapat digunakan secara bersama
Database
Secara digital
• tersimpan dalam bentuk file
• tersimpan dalam database server
• diakses secara bersama melalui jaringan
komputer
Database
Dalam sistem informasi, penerapan database tidak
hanya ditinjau dari sisi ketersediaan data
tetapi juga dari sisi
•
•
•
•
keamanan data
konsistensi data
validitas data
reliablilitas system
Perlu menejemen
data
Database Management System
sistem basisdata yang mamiliki kemampuan
menajemen untuk menjamin ketersediaan,
keamanan, reliabilitas, konsistensi dan validitas
data
Database Management System
Bagaimana cara mengorganisasikan data
dalam database?
Salah satu metode yg digunakan
Menggunakan metode relasi yang
didasarkan pada teori himpunan
matematika
Database Management System
Tabel A
Tabel B
Tabel C
Tabel D
Tabel E
Relational Database Management System
Web Database
• Tempat penyimpanan (repositories) database
atau informasi yang secara dinamis berinteraksi
dengan halaman Web
• Sebuah metode untuk menyimpan content
WWW, dalam format terstruktur atau usable,
yang terhubung baik secara statis
maupundinamis dengan database lain
• Membantu komunikasi antara Web server dan
Database.dan memungkinkan pemakai
menerbitkan atau mengumpulkan informasi dari
manapun
Tujuan
• Menyediakan jalan / cara remote access
ke database server melalui browser
• Menggabungkan web server (http) dan
database server
• Menggunakan semua metodologi web
design standard untuk menyediakan
kemudahan pemakaian, front end GUI ke
database
Yg menggunakan web db
•
•
•
•
•
•
•
•
•
E-Commerce
Resource libraries
Catalogs
Directories (Yellow Pages)
Online Shopping
Online Auctions
Training Courses
Survey
Financial Analysis
3-tier arsitektur
• Adanya penambahan tier antara database
server dan client
• Tier ketiga (middle) dapat digunakan untuk
menjalankan business rules dan melakukan
pemrosesan
• Beban pada DBMS server dapat berkurang,
sehingga transaksi pada DBMS Server dapat
lebih efisien
• Aplikasi pemroses akan digeser ke lapisan
middle, yang memungkinkan thin clients
3 tier
• Application Server (middle tier) dapat berada
pada mesin yang berbeda dengan DBMS Server
• Banyak vendor yang menawarkan 3-Tier
environtments:
–
–
–
–
J2EE Application Server (untuk EJB) + RDBMS
COM+ dan MTS + RDBMS
.NET Remoting + RDBMS
Web Services
• Dimungkinkan untuk menggabungkan antara
application servers dan database server
Using DBMS
• Many pages access a DBMS for the data
they display
• Use PHP to display the data
• Use DBMS to do the heavy work
PHP & MySQL
MySQL
• Open Source SQL database management system
• relational database
• mampu menyimpan data dalam skala yang sangat
besar
• dikembangkan, didistribusikan dan disuport oleh
MySQL AB
• menggunakan Structured Query Language (SQL)
sebagai bahasa standardnya - SQL:2003
Main Features of MySQL
• Fully multi-threaded using kernel threads.
• Works on many different platforms.
• Many column types
• Very fast joins using an optimized one-sweep multi-join
• Full operator and function support in the SELECT and WHERE
parts of queries.
• You can mix tables from different databases in the same query.
• A privilege and password system that is very flexible and secure.
• Handles large databases.
• Tested with a broad range of different compilers. (C/C++)
• No memory leaks.
• Full support for several different character sets.
What’s New?
Now
GA!
MySQL 5.0
Performance
•
•
•
•
•
Stored Procedures
Cluster query push down
Query optimizations
Archive Engine
InnoDB storage improvements
Faster
Reliability
•
•
•
•
•
•
SQL Mode
Triggers
Views
Precision Math
Distributed Transactions
Cluster object support
Better
Ease of Use
•
•
•
•
Migration Toolkit
Information Schema
Cursors
Enhanced GUI Tools
Increased
Manageability
MySQL Architecture
Other Advanced SQL
• Stored Procedures (5.0) & Triggers (5.1)
– Put some app logic into db
• Transactions
– Multiple queries as an atomic operation
– Use “commit;” to save, or “rollback;” to cancel
– Can affect performance significantly
• Foreign Keys
– DB enforces constraints on “joinable” columns
• Optimization tools
– Benchmarking – Benchmark(1000000, 1+1)
– EXPLAIN - optimizations, indices, etc. in use
– Add indices to your tables appropriately
PHP & MySQL
Prosedur Mengakses MySQL
•
•
•
•
•
membuka koneksi (connection) dengan database
server
memilih dan membuka database yang diinginkan
mengirim perintah untuk mengakses (membaca,
menulis, mengubah, atau menghapus) data
membaca hasil akses yang telah dilakukan
mengakhiri koneksi dengan database server
PHP & MySQL
Prosedur Mengakses MySQL
membuka koneksi (connection) MySQL
menggunakan PHP
$dbServer = "localhost";
dbUser = "unej";
$dbPass = "test";
$dbConn = mysql_pconnect($dbServer, $dbUser, $dbPass);
PHP & MySQL
Prosedur Mengakses MySQL
memilih dan membuka database yang diinginkan
// membuka database
$db = "SumberDayaAir";
mysql_select_db($db);
mengirim perintah untuk mengakses (membaca,
menulis, mengubah, atau menghapus) data
// membuat query
$query = "SELECT RSuhu, RCurahHujan FROM Cuaca ";
$ result = mysql_query($query);
PHP & MySQL
Prosedur Mengakses MySQL
membaca hasil akses yang telah dilakukan
// mengakses hasil
$jumlahHasil = mysql_num_rows($hasil);
if($jumlahHasil < 1){
echo("Data tidak ada dalam database <br>");}
else{
echo("<table >");
echo("<tr><td>Suhu</td>
<td>Curah Hujan </td></tr>");
while ($row = mysql_fetch_object ($result)){
$Suhu=$row->RSuhu;
$CurahHujan=$row->RCurahHujan;
echo("<tr><td>$ Suhu </td><td>$ CurahHujan </td></tr>");}
echo("</table>");}
PHP & MySQL
Prosedur Mengakses MySQL
mengakhiri koneksi dengan database server
// ------ putus hubungan dengan database
mysql_close($koneksi);
NEXT
Download