تحديث البيانات في MySQL

Ali Majrashiمنذ 7 سنوات

نستخدم جملة UPDATE لتحديث بيانات مخزنة بجدول محدد عند بناء جملة SQL.


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

ملاحظة: عند استخدام جملة UPDATE لتحديث سجل يجب ان تقوم باستخدام جملة WHERE ؛ لتحديد السجل المطلوب تحديثه اذا لم تقم باستخدام WHERE في بناء جملة SQL فانه عند تنفيذها سوف يتم تحديث جميع السجلات بالجدول.

يجب ان تكون لديك معرفة في بناء جمل SQL ؛ لتستطيع تنفيذ مختلف العمليات على قواعد البيانات ، حيث انه طريقة تنفيذ هذه الجمل هي واحدة في PHP ، تختلف النتيجة باختلاف الجملة المنفذة فقط.

حذف البيانات:

الآن بهذه السلسة قمنا بتخزين بعض البيانات داخل الجدول users ، سوف نعرض بهذه الأمثلة طريقة تحديث أحد هذه السجلات المدخلة ، سوف نقوم بتحديث السجل الذي يحمل id رقم 2 ، حيث اننا سنقوم بتحديث حقل name فقط الى khaled.

مثال على MySQLi Object-Oriented:


<?php

$servername = "localhost";
$username = "root";
$password = "root";
$dbname = "new-DB";

// إجراء الإتصال
$conn = new mysqli($servername, $username, $password, $dbname);

// التحقق من الإتصال
if ($conn->connect_error) {
    die("فشل الإتصال: " . $conn->connect_error);
}

// لتحديث سجل بالجدول SQL بناء جملة 
$sql = "UPDATE users SET name='khaled' WHERE id=2";

// تنفيذ الإستعلام
if ($conn->query($sql) === TRUE) {
    echo "تم تحديث السجل بنجاح";
} else {
    echo "فشل تحديث السجل: " . $conn->error;
}

// إغلاق الإتصال
$conn->close();

كما في الأمثلة السابقة قمنا بعملية الإتصال ، ثم قمنا ببناء جملة SQL ، و بعدها قمنا بتنفيذ الإستعلام بقاعدة البيانات ؛ لنحصل على الرد بنجاح او فشل العملية.

عند عمل الكود بالمتصفح بنجاح سيكون الناتج كالتالي:

update.png

مثال على MySQLi Procedural:


<?php

$servername = "localhost";
$username = "root";
$password = "root";
$dbname = "new-DB";

// إجراء الإتصال
$conn = mysqli_connect($servername, $username, $password, $dbname);

// التحقق من الإتصال
if (!$conn) {
    die("فشل الإتصال: " . mysqli_connect_error());
}

// لتحديث سجل بالجدول SQL بناء جملة 
$sql = "UPDATE users SET name='khaled' WHERE id=2";

// تنفيذ الإستعلام
if (mysqli_query($conn, $sql)) {
    echo "تم تحديث السجل بنجاح";
} else {
    echo "فشل تحديث السجل: " . mysqli_error($conn);
}

// إغلاق الإتصال 
mysqli_close($conn);

عند عمل الكود بالمتصفح بنجاح سيكون الناتج كالتالي:

update.png

مثال على PDO:


<?php

$servername = "localhost";
$username = "root";
$password = "root";
$dbname = "new-DB";

try {
	// إجراء الإتصال
    $conn = new PDO("mysql:host=$servername;dbname=$dbname", $username, $password);
    // تعديل نوع معالج الأخطاء
    $conn->setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION);
    // لتحديث سجل بالجدول SQL بناء جملة 
    $sql = "UPDATE users SET name='khaled' WHERE id=2";
    // تجهيز الإستعلام
    $stmt = $conn->prepare($sql);
    // تنفيذ الإستعلام
    $stmt->execute();
    // طباعة رسالة بنجاح العملية
    echo $stmt->rowCount() . " تم تحديثهم بنجاح";
}
catch(PDOException $e) {
	echo $sql . "<br>" . $e->getMessage();
}

// إغلاق الإتصال 
$conn = null;

عند عمل الكود بالمتصفح بنجاح سيكون الناتج كالتالي:

update.png

التعليقات (0)

لايوجد لديك حساب في عالم البرمجة؟

تحب تنضم لعالم البرمجة؟ وتنشئ عالمك الخاص، تنشر المقالات، الدورات، تشارك المبرمجين وتساعد الآخرين، اشترك الآن بخطوات يسيرة !