mungkin anda akan bingung ttg penggunaan DB? terutama pemula ataupun yg sudah sering pake DB.. berikut gw mo share ttg melakukan query / melakukan aksi2 database memakai PEAR
untuk yg memakai XAMPP
,
enaknya udah tersedia. Tetapi bila anda terlanjur pake yang lain.. atau mungkin pasang manual dan anda kebingungan.. tolong info aja.. nanti kubantu..
dalam tulisan sy sebelumnya ttg mysql / database.. sy mengingatkan bahwa ada 3 hal penting dalam database yaitu koneksi, query dan hasil
pada tulisan ini sy tambahkankan satu.. yaitu menutup koneksi. Secara garis besar
- buka koneksi
- melakukan aksi dalam hal ini query
- mendapatkan hasil
- menutup koneksi
dalam PEAR kita harus mengenal cara melakukan koneksi. Tetapi untuk kasus ini PEAR tidak untuk 1 database engine saja, melainkan lebih. Jadi dengan PEAR, kamu bisa membuat koneksi untuk Oracle, Posgress dan lain-lain. Hal yang menyenangkan (semoga ) dan menjadi keunggulan PEAR adalah kamu tidak perlu banyak menyesuaikan penulisan program untuk melakukan query. bs dibilang bila aplikasi/web kamu ini yg awalnya pake mysql dan akan diubah memakai oracle, maka sintax yang kamu buat tidak perlu di ubah.
dalam PEAR, dbms yg di dukung adalah
- dbase -> dBase
- fbsql -> FrontBase (functional since DB 1.7.0)
- ibase -> InterBase (functional since DB 1.7.0)
- ifx -> Informix
- msql -> Mini SQL (functional since DB 1.7.0)
- mssql -> Microsoft SQL Server (NOT for Sybase. Compile PHP --with-mssql)
- mysql -> MySQL (for MySQL <= 4.0)
- mysqli -> MySQL (for MySQL >= 4.1) (requires PHP 5) (since DB 1.6.3)
- oci8 -> Oracle 7/8/9
- odbc -> ODBC (Open Database Connectivity)
- pgsql -> PostgreSQL
- sqlite -> SQLite
- sybase -> Sybase
<?php require_once 'DB.php';
$dsn1 = array(
'phptype' => 'mysqli',
'username' => 'nasgor',
'password' => '123123',
'hostspec' => 'localhost',
'database' => 'test',
);
$dsn2 = array(
'phptype' => 'sqlite',
'database' => 'mydb',
'mode' => '0644',
);
$options = array(
'debug' => 2,
'portability' => DB_PORTABILITY_ALL,
);
$db1 =& DB::connect($dsn1, $options);
if (PEAR::isError($db1)) {
$err.="<br>DB 1: ".$db1->getMessage();
}
$db2 =& DB::connect($dsn2, $options);
if (PEAR::isError($db2)) {
$err.="<br>DB 2: ".$db2->getMessage();
}
$res =& $db1->query('SELECT * FROM clients ');
if (PEAR::isError($res)) {
$err.="<br>DB 1 sql: ".$res->getMessage();
} $db1->disconnect();
if($err) echo "ERROR:
<font color=red>$err</font>";
$dsn = array(
'phptype' => false,
'dbsyntax' => false,
'username' => false,
'password' => false,
'protocol' => false,
'hostspec' => false,
'port' => false,
'socket' => false,
'database' => false,
);
pada tulisan ini juga sy berikan 1 contoh.. contoh yg benar (inputnya) dan contoh yg salah. Dimana contoh yang salah harus mengeluarkan error.
di dalam PEAR Ini, kita dapat menangkap error dengan
if (PEAR::isError($res)) {
$err.="<br>DB 1 sql: ".$res->getMessage();
}
$db1->disconnect();
fungsi yang kita pelajari saat ini
connect ( mixed $dsn [, array $options = array()] )
isError() You're generally better off using PEAR::isError() instead of the DB specific isError(). lebih utama pake PEAR::isError() dibandingkan memakai DB
download aja di
http://www.mediafire.com/?iwmqimma4d3dqqx
Tidak ada komentar:
Posting Komentar