PDO를 사용하여 PHP MySQL 삭제 쿼리

12373 단어 phptutorialpdomysql
원래 게시된 @https://codeanddeploy.com 방문하여 샘플 코드 다운로드: https://codeanddeploy.com/blog/php/php-mysql-delete-query-using-pdo

이 게시물에서는 PDO를 사용하여 PHP에서 쿼리를 삭제하는 방법을 공유하고 있습니다. PDO에서 삭제 쿼리를 수행하는 방법을 쉽게 이해할 수 있는 몇 가지 예를 공유하겠습니다.

SQL 문 테이블



PDO를 사용하여 PHP에서 삭제 쿼리를 사용하려면 먼저 데이터베이스와 테이블을 설정해야 합니다. 이 예에서는 간단한 게시물 테이블로 작업하고 있습니다. 아래 샘플 SQL 문 샘플을 참조하십시오.

CREATE TABLE `posts` (
  `id` int(11) NOT NULL,
  `title` varchar(150) NOT NULL,
  `content` text NOT NULL
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4;

ALTER TABLE `posts`
  ADD PRIMARY KEY (`id`);

ALTER TABLE `posts`
  MODIFY `id` int(11) NOT NULL AUTO_INCREMENT, AUTO_INCREMENT=1;
COMMIT;


MySQL 삭제 쿼리 문



일반적으로 MySQL에서 레코드를 삭제할 때 아래의 SQL 문을 사용합니다.

통사론:

DELETE FROM table_name WHERE condition;


실제 삭제 문 예:

DELETE FROM posts WHERE id=1;


이제 MySQL로 삭제하는 방법에 대한 기본적인 아이디어를 얻었습니다.

좋아, PHP PDO 삭제로 구현하자.

위치 자리 표시자가 있는 PDO 삭제 쿼리 예



위치 자리 표시자는 간단하고 사용하기 쉽습니다. 아래 예제 코드를 참조하십시오.

<?php

$host     = 'localhost';
$db       = 'demos';
$user     = 'root';
$password = '';

$dsn = "mysql:host=$host;dbname=$db;charset=UTF8";

try {
     $conn = new PDO($dsn, $user, $password, [PDO::ATTR_ERRMODE => PDO::ERRMODE_EXCEPTION]);

} catch (PDOException $e) {
     echo $e->getMessage();
}

$data = [1];

$sql = "DELETE FROM posts WHERE id=?";

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

if($statement->execute($data)) {
  echo "Post deleted successfully!";
}

?>


명명된 자리 표시자가 있는 PDO 삭제 쿼리



값이 있는 보다 명확한 미리 정의된 배열을 원하는 경우 이 예제가 적합합니다. 아래 코드를 참조하십시오.

<?php

$host     = 'localhost';
$db       = 'demos';
$user     = 'root';
$password = '';

$dsn = "mysql:host=$host;dbname=$db;charset=UTF8";

try {
     $conn = new PDO($dsn, $user, $password, [PDO::ATTR_ERRMODE => PDO::ERRMODE_EXCEPTION]);

} catch (PDOException $e) {
     echo $e->getMessage();
}

$data = [
     'id' => 3
];

$sql = "DELETE FROM posts WHERE id=:id";

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

if($statement->execute($data)) {
  echo "Post deleted successfully!";
}

?>


bindParam() 메서드를 사용하여 명명된 자리 표시자가 있는 PDO 삭제 쿼리



bindParam()을 사용하여 매개변수를 SQL 문에서 지정된 변수에 바인딩하는 데 사용됩니다.

<?php

$host     = 'localhost';
$db       = 'demos';
$user     = 'root';
$password = '';

$dsn = "mysql:host=$host;dbname=$db;charset=UTF8";

try {
     $conn = new PDO($dsn, $user, $password, [PDO::ATTR_ERRMODE => PDO::ERRMODE_EXCEPTION]);

} catch (PDOException $e) {
     echo $e->getMessage();
}

$data = [
     'id' => 4
];

$sql = "DELETE FROM posts WHERE id=:id";

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

$statement->bindParam(':id', $data['id'], PDO::PARAM_INT);

if($statement->execute()) {
     echo "Post deleted successfully!";
}

?>


이 튜토리얼이 도움이 되었으면 합니다. 이 코드를 다운로드하려면 여기https://codeanddeploy.com/blog/php/php-mysql-delete-query-using-pdo를 방문하십시오.

행복한 코딩 :)

좋은 웹페이지 즐겨찾기