PHP – حذف دادهها از پایگاه داده MySQL
آخرین بروزرسانی:
دستور DELETE
برای حذف رکوردها از یک جدول در پایگاه داده MySQL استفاده میشود. این دستور همراه با شرط WHERE
برای مشخص کردن رکوردهایی که باید حذف شوند، به کار میرود. اگر شرط WHERE
را حذف کنید، تمامی رکوردها حذف خواهند شد!
در اینجا نحوه استفاده از دستور DELETE
با MySQLi و PDO برای حذف دادهها را مشاهده خواهید کرد.
حذف دادهها با MySQLi
MySQLi به صورت شیءگرا
مثال (MySQLi Object-oriented)
در این مثال، رکوردی با id=3
از جدول “MyGuests” حذف میشود:
<?php
$servername = "localhost";
$username = "username";
$password = "password";
$dbname = "myDB";
// ایجاد اتصال
$conn = new mysqli($servername, $username, $password, $dbname);
// بررسی اتصال
if ($conn->connect_error) {
die("اتصال ناموفق: " . $conn->connect_error);
}
// آمادهسازی و اجرای کوئری برای حذف رکورد
$sql = "DELETE FROM MyGuests WHERE id=3";
if ($conn->query($sql) === TRUE) {
echo "رکورد با موفقیت حذف شد";
} else {
echo "خطا در حذف رکورد: " . $conn->error;
}
$conn->close();
?>
MySQLi به صورت رویهای
مثال (MySQLi Procedural)
این مثال مشابه مثال شیءگرا است اما به صورت رویهای نوشته شده است:
<?php
$servername = "localhost";
$username = "username";
$password = "password";
$dbname = "myDB";
// ایجاد اتصال
$conn = mysqli_connect($servername, $username, $password, $dbname);
// بررسی اتصال
if (!$conn) {
die("اتصال ناموفق: " . mysqli_connect_error());
}
// آمادهسازی و اجرای کوئری برای حذف رکورد
$sql = "DELETE FROM MyGuests WHERE id=3";
if (mysqli_query($conn, $sql)) {
echo "رکورد با موفقیت حذف شد";
} else {
echo "خطا در حذف رکورد: " . mysqli_error($conn);
}
mysqli_close($conn);
?>
حذف دادهها با PDO
مثال (PDO)
در این مثال، از PDO برای حذف رکوردی با id=3
استفاده میشود:
<?php
$servername = "localhost";
$username = "username";
$password = "password";
$dbname = "myDBPDO";
try {
// ایجاد اتصال
$conn = new PDO("mysql:host=$servername;dbname=$dbname", $username, $password);
$conn->setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION);
// آمادهسازی و اجرای کوئری برای حذف رکورد
$sql = "DELETE FROM MyGuests WHERE id=3";
// استفاده از exec() زیرا نتیجهای برنمیگردد
$conn->exec($sql);
echo "رکورد با موفقیت حذف شد";
} catch(PDOException $e) {
echo $sql . "<br>" . $e->getMessage();
}
$conn = null;
?>
نتیجهگیری
نکات مهم:
- حذف رکورد: بدون شرط
WHERE
تمامی رکوردها از جدول حذف خواهند شد، بنابراین همیشه با احتیاط از دستورDELETE
استفاده کنید. - مدیریت خطا: با استفاده از مدیریت خطا در MySQLi و PDO، میتوانید اطمینان حاصل کنید که خطاها به درستی گزارش و مدیریت شوند.
با استفاده از این روشها، میتوانید رکوردهای مورد نظر خود را از پایگاه داده حذف کنید و به راحتی از آنها مدیریت کنید.
برای ارسال نظر لطفا ابتدا وارد حساب کاربری خود شوید. صفحه ورود و ثبت نام