Untuk meng-update data pada tabel MySQL kita menggunkan perintah query UPDATE. Dalam melakukan update data kita harus menyertakan klausul WHERE, jika tidak maka semua record pada tabel akan ter-update. Parameter nilai pada klausul where bisa mengacu ke salah satu field yang dianggap unik atau primary key sehingga dipastikan hanya data pada record tersebut yang di-update oleh query.
Saat menjalankan perintah query UPDATE kita bisa meng-update data pada satu kolom saja atau data pada beberapa kolom. Jika kita mengupdate data suatu kolom dalam satu baris maka data pada kolom yang lain tetap, tidak ikut di-update.
Bentuk penulisan perintah UPDATE
UPDATE [NAMA_TABLE] SET [NAMA_KOLOM]=[NILAI] WHERE [KONDISI];
Contoh penulisan perintah UPDATE
UPDATE user SET kata_sandi='QWERTY' WHERE id=1;
Berikut ini script PHP untuk meng-update data pada tabel MySQL :
1. Update data pada tabel MySQL dengan MySQL Extension
<?php
$dbHost = "localhost";
$dbUser = "root";
$dbPass = "123";
$dbName = 'MySQLDB';
// membuat koneksi mysql
$conn = mysql_connect($dbHost, $dbUser, $dbPass, $dbName);
// Mengecek koneksi mysql
if (!$conn) die("Koneksi Gagal: " . mysql_error());
else echo "Koneksi MySQL Berhasil ...<br/>";
//membuat koneksi database
$dbSelected = mysql_select_db($dbName, $conn);
// Mengecek koneksi database
if (!$dbSelected) die ('Koneksi Gatabase Gagal: ' . mysql_error());
else echo "Koneksi Database ".$dbName." Berhasil ...<br/>";
//menentukan id record yang akan diupdate
$id=1;
//menentukan nilai baru yang akan dimasukkan
$new_nama = "evieta";
$new_password = "qwerty";
$new_email = "evieta9987868@gmail.com";
//membuat query mengupdate record pada tabel User
$query="UPDATE User SET nama='$new_nama', password='$new_password', email='$new_email' WHERE id=$id";
//menjalankan query
if (mysql_query($query)) {
echo "<b>Data ke-".$id. " berhasil diupdate :</b><br/>";
echo "Nama = ".$new_nama . "<br/>";
echo "Password = ".$new_password . "<br/>";
echo "Email = ".$new_email . "<br/>";
} else die ("Error menjalankan query". mysql_error());
//menutup koneksi mysql
mysql_close($conn);
?>
2. Update data pada tabel MySQL dengan MySQLI Extension (Procedural)
<?php
$dbHost = "localhost";
$dbUser = "root";
$dbPass = "123";
$dbName = "MySQLIDB1";
// membuat koneksi mysql
$conn = mysqli_connect($dbHost, $dbUser, $dbPass, $dbName);
// mengecek koneksi mysql
if (!$conn) die("Koneksi Gagal: " . mysqli_connect_error());
else echo "Koneksi Database ".$dbName." Berhasil ...<br/><br/>";
//menentukan id record yang akan diupdate
$id=1;
//menentukan nilai baru yang akan dimasukkan
$new_nama = "evieta";
$new_password = "qwerty";
$new_email = "evieta9987868@gmail.com";
//membuat query mengupdate record pada tabel User
$query="UPDATE User SET nama='$new_nama', password='$new_password', email='$new_email' WHERE id=$id";
//menjalankan query
if (mysqli_query($conn,$query)) {
echo "<b>Data ke-".$id. " berhasil diupdate :</b><br/>";
echo "Nama = ".$new_nama . "<br/>";
echo "Password = ".$new_password . "<br/>";
echo "Email = ".$new_email . "<br/>";
} else die ("Error menjalankan query". mysqli_error());
// menutup koneksi mysql
mysqli_close($conn);
?>
3. Update data pada tabel MySQL dengan MySQLI Extension (Object Oriented)
<?php
$dbHost = "localhost";
$dbUser = "root";
$dbPass = "123";
$dbName = "MySQLIDB2";
// membuat koneksi mysql
$conn = mysqli_connect($dbHost, $dbUser, $dbPass, $dbName);
// mengecek koneksi mysql
if ($conn->connect_error) die("Koneksi Gagal: " . $conn->connect_error);
else echo "Koneksi Database ".$dbName." Berhasil ...<br/><br/>";
//menentukan id record yang akan diupdate
$id=1;
//menentukan nilai baru yang akan dimasukkan
$new_nama = "evieta";
$new_password = "qwerty";
$new_email = "evieta9987868@gmail.com";
//membuat query mengupdate record pada tabel User
$query="UPDATE User SET nama='$new_nama', password='$new_password', email='$new_email' WHERE id=$id";
//menjalankan query
if ($conn->query($query)) {
echo "<b>Data ke-".$id. " berhasil diupdate :</b><br/>";
echo "Nama = ".$new_nama . "<br/>";
echo "Password = ".$new_password . "<br/>";
echo "Email = ".$new_email . "<br/>";
} else die ("Error menjalankan query". mysqli_error());
//menutup koneksi
$conn->close();
?>
4. Update data pada tabel MySQL dengan PDO
<?php
$dbHost = "localhost";
$dbUser = "root";
$dbPass = "123";
$dbName = "MyPDODB";
try {
$conn = new PDO("mysql:host=$dbHost;dbname=$dbName", $dbUser, $dbPass);
// set the PDO error mode untuk exception
$conn->setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION);
//menentukan id record yang akan diupdate
$id=1;
//menentukan nilai baru yang akan dimasukkan
$new_nama = "evieta";
$new_password = "qwerty";
$new_email = "evieta9987868@gmail.com";
//membuat query mengupdate record pada tabel User
$query="UPDATE User SET nama='$new_nama', password='$new_password', email='$new_email' WHERE id=$id";
// Membuat prepare statement
$stmt = $conn->prepare($query);
// menjalankan query
$stmt->execute();
// menampilkan pesan
echo "<b>Data ke-".$id. " berhasil diupdate :</b><br/>";
echo "Nama = ".$new_nama . "<br/>";
echo "Password = ".$new_password . "<br/>";
echo "Email = ".$new_email . "<br/>";
}
catch(PDOException $e)
{
echo $sql . "<br>" . $e->getMessage();
}
// menutup koneksi
$conn = null;
?>
Referensi :