Dalam aplikasi PHP, operasi yang memerlukan pengubahsuaian pangkalan data adalah salah satu keperluan biasa. Objek Data PHP (PDO) menyediakan cara yang selamat dan cekap untuk beroperasi pada pangkalan data hubungan.
Artikel ini akan memperkenalkan cara menggunakan sambungan PDO untuk menyambung ke pangkalan data MySQL, dan menunjukkan melalui contoh cara menggunakan PDO untuk mengubah suai data pangkalan data.
Sambung ke pangkalan data MySQL
Sebelum menggunakan PDO, anda perlu menyambung ke pangkalan data terlebih dahulu. Berikut ialah contoh kod untuk menyambung ke pangkalan data MySQL:
//数据库连接参数 $host = 'localhost'; $dbname = 'test'; $username = 'root'; $password = ''; //连接数据库 try { $db = new PDO("mysql:host=$host;dbname=$dbname", $username, $password); } catch(PDOException $e) { echo $e->getMessage(); }
Dalam kod di atas, kami menyambung ke pangkalan data melalui pembina kelas PDO. Mula-mula, nyatakan nama hos dan nama pangkalan data pangkalan data MySQL, dan kemudian masukkan nama pengguna dan kata laluan untuk disambungkan.
Ubah suai data pangkalan data
Selepas sambungan berjaya, mari lihat cara menggunakan PDO untuk mengubah suai data pangkalan data. Kami menganggap terdapat jadual pelajar yang mengandungi medan id, nama dan umur. Seterusnya, kami akan menunjukkan cara menggunakan PDO untuk mengubah suai data pada jadual.
Kami boleh menggunakan fungsi prepare() PDO untuk melaksanakan operasi pengubahsuaian. Berikut ialah contoh kod yang mengemas kini rekod dengan id 1 dalam jadual pelajar:
//更新数据 $id = 1; $newName = 'Tom'; $sql = "UPDATE student SET name=:name WHERE id=:id"; $stmt = $db->prepare($sql); $stmt->bindParam(':id', $id, PDO::PARAM_INT); $stmt->bindParam(':name', $newName, PDO::PARAM_STR); $stmt->execute();
Dalam kod di atas, kami mula-mula menentukan nilai id dan nama baharu rekod yang akan dikemas kini. Kami kemudian mengemas kini nama kepada $newName melalui kenyataan UPDATE, di mana :id dan :name ialah pemegang tempat. Seterusnya, kami menggunakan fungsi prepare() PDO untuk menyediakan pernyataan SQL dan mengikat nilai $id dan $newName melalui fungsi bindParam(). Akhir sekali, kami memanggil fungsi execute() untuk melaksanakan operasi kemas kini.
Jika anda ingin mengemas kini berbilang medan, kami boleh menggunakan kaedah yang serupa dengan di atas. Berikut ialah contoh kod yang mengemas kini nama dan medan umur rekod dengan id 1 dalam jadual pelajar:
//更新数据 $id = 1; $newName = 'Tom'; $newAge = 20; $sql = "UPDATE student SET name=:name, age=:age WHERE id=:id"; $stmt = $db->prepare($sql); $stmt->bindParam(':id', $id, PDO::PARAM_INT); $stmt->bindParam(':name', $newName, PDO::PARAM_STR); $stmt->bindParam(':age', $newAge, PDO::PARAM_INT); $stmt->execute();
Dalam kod di atas, kami mengemas kini nama dan umur kepada nilai baharu melalui KEMASKINI kenyataan. Ambil perhatian bahawa kita perlu mengikat parameter yang sepadan untuk setiap medan yang akan dikemas kini.
Jika anda ingin mengemas kini data dalam kelompok, kami boleh menggunakan fungsi transaksi PDO. Berikut ialah contoh kod untuk mengemas kini berbilang rekod pelajar:
//更新多条数据 $students = array( array('id'=>1, 'name'=>'Tom', 'age'=>20), array('id'=>2, 'name'=>'Jack', 'age'=>22), array('id'=>3, 'name'=>'Lily', 'age'=>21) ); try { $db->setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION); $db->beginTransaction(); $sql = "UPDATE student SET name=:name, age=:age WHERE id=:id"; $stmt = $db->prepare($sql); foreach ($students as $student) { $stmt->bindParam(':id', $student['id'], PDO::PARAM_INT); $stmt->bindParam(':name', $student['name'], PDO::PARAM_STR); $stmt->bindParam(':age', $student['age'], PDO::PARAM_INT); $stmt->execute(); } $db->commit(); } catch (PDOException $e) { $db->rollback(); echo $e->getMessage(); }
Dalam kod di atas, kami mentakrifkan tatasusunan $pelajar yang mengandungi rekod yang akan dikemas kini. Kemudian, kami melaksanakan operasi transaksi dengan menggunakan fungsi beginTransaction() dan fungsi commit(). Dalam gelung, kami mengikat parameter id, nama dan umur setiap rekod dan melaksanakan pernyataan SQL masing-masing.
Ringkasan
Menggunakan PDO untuk mengubah suai data pangkalan data ialah kaedah yang selamat dan boleh dipercayai. Dalam artikel ini, kami menerangkan cara menggunakan PDO untuk menyambung ke pangkalan data MySQL, dan menunjukkan melalui contoh cara menggunakan PDO untuk mengubah suai data pangkalan data. Perlu dinyatakan bahawa kami juga memperkenalkan cara menggunakan fungsi transaksi PDO untuk mengemas kini rekod dalam kelompok, yang merupakan kemahiran yang sangat praktikal.
Atas ialah kandungan terperinci Cara menggunakan sambungan PHP PDO untuk menyambung ke pangkalan data MySQL. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!