Sửa (update) dữ liệu và câu lệnh drop trong MySQL với PHP

Đây là bài 52/53 bài của series môn học Lập trình Web PHP

Trong bài này, chúng ta sẽ tìm hiểu về câu lệnh update và drop trong MySQL với PHP. Để học tốt bài này, các bạn cần đọc lại bài Cài đặt môi trường lập trình Web PHP với XAMPP để biết cách chạy ứng dụng web PHP với XAMPP.

Các ví dụ updatedrop dữ liệu sẽ thực hiện trên table gochocit_posts trong database gochocit. Database và table này đã được tạo trong bài Tạo database và tạo table trong MySQL với PHP. Các bạn cần đọc lại để xem cấu trúc của database và table trên.

Bảng gochocit_posts được tạo ra
Dữ liệu được insert vào table gochocit_posts

Chúng ta có thể sửa (update) những dòng dữ liệu đã được insert vào table trong MySQL. Sử dụng câu lệnh “UPDATE” để thực hiện update.

UPDATE table_name
SET column1=value, column2=value2,...
WHERE some_column=some_value

Chúng ta có thể xóa (delete) những table đã được tạo trong database. Sử dụng câu lệnh “DROP TABLE” để xóa table. Sử dụng thêm “IF EXISTS” để kiểm tra một table đã tồn tại chưa, nếu đã tồn tại thì xóa table.

DROP TABLE IF EXISTS table_name

1. Update table sử dụng MySQLi (object-oriented)

Câu lệnh UPDATE được thực thi khi đối tượng mysqli$conn gọi hàm query(). Nếu câu lệnh SQL thực thi thành công và update được dữ liệu thì hàm query() sẽ trả về TRUE, ngược lại FALSE.

<?php
$servername = "localhost";
$username = "root";
$password = "";
$dbname = "gochocit";

// create connection
$conn = new mysqli($servername, $username, $password, $dbname);
// check connection
if ($conn->connect_error) {
  die("Connection failed: " . $conn->connect_error);
}

// sql to update a record
$sql = "UPDATE gochocit_posts SET post_author = 'Phúc Trần' WHERE ID = '1'";

if ($conn->query($sql) === TRUE) {
  echo "Record updated successfully";
} else {
  echo "Error updating record: " . $conn->error;
}

$conn->close();
?>

2. Update table sử dụng MySQLi (procedural)

Câu lệnh UPDATE được thực thi khi gọi hàm mysqli_query(). Nếu câu lệnh SQL thực thi thành công và update được dữ liệu thì hàm mysqli_query() sẽ trả về TRUE, ngược lại FALSE.

<?php
$servername = "localhost";
$username = "root";
$password = "";
$dbname = "gochocit";

// create connection
$conn = mysqli_connect($servername, $username, $password, $dbname);

// check connection
if (!$conn) {
  die("Connection failed: " . $conn->connect_error);
}
// sql to insert data
$sql = "UPDATE gochocit_posts SET post_author = 'Phúc Trần' WHERE ID = '1'";
  
if (mysqli_query($conn, $sql)) {
  echo "Record updated successfully";
} else {
  echo "Error updating record: " . mysqli_error($conn);
}
  
mysqli_close($conn);
?>

3. Update table sử dụng PDO (PHP Data Objects)

Câu lệnh UPDATE được thực thi khi đối tượng PDO$conn gọi hàm prepare() rồi execute() để update dữ liệu. Nếu câu lệnh SQL thực thi thành công và update được dữ liệu thì không gây ra exception, ngược lại sẽ gây ra exception.

<?php
$servername = "localhost";
$username = "root";
$password = "";
$dbname = "gochocit";

try {
  $conn = new PDO("mysql:host=$servername;dbname=$dbname", $username, $password);
  // set the PDO error mode to exception
  $conn->setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION);

  $sql = "UPDATE gochocit_posts SET post_author = 'Phúc Trần' WHERE ID = '1'";

  // prepare statement
  $stmt = $conn->prepare($sql);

  // execute the query
  $stmt->execute();

  // echo a message to say the UPDATE succeeded
  echo $stmt->rowCount() . " records UPDATED successfully";
} catch(PDOException $e) {
  echo $sql . "<br>" . $e->getMessage();
}

$conn = null;
?>

4. Drop table sử dụng PDO (PHP Data Objects)

Chúng ta có thể xóa (delete) những table đã được tạo trong database. Sử dụng câu lệnh “DROP TABLE” để xóa table. Sử dụng thêm “IF EXISTS” để kiểm tra một table đã tồn tại chưa, nếu đã tồn tại thì xóa table.

<?php
$servername = "localhost";
$username = "root";
$password = "";
$dbname = "gochocit";

try {
  $conn = new PDO("mysql:host=$servername;dbname=$dbname", $username, $password);
  // set the PDO error mode to exception
  $conn->setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION);

  $sql = "DROP TABLE IF EXISTS gochocit_posts";

  // prepare statement
  $stmt = $conn->prepare($sql);

  // execute the query
  $stmt->execute();

  // echo a message to say the drop succeeded
  echo "Table gochocit_posts dropped successfully";
} catch(PDOException $e) {
  echo $sql . "<br>" . $e->getMessage();
}

$conn = null;
?>

Nếu đoạn code trên thực thi không xảy ra exception thì đã xóa được table. Các bạn sử dụng trình duyệt web và truy cập vào địa chỉ http://localhost/phpmyadmin/ để kiểm tra table đã được xóa hay chưa.

5/5 - (1 bình chọn)
Bài trước và bài sau trong môn học<< Truy vấn (select) dữ liệu và câu lệnh where trong MySQL với PHPCâu lệnh order by và limit trong MySQL với PHP >>
Chia sẻ trên mạng xã hội:

Trả lời

Lưu ý:

1) Vui lòng bình luận bằng tiếng Việt có dấu.

2) Khuyến khích sử dụng tên thật và địa chỉ email chính xác.

3) Mọi bình luận trái quy định sẽ bị xóa bỏ.